| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
either on the new tab button, on the closetab button or on a single tab.BUG=2827BUG=3787The problem comes from the Windows event sequence upon adouble-click (simplified here):1 - hit-test2 - mouse-down4 - mouse-up/click5 - hit-test6 - mouse down7 - mouse up/double-clickThe 1st hit-test is always performed correctly, returningclient for tabs and non-client for the tab-strip (background).The 2nd hit test is not performed correctly to avoid crashesin Chromebot from events being processed while tabs are animating.Since we have no record of these crashes, Ben prefers we keepthis special-case, even though we are responding incorrectlyto the windows hit-test. So, when the tabs are animating wereturn a HTNOWHERE hit which the caller translates into anHTCAPTION hit. This even though a tab-control (new-tab/close-tab)may have been hit.The problem is that having returned HTCAPTION to Windows defaultmessage handling, we get a NON-CLIENT double-click event insteadof a standard one.To keep the behavior of the second hit-test AND prevent theChrome window from maximizing, this change simply declaresthe non-client double-click as handled when the tabs areanimating.Another trick we pulled in the hit-test is to return HTCAPTIONwhen a single tab is present. This allows the entire window to be dragged but causes the context menu to be wrong and the windowto maximize when double clicking on the single tab.The solution here is to correct return a client hit for a singletab and, upon handling a client single-click, delegate to thenon-client single-click default handler.
Review URL: http://codereview.chromium.org/21268
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9953 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
of the old Halo Frame. Trying to rip it out halfway results in problems, like the taskbar not un-auto-hiding when Chromium is maximized.
This should result in correct handling of maximized windows on multiple monitors with different resolutions, taskbar positions, and auto-hide settings (since we're just using the native Windows code to do everything).
BUG=943445
Review URL: http://codereview.chromium.org/14446
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7021 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
R=erg
review url = http://codereview.chromium.org/11348/show
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5849 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
- make the window update locking use window visibility instead of WM_SETREDRAW. I believe WM_SETREDRAW is causing the window to become visible during tests.
- potential crashes caused by NULL TabcontentsDelegates.
TBR=sky
Review URL: http://codereview.chromium.org/10674
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5335 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
| |
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3723 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
| |
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3645 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I think I've finally fixed this. Knock on wood. Turns out that these two
additional places do non-client rendering:
- DefWindowProc for WM_NCLBUTTONDOWN
- the function EnableMenuItem (called from CustomFrameWindow::OnInitMenu)
For the first case, we also need to unlock updating when we begin to receive
mouse move events during modal size/move loops, otherwise the feedback won't be
visually continuous.
http://crbug.com/3264
Review URL: http://codereview.chromium.org/7662
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3620 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
| |
http://crbug.com/3466
Review URL: http://codereview.chromium.org/7506
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3580 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
http://crbug.com/2188
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3495 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
| |
http://crbug.com/3430
Review URL: http://codereview.chromium.org/7376
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3441 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
with aero-glass disabled.
http://crbug.com/2488
Review URL: http://codereview.chromium.org/7262
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3292 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
| |
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3217 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
earlier today.
http://crbug.com/3264
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3154 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
handlers.
http://crbug.com/3264
Review URL: http://codereview.chromium.org/6605
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3143 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
| |
http://crbug.com/3264
Review URL: http://codereview.chromium.org/6394
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3126 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
http://crbug.com/3264
Review URL: http://codereview.chromium.org/7022
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3115 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
http://crbug.com/3264
Review URL: http://codereview.chromium.org/7007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3100 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
WM_SETTEXT.
Make sure mouse leave messages are sent for controls within the non-client areas
of the window too.
http://crbug.com/2689
http://crbug.com/2710
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2992 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
windows messages that get sent to caption'ed windows.
B=1031854
Review URL: http://codereview.chromium.org/1965
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@2105 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
- client edge rendering is now pixel-perfect for all BrowserTypes.
- fix NCCALCSIZE handling that was making our top-right corner less than perfectly round
- make system menu work
- remove some unnecessary functions
B=1031854
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1340 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
| |
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1287 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
for the new frames to make it so when infobubbles are activated the window frame isn't deactivated.
B=1318343
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@659 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
| |
B=1031854
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@614 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
Note that AeroGlassFrame needs a NonClientView as well - even though Windows draws most of the frame and its borders, we do some custom rendering in the non-client area, such as the distributor logo, the client edge and toolbar backgrounds. This necessitated allowing Window to support an optional NonClientView. I just jimmied this in for now... can clean up that API later if desired.
B=1031854
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@352 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
| |
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
CreateChromeWindow instead.
Move CustomFrameWindow's two constructors to the protected section. They should be called by subclasses only.
B=1293984
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@167 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
| |
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@154 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
it into its own file).
Rename NonClientView's HitTest method to NonClientHitTest, so it doesn't collide with View's HitTest method.
Also, consolidate some duplicated code between CustomFrameWindow and ConstrainedWindow's non-client view impl.
B=1300864
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@141 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Windows now must have a Delegate. Just construct the default WindowDelegate
if
you don't want to have to write one in testing.
- Windows now obtain their contents view by asking the delegate via
WindowDelegate::GetContentsView.
- Contents views no longer need to manually store a pointer to the Window that
contains them, WindowDelegate does this automatically via its window()
accessor.
Reviewer notes:
- review window_delegate.h first, then
- window.h/cc
- custom frame window.h/cc
- constrained_window_impl.h/cc
- then everything else (just updating all call sites)
B=1280060
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@96 0039d316-1c4b-4281-b951-d872f2087c98
|
|
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15 0039d316-1c4b-4281-b951-d872f2087c98
|