Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(706)

Issue 2819070: Mac: Add tabpose window (Closed)

Created:
10 years, 5 months ago by Nico
Modified:
9 years, 7 months ago
CC:
chromium-reviews, John Grabowski, pam+watch_chromium.org, ben+cc_chromium.org, Paweł Hajdan Jr.
Visibility:
Public.

Description

Mac: Add tabpose window The window doesn't have any contents yet, which makes its appearance look a bit janky for now. BUG=50307 TEST= * All the following happens only if --enable-expose-for-tabs is passed in, else all of it should be disabled. * In a browser window, hit cmd-f10 or three-finger-swipe down. A grey overlay with a gradient at the top should appear. * The overlay should cover tab contents, eventual info bars, the bookmarks bar if it's detached (but not the bookmarks bar if it's not detached), and eventual attached inspector windows. It should not cover the download shelf if it's open. * The window should block clicks on the tab strip and the download shelf for now. * The overlay should close on three-finger-swipe up, click, esc, enter, and space. * Every open browser window should have its own overlay, and they should be independent of each other. * If a browser window with an overlay window is active, most menu items should be greyed out, and all browser-related keyboard shortcuts should be disabled. * In particular, hitting cmd-f10 twice should open only one overlay per browser window * The overlay should have the correct size with a UI scale factor > 1 Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=54349

Patch Set 1 #

Patch Set 2 : '' #

Patch Set 3 : '' #

Patch Set 4 : '' #

Total comments: 20

Patch Set 5 : '' #

Patch Set 6 : '' #

Total comments: 12

Patch Set 7 : comments #

Patch Set 8 : comments pink #

Patch Set 9 : linux compile #

Patch Set 10 : mac compile?! #

Total comments: 6
Unified diffs Side-by-side diffs Delta from patch set Stats (+252 lines, -1 line) Patch
M chrome/browser/browser.h View 1 chunk +1 line, -0 lines 0 comments Download
M chrome/browser/browser.cc View 8 2 chunks +13 lines, -0 lines 2 comments Download
M chrome/browser/browser_window.h View 1 chunk +5 lines, -0 lines 0 comments Download
M chrome/browser/cocoa/browser_window_cocoa.h View 1 chunk +1 line, -0 lines 0 comments Download
M chrome/browser/cocoa/browser_window_cocoa.mm View 1 chunk +4 lines, -0 lines 0 comments Download
M chrome/browser/cocoa/browser_window_controller.h View 1 2 1 chunk +3 lines, -0 lines 0 comments Download
M chrome/browser/cocoa/browser_window_controller.mm View 3 4 5 6 7 3 chunks +19 lines, -0 lines 0 comments Download
M chrome/browser/cocoa/browser_window_controller_private.mm View 3 4 5 6 7 1 chunk +0 lines, -1 line 0 comments Download
A chrome/browser/cocoa/tabpose_window.h View 2 3 4 5 6 7 1 chunk +36 lines, -0 lines 0 comments Download
A chrome/browser/cocoa/tabpose_window.mm View 2 3 4 5 6 1 chunk +131 lines, -0 lines 0 comments Download
A chrome/browser/cocoa/tabpose_window_unittest.mm View 2 3 4 5 6 1 chunk +35 lines, -0 lines 0 comments Download
M chrome/chrome_browser.gypi View 2 3 4 5 6 1 chunk +2 lines, -0 lines 2 comments Download
M chrome/chrome_tests.gypi View 2 1 chunk +1 line, -0 lines 2 comments Download
M chrome/test/test_browser_window.h View 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 10 (0 generated)
Nico
10 years, 4 months ago (2010-07-28 03:30:13 UTC) #1
Robert Sesek
http://codereview.chromium.org/2819070/diff/7001/8001 File chrome/browser/cocoa/browser_window_controller.mm (right): http://codereview.chromium.org/2819070/diff/7001/8001#newcode922 chrome/browser/cocoa/browser_window_controller.mm:922: NSInteger command = [sender tag]; Add a comment as ...
10 years, 4 months ago (2010-07-28 04:05:38 UTC) #2
Nico
http://codereview.chromium.org/2819070/diff/7001/8001 File chrome/browser/cocoa/browser_window_controller.mm (right): http://codereview.chromium.org/2819070/diff/7001/8001#newcode922 chrome/browser/cocoa/browser_window_controller.mm:922: NSInteger command = [sender tag]; On 2010/07/28 04:05:38, rsesek ...
10 years, 4 months ago (2010-07-28 16:41:34 UTC) #3
pink (ping after 24hrs)
http://codereview.chromium.org/2819070/diff/12001/13001 File chrome/browser/cocoa/browser_window_controller.mm (right): http://codereview.chromium.org/2819070/diff/12001/13001#newcode924 chrome/browser/cocoa/browser_window_controller.mm:924: case IDC_TABPOSE: { rather than trapping this mac-only, shouldn't ...
10 years, 4 months ago (2010-07-28 16:47:42 UTC) #4
pink (ping after 24hrs)
Also, all the design decisions you put in the TEST= area should be documented somewhere ...
10 years, 4 months ago (2010-07-28 16:49:29 UTC) #5
Nico
On 2010/07/28 16:49:29, pink wrote: > Also, all the design decisions you put in the ...
10 years, 4 months ago (2010-07-28 17:51:45 UTC) #6
Nico
(Note that this is still behind a flag and I'm not 100% sure how this ...
10 years, 4 months ago (2010-07-28 17:52:57 UTC) #7
Robert Sesek
These points should be integrated into the class comments, I think: * Every open browser ...
10 years, 4 months ago (2010-07-28 20:09:08 UTC) #8
pink (ping after 24hrs)
lgtm
10 years, 4 months ago (2010-07-30 14:07:27 UTC) #9
Nico
10 years, 4 months ago (2010-07-30 18:28:57 UTC) #10
Thanks!

I noticed that I get all kinds of leaks in CoreAnimation when I run this under
valgrind locally. I get the same leaks when I run AnimatableImageTest under
valgrind, which seems to be fine on the bots (maybe because the bots have
different graphics cards and hence hit different paths), so maybe it'll work.
Else, I'll need to add suppressions.

http://codereview.chromium.org/2819070/diff/29001/30001
File chrome/browser/browser.cc (right):

http://codereview.chromium.org/2819070/diff/29001/30001#newcode1352
chrome/browser/browser.cc:1352: #endif
On 2010/07/28 20:09:08, rsesek wrote:
> #else
> NOTIMPLEMENTED()?

Since the assumption is that linux/win won't have that, NOTREACHED is better I
think. Done.

http://codereview.chromium.org/2819070/diff/29001/30012
File chrome/chrome_browser.gypi (right):

http://codereview.chromium.org/2819070/diff/29001/30012#newcode991
chrome/chrome_browser.gypi:991: 'browser/cocoa/tabpose_window.mm',
On 2010/07/28 20:09:08, rsesek wrote:
> Alphabetize. p > l

Done.

http://codereview.chromium.org/2819070/diff/29001/30013
File chrome/chrome_tests.gypi (right):

http://codereview.chromium.org/2819070/diff/29001/30013#newcode883
chrome/chrome_tests.gypi:883: 'browser/cocoa/tabpose_window_unittest.mm',
On 2010/07/28 20:09:08, rsesek wrote:
> Here too

Done.

Powered by Google App Engine
This is Rietveld 408576698