summaryrefslogtreecommitdiffstats
path: root/views
Commit message (Collapse)AuthorAgeFilesLines
* Alert boxes shouldn't have a taskbar presence.ben@chromium.org2011-05-181-0/+3
| | | | | | | | | | | | Basically we were ignoring parent/owner window specification in CreateChromeWindow. I need to make InitParams have more of an API, but not in this CL. BUG=80947 TEST=see bug Review URL: http://codereview.chromium.org/7044011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85799 0039d316-1c4b-4281-b951-d872f2087c98
* Clean up a few things now that specialized window types are subclasses of ↵ben@chromium.org2011-05-183-31/+14
| | | | | | | | | | Window/Widget. BUG=72040 TEST=none Review URL: http://codereview.chromium.org/7045010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85797 0039d316-1c4b-4281-b951-d872f2087c98
* Fix some rendering glitches in the custom frame by re-introducing nasty old ↵ben@chromium.org2011-05-184-28/+125
| | | | | | | | | | code since I have found no way to avoid using it. BUG=79640 TEST=see bug Review URL: http://codereview.chromium.org/7038021 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85774 0039d316-1c4b-4281-b951-d872f2087c98
* Add support for checkboxes in menus that contain icons.atwilson@chromium.org2011-05-181-0/+43
| | | | | | | | | | | Updated NativeMenuWin::OnDrawItem() to properly render checkbox items. BUG=82996 TEST=Install background app on windows, right click on status tray icon, see checkbox and icon in menu. Review URL: http://codereview.chromium.org/7041001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85771 0039d316-1c4b-4281-b951-d872f2087c98
* Re-land:ben@chromium.org2011-05-187-64/+52
| | | | | | | | | | | | Consolidate ShouldUseNativeFrame/AlwaysUseNativeFrame/UseNativeFrame spaghetti. See earlier commit in log for full description. THIS WILL BREAK chrome_frame_tests! BUG=none TEST=none Review URL: http://codereview.chromium.org/7036011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85765 0039d316-1c4b-4281-b951-d872f2087c98
* Fix a crash when list of devices is NULL (e.g. over VNC/NX sessions).sadrul@chromium.org2011-05-181-1/+2
| | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/7044003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85763 0039d316-1c4b-4281-b951-d872f2087c98
* Move SystemMonitor to base/.willchan@chromium.org2011-05-181-2/+2
| | | | | | | | | | | | | | | I plan to use SystemMonitor in net/. Fix up the Mac implementation not to use Cocoa APIs since @interface is not allowed in base. BUG=none TEST=none Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=85732 Review URL: http://codereview.chromium.org/7015017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85737 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 85732 (broke build) - Move SystemMonitor to base/.willchan@chromium.org2011-05-181-2/+2
| | | | | | | | | | | | | | | | I plan to use SystemMonitor in net/. Fix up the Mac implementation not to use Cocoa APIs since @interface is not allowed in base. BUG=none TEST=none Review URL: http://codereview.chromium.org/7015017 TBR=willchan@chromium.org Review URL: http://codereview.chromium.org/7042003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85734 0039d316-1c4b-4281-b951-d872f2087c98
* Move SystemMonitor to base/.willchan@chromium.org2011-05-181-2/+2
| | | | | | | | | | | | | I plan to use SystemMonitor in net/. Fix up the Mac implementation not to use Cocoa APIs since @interface is not allowed in base. BUG=none TEST=none Review URL: http://codereview.chromium.org/7015017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85732 0039d316-1c4b-4281-b951-d872f2087c98
* Do not handle Enable and Disable signals of IBusInputContext.penghuang@chromium.org2011-05-182-27/+1
| | | | | | | | | | | | | | | Becasue Enable and Disable are for indicating if an IBusInputContext is associated with an input method engine and the engine is active. So InputMethodIBus should not use them to decide if the input method system is enabled or not. BUG=None TEST=Manually Review URL: http://codereview.chromium.org/6975013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85718 0039d316-1c4b-4281-b951-d872f2087c98
* Synchronize window resize in MoveMouseToCenterAndPress on linux.oshima@google.com2011-05-181-0/+2
| | | | | | | | | | | | I tried to synchronize it in Show methods (in test mode), but it didn't work because next task is posted before show and running message loop executes the task before the window gets resized. For now, I decided to put the code in ui_controls. Let me know if you have suggestion where to put this code. BUG=82219 TEST=bookmark test and menu_item_view tests are no longer flaky without gtk hack. Review URL: http://codereview.chromium.org/6982031 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85711 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 85666 - Consolidate ↵ben@chromium.org2011-05-187-54/+65
| | | | | | | | | | | | | | | | | | | | | | | | | | | | ShouldUseNativeFrame/AlwaysUseNativeFrame/UseNativeFrame spaghetti. Now there is: ... window::ShouldUseNativeFrame() Which is basically just a pass-thru to WindowWin::ShouldUseNativeFrame() ... which can be overridden by subclasses. Native-Frame is a windows-only concept but keeping the API on Window means I don't have to update a lot of call sites. Window also gains a FrameType state member that toggles three states - default, force-native and force-custom. This supercedes the "AlwaysUseNativeFrame/AlwaysUseCustomFrame" methods on NonClientView. I have also hooked up a context menu item behind a command line flag --debug-enable-frame-toggle that allows the frame type for an individual window to be toggled, useful for debugging. BUG=none TEST=none Review URL: http://codereview.chromium.org/7036014 TBR=ben@chromium.org Review URL: http://codereview.chromium.org/6975037 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85702 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 85668 - These two un-reviewed lines made it into my last commit and ↵ben@chromium.org2011-05-181-1/+2
| | | | | | | | | weren't part of the change. Removing. TBR=ben@chromium.org Review URL: http://codereview.chromium.org/7039028 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85701 0039d316-1c4b-4281-b951-d872f2087c98
* These two un-reviewed lines made it into my last commit and weren't part of ↵ben@chromium.org2011-05-171-2/+1
| | | | | | the change. Removing. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85668 0039d316-1c4b-4281-b951-d872f2087c98
* Consolidate ShouldUseNativeFrame/AlwaysUseNativeFrame/UseNativeFrame spaghetti.ben@chromium.org2011-05-177-65/+54
| | | | | | | | | | | | | | | | | | | | | | | Now there is: ... window::ShouldUseNativeFrame() Which is basically just a pass-thru to WindowWin::ShouldUseNativeFrame() ... which can be overridden by subclasses. Native-Frame is a windows-only concept but keeping the API on Window means I don't have to update a lot of call sites. Window also gains a FrameType state member that toggles three states - default, force-native and force-custom. This supercedes the "AlwaysUseNativeFrame/AlwaysUseCustomFrame" methods on NonClientView. I have also hooked up a context menu item behind a command line flag --debug-enable-frame-toggle that allows the frame type for an individual window to be toggled, useful for debugging. BUG=none TEST=none Review URL: http://codereview.chromium.org/7036014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85666 0039d316-1c4b-4281-b951-d872f2087c98
* Fixes 82927 by rolling back part of a change I made this morning. We can't ↵ben@chromium.org2011-05-171-0/+6
| | | | | | | | | | | hide the window during WM_NCLBUTTONDOWN after all. BUG=82927 TEST=none TBR=sky Review URL: http://codereview.chromium.org/7017021 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85658 0039d316-1c4b-4281-b951-d872f2087c98
* Makes Transform concrete. Fixes bug in coordinate conversion and makes all ↵sky@chromium.org2011-05-174-150/+142
| | | | | | | | | | | | conversion routines calculate the transform in the same way. Lastly fixes bug in touch_factory.cc that was causing crashes on my machine when running views_unittests. Oh, and adds some tests of conversion methods. BUG=none TEST=none R=ben@chromium.org,sadrul@chromium.org Review URL: http://codereview.chromium.org/7033002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85635 0039d316-1c4b-4281-b951-d872f2087c98
* Fixes more default non-client frame painting.ben@chromium.org2011-05-174-4/+20
| | | | | | | | http://crbug.com/22704 TEST=see bug Review URL: http://codereview.chromium.org/7030025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85628 0039d316-1c4b-4281-b951-d872f2087c98
* views: Convert while loop to for loop on View::Contains().tfarina@chromium.org2011-05-172-4/+24
| | | | | | | | | | | BUG=None TEST=out/Debug/views_unittests --gtest_filter=ViewTest.Contains R=sky@chromium.org Review URL: http://codereview.chromium.org/6973069 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85572 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 85528 - We were returning the wrong value of ShouldUseNativeFrame for ↵ben@chromium.org2011-05-162-3/+2
| | | | | | | | | | | | | | | popup windows when a theme is installed and the rest of the desktop is in glass mode. We were returning false instead of true, even though themes are applied only to tabbed browser windows. This means that even though the window was rendered using the glass frame (due to a correct check somewhere else) the widget calculated the client size incorrectly. http://crbug.com/80774 TEST=none Review URL: http://codereview.chromium.org/7015057 TBR=ben@chromium.org Review URL: http://codereview.chromium.org/7034019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85536 0039d316-1c4b-4281-b951-d872f2087c98
* We were returning the wrong value of ShouldUseNativeFrame for popup windows ↵ben@chromium.org2011-05-162-2/+3
| | | | | | | | | | | | when a theme is installed and the rest of the desktop is in glass mode. We were returning false instead of true, even though themes are applied only to tabbed browser windows. This means that even though the window was rendered using the glass frame (due to a correct check somewhere else) the widget calculated the client size incorrectly. http://crbug.com/80774 TEST=none Review URL: http://codereview.chromium.org/7015057 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85528 0039d316-1c4b-4281-b951-d872f2087c98
* base/i18n: Put break_iterator* into namespace i18n.tfarina@chromium.org2011-05-162-3/+4
| | | | | | | | | | | BUG=None TEST=None R=brettw@chromium.org Review URL: http://codereview.chromium.org/7034012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85525 0039d316-1c4b-4281-b951-d872f2087c98
* Fix typo in GetTouchEventTypepenghuang@chromium.org2011-05-161-1/+1
| | | | | | | | | | BUG=touchui crashes in debug build TEST=manually Review URL: http://codereview.chromium.org/7034011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85520 0039d316-1c4b-4281-b951-d872f2087c98
* InputMethodIBus::IsActive should return true, if context_ is not NULL.penghuang@chromium.org2011-05-161-1/+1
| | | | | | | | | | | | | RHWVV will disable inpput method support in webkit by host_->SetInputMethodActive(false), if InputMethodIBus::IsActive() returns false. And then webkit will not notify chrome any change of input (RHWVV::ImeUpdateTextInputState() will not be called), and text_input_type_ will not be changed and the keyboard events will not be sent to ibus too. So ibus will not be enabled by keyboard events for ever. BUG=sometime input method does not work in web page TEST=manually Review URL: http://codereview.chromium.org/7013057 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85499 0039d316-1c4b-4281-b951-d872f2087c98
* [Views/GTK] also suppress the OnClicked signal when invoked ↵jochen@chromium.org2011-05-162-17/+23
| | | | | | | | | | | | gtk_radio_button_set_group BUG=59872 TEST=as described in the bug Review URL: http://codereview.chromium.org/7011035 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85483 0039d316-1c4b-4281-b951-d872f2087c98
* Added explicit RemoveObserver in dtor of WidgetGtk.altimofeev@chromium.org2011-05-161-0/+3
| | | | | | | | | BUG=chromium-os:14885 TEST=Sign in as a new user, sign out works fine. Review URL: http://codereview.chromium.org/6932034 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85478 0039d316-1c4b-4281-b951-d872f2087c98
* Fix touch build for unit tests.sky@chromium.org2011-05-141-1/+1
| | | | | | | | | | | R=ben@chromium.org TBR=ben@chromium.org BUG=none TEST=none Review URL: http://codereview.chromium.org/7015060 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85352 0039d316-1c4b-4281-b951-d872f2087c98
* Fix touch build.sky@chromium.org2011-05-131-0/+1
| | | | | | | | | | BUG=none TEST=none R=ben@chromium.org Review URL: http://codereview.chromium.org/6969076 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85350 0039d316-1c4b-4281-b951-d872f2087c98
* Workaround for menu crash.oshima@google.com2011-05-131-3/+5
| | | | | | | | | | | | | | | I don't fully understand how this can happen because handler should not exist if handler_id is 0. There may be some undocumented behavior in gtk. I couldn't reproduce this on my machine either (but i've seen on tester's machine) so this is hypothetical workaround that should fix this. BUG=chromium-os:15212 TEST=see bug for reprostep Review URL: http://codereview.chromium.org/7013058 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85346 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor Edit to have one Undo/Redooshima@google.com2011-05-135-289/+283
| | | | | | | | | | | Always use Redo() to modify the text. BUG=none TEST=new tests added Review URL: http://codereview.chromium.org/7011025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85344 0039d316-1c4b-4281-b951-d872f2087c98
* This CL increases the menu items size and the spacing between the status icons.saintlou@chromium.org2011-05-131-1/+10
| | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/7013042 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85331 0039d316-1c4b-4281-b951-d872f2087c98
* Add MenuItemView API to add and remove items at a particular index.rhashimoto@chromium.org2011-05-133-41/+90
| | | | | | | | | | | | | The ChromeOS network menu needs to be able to change menu items dynamically. In order to convert this menu from Menu2 to MenuItemView it is cleanest to let MenuItemView own the code to modify the items. BUG=none TEST=included Review URL: http://codereview.chromium.org/6931039 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85313 0039d316-1c4b-4281-b951-d872f2087c98
* Re-land:ben@chromium.org2011-05-1350-715/+720
| | | | | | | | | | | | Split the hierarchy. Now with AutocompletePopup implementing SupportsWeakPtr as before. This fixes the Windows XP crashes in browser_tests. BUG=72040 TEST=none Review URL: http://codereview.chromium.org/7015051 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85298 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 85269 - Split the hierarchy. ben@chromium.org2011-05-1350-720/+715
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Widget ---- Now recognizes a supplied NativeWidget via InitParams. If this is specified then a default one is not created. Is now created directly rather than using a factory. NativeWidget creation is not performed until Init() is called. This means some functions that rely on a NativeWidget must not be called until _AFTER_ Init() (explains some of the function call reordering in this CL, e.g. moving SetOpacity() until after Init()). ResetLastMouseMovedFlag() moved to this API so that BaseTabStrip can call it in a cross-platform way. Made last remaining unimplemented methods on Widget pass-thru to NativeWidget implementations. * WidgetWin/WidgetGtk ---- The NativeWidget implementations now both require a NativeWidgetDelegate implementation upon construction. This is passed through the constructor by the static factory method NativeWidget::CreateNativeWidget and by subclasses such as WindowWin, BubbleWidgetWin, etc. Some classes that are constructed directly (e.g. LockWindow, in ChromeOS) never have a Widget created for them, so they create the Widget themselves in their base class initializer. Code in these classes (and their WindowWin/WindowGtk, BrowserFrameWin, BrowserFrameGtk subclasses) must now call GetWidget() etc to call Widget API methods since they are no longer subclasses. static_casting to this (and derived) types must now be done on the Widget's native_widget(). GetWindow() is renamed to GetContainingWindow() to avoid naming conflicts. * Window ---- Window is now a subclass of Widget. Now recognizes a supplied NativeWindow via InitParams. If this is specified then a default one is not created. Window::CloseWindow becomes an override of Widget::Close. CloseAllSecondaryWindows() becomes CloseAllSecondaryWidgets() and moves to widget.h IsAppWindow() is removed and replaced by set_is_secondary_widget on Widget. * MenuHost ---- Subclasses Widget now. * TabContentsViewViews ---- It looks like the Gtk-views code here was still using the old implementation of the Native version of this class - i.e. a class that subclassed TabContentsView AND WidgetGtk. A no-no. I had to write NativeTabContentsViewGtk, which is almost identical to NativeTabContentsViewWin with the Gtk bits of TabContentsViewGtk thrown in. * BrowserFrame ---- Platform-specific functionality is now restricted to BrowserFrameWin/BrowserFrameGtk behind a NativeBrowserFrame interface. Construction is exposed via a static factory method on NativeBrowserFrame. BrowserFrame becomes a concrete class that now subclasses Window. As a result, it no longer needs a GetWindow() accessor method, so people with a BrowserFrame* can just call Window methods directly on it. It is constructed directly, replacing the BrowserFrame::Create() method. NativeBrowserFrameDelegate is no longer needed. BrowserFrameChromeos is simpler as a couple of #ifdefs in BrowserFrame, so I got rid of that too. * AutocompletePopupWin/Gtk ---- No longer required. AutocompletePopupContentsView now just uses a Widget directly. * There is some lingering ugliness: - If you set a native_window field on Window::InitParams you must also manually set widget_init_params.native_widget. I will make InitParams do more of this automatically later. - It'd be nice for the ContentsView to be specified via InitParams. I'll get to this later. - NativeBrowserFrame could probably disappear as an interface. It only exists to provide a couple of methods that may be implemented in other ways. - delete_on_destroy should now be an ownership directionality enum. I will do this later. - Secondary-widgetness should somehow be inferred from transience. Later. - set_focus_on_creation for both the NativeWidgets should probably move to Widget if it is really needed. - WidgetWin/Gtk::SetInitialFocus seems like it could move to Widget. - I need to clean up function order in some cases. BUG=72040 TEST=none Review URL: http://codereview.chromium.org/7012006 TBR=ben@chromium.org Review URL: http://codereview.chromium.org/7011038 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85283 0039d316-1c4b-4281-b951-d872f2087c98
* Add views::MenuDelegate call for per-item fonts.rhashimoto@chromium.org2011-05-136-6/+36
| | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/6969046 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85274 0039d316-1c4b-4281-b951-d872f2087c98
* Split the hierarchy. ben@chromium.org2011-05-1350-715/+720
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Widget ---- Now recognizes a supplied NativeWidget via InitParams. If this is specified then a default one is not created. Is now created directly rather than using a factory. NativeWidget creation is not performed until Init() is called. This means some functions that rely on a NativeWidget must not be called until _AFTER_ Init() (explains some of the function call reordering in this CL, e.g. moving SetOpacity() until after Init()). ResetLastMouseMovedFlag() moved to this API so that BaseTabStrip can call it in a cross-platform way. Made last remaining unimplemented methods on Widget pass-thru to NativeWidget implementations. * WidgetWin/WidgetGtk ---- The NativeWidget implementations now both require a NativeWidgetDelegate implementation upon construction. This is passed through the constructor by the static factory method NativeWidget::CreateNativeWidget and by subclasses such as WindowWin, BubbleWidgetWin, etc. Some classes that are constructed directly (e.g. LockWindow, in ChromeOS) never have a Widget created for them, so they create the Widget themselves in their base class initializer. Code in these classes (and their WindowWin/WindowGtk, BrowserFrameWin, BrowserFrameGtk subclasses) must now call GetWidget() etc to call Widget API methods since they are no longer subclasses. static_casting to this (and derived) types must now be done on the Widget's native_widget(). GetWindow() is renamed to GetContainingWindow() to avoid naming conflicts. * Window ---- Window is now a subclass of Widget. Now recognizes a supplied NativeWindow via InitParams. If this is specified then a default one is not created. Window::CloseWindow becomes an override of Widget::Close. CloseAllSecondaryWindows() becomes CloseAllSecondaryWidgets() and moves to widget.h IsAppWindow() is removed and replaced by set_is_secondary_widget on Widget. * MenuHost ---- Subclasses Widget now. * TabContentsViewViews ---- It looks like the Gtk-views code here was still using the old implementation of the Native version of this class - i.e. a class that subclassed TabContentsView AND WidgetGtk. A no-no. I had to write NativeTabContentsViewGtk, which is almost identical to NativeTabContentsViewWin with the Gtk bits of TabContentsViewGtk thrown in. * BrowserFrame ---- Platform-specific functionality is now restricted to BrowserFrameWin/BrowserFrameGtk behind a NativeBrowserFrame interface. Construction is exposed via a static factory method on NativeBrowserFrame. BrowserFrame becomes a concrete class that now subclasses Window. As a result, it no longer needs a GetWindow() accessor method, so people with a BrowserFrame* can just call Window methods directly on it. It is constructed directly, replacing the BrowserFrame::Create() method. NativeBrowserFrameDelegate is no longer needed. BrowserFrameChromeos is simpler as a couple of #ifdefs in BrowserFrame, so I got rid of that too. * AutocompletePopupWin/Gtk ---- No longer required. AutocompletePopupContentsView now just uses a Widget directly. * There is some lingering ugliness: - If you set a native_window field on Window::InitParams you must also manually set widget_init_params.native_widget. I will make InitParams do more of this automatically later. - It'd be nice for the ContentsView to be specified via InitParams. I'll get to this later. - NativeBrowserFrame could probably disappear as an interface. It only exists to provide a couple of methods that may be implemented in other ways. - delete_on_destroy should now be an ownership directionality enum. I will do this later. - Secondary-widgetness should somehow be inferred from transience. Later. - set_focus_on_creation for both the NativeWidgets should probably move to Widget if it is really needed. - WidgetWin/Gtk::SetInitialFocus seems like it could move to Widget. - I need to clean up function order in some cases. BUG=72040 TEST=none Review URL: http://codereview.chromium.org/7012006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85269 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 85257 - Removing DeleteSoon() from WigetGtk so it behaves like WidgetWinglotov@google.com2011-05-134-20/+9
| | | | | | | | | | | | | This is a retry of http://codereview.chromium.org/7002029/ after it has been reverted because of the failing test BrowserTest.CloseWithAppMenuOpen (failed only on buildbot) BUG=chromium-os:15129 TEST=tests TBR=dpolukhin TBR=glotov@google.com Review URL: http://codereview.chromium.org/7016033 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85262 0039d316-1c4b-4281-b951-d872f2087c98
* Removing DeleteSoon() from WigetGtk so it behaves like WidgetWinglotov@google.com2011-05-134-9/+20
| | | | | | | | | | This is a retry of http://codereview.chromium.org/7002029/ after it has been reverted because of the failing test BrowserTest.CloseWithAppMenuOpen (failed only on buildbot) BUG=chromium-os:15129 TEST=tests TBR=dpolukhin git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85257 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 85120 - Removing DeleteSoon() from WigetGtk so it behaves like WidgetWinglotov@google.com2011-05-124-17/+9
| | | | | | | | | | | | BUG=chromium-os:15129 TEST=tests Review URL: http://codereview.chromium.org/7002029 TBR=glotov@google.com Review URL: http://codereview.chromium.org/7016017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85127 0039d316-1c4b-4281-b951-d872f2087c98
* Removing DeleteSoon() from WigetGtk so it behaves like WidgetWinglotov@google.com2011-05-124-9/+17
| | | | | | | | | BUG=chromium-os:15129 TEST=tests Review URL: http://codereview.chromium.org/7002029 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85120 0039d316-1c4b-4281-b951-d872f2087c98
* Set minimum width on menu for NativeComboboxViews.rhashimoto@chromium.org2011-05-113-2/+6
| | | | | | | | | | | | | The combobox menu is forced to be at least as wide as the combobox itself. Besides the addition to native_combobox_views.cc, an edit was needed to views::SubmenuView. The minimum preferred width must account for the border (specified in SubmenuView, applied in MenuScrollViewContainer) to make the ultimate menu width match the size requested by the combobox. BUG=none TEST=none Review URL: http://codereview.chromium.org/7002004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85010 0039d316-1c4b-4281-b951-d872f2087c98
* iwyu: Include callback_old.h where appropriate, final.jhawkins@chromium.org2011-05-111-1/+1
| | | | | | | | | BUG=82098 TEST=none Review URL: http://codereview.chromium.org/7003003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85003 0039d316-1c4b-4281-b951-d872f2087c98
* Added Unit Testing for pure Views Comboboxsaintlou@chromium.org2011-05-114-0/+185
| | | | | | | | | BUG=none TEST=out/Debug/views_unittests --gtest_filter=NativeComboboxViewsTest.KeyTest Review URL: http://codereview.chromium.org/6980007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@84989 0039d316-1c4b-4281-b951-d872f2087c98
* The initial prototype code for the compact navigation (cnav) prototype, ↵stevet@chromium.org2011-05-112-14/+19
| | | | | | | | | | | | currently only active in windows. This is well hidden behind a flag and a context menu option. Loosely based off oshima's original prototype patch: http://codereview.chromium.org/165272 BUG=None TEST=Activate the cnav prototype in about:flags. Right click a tab and select "Hide Toolbar" to go into cnav mode. Ensure that the compact location bar provides the same basic functionality as the toolbar (except browser actions). Review URL: http://codereview.chromium.org/6913026 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@84971 0039d316-1c4b-4281-b951-d872f2087c98
* Reverting the unintentional change.oshima@google.com2011-05-111-4/+0
| | | | | | | | | | | | I accidentally included the change that I didn't intend, sorry about that. TBR=msw@chromium.org BUG=none TEST=none Review URL: http://codereview.chromium.org/7002021 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@84907 0039d316-1c4b-4281-b951-d872f2087c98
* Undo Redo for Textfield Viewsoshima@google.com2011-05-119-60/+1065
| | | | | | | | | | | | | | | Added Edit and its subclass that represents a change that can be undone/redone. Set TestViewsDelegates in examples_main.cc to make cut&copy work in views_examples. I'll refactor this soon so that text change is always done by an edit object. BUG=none TEST=unit tests for undo/redo Review URL: http://codereview.chromium.org/6937002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@84902 0039d316-1c4b-4281-b951-d872f2087c98
* wstring: remove WideToUpper/WideToLowerevan@chromium.org2011-05-105-23/+23
| | | | | | | | | | | Also fix two instances of passing a single-char array to a function that expects a string (we must NUL-terminate the array). BUG=23581 Review URL: http://codereview.chromium.org/7000005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@84855 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 84831 - The initial prototype code for the compact navigation (cnav) ↵bradnelson@google.com2011-05-102-19/+14
| | | | | | | | | | | | | | | prototype, currently only active in windows. This is well hidden behind a flag and a context menu option. Loosely based off oshima's original prototype patch: http://codereview.chromium.org/165272 BUG=None TEST=Activate the cnav prototype in about:flags. Right click a tab and select "Hide Toolbar" to go into cnav mode. Ensure that the compact location bar provides the same basic functionality as the toolbar (except browser actions). Review URL: http://codereview.chromium.org/6913026 TBR=stevet@chromium.org Review URL: http://codereview.chromium.org/7005004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@84836 0039d316-1c4b-4281-b951-d872f2087c98
* The initial prototype code for the compact navigation (cnav) prototype, ↵stevet@chromium.org2011-05-102-14/+19
| | | | | | | | | | | | currently only active in windows. This is well hidden behind a flag and a context menu option. Loosely based off oshima's original prototype patch: http://codereview.chromium.org/165272 BUG=None TEST=Activate the cnav prototype in about:flags. Right click a tab and select "Hide Toolbar" to go into cnav mode. Ensure that the compact location bar provides the same basic functionality as the toolbar (except browser actions). Review URL: http://codereview.chromium.org/6913026 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@84831 0039d316-1c4b-4281-b951-d872f2087c98
* Tweaks Compositor API. To make it possible to land this I've ifdef'dsky@chromium.org2011-05-1010-34/+255
| | | | | | | | | | | | the code in a couple of places. BUG=none TEST=none R=ben@chromium.org,wjmaclean@chromium.org,rjkroege@chromium.org Review URL: http://codereview.chromium.org/6999005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@84823 0039d316-1c4b-4281-b951-d872f2087c98