summaryrefslogtreecommitdiffstats
path: root/ui/app_list
Commit message (Collapse)AuthorAgeFilesLines
* Use NativeWindow instead of anchor view to get icon scale in app list view.michaelpg@chromium.org2013-08-233-11/+9
| | | | | | | | | | | | | | | | The app list with the alternate shelf layout does not have an anchor, so the scale factor for preloading icons is always set to the default. On link, this causes the icons to be loaded twice, resulting in a noticeable delay or flicker whenever the app list is opened. Instead of the anchor, we will use the native host window directly. BUG=274046 TEST=manual, set alternate shelf layout in about:flags on link and reboot, press search key, icons paint immediately with app titles Review URL: https://chromiumcodereview.appspot.com/23038022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@219323 0039d316-1c4b-4281-b951-d872f2087c98
* Call [CrTrackingArea clearOwner] when resetting the observerBridge for OSX ↵tapted@chromium.org2013-08-231-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | App List items. ScopedCrTrackingArea only guarantees to call [CrTrackingArea clearOwner] in its destructor. This is too late because the C++ model is cleared from the AppsGridViewItem before its NSObject dealloc gets reached. ref-counted NSTrackingAreas may still be floating around in event queues when items are destroyed in response to model updates, so we must ensure they do not try to forward events attempting to use destroyed C++ objects. This ensures clearOwner is explicitly called whenever the model changes, to ensure any CrTrackingArea retained elsewhere (e.g. event queues) does not forward events. BUG=276216 TEST=Have lots of items (> 16). Open the app launcher and uninstall the bottom-right item on the first page, then quickly wiggle the mouse around that corner on the app list. Should not crash. See bug for details - the crash will not always occur. Review URL: https://chromiumcodereview.appspot.com/23374002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@219237 0039d316-1c4b-4281-b951-d872f2087c98
* Refresh search results in the OSX App Launcher when uninstalling a search ↵tapted@chromium.org2013-08-236-39/+69
| | | | | | | | | | | | | | | | | | | | | | | | | result. Currently a search result uninstalled via its context menu stays visible in the search results, and clicking it does nothing. This change observes the uninstall notification and notifies the view controller to redo the search. To achieve this, the CL includes refactoring to give the search result items access to the search result controller's delegate. This refactoring is a necessary precursor for one-click install on OSX (http://crbug.com/271809). This is the OSX flavour of the recent change in http://crrev.com/216935 for CrOS/Win. BUG=271801, 271809 TEST=Perform a search in the OSX App Launcher for an installed app. Right-click the search result and uninstall. The search results should refresh and the uninstalled app should not appear in the search results. Review URL: https://chromiumcodereview.appspot.com/22880034 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@219228 0039d316-1c4b-4281-b951-d872f2087c98
* Remove SigninDelegateObserver.calamity@chromium.org2013-08-224-49/+0
| | | | | | | | | | | | | | | | | | | | | | | | | Now that the AppListViewDelegate receives signin notifications, the SigninDelegateObserver is unnecessary. This will also fix a DCHECK that was being failing due to ChromeSigninDelegate's implementation of listening to signin events. Specifically, the DCHECK would happen after signing in from the app launcher, signing out, and then signing in again from somewhere else (e.g chrome:settings). ChromeSigninDelegate uses a SigninTracker which expects the signin to be in a particular state. On the second signin the SigninTracker hasn't been reset and does not like the state it's in. An alternative fix to this DCHECK is to delete the SigninTracker on signin success/failure but since this code is now unnecessary, we may as well remove it. BUG=271933 TEST=No functional changes Review URL: https://chromiumcodereview.appspot.com/22825025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@218991 0039d316-1c4b-4281-b951-d872f2087c98
* Remove unnecessary [AppsGridViewItem onInitialModelBuilt] from OSX App List.tapted@chromium.org2013-08-214-60/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | This is a partial revert of r216090. onInitialModelBuilt would allow parts of an initial model to be represented in the UI which were set while the model was not being observed. However, the model itself is only updated when _its_ observers are registered, which happens at the same time as the things that would observe the model are created. The correct fix was r216954 which registers the things updating the model earlier so they can observe changes and update the model. This CL removes the onInitialModelBuilt function from AppsGridViewItem and related test - HighlightedOnFirstShow - whose interesting bits are still covered by tests AppsGridControllerTest.ItemInstallProgress and AppsGridControllerTest.EnsureHighlightedVisible BUG=267814 TEST=No regressions. Specifically, after installing the _first_ app from the webstore and receiving the app launcher, the app launcher should not pop up. Then, clicking the dock icon should show the just-installed app highlighted. Review URL: https://chromiumcodereview.appspot.com/22813012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@218754 0039d316-1c4b-4281-b951-d872f2087c98
* Add UMA for first app list paint on Windows.koz@chromium.org2013-08-212-0/+21
| | | | | | | | BUG=274049 Review URL: https://chromiumcodereview.appspot.com/23315002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@218723 0039d316-1c4b-4281-b951-d872f2087c98
* Move signin status and current user information into AppListModel.calamity@chromium.org2013-08-1922-122/+176
| | | | | | | | | | | | | | For increased separation between model and view, the AppListViewDelegate now updates the model on profile and signin status change which then notifies the AppListView of changes so it can update. BUG= TEST=None TBR=sky@chromium.org Review URL: https://chromiumcodereview.appspot.com/22268009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@218251 0039d316-1c4b-4281-b951-d872f2087c98
* Remove ViewActivationChanged() from AppListControllerDelegate.koz@chromium.org2013-08-194-6/+22
| | | | | | | | TBR=sky@chromium.org Review URL: https://chromiumcodereview.appspot.com/23020012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@218232 0039d316-1c4b-4281-b951-d872f2087c98
* app_list: Minor trivial cleanup while I'm here.tfarina@chromium.org2013-08-1911-40/+36
| | | | | | | | | | Just removing unnecessary app_list:: at some call sites. R=xiyuan@chromium.org Review URL: https://chromiumcodereview.appspot.com/23125003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@218225 0039d316-1c4b-4281-b951-d872f2087c98
* Fix MouseDragFlipPage flake.xiyuan@chromium.org2013-08-161-17/+13
| | | | | | | | | | Don't time out when expecting a page flip to happen. BUG=242248 Review URL: https://chromiumcodereview.appspot.com/23079006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@217888 0039d316-1c4b-4281-b951-d872f2087c98
* app_list: Move some delegates that are specific to views into views/ directory.tfarina@chromium.org2013-08-158-21/+21
| | | | | | | | | | | | | Small clean up that I noticed while I was looking around and doing another patch. BUG=None TEST=None R=xiyuan@chromium.org Review URL: https://chromiumcodereview.appspot.com/23066005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@217864 0039d316-1c4b-4281-b951-d872f2087c98
* Update separator padding for the signed-in menu item in the OSX App Lanucher.tapted@chromium.org2013-08-141-3/+6
| | | | | | | | | | | Padding in the app list tools menu should match padding in the hotdog menu. BUG=271798 TEST=Visual Review URL: https://chromiumcodereview.appspot.com/22796003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@217426 0039d316-1c4b-4281-b951-d872f2087c98
* Update the menu offsets for the OSX and Win App Launchers.tapted@chromium.org2013-08-122-6/+13
| | | | | | | | | | | | | | | The new menu button assets do not have a border. This moves the menu popup closer to the meat of the icon. BUG=269210 TEST=Visual - menu location should match the screenshot at http://crbug.com/269210#c4 R=benwells@chromium.org Review URL: https://codereview.chromium.org/22642007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@216950 0039d316-1c4b-4281-b951-d872f2087c98
* app_list: Re-submit the search query after uninstalling app from context menu.tfarina@chromium.org2013-08-1212-3/+32
| | | | | | | | | | | | | | | | To test this: 1. Do an app launcher search with some app results. 2. Right click on an app to bring up the context menu. 3. "Uninstall" and follow the flow to uninstall the app. After step 3, the app is uninstalled the app search query should be resent, and thus updating the search results. BUG=242226,246806 R=xiyuan@chromium.org Review URL: https://chromiumcodereview.appspot.com/22605014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@216935 0039d316-1c4b-4281-b951-d872f2087c98
* [mac] Allow the OSX App Launcher menu to be invalidated.tapted@chromium.org2013-08-093-3/+14
| | | | | | | | | | | | | | | | | | | | Currently the app launcher will show the old profile name, and no login identity, after signing in for the first time, until the browser is restarted (or the app list profile is switched). This CL allows the app list menu to be invalidated when the signin status changes. Simply setting the CURRENT_USER menu item to be 'dynamic' is insufficient, because the menu item uses a custom view which needs to be released and re-appended. BUG=262639 TEST=Have Chrome not signed in, open a browser. Open app launcher, see signin page, and sign in, leave browser window open. Reopen app launcher, open menu: it should show email of the just-signed-in user. Review URL: https://chromiumcodereview.appspot.com/22424007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@216651 0039d316-1c4b-4281-b951-d872f2087c98
* Small cleanup of AppListControllerWin.koz@chromium.org2013-08-092-0/+17
| | | | | | Review URL: https://chromiumcodereview.appspot.com/22543002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@216581 0039d316-1c4b-4281-b951-d872f2087c98
* Fix leftright padding on OSX App Launcher.tapted@chromium.org2013-08-071-1/+1
| | | | | | | | | | | | | | | | This Changed from 20 -> 16 in http://crrev.com/190320. I think to account for an invisible scrollbar which since got a better fix. But it should be 21 anyway, to match windows more closely, since Windows adds a 1px border around the outside. See bug for comparison shot vs Windows. BUG=269210 TEST=Visual - width should now match screenshot on the bug Review URL: https://chromiumcodereview.appspot.com/22468003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@216180 0039d316-1c4b-4281-b951-d872f2087c98
* Reduce font size on OSX App Launcher items.tapted@chromium.org2013-08-071-2/+8
| | | | | | | | | | | | On Mac, fonts of the same enum from ResourceBundle are larger. The smallest enum is already used, so it needs to be reduced further to match Windows. BUG=269210 TEST=Visual - font should now match screenshot on the bug. Review URL: https://chromiumcodereview.appspot.com/22545002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@216147 0039d316-1c4b-4281-b951-d872f2087c98
* Select a highlighted item on first show of the OSX app launcher.tapted@chromium.org2013-08-074-17/+69
| | | | | | | | | | | | | | | | | | | | | | | | | If the app list has never been shown, it will not observe the ItemHighlightedChanged notification, and so will not have an item highlighted if the app list is invoked by the user after an item install, rather than by the webstore. This only happens on the first item install when the app launcher is not enabled (thereafter the app launcher is enabled, and so invoked by the webstore). Note that there can be multiple _installing_ items on first show, but the AppListModel enforces that only one of them will be _highlighted_, hence the logic is slightly different to ItemIsInstallingChanged notifications. BUG=267814 TEST=When the webstore first enables the app launcher due to an app install, it does not automatically show the app launcher, but if the user clicks it, it should show the installed item; selected if the install is complete (otherwise just showing the correct page). Also added app_list_unittests:AppsGridControllerTest.HighlightedOnFirstShow Review URL: https://chromiumcodereview.appspot.com/22339005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@216090 0039d316-1c4b-4281-b951-d872f2087c98
* Remove SetModel in ContentsView and SearchBoxView.calamity@chromium.org2013-08-065-41/+23
| | | | | | | | | | | | | SetModel is only ever used for initialization. Moving the functionality into the constructor allows for easier reasoning about the state of the View. This change is in preparation of the refactor in https://codereview.chromium.org/20656002/. Review URL: https://chromiumcodereview.appspot.com/22354002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@215861 0039d316-1c4b-4281-b951-d872f2087c98
* app_list: Show apps grid after installing from cws result.xiyuan@chromium.org2013-08-0212-0/+38
| | | | | | | | BUG=259517 Review URL: https://chromiumcodereview.appspot.com/21592003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@215331 0039d316-1c4b-4281-b951-d872f2087c98
* Highlight items in the OSX App Launcher when install state changes.tapted@chromium.org2013-08-011-0/+2
| | | | | | | | | | | | | | | | | | | When install begins, ensure the page is shown. When install completes, ensure the page is shown, and select the item. This is to match CrOS/Win behavior. BUG=138633 TEST=With OSX App launcher enabled, install a large item from the webstore. App launcher should show, with the item visible, with progress bars. Move to a different page and dismiss the app launcher. When install completes, app launcher should show again, and installed item should be visible, and selected. R=koz@chromium.org Review URL: https://codereview.chromium.org/21458002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@214933 0039d316-1c4b-4281-b951-d872f2087c98
* Consider padding when calculating drop targets in the app list.koz@chromium.org2013-07-261-2/+3
| | | | | | | | BUG=263229 Review URL: https://chromiumcodereview.appspot.com/19684012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@213810 0039d316-1c4b-4281-b951-d872f2087c98
* [win] Initialize the app list menu lazily, and allow invalidation.tapted@chromium.org2013-07-263-5/+16
| | | | | | | | | | | | | | | | | | | | Currently the app launcher will show the old profile name, and no login identity, after signing in for the first time, until the browser is restarted (or the app list profile is switched). This CL makes populating of the app list menu lazy, and allows the items to be invalidated when the signin status changes. Simply setting the CURRENT_USER menu item to be 'dynamic' is insufficient, because the menu item uses a custom view which needs to be released and re-appended. BUG=262639 TEST=Have Chrome not signed in, open a browser. Open app launcher, see signin page, and sign in, leave browser window open. Reopen app launcher, open menu: it should show email of the just-signed-in user. Review URL: https://chromiumcodereview.appspot.com/19675010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@213807 0039d316-1c4b-4281-b951-d872f2087c98
* app_list: Fix wrong UI state when dropping an installing app.xiyuan@chromium.org2013-07-251-1/+3
| | | | | | | | | | | | | | - Respect is_installing flag for showing title and progress bar when an app item is dropped (i.e. changed to normal UI state); - Hide both the title and progress bar when an app is picked up (i.e. dragging ui state); BUG=261872 R=koz@chromium.org Review URL: https://codereview.chromium.org/20169002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@213683 0039d316-1c4b-4281-b951-d872f2087c98
* Make dragging outside the app list scroll back to its original position.koz@chromium.org2013-07-242-14/+41
| | | | | | | | | | | | | | | | | | | Currently when dragging an app from the app list outside the bounds of the app launcher the apps in the launcher continue to re-arrange themselves even though the cursor may be nowhere near the app launcher, which looks weird. This change makes it so that the app launcher animates back to its original state while the cursor is outside the launcher, and will cause drops to outside the app launcher to return the dragged app to its original position, which is consistent with flows such as dragging apps to the taskbar on Windows / ChromeOS. BUG=261452 Review URL: https://chromiumcodereview.appspot.com/19382003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@213339 0039d316-1c4b-4281-b951-d872f2087c98
* Make AppListItemView's progress bar not reset to 0 while installing app.koz@chromium.org2013-07-221-0/+5
| | | | | | | | BUG=257961 Review URL: https://chromiumcodereview.appspot.com/19705012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@212843 0039d316-1c4b-4281-b951-d872f2087c98
* Use a direct include of the message_loop header in ui/, part 1.avi@chromium.org2013-07-184-4/+4
| | | | | | | | | | BUG=260807 TEST=none TBR=ben@chromium.org Review URL: https://chromiumcodereview.appspot.com/19629002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@212243 0039d316-1c4b-4281-b951-d872f2087c98
* Progress bars for app install in the OSX App Launcher grid.tapted@chromium.org2013-07-176-55/+235
| | | | | | | | | | | | | | | | | | | | | | | Observe ItemHighlightedChanged, ItemIsInstallingChanged and ItemPercentDownloadedChanged in the app list grid to show install progress. Install progress uses an NSProgressIndicator in the grid cell that temporarily replaces the button title. When the item is fully downloaded, the progress bar briefly turns into an indeterminate bar whilst unpacking the bundle and finishing the install. Screenshots at http://crbug.com/138633#c75 BUG=138633 TEST=Show the OSX app launcher while installing a big item from the webstore. A follow-up will enable the webstore to show the launcher on mac automatically. Also added app_list_unittests AppsGridControllerTest.ItemInstallProgress Review URL: https://chromiumcodereview.appspot.com/18703003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@211944 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 211928 "Ignore reordered notifications in the NTP for ins..."tapted@chromium.org2013-07-177-217/+59
| | | | | | | | | | | | | | | | | | | | | | This had a wonky rebase :( > Ignore reordered notifications in the NTP for installing apps. > > Changes to the app sort order via ExtensionSorting does not rely on the > extension corresponding to the reordered ID to be installed. This > changes a DCHECK to instead ignore such changes for the NTP webui. > > BUG=257960 > TEST=Enable App Launcher, install a big app, and move it in the app > launcher while it is downloading. Chrome should not crash. > > Review URL: https://chromiumcodereview.appspot.com/18807003 TBR=tapted@chromium.org Review URL: https://codereview.chromium.org/19517002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@211941 0039d316-1c4b-4281-b951-d872f2087c98
* Ignore reordered notifications in the NTP for installing apps.tapted@chromium.org2013-07-177-59/+217
| | | | | | | | | | | | | | Changes to the app sort order via ExtensionSorting does not rely on the extension corresponding to the reordered ID to be installed. This changes a DCHECK to instead ignore such changes for the NTP webui. BUG=257960 TEST=Enable App Launcher, install a big app, and move it in the app launcher while it is downloading. Chrome should not crash. Review URL: https://chromiumcodereview.appspot.com/18807003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@211928 0039d316-1c4b-4281-b951-d872f2087c98
* Enable pop-up menus in OSX App Launcher for search results.tapted@chromium.org2013-07-174-9/+96
| | | | | | | | | | | | | | | | | | | | | | | | | Adds a lazily created MenuController for search result items in the AppsSearchResultsModelBridge. This is populated from the model when a menu is requested for a context-menu event on the results NSTableView. The menu is the same as the context menu shown on the items in the grid. Also fixes a bug where the lightweight ItemObservers were not created when setting the initial model. Only really a problem in tests, since the search results model is otherwise empty when first populating the view. However, the observers should be updated at the same time to be consistent. Screenshot at http://crbug.com/138633#c78 BUG=138633 TEST=Search for an installed app in the OSX App Launcher. Right-click the result. A (functional) context menu should be shown matching the menu shown in the grid. Also covered by added app_list_unittests:AppsSearchResultsControllerTest.ContextMenus Review URL: https://chromiumcodereview.appspot.com/18071011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@211914 0039d316-1c4b-4281-b951-d872f2087c98
* Dismiss context menus in app list on scroll.koz@chromium.org2013-07-1511-0/+44
| | | | | | | | | BUG=257000 TBR=sky@chromium.org Review URL: https://chromiumcodereview.appspot.com/18668002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@211626 0039d316-1c4b-4281-b951-d872f2087c98
* Properly change the app list signin page when signing in/out.tapted@chromium.org2013-07-122-1/+1
| | | | | | | | | | | | | | | | | | | | | | On Mac and Windows, if the browser stays alive after disconnecting an account, the signin page will not be shown until the browser is restarted. Listen to NOTIFICATION_GOOGLE_SIGNED_OUT in AppListServiceImpl to notify the app list on this change. On Mac, the signin page is currently only swapped out if a signin is initiated via the app list signin button. This feeds through other notifications from the browser to the Mac app list. BUG=255237 TEST=Have a Chrome not signed in. Enable/Launch app launcher. Observe signin button. Close app launcher. Start browser, sign in via browser and leave browser open. Launch app launcher: launcher should show apps. Go to browser window and disconnect account, leave browser open. Launch app launcher: launcher should show signin page. Review URL: https://chromiumcodereview.appspot.com/19050002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@211364 0039d316-1c4b-4281-b951-d872f2087c98
* Make keyboard defocus from app list on dismiss by ESCcalamity@chromium.org2013-07-091-2/+4
| | | | | | | | | | This patch also causes all calls to NativeWidgetWin::Deactivate to look for the next visible window as the next window could be hidden (e.g a tooltip). BUG=233470 Review URL: https://chromiumcodereview.appspot.com/15745027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@210512 0039d316-1c4b-4281-b951-d872f2087c98
* app_list: Fix unnecessary image zoomy on click.xiyuan@chromium.org2013-07-092-20/+34
| | | | | | | | | | Defer dnd host icon creation until drag is confirmed. BUG=251237 Review URL: https://chromiumcodereview.appspot.com/18132013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@210479 0039d316-1c4b-4281-b951-d872f2087c98
* Ensure the sRGB color space is used for the OSX App Launcher.tapted@chromium.org2013-07-046-24/+31
| | | | | | | | | | | | | | | The OSX App Launcher shares color constants with Windows, and assumes they are specified in the sRGB color space. The Launcher UI also shares extension icons with the Chrome webview where they are drawn in sRGB. To match, the App Launcher must also use sRGB. BUG=138733, 257275 TEST=Open OSX App Launcher and compare icons to chrome://apps in a browser window. Colors should match. Review URL: https://chromiumcodereview.appspot.com/18623003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@210171 0039d316-1c4b-4281-b951-d872f2087c98
* Signin Page for OSX App Launcher.tapted@chromium.org2013-07-0414-18/+714
| | | | | | | | | | | | | | | | | | | | | | | | | Adds the SigninViewController under app_list. This controller loads the signin view based on information provided by the delegate. The signin view shows a blue button that opens a browser window to conduct the signin flow. Also shown are some localized description text for signin, and links: "Learn More" and "Settings". If signin is required, the root applist view hides the regular contents and adds the signin view as a subview. When signin is successful, the subview is removed and the regular contents shown. Screenshots at http://crbug.com/255237#4 BUG=138633,255237 TEST=Open the OSX App Launcher on a new profile, and test signin button, and links to "Learn More" and "Settings" (which allows you to switch to a different profile, e.g., one that is signed in). Also added app_list_unittests for the root AppListViewControllerTest and the added SigninViewController. Review URL: https://chromiumcodereview.appspot.com/18326006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@210155 0039d316-1c4b-4281-b951-d872f2087c98
* Heapcheck: Make app_list_unittests and message_center_unittests work.thestig@chromium.org2013-07-031-0/+6
| | | | | | | | | NOTRY=true TBR=dewittj@chromium.org,benwells@chromium.org Review URL: https://chromiumcodereview.appspot.com/18599002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@209852 0039d316-1c4b-4281-b951-d872f2087c98
* When DWM is not available on Windows, don't use a shadow on the applist view.zturner@chromium.org2013-07-011-0/+12
| | | | | | | | | | | | DWM can be disabled either at the command line, by using an pre-Vista version of Windows, or by selecting a non-Aero theme in Vista / Windows 7. When DWM is disabled, HWNDs which are painted by DirectX cannot be transparent. Thus, they will all get drawn with a thick black border around them. This change (and other subsequent changes) address this by specifically handling the no-DWM case and falling back to a code path that does not depend on any cross-window transparency. BUG=225634 Review URL: https://chromiumcodereview.appspot.com/17753006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@209504 0039d316-1c4b-4281-b951-d872f2087c98
* UMA logging for commencing a search in the app list.calamity@chromium.org2013-07-011-0/+6
| | | | | | | | BUG= Review URL: https://chromiumcodereview.appspot.com/18132006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@209385 0039d316-1c4b-4281-b951-d872f2087c98
* Use a direct include of time headers in ui/.avi@chromium.org2013-06-286-6/+6
| | | | | | | | | | BUG=254986 TEST=none TBR=ben@chromium.org Review URL: https://codereview.chromium.org/18149004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@209153 0039d316-1c4b-4281-b951-d872f2087c98
* app_list: One click install for web store result.xiyuan@chromium.org2013-06-2717-170/+427
| | | | | | | | | | | | | | | | | | | | - Support one click install from web store search result; - Support action buttons with a text label in SearchResult; - Add is_installing and percent_downloaded properties to SearchResult; - SearchResultView shows blue button for label based action buttons; - SearchResultView shows progress bar when is_installing is true and use percent_downloaded for the progress bar; - Move progress bar drawing code into ProgressBarView to share between AppListItemView and SearchResultView; - Move InstallTracker code from webstore private api into WebstoreInstaller so that the install/download could be observed for both webstore inline install and WebstoreStandaloneInstaller based install; BUG=173430 Review URL: https://chromiumcodereview.appspot.com/17854007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@208984 0039d316-1c4b-4281-b951-d872f2087c98
* Rewrite scoped_ptr<T>(NULL) to use the default ctor.dcheng@chromium.org2013-06-262-2/+2
| | | | | | | | | | | | This is the result of running the rewrite_scoped_ptr_ctor_null tool across all files built on Mac... hopefully for real this time. BUG=173286 R=thakis@chromium.org Review URL: https://codereview.chromium.org/17769005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@208591 0039d316-1c4b-4281-b951-d872f2087c98
* Remove unused member function declaration from app_list::SigninView.tapted@chromium.org2013-06-251-4/+0
| | | | | | | | | | | Also nit the class comment. BUG=None TEST=Still compiles Review URL: https://chromiumcodereview.appspot.com/17591004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@208459 0039d316-1c4b-4281-b951-d872f2087c98
* Improve OSX App Launcher location for non-mouse activations and autohide docks.tapted@chromium.org2013-06-251-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change sets the OSX app launcher level to NSDockWindowLevel, so it shares a z-order stack with the dock and (on 10.7+) IME language input windows. For an autohide dock, this means that it will initially appear on top of the dock, but if the dock is hidden and reshown, the dock will be on top. It also checks whether the mouse cursor is visible. If it is not, assume the app launcher was not activated using the dock. Instead, show the app list in the bottom-right of the most likely work area. This is the display containing the active Chrome window, if Chrome is the active application. If Chrome is not the active application, use the primary display, which is the one with the OSX menu bar on it. Additionally (when the cursor is visible) and the dock is set to autohide, move the window at least 50 pixels away from the screen edge. This is the best we can achieve without knowing the actual size of an autohide dock, but is enough to allow the dock to be interacted with, e.g., to click the dock icon to hide again, and works well combined with showing the app list on top of the dock window. BUG=138633, 247450 TEST=Activate the app launcher on OSX with {left, bottom, right}x{autohide, shown}x{keyboard,mouse} permutations, to ensure requirements above are met. Review URL: https://chromiumcodereview.appspot.com/17538002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@208454 0039d316-1c4b-4281-b951-d872f2087c98
* Handle mouse wheel events for the OSX App launcher.tapted@chromium.org2013-06-251-0/+19
| | | | | | | | | | | | | | | | | | Adds a case for non-trackpad mouse scroll events to the app list's ScrollViewWithNoScrollbars. Horizontal and vertical mouse wheel events are mapped to an appropriate horizontal event to scroll one "line", which is configured in the NScrollView to be one view's width. BUG=138633,251419 TEST=Using a mouse with a clicky mouse wheel (preferably one that you can tilt sideways as well), try scrolling pages in the OSX App Launcher with & without the 'Natural scrolling' option in system preferences. One click goes one full page. Natural scrolling flips the direction. Review URL: https://chromiumcodereview.appspot.com/17568009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@208442 0039d316-1c4b-4281-b951-d872f2087c98
* mac: Update clients of scoped_nsobject.h.thakis@chromium.org2013-06-2423-84/+90
| | | | | | | | | | | | | | | | | | | | | | | | | | | 1.) The header is now in base/mac instead of base/memory 2.) The class is now in namespace base. This CL was created programmatically by running: 1.) git grep -l memory/scoped_nsobject.h | xargs sed -i -e 's/memory\/scoped_nsobject.h/mac\/scoped_nsobject.h/g' for f in $(git diff --name-only origin); do tools/sort-headers.py $f -f; done git commit -a -m headers # manually undo changes to gypi file git cl upload # patch set 1 2.) git grep -l 'scoped_nsobject<' | xargs sed -i -e 's/scoped_nsobject</base::scoped_nsobject</g' # manually undo comment changes in scoped_nsobject.h, tracking_area.h git commit -a -m format git cl upload # patch set 2 # Manually audit all files, file bugs and clean up bad clang-format decisions git cl upload # patch set 3 BUG=251957 TBR=mark@chromium.org Review URL: https://codereview.chromium.org/17593006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@208283 0039d316-1c4b-4281-b951-d872f2087c98
* [Win] App launcher drag/drop.koz@chromium.org2013-06-2011-28/+334
| | | | | | | | | | This allows icons to be dragged from the windows App Launcher to the taskbar. BUG=153335 Review URL: https://chromiumcodereview.appspot.com/17370003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@207608 0039d316-1c4b-4281-b951-d872f2087c98
* Use a direct include of strings headers, delete some strings forwarding headers.avi@chromium.org2013-06-202-2/+2
| | | | | | | | | | BUG=247723 TEST=everything compiles OK TBR=ben@chromium.org Review URL: https://codereview.chromium.org/17390010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@207507 0039d316-1c4b-4281-b951-d872f2087c98