| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
| |
size is changing. Pass this event using the NotificationService, and listen for it in desktop notification code in order to adjust metrics properly for the corner of the screen.
BUG=35464
TEST=resize desktop after starting chrome; create notifications.
Review URL: http://codereview.chromium.org/606007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@40670 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
See review at:
http://codereview.chromium.org/609010/show
BUG=None
TEST=None
Review URL: http://codereview.chromium.org/657019
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39827 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
| |
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/465005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33827 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
SystemMonitor makes an assumption that through its lifetime a MessageLoop exists and stays the same. It is difficult and error-prone to satisfy that when it is a Singleton. It has caused problems in the past.
Additionally, extract HighResoltionTimerManager out of time_win.cc, eliminating yet another Singleton.
TEST=none
BUG=none
Review URL: http://codereview.chromium.org/431008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33214 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
and onto the TabStrip2 object. It was mostly cross platform anyway.Adds APIs to Widget that:- allow a Widget to be obtained for a given gfx::NativeView- allow native properties to be set on a Widget.Adds an API to Window that lets the caller convert the window's appearance into a lightly transparent transient looking thing for dragging.BUG=noneTEST=none
Review URL: http://codereview.chromium.org/149440
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31394 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
| |
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/307030
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30074 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
is maximized.It seems that now, when an opaque frame is maximized we also need to add the SM_CXSIZEFRAME to the top of the client rect. I don't know why, it's just is.I reworked the way Widget allows subclasses to handle sizing of the RootView... I delegate responsibility for determining the RootView's bounds to a helper virtual function which BrowserFrameWin overrides. This seems cleaner to me. I make sure this handling only occurs when the window is not maximized.http://crbug.com/25227TEST=use to a theme or switch off glass on vista or use Xp. Maximize the browser window. The tabs should be entirely visible.
Review URL: http://codereview.chromium.org/304007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29882 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
being screwed up screwed up when DWM is toggled or themes are installed or reset.
The first part of the fix was to remove the hack I put in to hide then show the window while the frame type change occurs.
The hack was to work around the fact that upon returning to glass from non-glass, the area identified by BrowserFrameWin::OnNCCalcSize as client was filled with solid black vs. transparent black.
I don't know why this fix works, but returning a client size for the opaque frame as 1 pixel different to the window rect causes the blackness bug to not occur, so that's what I did (in addition to removing the hack).
I also had to put in a couple of fixes to accommodate the pixel turd we gain in the opaque frame. I renamed ChangeSize to LayoutRootView. When we're using the opaque frame, since the views system is rendering the entire content of the window all the time I always size the widget to the window rect rather than the client rect.
http://crbug.com/15424
TEST=change the frame type by:
- turning on/off aero glass
- installing a theme, then resetting
- running an app that forces the DWM off, e.g. the O3D plugin
The frame should appear correct after the transition in either direction, and window z-order should be preserved.
Review URL: http://codereview.chromium.org/266013
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29164 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=None
TEST=make sure Esc still works in the bookmark bubble and that accelerators work as expected.
Review URL: http://codereview.chromium.org/271067
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28842 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
| |
widget_win.cc. This significantly reduces build times when modifying
the code of these event handlers during debugging.
BUG=http://code.google.com/p/chromium/issues/detail?id=23274
TEST=none
Review URL: http://codereview.chromium.org/254003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27435 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=17104
Review URL: http://codereview.chromium.org/208019
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@26633 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(such as "open file', 'print'...) is closed.
We are running these dialogs from a different thread and they
cause the browser window to get activated before it has been
enabled. This causes the focus restoration to fail as the window
is not enabled.
In an earlier patch, I fixed it by storing/restoring the focus
explicitly before/after the dialog is shown.
But the fix did not apply to the print dialog which does not use
the code I added my fix in.
This CL reverts that previous fix and comes with a simpler solution:
if when we are about to restore focus the window is disabled, we
delay the focus restoration untill the window is enabled again.
BUG=3380
TEST=Set the focus on a page with scroll-bars, right-click to do a
'save as'. Close the dialog. The arrow keys should let you scroll
the page. Accelerators such as Ctrl-T should still work. Test
'open a file', 'print' and the font selection dialog (in the options).
When closing the dialog the focus should return to the view that last
had focus.
Review URL: http://codereview.chromium.org/199106
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@26135 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
dependencies on ATL.
BUG=5027
TEST=none
Review URL: http://codereview.chromium.org/200045
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@25879 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
about some awful behavior that dates back to the earliest days.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/185002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@25338 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
| |
Crashing the reliability bot.
Review URL: http://codereview.chromium.org/174029
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@23674 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
reduce a dependency on ATL.
BUG=5027
TEST=none
Review URL: http://codereview.chromium.org/169015
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@23645 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
DropHelper, and the platform specific part DropTarget. I've also moved
ownership/creation of the DropTarget to Widget. This makes it alot
easier for the windows side, in which DropTarget must implement
IDataObject.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/165155
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@23020 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
in place of CWindowImpl to reduce our dependency on ATL.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/165022
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@22787 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
Add CreateTransparentFloatingWidget method to Widget and add Init/SetContentsView methods.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/160474
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@22229 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
I tested running the app in Vista non-Aero, and I still got resize cursors on all edges and was able to resize the window.
BUG=13926
TEST=Mouse around on the omnibox; the cursor should not flicker.
Review URL: http://codereview.chromium.org/159245
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21485 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
so I don't have to keep typing svn pset as I pass patches back and forth between machines.Behind a command line flag --enable-tabtastic2.I'm trying to split the TabContents specific stuff off of the TabStrip so it's more generic (and more easily mocked for unit testing of various layout conditions). Hence TabStrip vs. BrowserTabStrip. TabStrip may move into views/ once this process is complete.Animator is a utility that can be associated with a View that (at this point) animates that View's bounds from wherever it is now to somewhere else. The TabStrip uses this to do animations for individual Tabs that are independent of each other - a limitation of the old TabStrip is that only one animation is ever active at a time so its animations are a little jumpy compared to other products.Also, detached tab dragging shows the live contents, with all animations/video/etc.Like I said, this is really rough, but I didn't want it to grow any bigger. I will write up a design doc later.http://crbug.com/9032TEST=TBD... will finally be doing some for TabStrip layout!
Review URL: http://codereview.chromium.org/42490
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20053 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
set RootView::widget_ = NULL in RootView::OnWidgetDestroyed.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/150137
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19684 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We optimize mouse-mouve event handling by ignoring two mouse-move events in a row
which works in most cases except that when we animate tab-closing on windows we
send a duplicate mouse-move event on purpose to highlight the button. Unfortunately
our optimization kicks in.
Fixed by reseting the flag to optimize this before sending the extra mouse-move.
BUG=8838
Review URL: http://codereview.chromium.org/118454
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18052 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
| |
it's a good enough stage that I want to check it in.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/119329
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17906 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
side.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/114054
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17076 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
on Linux.
Requires:
- making SetOpacity a cross platform method on Widget, replacing SetLayeredAlpha.
- moving Window::SetBounds to Widget
- replacing usage of MoveWindow in StatusBubbleViews with call to new SetBounds method.
BUG=none
TEST=make sure transparency still works for floating widgets like - status bubble, full screen exit bubble, dragged tabs
Review URL: http://codereview.chromium.org/113846
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16948 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/115528
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16407 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
Rename files too.
TBR=brettw
http://crbug.com/11387
Review URL: http://codereview.chromium.org/113443
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16148 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/115309
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@16088 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
compile on linux and mac!
TBR=sky
Review URL: http://codereview.chromium.org/113351
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15967 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/115309
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15965 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
This CL is paired with http://codereview.chromium.org/67284
This CL (for commit purposes) includes http://codereview.chromium.org/67284
BUG=4463,11232,11233,11234,11235
Review URL: http://codereview.chromium.org/99030
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15704 0039d316-1c4b-4281-b951-d872f2087c98
|
|
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15604 0039d316-1c4b-4281-b951-d872f2087c98
|