summaryrefslogtreecommitdiffstats
path: root/views/focus
Commit message (Collapse)AuthorAgeFilesLines
* Use predefined color names where possible for clarity. Also use ↵pkasting@chromium.org2009-10-131-2/+2
| | | | | | | | | | "SkColorSetARGB(0, 0, 0, 0)" in place of "NULL" since it's not obvious what the latter means as a color. BUG=none TEST=none Review URL: http://codereview.chromium.org/273042 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28874 0039d316-1c4b-4281-b951-d872f2087c98
* Move native_widget_types and gtk_native_view_id_manager from base/gfx tobrettw@chromium.org2009-10-111-1/+1
| | | | | | | | | | | | app/gfx in preparation for removing the base_gfx project. This also moves base/window_impl.cc to app/win/window_impl because this file shouldn't be in base. TEST=none BUG=none Review URL: http://codereview.chromium.org/273017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28691 0039d316-1c4b-4281-b951-d872f2087c98
* Add about:memory link to task manager.thakis@chromium.org2009-10-081-1/+1
| | | | | | | | | | | | | Since about:memory DCHECK()s atm, the link is not completely hooked up. In the xib, I've added a square button with height 14 and the new HyperlinkCell, contained in a GTMWidthBasedResizer or how it's called. I made sure the baseline of link on the left and button on the right is at the same height. BUG=17989,13156 TEST=Open MainMenu.xib, click "Enable" for view->dev->taskman. Build&run chrome. Task manager should contain link. Review URL: http://codereview.chromium.org/255018 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28426 0039d316-1c4b-4281-b951-d872f2087c98
* Enabling the default button behavior on Linux toolkit_views.jcampan@chromium.org2009-10-082-13/+15
| | | | | | | | | | | | I had to make the KeyEvent constructor include the event flags. Also cleaned-up some unit-tests BUG=None TEST=Run the unit-tests. Review URL: http://codereview.chromium.org/266012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28397 0039d316-1c4b-4281-b951-d872f2087c98
* Turns on the focus traversal unit-tests and fixed some focus traversal problem:jcampan@chromium.org2009-10-071-74/+74
| | | | | | | | | | | | | | | | - in TabbedPaneView, the focus traversable were not properly hooked-up - the NativeTextField was focusing the wrapper view instead of the actual Textfield view. Also in the FocusTraversal unit-test I had to select one of the radio-button that the test uses, as the behavior of focusing a disabled button is different on Windows (it forces any non disabled radio-button to become selected) than on Gtk. BUG=None TEST=Run the unit tests. Review URL: http://codereview.chromium.org/242163 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28263 0039d316-1c4b-4281-b951-d872f2087c98
* This CL make the AcceleratorDispatcher eat the WM_KEYUP associated tojcampan@chromium.org2009-10-063-5/+158
| | | | | | | | | | | | WM_KEYDOWN that resulted in an accelerator, as they would cause orphaned KeyUp events to be sent to views. This is Windows only for now, still needs to be ported to Linux. BUG=23383 TEST=Run unit-tests. Ensure accelerators work as expected in Chrome. Review URL: http://codereview.chromium.org/246074 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28096 0039d316-1c4b-4281-b951-d872f2087c98
* Reverting the NativeViewHostWin focus refactoring.jcampan@chromium.org2009-10-051-103/+1
| | | | | | | | | | | It seems the added subclassing is causing crashers in the field. BUG=23861 TEST=None TBR=beng Review URL: http://codereview.chromium.org/259052 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28061 0039d316-1c4b-4281-b951-d872f2087c98
* Relanding focus traversal on Linux toolkit views.jcampan@chromium.org2009-10-012-1/+13
| | | | | | | | | | | | | | | | | | | | | It was previously breaking the interactive UI tests. That was because I changed the button base class to be focusable by default which led to many button beings added to the tab traversal order. I now explicitly make these buttons non focusable. Also because of the way we clear the native focus on Gtk (by setting focus to NULL on the top level window), views now default to clearing the focus when focused (so that views non backed by a native window don't leave the native focus on the previously native window). On Windows we used to focus the WidgetWin's HWND, and now we focus the top-level HWND. The WidgetWin class had to be changed to forward the key events to the root view that contains the focused view because of that. (otherwise it would send it to the top-level root-view, and if the focused view was in a child root-view it would not recieve the keyboard messages). Note that the mouse wheel does not need that, as the mouse-wheel Windows messages are sent to the HWND under the cursor. See: http://codereview.chromium.org/246030/show TEST=Run the tests BUG=NONE Review URL: http://codereview.chromium.org/255008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27723 0039d316-1c4b-4281-b951-d872f2087c98
* Fix for a focus related unit-test on Linux toolkit views.jcampan@chromium.org2009-09-301-12/+13
| | | | | | | | | | | | | | | | The problem was caused by the way we were setting the focus, using grab_focus which does not work whenthe screen is locked. We now explicitly send a signal. Also make sure to give a good parent when building a child GtkWidget, as using the WidgetGtk native window would cause a Gtk error. BUG=23394 TEST=Run the unit-tests. R=oshima Review URL: http://codereview.chromium.org/242071 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27629 0039d316-1c4b-4281-b951-d872f2087c98
* Temporary disabling a unit test that fails on Linux toolkit views while I ↵jcampan@chromium.org2009-09-301-0/+6
| | | | | | | | | | | investigate. BUG=23394 TBR=huanr Review URL: http://codereview.chromium.org/251039 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27570 0039d316-1c4b-4281-b951-d872f2087c98
* Relanding the NativeViewHost refactoring (it was breaking the ChromeOS build). jcampan@chromium.org2009-09-291-1/+103
| | | | | | | | | | | | | | | Refactoring some of the NativeViewHost and NativeControl focus management so their consumers don't have to explicitly set the focused view. See original review: http://codereview.chromium.org/235011/show BUG=None TEST=Run all tests. Make sure focus is stored/restored properly in Chrome. TBR=ben Review URL: http://codereview.chromium.org/246032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27563 0039d316-1c4b-4281-b951-d872f2087c98
* Reverting 27504, it breaks the interactive ui tests on Windows.jcampan@chromium.org2009-09-291-10/+1
| | | | | | | TBR=oshima Review URL: http://codereview.chromium.org/243034 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27512 0039d316-1c4b-4281-b951-d872f2087c98
* See original review atjcampan@chromium.org2009-09-291-1/+10
| | | | | | | | | | | | | | http://codereview.chromium.org/251001/show This CL hooks the focus traversal for the TabbedPaneView on Linux with toolkit views. It also has few focus related fixed (focus with buttons, clearing focus effectively in the focus manager). BUG=None TEST=Run the view_examples app. Press tab to move the focus. Try the different tabs. Review URL: http://codereview.chromium.org/246030 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27504 0039d316-1c4b-4281-b951-d872f2087c98
* Relanding keyboard code refactoring:jcampan@chromium.org2009-09-292-4/+6
| | | | | | | | | | | | | | | | http://codereview.chromium.org/248010/show Changing the KeyboardEvent to use a KeyboardCode instead of a w_char. Led to several places where I had to switch from VK_ to VKEY_. Also cleaned-up the table view OnKeyDown method. Since TableView is a NativeControl it can use the NativeControl::OnKeyDown directly. BUG=None TEST=Make sure short-cuts works as expected, especially in the omnibox. Review URL: http://codereview.chromium.org/251020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27444 0039d316-1c4b-4281-b951-d872f2087c98
* Reverting 27412 it breaks the toolkit views Linux build.jcampan@chromium.org2009-09-282-6/+4
| | | | | | | TBR=sky Review URL: http://codereview.chromium.org/254005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27416 0039d316-1c4b-4281-b951-d872f2087c98
* Changing the KeyboardEvent to use a KeyboardCode instead of a w_char. Led to ↵jcampan@chromium.org2009-09-282-4/+6
| | | | | | | | | | | | several places where I had to switch from VK_ to VKEY_. Also cleaned-up the table view OnKeyDown method. Since TableView is a NativeControl it can use the NativeControl::OnKeyDown directly. BUG=None TEST=Make sure short-cuts works as expected, especially in the omnibox. Review URL: http://codereview.chromium.org/248010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27412 0039d316-1c4b-4281-b951-d872f2087c98
* [Relanding erg's change with fix for toolkit_views shortcuts and jcampan@chromium.org2009-09-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | interactive ui tests. Note that this was originally reviewed in http://codereview.chromium.org/217022/show I originally Elliot suggestion of replacing the usage of int for keycode with the bae::Keycode type, but that led to the CL getting out of hands (as this is used in many different places). So this is only the patch set 1 of that CL, I'll replace the type in another CL] Use windows keycodes under linux (and all non-windows platforms). This fixes any place where we use a VKEY_* (RenderWidgetHost, for example) under Linux, but breaks accelerators in TOOLKIT_VIEWS which relied on this wrong behaviour. Previously, keyboard_codes_linux defined all the VKEY_* constants as their GDK_* counterparts, which is wrong since the VKEY_* are supposed to resolve to windows key codes. BUG=22551 TEST=Make sure accelerators still work as expected on Chrome Linux and Chrome Linux with toolkit views. Test when the the accelerators with the focus in the location bar and also with the focus on the page. Review URL: http://codereview.chromium.org/235025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27284 0039d316-1c4b-4281-b951-d872f2087c98
* Reverting 27113, it breaks the ChomeOS build.jcampan@chromium.org2009-09-241-103/+1
| | | | | | | TBR=ben Review URL: http://codereview.chromium.org/231022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27115 0039d316-1c4b-4281-b951-d872f2087c98
* Refactoring some of the NativeViewHost and NativeControl focus management so ↵jcampan@chromium.org2009-09-241-1/+103
| | | | | | | | | | | their consumers don't have to explicitly set the focused view. BUG=None TEST=Run all tests. Make sure focus is stored/restored properly in Chrome. Review URL: http://codereview.chromium.org/214029 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27113 0039d316-1c4b-4281-b951-d872f2087c98
* Disabling a focus related unit test on Linux (toolkit_views).jcampan@chromium.org2009-09-221-6/+4
| | | | | | | | | | | | This test fails when the screen is locked. BUG=None TEST=None TBR=nsylvain Review URL: http://codereview.chromium.org/214052 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@26813 0039d316-1c4b-4281-b951-d872f2087c98
* Land http://codereview.chromium.org/206025 for Charlie:sky@chromium.org2009-09-161-0/+1
| | | | | | | | | | | | Fix settings page transparent background issue Also comment out focus manager check due to bug: http://crbug.com/21378 TEST=none BUG=none Review URL: http://codereview.chromium.org/194128 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@26370 0039d316-1c4b-4281-b951-d872f2087c98
* Lands http://codereview.chromium.org/193032 for Charlie:sky@chromium.org2009-09-151-2/+4
| | | | | | | | | | | | | | | First pass at adding ChromeOS settings - a mock wifi selector combobox - touchpad settings that makes calls to synclient - on startup, touchpad settings are initialized to what's stored in preferences TEST=none BUG=none Review URL: http://codereview.chromium.org/203073 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@26259 0039d316-1c4b-4281-b951-d872f2087c98
* Improving the FocusManager::GetFocusManager method on Gtk.jcampan@chromium.org2009-09-081-6/+7
| | | | | | | | | | BUG=None TEST=Run the FocusManager unit tests Review URL: http://codereview.chromium.org/200020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@25660 0039d316-1c4b-4281-b951-d872f2087c98
* The FocusManager stores/restores focus when the top window becomes ↵jcampan@chromium.org2009-09-013-61/+98
| | | | | | | | | | | | inactive/active. BUG=None TEST=Run the focus manager unit-tests. Review URL: http://codereview.chromium.org/164448 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@25108 0039d316-1c4b-4281-b951-d872f2087c98
* Try to fix the ChromeOS build. This tries to add a views dependency for ↵brettw@chromium.org2009-08-221-3/+4
| | | | | | | | browser_tests, and fixes some simple errors in the focus unit test. Review URL: http://codereview.chromium.org/173243 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@24061 0039d316-1c4b-4281-b951-d872f2087c98
* Factor out views::Combobox::Model so that it can be used cross-platform.mattm@chromium.org2009-08-181-6/+7
| | | | | | | | | | This removes the Combobox* source arg from the Model methods, which wasn't really used by anything. BUG=none TEST=none Review URL: http://codereview.chromium.org/165514 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@23603 0039d316-1c4b-4281-b951-d872f2087c98
* Fixes bug in previous change. In AcceleratorHandler if there is nosky@chromium.org2009-08-111-0/+1
| | | | | | | | | | | WidgetGtk we should dispatch the event, not eat it. BUG=none TEST=none Review URL: http://codereview.chromium.org/165183 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@23009 0039d316-1c4b-4281-b951-d872f2087c98
* Fixes bug in AcceleratorHandler. It's possible to get events for GtkWidgetssky@chromium.org2009-08-071-0/+5
| | | | | | | | | | | | outside of those created by Chrome that we need to ignore. I saw this with drag and drop. BUG=none TEST=none Review URL: http://codereview.chromium.org/165150 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@22801 0039d316-1c4b-4281-b951-d872f2087c98
* Making the focus manager unit-tests less Windows specific.jcampan@chromium.org2009-08-041-76/+56
| | | | | | | | | | This is part of the FocusManager port on toolkit_views. BUG=None TEST=All FocusManager unit-tests should pass. Review URL: http://codereview.chromium.org/160601 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@22417 0039d316-1c4b-4281-b951-d872f2087c98
* This CL adds accelerators to the Linux toolkit views.jcampan@chromium.org2009-07-316-140/+278
| | | | | | | | | | | The MessageLoop had to be modified to support Dispatchers on Linux. BUG=None TEST=On Windows and Linux, make sure the accelerators still work as expected. On Linux toolkit views, build and run the unit-tests. Review URL: http://codereview.chromium.org/159046 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@22210 0039d316-1c4b-4281-b951-d872f2087c98
* Refactoring of tabbed-pane component so it can be ported to Linux toolkit_view.jcampan@chromium.org2009-07-211-5/+7
| | | | | | | | BUG=None TEST=Make sure the Options dialog still works as expected (tab selection, focus traversal...) Review URL: http://codereview.chromium.org/155668 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21189 0039d316-1c4b-4281-b951-d872f2087c98
* Allow TabContentsDelegates to process unhandled keyboard messages coming ↵ananta@chromium.org2009-07-142-69/+0
| | | | | | | | | | | | | | | | | | | back from the renderer. This is required for ExternalTabContainer to be able to pass unhandled keyboard accelerator messages back to the external host. This worked before as the focus manager would hand off these messages to keystroke listeners like the ExternalTabContainer. However with the ExternalTabContainer no longer using the focus manager this does not work anymore. Removed the keystroke listener code from the focus manager as the ExternalTabContainer was the only consumer and it does not use it anymore. This fixes bug http://b/issue?id=1975749 Bug=1975749 Review URL: http://codereview.chromium.org/149520 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20600 0039d316-1c4b-4281-b951-d872f2087c98
* Fix compilation error in the focus manager by returning NULL from ↵brettw@chromium.org2009-06-301-0/+1
| | | | | | | | unimplemented function. Review URL: http://codereview.chromium.org/152001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19649 0039d316-1c4b-4281-b951-d872f2087c98
* This CL removes the last (major) Windows specific part out of the focus ↵jcampan@chromium.org2009-06-306-280/+96
| | | | | | | | | | | | | | | | | | | | | | | manager. It was previously landed and reverted because it broke the reliability tests. http://codereview.chromium.org/125148 The breakage was caused by constrained windows not getting a hold of the FocusManager when in unparented tabs. The fix is to ensure unparented tab still have a way to access their FocusManager for proper closure. Files changed from the previous patch that need reviewing: native_tab_contents_container_win.cc tab_contents_view_win.h tab_contents_view_win.cc BUG=None TEST=Run all tests (unit, ui, interactive). Extensively test the focus in Chrome. Review URL: http://codereview.chromium.org/146093 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19617 0039d316-1c4b-4281-b951-d872f2087c98
* Review URL: http://codereview.chromium.org/150051jcampan@chromium.org2009-06-301-0/+20
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19582 0039d316-1c4b-4281-b951-d872f2087c98
* Revert :nsylvain@chromium.org2009-06-226-95/+280
| | | | | | | | | | | | | | | | | | Changed by: jcampan@chromium.org Changed at: Fri 19 Jun 2009 21:22:47 Branch: src Revision: 18889 Comments: Relanding focus manager refactoring with build fix, see:http://codereview.chromium.org/125148BUG=NoneTEST=NoneTBR=ben Review URL: http://codereview.chromium.org/141013 Because it creates hundreds of new reliability crashes. TBR:jcampan Review URL: http://codereview.chromium.org/140064 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18904 0039d316-1c4b-4281-b951-d872f2087c98
* Relanding focus manager refactoring with build fix, ↵jcampan@chromium.org2009-06-206-280/+95
| | | | | | | | see:http://codereview.chromium.org/125148BUG=NoneTEST=NoneTBR=ben Review URL: http://codereview.chromium.org/141013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18889 0039d316-1c4b-4281-b951-d872f2087c98
* Reverting 18872.jcampan@chromium.org2009-06-196-95/+280
| | | | | | | | | | | | Broke the Windows build. BUG=None TEST=None TBR=ben Review URL: http://codereview.chromium.org/140023 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18873 0039d316-1c4b-4281-b951-d872f2087c98
* Removed the last Windows specific part out of the focus manager. HWNDs are ↵jcampan@chromium.org2009-06-196-280/+95
| | | | | | | | not subclassed anymore.The FocusManager is now created and owned by top-level WidgetWins.BUG=NoneTEST=Run the unit tests, UI tests, interactive UI tests. Fully test the focus behavior in the browser: activate/deactivate the browser windows, make sure focus is remembered. Switch tabs, make sure focus is remembered for each tab. make sure accelerators work as expected. Test focus traversal in a web page, in the option dialog. Review URL: http://codereview.chromium.org/125148 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18872 0039d316-1c4b-4281-b951-d872f2087c98
* Fix focus traversal cycle.yutak@chromium.org2009-06-153-40/+11
| | | | | | | | | | This change makes traversal order of focus cycle consistent between forward and backward traversal. This is a partial fix for issue 6785. BUG=http://crbug.com/6785 TEST=Move the focus to the find bar, and push [Shift]+[Tab]. The focus should not cycle inside the find bar, but go out to the omnibox (or somewhere outside the find bar). Review URL: http://codereview.chromium.org/125130 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18402 0039d316-1c4b-4281-b951-d872f2087c98
* Fix reversed focus traversal order issue.yutak@chromium.org2009-06-123-45/+26
| | | | | | | | | | | | | | | | This change fixes several problems in handling focus traversal and resolves TabbedPane's traversal order issue. Reversed focus traversal is very tricky, and the original traversal code overlooked several things. (1) A focusable view may have a FocusTraverasble. (2) When we are going down, we have to check if the current view has a FocusTraversable. (3) When we are going up from a FocusTraversable, the parent view may gain the next focus. This change fixes these issues. BUG=6871 TEST=See issue 6871. Review URL: http://codereview.chromium.org/125062 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18335 0039d316-1c4b-4281-b951-d872f2087c98
* Changing the focus manager to not subclass HWNDs (but for the ↵jcampan@chromium.org2009-06-123-29/+39
| | | | | | | | top-windows).Components that have HWND now need to specifically let the FocusManager know when they get the native focus.This is the reason for the new GotFocus() notification on the RenderWidgetHostViewWin class.BUG=NoneTEST=Run the interactive tests, the unit-tests. Test that the focus is remembered correctly when switching windows, switching tabs. Test that focus traversal in the browser and in the option dialog works as expected. Review URL: http://codereview.chromium.org/122002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18301 0039d316-1c4b-4281-b951-d872f2087c98
* Fix a memory leak in a focus manager unit-test.jcampan@chromium.org2009-06-091-2/+2
| | | | | | | | BUG=None TEST=None Review URL: http://codereview.chromium.org/118461 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17986 0039d316-1c4b-4281-b951-d872f2087c98
* This CL adds some more FocusManager unit-tests.jcampan@chromium.org2009-06-091-223/+494
| | | | | | | | BUG=None TEST=Run the unit-tests. Review URL: http://codereview.chromium.org/118413 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17951 0039d316-1c4b-4281-b951-d872f2087c98
* Moving the Windows specific activation code in the FocusManager to the ↵jcampan@chromium.org2009-06-082-29/+2
| | | | | | | | | | widget_win. BUG=None TEST=Test that the focus in the browser works well: that windows remember which view had focus when deactivated/reactivated. Make sure focus traversal works as expected. Review URL: http://codereview.chromium.org/118406 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17911 0039d316-1c4b-4281-b951-d872f2087c98
* Fix keyboard accelerator registration issue in views::View.yutak@chromium.org2009-06-061-4/+2
| | | | | | | | | | View should not register the same accelerator target multiple times. BUG=13275 TEST=None Review URL: http://codereview.chromium.org/118242 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17810 0039d316-1c4b-4281-b951-d872f2087c98
* Fix: Alt+Tab not sending FocusWillChange events.finnur@chromium.org2009-06-041-5/+4
| | | | | | | | | | | | | This causes a DCHECK in FindBarWin if the Find box is open when the user switches to another app with Alt+Tab. The Focus manager now calls ClearFocus everywhere it used to set focused_view_ = NULL, to make sure the event reaches all listeners for FocusWillChange. BUG=13350 TEST=Open Chrome, press Ctrl+F then Alt+Tab. Swith focus back to Chrome and press Esc multiple times and you should not see the Find box flash briefly. Review URL: http://codereview.chromium.org/118267 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17678 0039d316-1c4b-4281-b951-d872f2087c98
* Some previous refactoring I did of the accelerator code had introduced ↵jcampan@chromium.org2009-06-031-4/+1
| | | | | | | | regressions (pressing ESC would close the dialog instead of closing an opened combo-box, pressing enter on a dialog with a focused link would not open the link).Looking at fixing these I realized the method View::OvverideAccelerator was not needed anymore as View::SkipDefaultKeyEventProcessing supersedes it.So I removed View::OvverideAccelerator. As a result I also ended up moving some Windows specific code from LocationbarView to AutocompleteEditViewWin.BUG=6900TEST=Open the option dialog, click on a combo-box to open the drop-down list. Press ESC, the drop-down list should be closed. Move the focus to a link (by pressing Tab). Press Enter, the link should be opened and the option dialog should not be closed. Make sure that accelerators (ESC, tab, key up/down...) still work ok in the omnibox) Review URL: http://codereview.chromium.org/119016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17544 0039d316-1c4b-4281-b951-d872f2087c98
* FocusManager should accept multiple AcceleratorTargets for each accelerator.yutak@chromium.org2009-06-033-46/+221
| | | | | | | | | | Originally, FocusManager automatically unregisters an old target if multiple AcceleratorTargets are registered to the same accelerator. This behavior is somewhat troublesome, and actually ShelfItemDialog hits a run-time assertion due to the conflict of registrations (issue 12401). This change modifies the behavior of FocusManager to allow multiple targets to be registered for each accelerator. BUG=12401 TEST=See if issue 12401 is resolved. Review URL: http://codereview.chromium.org/114065 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17533 0039d316-1c4b-4281-b951-d872f2087c98
* Recent refactoring of the combobox had broken focus.jcampan@chromium.org2009-06-031-21/+40
| | | | | | | | | BUG=13256 TEST=Open the option dialog. Move the focus around by pressing tab, make sure the combobox gets focused correctly. When the focus is on the combobox, activate another (non Chromium) window, then come back to the option dialog, the focus should still be on the combobox. Review URL: http://codereview.chromium.org/118175 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17526 0039d316-1c4b-4281-b951-d872f2087c98