summaryrefslogtreecommitdiffstats
path: root/views/view.cc
Commit message (Collapse)AuthorAgeFilesLines
* Relayout content pref page properly upon sync status changes.mnissler@chromium.org2010-07-151-3/+24
| | | | | | | | | | | | This fixes a layouting problem that resulted in the "Stop syncing this account" button not being sized properly after setting up sync. BUG=48807 TEST=Open options dialog in non-synced state, configure sync, check "Stop syncing this account" button after setup. Review URL: http://codereview.chromium.org/2980005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52463 0039d316-1c4b-4281-b951-d872f2087c98
* Prevent non-visible views from getting focused.mnissler@chromium.org2010-07-141-2/+3
| | | | | | | | | BUG=48719 TEST=FocusManagerTest.TraversalWithNonVisibleViews Review URL: http://codereview.chromium.org/2935005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@52293 0039d316-1c4b-4281-b951-d872f2087c98
* Bye bye tab close dot, we hardly knew you.sky@chromium.org2010-07-071-25/+8
| | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/2813045 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@51718 0039d316-1c4b-4281-b951-d872f2087c98
* Re-land r51526mnissler@chromium.org2010-07-051-6/+3
| | | | | | | | | | | | | | | | | | Auto-size the views version of the options dialog. This adds support for auto-sizing tab controls, adjusts the options dialog to use it and takes care of any fallout due to the new layout handling. Also fixes a couple of small bugs in the views Layout() machinery and sanitizes layouting of options pages. BUG=36497 TEST=unit tests in tabbed_pane_unittest.cc and grid_layout_unittest.cc, as well as checking the options dialog in any supported language. original issuse: http://codereview.chromium.org/2812026/show Review URL: http://codereview.chromium.org/2883022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@51628 0039d316-1c4b-4281-b951-d872f2087c98
* Revert r51526 (Auto-size the views version of the options dialog.)mnissler@chromium.org2010-07-021-3/+6
| | | | | | | | Unexpected unit_tests crash on chromeos. TBR: mnissler git-svn-id: svn://svn.chromium.org/chrome/trunk/src@51529 0039d316-1c4b-4281-b951-d872f2087c98
* Auto-size the views version of the options dialog.mnissler@chromium.org2010-07-021-6/+3
| | | | | | | | | | | | | | This adds support for auto-sizing tab controls, adjusts the options dialog to use it and takes care of any fallout due to the new layout handling. Also fixes a couple of small bugs in the views Layout() machinery and sanitizes layouting of options pages. BUG=36497 TEST=unit tests in tabbed_pane_unittest.cc and grid_layout_unittest.cc, as well as checking the options dialog in any supported language. Review URL: http://codereview.chromium.org/2812026 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@51526 0039d316-1c4b-4281-b951-d872f2087c98
* Canvas refactoring Phase 4a:ben@chromium.org2010-06-291-6/+6
| | | | | | | | | | | Move Save, SaveLayerAlpha and Restore onto gfx::Canvas. BUG=none TEST=none Review URL: http://codereview.chromium.org/2846035 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@51179 0039d316-1c4b-4281-b951-d872f2087c98
* Canvas refactoring part 3.ben@chromium.org2010-06-251-7/+7
| | | | | | | | | | | | | | - Replace Canvas instance users with CanvasSkia users. - Rename Canvas2 to Canvas. - Delete Canvas subclass of CanvasSkia. This has created some ugliness around the fact that people that used SkCanvas methods on Canvas now have to go through AsCanvasSkia first. This is temporary ugliness that will be eradicated as I incrementally build out the new Canvas API. BUG=none TEST=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50854 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 50784 - Canvas refactoring part 3.ben@chromium.org2010-06-241-7/+7
| | | | | | | | | | | | | | | | | | - Replace Canvas instance users with CanvasSkia users. - Rename Canvas2 to Canvas. - Delete Canvas subclass of CanvasSkia. This has created some ugliness around the fact that people that used SkCanvas methods on Canvas now have to go through AsCanvasSkia first. This is temporary ugliness that will be eradicated as I incrementally build out the new Canvas API. BUG=none TEST=none Review URL: http://codereview.chromium.org/2825018 TBR=ben@chromium.org Review URL: http://codereview.chromium.org/2811032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50790 0039d316-1c4b-4281-b951-d872f2087c98
* Canvas refactoring part 3.ben@chromium.org2010-06-241-7/+7
| | | | | | | | | | | | | | | - Replace Canvas instance users with CanvasSkia users. - Rename Canvas2 to Canvas. - Delete Canvas subclass of CanvasSkia. This has created some ugliness around the fact that people that used SkCanvas methods on Canvas now have to go through AsCanvasSkia first. This is temporary ugliness that will be eradicated as I incrementally build out the new Canvas API. BUG=none TEST=none Review URL: http://codereview.chromium.org/2825018 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50784 0039d316-1c4b-4281-b951-d872f2087c98
* Improve toolbar keyboard accessibility.dmazzoni@chromium.org2010-06-181-3/+10
| | | | | | | | | | | | Design doc: https://docs.google.com/a/google.com/Doc?docid=0ATICCjR-gNReY2djdjkyNnNfNzl4ZnpiODQ2Mg&hl=en BUG=40745 BUG=36728 BUG=36222 TEST=New test added to focus_manager_unittest.cc Review URL: http://codereview.chromium.org/2737010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50234 0039d316-1c4b-4281-b951-d872f2087c98
* Attempt 2 at:sky@chromium.org2010-06-151-8/+25
| | | | | | | | | | | | | | | | Changes the tab close button to a dot, unless you're near the button or the tab is selected. The only difference between this and the first is that I missed a remove from the set if the view was deleted, which resulted in a crash. I've added an interactive test case that covers this. BUG=45743 TEST=none Review URL: http://codereview.chromium.org/2863003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49828 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 49795 - Changes the tab close button to a dot, unless you're near the ↵sky@chromium.org2010-06-151-25/+8
| | | | | | | | | | | | | | | | | | | button or the tab is selected. I'm not to keen on the mouse near names, if you have better ideas please say so. BUG=45743 TEST=none Review URL: http://codereview.chromium.org/2796006 TBR=sky@chromium.org Review URL: http://codereview.chromium.org/2823005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49801 0039d316-1c4b-4281-b951-d872f2087c98
* Changes the tab close button to a dot, unless you're near the buttonsky@chromium.org2010-06-151-8/+25
| | | | | | | | | | | | | | or the tab is selected. I'm not to keen on the mouse near names, if you have better ideas please say so. BUG=45743 TEST=none Review URL: http://codereview.chromium.org/2796006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49795 0039d316-1c4b-4281-b951-d872f2087c98
* Initial work to fix the IAccessible tree in circumstances where there is a ↵ctguil@chromium.org2010-05-271-0/+12
| | | | | | | | | | widget not at the root of the UI heirarchy. Also contains misc fixes for setting correct name/role for controls found in the Options dialog. BUG=9621 TEST=none Review URL: http://codereview.chromium.org/2174002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@48444 0039d316-1c4b-4281-b951-d872f2087c98
* Refactors TabStrip code for better sharing between TabStrip andsky@chromium.org2010-05-131-1/+1
| | | | | | | | | | | | SideTabStrip. I still have a bunch of cleanup to do, but this is a good checkpoint. BUG=none TEST=none Review URL: http://codereview.chromium.org/2037012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47202 0039d316-1c4b-4281-b951-d872f2087c98
* Eliminate View::UILayoutIsRightToLeft() to standardize on ↵pkasting@chromium.org2010-05-101-7/+1
| | | | | | | | | | base::i18n::IsRTL(). Was only needed for EnableUIMirroringForRTLLanguages(), which was only used by Views::Label, which already had this capability via set_rtl_alignment_mode(). BUG=none TEST=none Review URL: http://codereview.chromium.org/1991002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@46869 0039d316-1c4b-4281-b951-d872f2087c98
* UI Language switch implemented by propagating LocaleChanged()glotov@google.com2010-04-201-2/+3
| | | | | | | | | | | | | | | notification to all the views currently active. Before this CL, all views were recreated instead. That was very refactoring-unsafe. Note, this is first part of the change. It prepares overall architecture means and can be committed first. The other part contains implementation details and is here: http://codereview.chromium.org/1551029/show BUG=none TEST=none Review URL: http://codereview.chromium.org/1596023 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45057 0039d316-1c4b-4281-b951-d872f2087c98
* Eliminate a lot of duplicated implementations of Get/SetAccessibleName() by ↵pkasting@chromium.org2010-04-031-0/+13
| | | | | | | | | | just putting it on the base class. Also cleans up a couple other misc. accessibility functions in view.h. BUG=none TEST=none Review URL: http://codereview.chromium.org/1512012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@43558 0039d316-1c4b-4281-b951-d872f2087c98
* Virtual LocaleChanged() callback added to views hierarchy to notifyglotov@google.com2010-03-251-2/+6
| | | | | | | | | | | views of the locale change so they could reload relevant data. BUG=none TEST=none Review URL: http://codereview.chromium.org/1145003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@42614 0039d316-1c4b-4281-b951-d872f2087c98
* Move app/gfx/canvas and app/gfx/font to gfx/.ben@chromium.org2010-03-231-1/+1
| | | | | | | | | | TBR=darin BUG=none TEST=none Review URL: http://codereview.chromium.org/1132006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@42312 0039d316-1c4b-4281-b951-d872f2087c98
* Move RTL related functions from app/l10n_util to base/i18n/rtlben@chromium.org2010-03-201-3/+2
| | | | | | | | | | TBR=darin BUG=none TEST=none Review URL: http://codereview.chromium.org/1073005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@42182 0039d316-1c4b-4281-b951-d872f2087c98
* Move some more files to toplevel gfx dir.ben@chromium.org2010-03-171-1/+1
| | | | | | | | | TBR=darin BUG=none TEST=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@41812 0039d316-1c4b-4281-b951-d872f2087c98
* remove itself from parent when deleted.oshima@chromium.org2010-03-121-2/+4
| | | | | | | | | | | | | | In most case, this won't happen because the parent view sets child view's parent to NULL before deletion. This is necessary to safely delete view that is not owned by parent. BUG=none TEST=none Review URL: http://codereview.chromium.org/872006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@41485 0039d316-1c4b-4281-b951-d872f2087c98
* Autoslide/hide notifications after timeout.oshima@chromium.org2010-03-121-0/+6
| | | | | | | | | | | | | | * Introduced panel's state to manage which notifications will be shown.' * Added "OnPanelStateChanged" to PanelController::Delegate method to monitor the panel's state. * Removed unnecessary SetSize in BalloonViewImpl. The size is set in BalloonViewImpl::Layout. BUG=33306 TEST=This requires chromeos's wm and system notification to test (which does not exit yet). None for now but I am writing unittest now. Review URL: http://codereview.chromium.org/874004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@41484 0039d316-1c4b-4281-b951-d872f2087c98
* win: string_util.h -> utf_string_conversions.h fix.jhawkins@google.com2010-03-111-1/+1
| | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/830002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@41292 0039d316-1c4b-4281-b951-d872f2087c98
* Replace lots of "int x, int y" with gfx::Point. Also use gfx::Size and ↵pkasting@chromium.org2010-03-081-44/+35
| | | | | | | | | | gfx::Rect in a few more places. BUG=none TEST=none Review URL: http://codereview.chromium.org/669130 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@40966 0039d316-1c4b-4281-b951-d872f2087c98
* Attempt 2 at landing this. The first attempt failed becausesky@chromium.org2010-02-191-1/+1
| | | | | | | | | | | | | | | | | | View::MirroredX is defined inline in the .cc, which apparently means gcc won't export it for callers outside of view.cc. Changes the rendering of mini-tabs slightly: . the icons of mini-tabs scales up to 24x24 on mouse over. . phantom tabs are rendered in their own layer behind other tabs at 40% opacity. The icon for phantom tabs are rendered at 60% opactiy. BUG=32845 TEST=none Review URL: http://codereview.chromium.org/650066 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39513 0039d316-1c4b-4281-b951-d872f2087c98
* Implement a TODO.pkasting@chromium.org2010-02-191-7/+3
| | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/646053 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39494 0039d316-1c4b-4281-b951-d872f2087c98
* CL implementing focus-dismissal of the chrome.experimental.popup set of ↵twiz@chromium.org2010-02-101-0/+8
| | | | | | | | | | | | | | | | | extension APIs. Specifically, these changes cause a displayed pop-up to be dismissed when the focus shifts away from both the pop-up view, and the extension-view that launched the pop-up.I had to do a lot of investigating and trial-and-error to converge to the solution present here. I was hoping to be able to piggy-back on the existing FocusManager's various listener routines, but because the pop-up is hosted in a BubbleWidget, which is a separate top-level window with its own focus manager, I could not rely on a given focus manager to take care of the focus change notifications. To get around the above issue, I added a new type of focus listener that can listen on native-window focus change events. I added invocations to this listener throughout the Widget classes in the system so that registered listeners will be notified on focus change. I found some of the focus change events problematic, as the system will arbitrarily reassign the focus to the main browser window when shifting activation between chrome windows. (SeefocusManagerWin::ClearNativeFocus). To prevent this focus bounce from confusing focus listeners, I added a means to suppress notification of focus change during these operations. I added GTK and Mac stubs for the new widget functions that will assert when called. GTK and Cocoa development is not my expertise, so I thought // TODO(port) would be wiser.I'm uncertain of the best means to unit-test these changes. Direction in this regard would be appreciated. BUG=None TEST=None Review URL: http://codereview.chromium.org/552167 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38685 0039d316-1c4b-4281-b951-d872f2087c98
* Don't call View::DidChangeBounds() when the bounds didn't changedavemoore@chromium.org2010-02-051-6/+7
| | | | | | | | | Bug: None Test: Views based UI should still layout correctly Review URL: http://codereview.chromium.org/574013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38231 0039d316-1c4b-4281-b951-d872f2087c98
* Adding drag-drop support in and out of the Browser Action overflow menu.finnur@chromium.org2010-02-041-1/+4
| | | | | | | | | BUG=26990 TEST=Drag icons into and out of (and within) both the Browser Action container and its overflow menu. Review URL: http://codereview.chromium.org/570014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38135 0039d316-1c4b-4281-b951-d872f2087c98
* Tab-modal dialog improvements:zelidrag@google.com2010-01-151-1/+1
| | | | | | | | | | | | | | | | - treat constrained dialogs as tab-modal - only one shows at the time - added visual indication (tab pulsing) to the tab strip when a tab is blocked by a tab-modal dialog - blocked all UI activity from rendrer host and forced refocusing on constrained (tab-modal) dialogs This CL reverts http://codereview.chromium.org/384113 and instead incorporates the changes from http://codereview.chromium.org/392018. BUG=456,27585,27620 TEST=Go to http://www/~thakis/cgi-bin/test.html, hit esc. Review URL: http://codereview.chromium.org/541056 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36415 0039d316-1c4b-4281-b951-d872f2087c98
* Addded notification when ancestor gets changed. So windows that lack focus ↵georgey@chromium.org2010-01-071-18/+54
| | | | | | | | | | | | | manager, because of being created on inactive tab, could do the necessary work when focus manager is actually attached. This is relevant for Windows only, but some support functions (FindAllRootViews) could be useful for other architectures as well. BUG=22481 TEST=in the bug Review URL: http://codereview.chromium.org/492025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35675 0039d316-1c4b-4281-b951-d872f2087c98
* bsds: views/ and webkit/ support for FreeBSD/OpenBSDevan@chromium.org2009-12-311-1/+1
| | | | | | | | | - add a TOOLKIT_USES_GTK #define to catch GTK and Views+GTK - lots of ifdef twiddling Review URL: http://codereview.chromium.org/519030 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35402 0039d316-1c4b-4281-b951-d872f2087c98
* linux: reduce header interdependenciesevan@chromium.org2009-12-291-0/+4
| | | | | | | | | | | | By analyzing gcc -H output, I found some of our worst offenders for headers bringing in other headers. native_web_keyboard_event.h was responsible for just under 60,000 extra includes! This change will in theory make the build faster. Review URL: http://codereview.chromium.org/524004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35326 0039d316-1c4b-4281-b951-d872f2087c98
* Downward drag after mouse-down is now causing bookmark bar folders to open, ↵zelidrag@google.com2009-12-041-1/+7
| | | | | | | | | | | | | | rather than drag. The bar folder can still be dragged in any other direction. Please note that this change is already reviews in http://codereview.chromium.org/463001, hence TBR field here. I needed to move to a different client to check it in. BUG=9016 TEST=Open bookmark bar. Select folder button and try to drag it down. Observe that now if dragged straight downward, the folder button will open its menu. TBR=sky Review URL: http://codereview.chromium.org/467017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33805 0039d316-1c4b-4281-b951-d872f2087c98
* Porting the table view to Linux toolkit views.jcampan@chromium.org2009-12-011-0/+2
| | | | | | | | | | | | | | It is the initial implementation, it is still missing: - row focusing - resizable columns - autosize columns BUG=None TEST=Run the unit-tests, play with the TableView2 tab in the view examples. Review URL: http://codereview.chromium.org/434066 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33400 0039d316-1c4b-4281-b951-d872f2087c98
* Adds link to bookmark bar that when clicked imports bookmarks. I alsosky@chromium.org2009-11-301-0/+4
| | | | | | | | | | | | added support for baselines to GridLayout. BUG=4374 TEST=On a new profile make sure the bookmark bar has a link to import bookmarks, click the link and make sure you can import your bookmarks. Review URL: http://codereview.chromium.org/440029 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33336 0039d316-1c4b-4281-b951-d872f2087c98
* Fixes two issues from valgrind, and some cleanup:sky@chromium.org2009-11-201-2/+1
| | | | | | | | | | | | | | | . Makes it so observer installed by WidgetGtk is cleaned up and not leaked. . Removes unnecessary static_cast<int> in view. . Fixes some leaks in textfield and button. . Removes AutocompletePopupViewGTK's copy of PangoFontFromGfxFont. BUG=none TEST=none Review URL: http://codereview.chromium.org/420005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@32686 0039d316-1c4b-4281-b951-d872f2087c98
* Fix style issues in View class.maruel@chromium.org2009-11-071-58/+28
| | | | | | | | | | | BUG=None TEST=None Patch contributed by thiago.farina@gmail.com Review URL: http://codereview.chromium.org/338011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31360 0039d316-1c4b-4281-b951-d872f2087c98
* Attempt 2 at:sky@chromium.org2009-11-041-5/+3
| | | | | | | | | | | | | | | Gets find bar animation/clipping to work on views/gtk. The only difference between this and the first version is fixing an include in extension_host that was triggering mac to build views, as well as an extraneous SetSlideDuration I had used for testing. BUG=none TEST=none TBR=ben Review URL: http://codereview.chromium.org/342116 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30942 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 30903 - Gets find bar animation/clipping to work on views/gtk.sky@chromium.org2009-11-041-3/+5
| | | | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/340077 TBR=sky@chromium.org git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30913 0039d316-1c4b-4281-b951-d872f2087c98
* Gets find bar animation/clipping to work on views/gtk.sky@chromium.org2009-11-041-5/+3
| | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/340077 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30903 0039d316-1c4b-4281-b951-d872f2087c98
* CompactLocationBar 1st step:oshima@chromium.org2009-10-281-1/+1
| | | | | | | | | | | | | | | | | | | | | * Added OnMouseXXXTab methods to BrowserExtender to handle on tabs. * Changed tab to call above methods. * Added GetSelectedTab to TabStrip Minor changes along with the major changes above * Removed unnecessary file entries in chrome.gyp * Fixed a few method's const. * Removed unnecessary class declarations and includes. Know issue: keyboard focus is not working. In 2nd step, I'm going to eliminate popup and use whatever that FindBar is using to show compact location bar. I'll fix the issue above after this migration. (if it still persists) BUG=None Test=None Review URL: http://codereview.chromium.org/341008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30386 0039d316-1c4b-4281-b951-d872f2087c98
* Accessibility information from the renderer was not being returned to tools ↵ananta@chromium.org2009-10-101-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | like screen readers, etc. This was because the object implementing the root IAccessible interface did not know how to navigate a native render view. To work around this, we now check if the underlying view is a native view in our root IAccessible::get_accChild function and if yes we send the WM_GETOBJECT message to the corresponding RenderWidgetHostViewWin class, which returns an IAccessible interface which then can expose information from the renderer. The other changes in the accessibility code are for some crashes I observed while testing the screen readers like nvda, the Windows screen reader which send a flurry of WM_GETOBJECT messages leading to some race conditions. We also ensure that the accessibility information for a view is torn down when the view is destroyed. Fixes portions of http://code.google.com/p/chromium/issues/detail?id=13291 Bug=13291 Review URL: http://codereview.chromium.org/261044 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28655 0039d316-1c4b-4281-b951-d872f2087c98
* Enabling the default button behavior on Linux toolkit_views.jcampan@chromium.org2009-10-081-6/+0
| | | | | | | | | | | | 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
* Relanding focus traversal on Linux toolkit views.jcampan@chromium.org2009-10-011-3/+3
| | | | | | | | | | | | | | | | | | | | | 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
* Reverting 27504, it breaks the interactive ui tests on Windows.jcampan@chromium.org2009-09-291-3/+3
| | | | | | | 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-3/+3
| | | | | | | | | | | | | | 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