summaryrefslogtreecommitdiffstats
path: root/ui/views/widget/widget.h
Commit message (Collapse)AuthorAgeFilesLines
* Plumb native AppWindow input region through to window shape under Aura.wez@chromium.org2013-11-061-1/+2
| | | | | | | | | | This CL also fixes gfk::NativeRegion leaks in DesktopRootWindowHost for Windows & X11. BUG=310932 Review URL: https://codereview.chromium.org/54983005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@233382 0039d316-1c4b-4281-b951-d872f2087c98
* Add always-on-top property to app windowstmdiep@chromium.org2013-10-111-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | The chrome.app.window API has been extended to include: - A new alwaysOnTop option for the create() function. - An AppWindow.isAlwaysOnTop() function to query the state of this property. - An AppWindow.setAlwaysOnTop() function to change this property after creation of the window. Changes involving native app windows: - Added apps::NativeAppWindow::SetAlwaysOnTop(). - Implemented IsAlwaysOnTop(), a function inherited from ui::BaseWindow but was left unimplemented for native app windows. Changes involving views: - Added IsAlwaysOnTop(). SetAlwaysOnTop() already existed. BUG=171597 TEST=browser_tests (PlatformAppBrowserTest.WindowsApiAlwaysOnTop). Test manually by creating an app that enables the alwaysOnTop option on window creation and changes the property after creation. Test Windows, Mac, ChromeOS and Linux. Review URL: https://codereview.chromium.org/26427002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@228160 0039d316-1c4b-4281-b951-d872f2087c98
* More tooltip related cleanupsky@chromium.org2013-10-021-2/+4
| | | | | | | | | | | | | | | | . Make font loopup go through instance method (rather than static). . Consolidate trimming tooltip code. . Expose TooltipManager on Widget and use it. . Move TrimTooltipToFit from TooltipManager to TooltipManagerWin (only place that needs it). . Make TooltipManager::GetMaxWidth() match that of aura. R=ben@chromium.org BUG=292738 Review URL: https://codereview.chromium.org/25744002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@226602 0039d316-1c4b-4281-b951-d872f2087c98
* Makes hiding window conditional when escape is pressed in move loopsky@chromium.org2013-09-251-1/+11
| | | | | | | | | | | | | | | | Hiding makes sense if a new browser window was created for the drag (as escape=revert, which means we're going to destroy the window). But if the drag isn't because of a new window (you selected all the tabs in a window and started dragging), then revert should move the window backs to its start location and stop. BUG=297054 TEST=see bug R=ben@chromium.org Review URL: https://codereview.chromium.org/24378002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@225189 0039d316-1c4b-4281-b951-d872f2087c98
* Remove NativeComboboxWin; consolidate Views Combobox code.msw@chromium.org2013-09-141-1/+1
| | | | | | | | | | | | | | | The Views Combobox is used by default on Win M30 (stable). This removes the deprecated native Windows control impl. The NativeComboboxViews impl is promoted to Combobox. Perform additional cleanup (remove wrapper, etc.). BUG=175843 TEST=Views Comboboxes (e.g. in the bookmark bubble) work as expected. R=sky@chromium.org Review URL: https://chromiumcodereview.appspot.com/22889018 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@223213 0039d316-1c4b-4281-b951-d872f2087c98
* Include transient and child widgets in win aura accessibility tree.dmazzoni@chromium.org2013-09-131-0/+4
| | | | | | | | | | | | | | | | | | | | | | | The accessibility tree is rooted at an HWND, so in Win Aura, that means a DesktopRootWindowHostWin. Previously the accessibility tree was formed by taking the native accessible for the DesktopRootWindowHostWin's widget's root view, and the accessible view hierarchy from there down. However, that was leaving out widgets aside from those already contained in a NativeViewHost - other child widgets but also transient windows like popups and dialogs. This change adds a new subclass of NativeViewAccessibilityWin for RootViews that grafts owned, non-child widgets (typically transient widgets) and any child widgets that aren't contained in a NativeViewHost, onto the accessibility tree by overriding the child enumeration and hit testing functions. BUG=260266,282667 Review URL: https://chromiumcodereview.appspot.com/23549029 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@223128 0039d316-1c4b-4281-b951-d872f2087c98
* linux_aura: Enforce minimum/maximum window size.erg@chromium.org2013-09-101-0/+4
| | | | | | | | | | This send min/max sizing information to the X server on Layout(). BUG=285387 Review URL: https://chromiumcodereview.appspot.com/23461042 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@222386 0039d316-1c4b-4281-b951-d872f2087c98
* rAc: Enforce a 3 second grace period for generated card bubble.estade@chromium.org2013-09-061-4/+11
| | | | | | | | | | Bubble may not be dismissed for the first 3 seconds (except by clicking on the Learn More link). The length of the grace period is subject to future tweaking. BUG=282671 Review URL: https://chromiumcodereview.appspot.com/23533030 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@221601 0039d316-1c4b-4281-b951-d872f2087c98
* Fixes focus traversal bugsky@chromium.org2013-09-051-2/+2
| | | | | | | | | | | | | | | | | When on the last focusable view in a Container FocusManager would start searching from Widget. Problem is child Widgets share the same FocusManager, meaning focus in a child widget wraps to the parent, which is unexpected in most situations. In theory there could be situations where we should wrap to the parent, but I don't think we have any. BUG=276213 TEST=covered by test R=dmazzoni@chromium.org Review URL: https://chromiumcodereview.appspot.com/23475012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@221437 0039d316-1c4b-4281-b951-d872f2087c98
* Set the WM_CLASS property of X11 windows in Linux Aura build.mgiuca@chromium.org2013-09-021-0/+5
| | | | | | | | | | | | | | | | This sets the WM_CLASS for both browser and app windows, mimicking the behaviour of the existing GTK implementation. Now app windows have the correct grouping, icon and title in the Ubuntu Unity window manager. Also, .desktop shortcut files generated from the Aura build now have the appropriate StartupWMClass key set (which was previously only set by the GTK build). BUG=174743 Review URL: https://chromiumcodereview.appspot.com/23093020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@220801 0039d316-1c4b-4281-b951-d872f2087c98
* Makes aura correctly restore maximized windowssky@chromium.org2013-09-021-3/+3
| | | | | | | | | | | | | | | | We were trying to animate top level windows on close, which results in altering the bounds. Since the bounds are saved to disk and used when restoring this meant we were changed the saved bounds in bad ways. Fix is to disable animations on top level windows (OS does this). BUG=280461 TEST=start chrome, maximize window, close chrome, restart and make sure window is restored maximized. R=ananta@chromium.org Review URL: https://chromiumcodereview.appspot.com/23589003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@220771 0039d316-1c4b-4281-b951-d872f2087c98
* - Remove redundant views::View::accelerator_registration_delayed_pkotwicz@chromium.org2013-08-231-3/+7
| | | | | | | | | | | | - Remove unused parameters to views::View::NativeViewHierarchyChanged() - Split views::Widget::NotifyNativeViewHierarchyWillChange() into views::Widget::NotifyNativeViewHierarchyWillChange() and views::Widget::NotifyNativeViewHierarchyChanged() BUG=276729 TEST=ViewTest.NativeViewHierarchyChanged Review URL: https://chromiumcodereview.appspot.com/23068029 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@219363 0039d316-1c4b-4281-b951-d872f2087c98
* Removes Widget::GetChildViewParent, it's not needed anymore.sky@chromium.org2013-08-221-6/+0
| | | | | | | | | | BUG=none TEST=none R=sadrul@chromium.org Review URL: https://chromiumcodereview.appspot.com/22889019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@219077 0039d316-1c4b-4281-b951-d872f2087c98
* Move web contents modal dialog widget creation to ui/viewswittman@chromium.org2013-08-211-0/+8
| | | | | | | | | | | | | | | | | Widget creation for web contents modal dialogs does not need to depend on anything outside of ui/views and should live in ui/views. This allows it to be used by code in chrome/browser/chromeos, which cannot depend on chrome/browser/ui/views. This change refactors the creation to take a gfx::NativeWidget rather than a web_modal::WebContentsModalDialogHost, and moves the widget creation from chrome/browser/ui/views to ui/views. BUG=271746 Review URL: https://chromiumcodereview.appspot.com/23332006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@218698 0039d316-1c4b-4281-b951-d872f2087c98
* Invoke the inactive frame rendering code in WM_WINDOWPOSCHANGING instead of ↵ananta@chromium.org2013-08-201-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | WM_WINDOWPOSCHANGED. This ensures that we can draw the caption as active in the browser frame before it loses activation. This also alleviates the need to send a fake WM_NCACTIVATE message from the DesktopRootWindowHost, which has sideeffects as seen in bug https://code.google.com/p/chromium/issues/detail?id=273194 where the extension popup shows up and destroys itself when the browser frame is activated via the sent WM_NCCACTIVATE message. Changes in this CL are as below:- 1. Removed the virtual function SetInactiveRenderingDisabled from the DesktopRootWindowHost interface. 2. Added a new virtual function HandleVisibilityChanging to the HWNDMessageHandlerDelegate interface. This is invoked from the HWNDMessageHandler::OnWindowPosChanging function. 3. Added a new virtual function OnNativeWidgetVisibilityChanging to the NativeWidgetDelegate interface and the corresponding implementation in the widget. This fires the OnWidgetVisibilityChanging notification on the WidgetObserver which is implemented by the BubbleDelegate. 3. Read the delegate_->IsInactiveRenderingDisabled result at the beginning of the HWNDMessageHandler::OnNCActivate function. This is needed because the delegate_->HandleActivationChanged call resets the inactive rendering flag. Tested this with avatar bubble/extension popups in glass/classic mode. Works well. BUG=273194 R=sky@chromium.org Review URL: https://codereview.chromium.org/23072016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@218568 0039d316-1c4b-4281-b951-d872f2087c98
* Introduces the const version of GetInputMethod().yukishiino@chromium.org2013-07-201-1/+5
| | | | | | | | | | | There are cases that we need the status of the input method, but no need to change it. This CL introduces {View,Widget}::GetInputMethod() const. TEST=none Review URL: https://chromiumcodereview.appspot.com/18238018 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@212798 0039d316-1c4b-4281-b951-d872f2087c98
* Create some platform independent code for the Autofill dialog post-submit ↵dbeam@chromium.org2013-07-131-0/+4
| | | | | | | | | | | | | | bubble. Also, implement the views version. BUG=243574 R=estade@chromium.org NOTRY=true Review URL: https://chromiumcodereview.appspot.com/16467005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@211551 0039d316-1c4b-4281-b951-d872f2087c98
* Remove unused views::Widget::InitParams::transient parameterpkotwicz@chromium.org2013-07-021-1/+0
| | | | | | | | | | | BUG=None TEST=None R=jamescook TBR=sky Review URL: https://chromiumcodereview.appspot.com/18129005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@209798 0039d316-1c4b-4281-b951-d872f2087c98
* ExternalTabContainerWin's widgets should be opaque and not fade-in.grt@chromium.org2013-06-271-5/+17
| | | | | | | | | | r190446 accidentally made Chrome Frame windows transparent and invisible (except when viewed via RDP). This change brings them back. BUG=223560,237579 Review URL: https://chromiumcodereview.appspot.com/14263020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@208886 0039d316-1c4b-4281-b951-d872f2087c98
* Remove Widget::GetCurrentEvent().erg@chromium.org2013-06-251-11/+0
| | | | | | | | BUG=none Review URL: https://chromiumcodereview.appspot.com/17571014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@208393 0039d316-1c4b-4281-b951-d872f2087c98
* Hover effects in views should not be invoked when mouse events are disabledtdanderson@chromium.org2013-06-181-0/+3
| | | | | | | | | | | | | | | | | | | | | | Make an early return in Widget::OnMouseEvent() if mouse events are disabled, since in this case the mouse cursor is not visible and so no new hover effects should be invoked. Added the new helper function IsMouseEventsEnabled() to native_widget_*. This returns true for all native widget types except for native_widget_aura, where the cursor client is queried for the mouse event enabled state. Moved IsMouseHovered() to view.h. This function now returns false if either a) the mouse cursor is not within the view's bounds or, b) mouse events are disabled. BUG=239363 Review URL: https://chromiumcodereview.appspot.com/15738024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@207097 0039d316-1c4b-4281-b951-d872f2087c98
* This CL fixes paint artifacts in immersive fullscreen as a result of calls ↵pkotwicz@chromium.org2013-06-121-1/+1
| | | | | | | | | | | to Widget::SchedulePaintInRect() not being rerouted to TopContainerView's layer. BUG=247243 TEST=Manual, see bug Review URL: https://chromiumcodereview.appspot.com/16525002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@205974 0039d316-1c4b-4281-b951-d872f2087c98
* Ensure that keystrokes sent to desktop chrome AURA don't make their way into ↵ananta@chromium.org2013-06-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | accelerator handling in ASH. ASH registers a focus manager factory which creates focus managers for top level widgets with a FocusManager::Delegate interface implementation which is used to process accelerators. We allow only one focus manager factory to exist at any given time, which means that the focus manager factory for ASH gets notified for subsequent focus manager creation requests, some of them from the desktop. This results in keystrokes for desktop widgets making their way to the ASH focus manager delegate. Fix is to pass in a bool flag desktop_widget in the NativeWidgetDelegate::OnNativeWidgetCreated method which is implemented by the Widget class. This flag when true causes the ASH focus manager to default to the default focus manager behavior, which is to create focus managers with a NULL delegate. BUG=246821 R=sky@chromium.org Review URL: https://codereview.chromium.org/15882009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@204331 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 203217 "Revert 202987 "Reorder the NativeViews attached t..."avi@chromium.org2013-05-311-0/+9
| | | | | | | | | | I reverted it yesterday because I thought it was burning the Aura tree. It turned out to be innocent so I'm putting it back. TBR=avi@chromium.org Review URL: https://codereview.chromium.org/16256004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@203402 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 202987 "Reorder the NativeViews attached to a view via th..."avi@chromium.org2013-05-301-9/+0
| | | | | | | | | | Suspected of burning the Aura bot to the ground. TBR=pkotwicz@chromium.org Review URL: https://codereview.chromium.org/15701017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@203217 0039d316-1c4b-4281-b951-d872f2087c98
* Reorder the NativeViews attached to a view via the kViewHostKey according to ↵pkotwicz@chromium.org2013-05-291-0/+9
| | | | | | | | | | | | the position of the view in the view hierarchy. BUG=237650 Test=NativeWidgetAuraTest.* Review URL: https://chromiumcodereview.appspot.com/15114002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@202987 0039d316-1c4b-4281-b951-d872f2087c98
* Renames Rename CalculateOffsetToAncestorWithLayer() to GetLayer().pkotwicz@chromium.org2013-05-261-6/+2
| | | | | | | | | | | Refactors View::ReorderLayers() so that it does not call into the widget anymore. Bug=237650 Test=None Review URL: https://chromiumcodereview.appspot.com/15922004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@202333 0039d316-1c4b-4281-b951-d872f2087c98
* Cross-platform DefaultThemeProvider.groby@chromium.org2013-05-251-2/+2
| | | | | | | | | | Not yet used as default for all windows on OSX, since some code treats ThemeService/ThemeProvider as interchangeable. BUG=241908 Review URL: https://chromiumcodereview.appspot.com/15240002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@202283 0039d316-1c4b-4281-b951-d872f2087c98
* modify View::ViewHierarchyChanged signaturekuan@chromium.org2013-05-131-1/+1
| | | | | | | | | | | | | | - move pararms to a new struct, add a new |move_view| which is used when a view is moved from one parent to another - this allows NativeViewHost to not remove a reparented view from its widget if its previous and new parents belong to the same widget; this saves resources, and stops spurious webkitvisibilitychange events. - restructured test code and added test BUG=236826 TEST=all tests still pass. TBR=jochen (for content/shell/shell_aura.cc, simple change for ViewHierarchyChanged signature) Review URL: https://chromiumcodereview.appspot.com/14999006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@199671 0039d316-1c4b-4281-b951-d872f2087c98
* Introduces SynthesizeMouseMoveEvent to views::Widget.mukai@chromium.org2013-05-031-6/+4
| | | | | | | | | | | | | TabStrip has its own logic to refresh the mouse hover state. This CL moves the logic to views::Widget, and shared with message_center::MessageCenterView, because it also needs similar feature. See crbug.com/237049 for the actual situation. BUG=237049 Review URL: https://chromiumcodereview.appspot.com/14637016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@198053 0039d316-1c4b-4281-b951-d872f2087c98
* Cleanup: remove NotifyAccessibilityEvent from views::Widget.dmazzoni@chromium.org2013-04-081-12/+0
| | | | | | | | | BUG=none Review URL: https://chromiumcodereview.appspot.com/13524005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192951 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 192525 "Context menu on views must show on mouse down for..."tkent@chromium.org2013-04-051-2/+0
| | | | | | | | | | | | | | > Context menu on views must show on mouse down for non-WIN. > This is mostly a copy of https://chromiumcodereview.appspot.com/12395010 which was reverted due to a regression (https://code.google.com/p/chromium/issues/detail?id=189100). I have attempted to fix that regression here. > > BUG=189100,179381 > > Review URL: https://chromiumcodereview.appspot.com/12529012 TBR=varunjain@chromium.org Review URL: https://codereview.chromium.org/13565004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192532 0039d316-1c4b-4281-b951-d872f2087c98
* Context menu on views must show on mouse down for non-WIN.varunjain@chromium.org2013-04-051-0/+2
| | | | | | | | | | This is mostly a copy of https://chromiumcodereview.appspot.com/12395010 which was reverted due to a regression (https://code.google.com/p/chromium/issues/detail?id=189100). I have attempted to fix that regression here. BUG=189100,179381 Review URL: https://chromiumcodereview.appspot.com/12529012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@192525 0039d316-1c4b-4281-b951-d872f2087c98
* Implement Windows accessibility for Aura.dmazzoni@chromium.org2013-03-061-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Windows accessibility requires posting notifications on an HWND, then listening for messages on that HWND and routing them back to the appropriate child object. Before, that code was implemented in NativeWidgetWin because a NativeWidget corresponded to an HWND. Now with Aura, a Widget doesn't necessarily have an HWND, so there's now a new class, NativeWidgetAccessibilityWin, that's a companion to NativeViewAccessibilityWin and handles this abstraction. Refactored some code so that we don't need screen reader detection or dynamic HWND annotation (in methods like SetAccessibilityRole, etc.) anymore. Tested with Windows screen readers. Web content is still not accessible in Aura, that will be the next changelist. Win 8 in Metro mode is not accessible yet, that's going to require further changes. BUG=175156 Review URL: https://chromiumcodereview.appspot.com/12335075 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@186382 0039d316-1c4b-4281-b951-d872f2087c98
* Makes running a move loop ignore events from a source other than thesky@chromium.org2013-02-151-5/+12
| | | | | | | | | | | | | one that initiated the drag. BUG=172950 TEST=none R=sadrul@chromium.org Review URL: https://chromiumcodereview.appspot.com/12212177 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@182651 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor modality-specific behavior from ConstrainedWindowViews to ↵wittman@chromium.org2013-02-061-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | WebContentsModalDialogManager This CL moves the Views web contents modal dialog code towards the interface described in the associated bug. Similar changes for Gtk and Cocoa will be made in follow-on CLs. To that end, this CL contains the following detailed changes: - Introduce NativeWebContentsModalDialogManager for providing platform-specific UI functionality within WebContentsModalDialogManager, and implement NativeWebContentsModalDialogManagerViews. - Under Views, move to a model where WebContentsModalDialogManager listens for closing events rather than requiring notifications from the widget. Continue using the existing model on Gtk and Cocoa, pending refactoring there. - Provide a mechanism for disabling mouse-driven dialog movement on Widget. - Remove NativeConstrainedWindowDelegate and subclasses as they're no longer necessary due to the above two items. - Update tests to account for closing notification to WebContentsModalDialogManager being done from the event loop, rather than synchronously. - Add temporary ConstrainedWindowViews factory function to minimize code churn at construction sites during this refactoring. The next planned steps in this work are: - Refactor ConstrainedWindow subclasses under Gtk and Cocoa to listen for closing events rather than requiring notifications from the widget. - Refactor uses of WebContentsModalDialog interface to use platform-specific equivalents in platform-specific code and, in platform-independent code, invoke functionality via some other mechanism: platform_utils, WebContentsModalDialogManager, ???. Remove WebContentsModalDialog interface. - Generalize WebContentsModalDialogManagerDelegate positioning interface and write WebContentsModalDialogManager::ShowDialog using the new interface. BUG=157161 Review URL: https://chromiumcodereview.appspot.com/12045037 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@180904 0039d316-1c4b-4281-b951-d872f2087c98
* Implement rough new Views task manager style.msw@chromium.org2013-01-171-1/+1
| | | | | | | | | | | | | | | | | | | When --enable-new-dialog-style is specified: 1) Remove the standard task manager frame and allow the 2) Use the non-native button styling (via LabelButton). 3) TODO: Use table_view_views or support transparency with table_view_win. 4) TODO: Use LabelButton ("Views Style") or "Chrome Style" for buttons? ( see pics at http://crbug.com/166075#c14 and http://crbug.com/166075#c16 ) Minor dialog layout refactoring, comment typo fix. BUG=166075 TEST=Task Manager looks closer to the new dialog style. R=sky@chromium.org Review URL: https://chromiumcodereview.appspot.com/11975038 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177515 0039d316-1c4b-4281-b951-d872f2087c98
* More work to make ash_unittests pass when we require context.erg@chromium.org2013-01-091-3/+11
| | | | | | | | | | | With the context checking DCHECK, ash_unittests and unit_tests now run on chromeos. BUG=161882 Review URL: https://chromiumcodereview.appspot.com/11801027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@175892 0039d316-1c4b-4281-b951-d872f2087c98
* Desktop aura: Expand what the ViewsDelegate can do to new windows.erg@chromium.org2013-01-041-0/+3
| | | | | | | | | | | | | | | | | | | | | | (This is a reland of r173539, adding early bails to some implementations of OnBeforeWidgetInit so that we don't clobber an already set Widget::InitParams::native_widget.) There are actual cases where we have to show dialogs with no parent or context, when there are no browser windows. All of the cases that I can find go through the CreateWindow() interface. CreateWindow() now explicitly sets InitParams::top_level to true. The ViewsDelegate now can do arbitrary manipulations on the InitParams so that when top_level is true and we have no context, we either create a native_widget or set the context based on desktop type. BUG=165759 TBR=ben@chromium.org (who did the original review) First Review URL: https://chromiumcodereview.appspot.com/11578014 Review URL: https://chromiumcodereview.appspot.com/11758002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@175131 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 173539ddorwin@chromium.org2012-12-181-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | Primary suspect in FocusTest and SelectDefault interactive_ui_tests on Win Aura: http://build.chromium.org/p/chromium.win/builders/Win%20Aura/builds/25127 > Desktop aura: Expand what the ViewsDelegate can do to new windows. > > There are actual cases where we have to show dialogs with no parent or context, > when there are no browser windows. All of the cases that I can find go through > the CreateWindow() interface. > > CreateWindow() now explicitly sets InitParams::top_level to true. The > ViewsDelegate now can do arbitrary manipulations on the InitParams so that when > top_level is true and we have no context, we either create a native_widget or > set the context based on desktop type. > > BUG=165759 > > > Review URL: https://chromiumcodereview.appspot.com/11578014 TBR=erg@chromium.org Review URL: https://codereview.chromium.org/11615019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@173654 0039d316-1c4b-4281-b951-d872f2087c98
* events: Update mouse-event handlers to not return EventResult.sadrul@chromium.org2012-12-181-1/+1
| | | | | | | | | | This is the last step. Once this is done, we can possibly hide EventResult. BUG=163618 Review URL: https://codereview.chromium.org/11592011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@173653 0039d316-1c4b-4281-b951-d872f2087c98
* Desktop aura: Expand what the ViewsDelegate can do to new windows.erg@chromium.org2012-12-171-0/+3
| | | | | | | | | | | | | | | | | | There are actual cases where we have to show dialogs with no parent or context, when there are no browser windows. All of the cases that I can find go through the CreateWindow() interface. CreateWindow() now explicitly sets InitParams::top_level to true. The ViewsDelegate now can do arbitrary manipulations on the InitParams so that when top_level is true and we have no context, we either create a native_widget or set the context based on desktop type. BUG=165759 Review URL: https://chromiumcodereview.appspot.com/11578014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@173539 0039d316-1c4b-4281-b951-d872f2087c98
* events: Update key-event handlers to not return EventResult.sadrul@chromium.org2012-12-141-1/+1
| | | | | | | | BUG=163618 Review URL: https://codereview.chromium.org/11570012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@173171 0039d316-1c4b-4281-b951-d872f2087c98
* events: Update scroll and touch handlers to not return EventResult.sadrul@chromium.org2012-12-141-2/+2
| | | | | | | | BUG=163618 Review URL: https://codereview.chromium.org/11568006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@173166 0039d316-1c4b-4281-b951-d872f2087c98
* Desktop aura: Start removing views::Widget::CreateWindow()erg@chromium.org2012-12-121-0/+9
| | | | | | | | | | | | | | | | | | We have lots of code in chrome which just assumes that it can throw up a dialog with no context. This will not work correctly in ash/aura combo builds. This is part 1 of threading context through chrome so each dialog will be displayed on the correct desktop, which is a subgoal of removing the global StackingClient. Widget::CreateWindow() and Widget::CreateWindowWithBounds() will be transitioned to Widget::CreateWindowWithContext() and Widget::CreateWindowWithContextAndBounds(). BUG=161882 Review URL: https://codereview.chromium.org/11519022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@172650 0039d316-1c4b-4281-b951-d872f2087c98
* Gets bubbles working again on desktop aura.sky@chromium.org2012-12-101-1/+1
| | | | | | | | | | | BUG=none TEST=none R=ben@chromium.org,erg@chromium.org Review URL: https://chromiumcodereview.appspot.com/11280308 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@172137 0039d316-1c4b-4281-b951-d872f2087c98
* views cleanup: Merge parent and parent_widget.erg@chromium.org2012-12-061-4/+0
| | | | | | | | | | | | According to Ben, parent_widget is a leftover from when we had NativeViewGtk. It isn't needed now and everything should be handleable by the normal parent. BUG=161882 Review URL: https://chromiumcodereview.appspot.com/11299317 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171590 0039d316-1c4b-4281-b951-d872f2087c98
* Desktop aura: Continue threading context through views.erg@chromium.org2012-12-061-3/+11
| | | | | | | | | | | | | | (This reland removes everything I did that messed with widget ownership, which in retrospect, probably was wrong.) These threads a .context parameter through most tests in views_unittests to widget creation (the handful that remain are Hard and will be addressed in a separate patch; I'm trying to keep these more manageable.) TBR=ben@chromium.org BUG=161882 First Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=171196 Review URL: https://codereview.chromium.org/11445019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171530 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 171196 due to multiple memory leakseugenis@chromium.org2012-12-051-11/+3
| | | | | | | | | | | | | | | > Desktop aura: Continue threading context through views. > > These threads a .context parameter through most tests in views_unittests to widget creation (the handful that remain are Hard and will be addressed in a separate patch; I'm trying to keep these more manageable.) > > BUG=161882 > > > Review URL: https://chromiumcodereview.appspot.com/11416251 TBR=erg@chromium.org git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171210 0039d316-1c4b-4281-b951-d872f2087c98
* Desktop aura: Continue threading context through views.erg@chromium.org2012-12-051-3/+11
| | | | | | | | | | | These threads a .context parameter through most tests in views_unittests to widget creation (the handful that remain are Hard and will be addressed in a separate patch; I'm trying to keep these more manageable.) BUG=161882 Review URL: https://chromiumcodereview.appspot.com/11416251 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171196 0039d316-1c4b-4281-b951-d872f2087c98