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

Issue 9838071: Implement pepper flash fullscreen on Mac (Closed)

Created:
8 years, 9 months ago by sail
Modified:
8 years, 8 months ago
CC:
chromium-reviews, yusukes+watch_chromium.org, jam, penghuang+watch_chromium.org, joi+watch-content_chromium.org, darin-cc_chromium.org, James Su
Visibility:
Public.

Description

This CL adds pepper flash fullscreen support on Mac. Pepper has two fullscreen APIs: src/ppapi/cpp/fullscreen.h pp::FullScreen::SetFullscreen() src/ppapi/cpp/private/flash_fullscreen.h pp::FlashFullScreen::SetFullscreen() The first fullscreen API simply causes the browser window to enter fullscreen as normal. This means that the menu bar and tab strip is auto-shown when the mouse is moved to the top of the screen. This feature is already working on the Mac and this CL doesn't change anything with respect to that API. The second fullscreen API creates a new web content that is hosted in its own window. To keep the architecture similar to the Windows and Linux implementation I decided not to host the web content inside a browser window. Instead I'm using a custom borderless window that's similar to windows that NPAPI plugins use today. The chrome browser fullscreen window has three interesting functionality: 1. allow OpenGL surface under the window to be visible to the user 2. Setup the background color for the tab strip / toolbar drawing 3. Auto-show the menu bar / tab strip when the mouse is at the top of the screen Of these the flash fullscreen window only needs the first. For this reason I factored out that functionality into a new common base class, UnderlayOpenGLHostingWindow. BUG= TEST=call pp::FlashFullscreen::SetFullscreen(true). Verify that the plugin goes fullscreen. Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=130311

Patch Set 1 #

Patch Set 2 : a #

Patch Set 3 : test #

Total comments: 3

Patch Set 4 : address review comment #

Total comments: 12

Patch Set 5 : address review comments #

Patch Set 6 : nit #

Total comments: 16

Patch Set 7 : address review comments #

Patch Set 8 : This CL adds pepper flash fullscreen support on Mac. #

Patch Set 9 : #

Total comments: 1

Patch Set 10 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+346 lines, -101 lines) Patch
M chrome/browser/ui/cocoa/chrome_browser_window.h View 1 2 3 4 5 6 7 8 1 chunk +2 lines, -16 lines 0 comments Download
M chrome/browser/ui/cocoa/chrome_browser_window.mm View 1 2 3 4 5 6 7 1 chunk +0 lines, -18 lines 0 comments Download
M chrome/browser/ui/cocoa/chrome_event_processing_window.h View 1 2 3 4 5 6 7 1 chunk +2 lines, -1 line 0 comments Download
M content/browser/renderer_host/accelerated_plugin_view_mac.mm View 1 2 3 4 5 6 7 1 chunk +1 line, -1 line 0 comments Download
M content/browser/renderer_host/accelerated_plugin_view_mac_unittest.mm View 1 2 3 4 5 6 7 1 chunk +1 line, -1 line 0 comments Download
M content/browser/renderer_host/render_widget_host_view_mac.h View 1 2 3 4 5 6 7 3 chunks +9 lines, -0 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_view_mac.mm View 1 2 3 4 5 6 7 5 chunks +65 lines, -2 lines 0 comments Download
M content/browser/renderer_host/render_widget_host_view_mac_unittest.mm View 1 2 3 4 5 6 7 8 9 1 chunk +5 lines, -0 lines 0 comments Download
M content/content_browser.gypi View 1 2 3 4 5 6 7 1 chunk +0 lines, -1 line 0 comments Download
D content/public/browser/accelerated_window_interface.h View 1 2 3 4 5 6 7 1 chunk +0 lines, -16 lines 0 comments Download
M content/shell/shell_mac.mm View 1 2 3 4 5 6 7 8 2 chunks +9 lines, -43 lines 0 comments Download
A ui/base/cocoa/fullscreen_window_manager.h View 1 2 3 4 5 6 7 1 chunk +39 lines, -0 lines 0 comments Download
A ui/base/cocoa/fullscreen_window_manager.mm View 1 2 3 4 5 6 7 1 chunk +113 lines, -0 lines 0 comments Download
A ui/base/cocoa/fullscreen_window_manager_unittest.mm View 1 2 3 4 5 6 7 1 chunk +31 lines, -0 lines 0 comments Download
A ui/base/cocoa/underlay_opengl_hosting_window.h View 1 2 3 4 5 6 7 1 chunk +33 lines, -0 lines 0 comments Download
A ui/base/cocoa/underlay_opengl_hosting_window.mm View 1 2 3 4 5 6 7 1 chunk +29 lines, -0 lines 0 comments Download
M ui/ui.gyp View 1 2 3 4 5 6 7 1 chunk +6 lines, -2 lines 0 comments Download
M ui/ui_unittests.gypi View 1 2 3 4 5 6 7 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 27 (0 generated)
sail
8 years, 9 months ago (2012-03-23 22:03:17 UTC) #1
Nico
Can you explain the motivation behind this design in the CL description a bit. For ...
8 years, 9 months ago (2012-03-23 22:13:26 UTC) #2
sail
On 2012/03/23 22:13:26, Nico wrote: > Can you explain the motivation behind this design in ...
8 years, 9 months ago (2012-03-23 23:05:17 UTC) #3
sail
https://chromiumcodereview.appspot.com/9838071/diff/4001/content/browser/renderer_host/render_widget_host_view_mac.mm File content/browser/renderer_host/render_widget_host_view_mac.mm (right): https://chromiumcodereview.appspot.com/9838071/diff/4001/content/browser/renderer_host/render_widget_host_view_mac.mm#newcode326 content/browser/renderer_host/render_widget_host_view_mac.mm:326: NSRect content_rect = NSMakeRect(0, 0, NSWidth(rect), NSHeight(rect)); On 2012/03/23 ...
8 years, 9 months ago (2012-03-23 23:05:32 UTC) #4
sail
By the way, trung says that silence counts as an LGTM
8 years, 9 months ago (2012-03-27 17:54:10 UTC) #5
Nico
On 2012/03/27 17:54:10, sail wrote: > By the way, trung says that silence counts as ...
8 years, 9 months ago (2012-03-27 18:12:26 UTC) #6
sail
> Nico says that passive-aggressive notes on codereviews count as "please wait > with reviewing ...
8 years, 9 months ago (2012-03-27 18:15:46 UTC) #7
viettrungluu
On 2012/03/27 17:54:10, sail wrote: > By the way, trung says that silence counts as ...
8 years, 9 months ago (2012-03-27 19:22:18 UTC) #8
Robert Sesek
http://codereview.chromium.org/9838071/diff/6001/content/browser/renderer_host/render_widget_host_view_mac.mm File content/browser/renderer_host/render_widget_host_view_mac.mm (right): http://codereview.chromium.org/9838071/diff/6001/content/browser/renderer_host/render_widget_host_view_mac.mm#newcode328 content/browser/renderer_host/render_widget_host_view_mac.mm:328: backing:NSBackingStoreBuffered nit: align colons http://codereview.chromium.org/9838071/diff/6001/ui/base/cocoa/fullscreen_window_manager.h File ui/base/cocoa/fullscreen_window_manager.h (right): http://codereview.chromium.org/9838071/diff/6001/ui/base/cocoa/fullscreen_window_manager.h#newcode24 ...
8 years, 9 months ago (2012-03-27 19:47:49 UTC) #9
sail
https://chromiumcodereview.appspot.com/9838071/diff/6001/content/browser/renderer_host/render_widget_host_view_mac.mm File content/browser/renderer_host/render_widget_host_view_mac.mm (right): https://chromiumcodereview.appspot.com/9838071/diff/6001/content/browser/renderer_host/render_widget_host_view_mac.mm#newcode328 content/browser/renderer_host/render_widget_host_view_mac.mm:328: backing:NSBackingStoreBuffered On 2012/03/27 19:47:50, rsesek wrote: > nit: align ...
8 years, 9 months ago (2012-03-27 20:19:51 UTC) #10
sail
> Nico says that passive-aggressive notes on codereviews count as "please wait > with reviewing ...
8 years, 8 months ago (2012-03-30 19:19:36 UTC) #11
Nico
Sorry, I forgot about this CL again 9_9 Looks mostly good. A few nits, one ...
8 years, 8 months ago (2012-03-30 19:33:57 UTC) #12
sail
http://codereview.chromium.org/9838071/diff/13001/chrome/browser/ui/cocoa/chrome_browser_window.h File chrome/browser/ui/cocoa/chrome_browser_window.h (right): http://codereview.chromium.org/9838071/diff/13001/chrome/browser/ui/cocoa/chrome_browser_window.h#newcode9 chrome/browser/ui/cocoa/chrome_browser_window.h:9: #import <Cocoa/Cocoa.h> On 2012/03/30 19:33:57, Nico wrote: > Remove ...
8 years, 8 months ago (2012-03-30 23:06:06 UTC) #13
Nico
LGTM Thanks for checking. Sorry for the atrocious latency :-(
8 years, 8 months ago (2012-04-02 18:44:31 UTC) #14
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/sail@chromium.org/9838071/17002
8 years, 8 months ago (2012-04-02 19:18:12 UTC) #15
commit-bot: I haz the power
Can't apply patch for file ui/base/cocoa/underlay_opengl_hosting_window.h. While running patch -p1 --forward --force; patching file ui/base/cocoa/underlay_opengl_hosting_window.h ...
8 years, 8 months ago (2012-04-02 19:18:23 UTC) #16
sail
avi: could I get OWNERS review for content/browser/* ben: could I get OWNERS review for ...
8 years, 8 months ago (2012-04-02 19:23:03 UTC) #17
Ben Goodger (Google)
LGTM for ui/base. Please in a separate CL work with Nico to add an OWNERS ...
8 years, 8 months ago (2012-04-02 19:29:03 UTC) #18
sail
On 2012/04/02 19:29:03, Ben Goodger (Google) wrote: > LGTM for ui/base. Please in a separate ...
8 years, 8 months ago (2012-04-02 19:34:03 UTC) #19
sail
Merged in avi's addition of UnderlayableSurface protocol.
8 years, 8 months ago (2012-04-02 20:47:17 UTC) #20
Avi (use Gerrit)
LGTM https://chromiumcodereview.appspot.com/9838071/diff/15004/content/shell/shell_mac.mm File content/shell/shell_mac.mm (right): https://chromiumcodereview.appspot.com/9838071/diff/15004/content/shell/shell_mac.mm#newcode20 content/shell/shell_mac.mm:20: Yes!
8 years, 8 months ago (2012-04-02 20:55:20 UTC) #21
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/sail@chromium.org/9838071/17045
8 years, 8 months ago (2012-04-02 21:44:54 UTC) #22
commit-bot: I haz the power
Try job failure for 9838071-17045 on win for step "update". http://build.chromium.org/p/tryserver.chromium/buildstatus?builder=win&number=5658 Step "update" is always ...
8 years, 8 months ago (2012-04-02 22:16:40 UTC) #23
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/sail@chromium.org/9838071/17045
8 years, 8 months ago (2012-04-02 22:20:54 UTC) #24
commit-bot: I haz the power
Try job failure for 9838071-17045 (retry) on win_rel for step "browser_tests" (clobber build). It's a ...
8 years, 8 months ago (2012-04-03 00:59:27 UTC) #25
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/sail@chromium.org/9838071/17045
8 years, 8 months ago (2012-04-03 01:11:34 UTC) #26
commit-bot: I haz the power
8 years, 8 months ago (2012-04-03 04:38:59 UTC) #27
Change committed as 130311

Powered by Google App Engine
This is Rietveld 408576698