summaryrefslogtreecommitdiffstats
path: root/o3d/plugin/cross
diff options
context:
space:
mode:
authormaf@google.com <maf@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2009-06-25 22:59:41 +0000
committermaf@google.com <maf@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2009-06-25 22:59:41 +0000
commit98514f26dd2386c2811a5a568d993e8d75d6c33d (patch)
tree3722e7140e7073ad0390ef660abe9a9f9993553a /o3d/plugin/cross
parent6f2fc3d53467400baba7c718ef95b4b86d98412f (diff)
downloadchromium_src-98514f26dd2386c2811a5a568d993e8d75d6c33d.zip
chromium_src-98514f26dd2386c2811a5a568d993e8d75d6c33d.tar.gz
chromium_src-98514f26dd2386c2811a5a568d993e8d75d6c33d.tar.bz2
New user experience for the fullscreen message on Mac.
It's now a translucent window that slides down into the top right of the screen, hangs around for a while and then slides up up and away. Review URL: http://codereview.chromium.org/147135 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19300 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'o3d/plugin/cross')
-rw-r--r--o3d/plugin/cross/o3d_glue.cc1
-rw-r--r--o3d/plugin/cross/o3d_glue.h18
2 files changed, 14 insertions, 5 deletions
diff --git a/o3d/plugin/cross/o3d_glue.cc b/o3d/plugin/cross/o3d_glue.cc
index cc21c45..b14cd3b 100644
--- a/o3d/plugin/cross/o3d_glue.cc
+++ b/o3d/plugin/cross/o3d_glue.cc
@@ -130,6 +130,7 @@ PluginObject::PluginObject(NPP npp)
mac_cgl_context_(0),
last_mac_event_time_(0),
wants_redraw_(false),
+ time_to_hide_overlay_(0.0),
#endif
#ifdef OS_LINUX
display_(NULL),
diff --git a/o3d/plugin/cross/o3d_glue.h b/o3d/plugin/cross/o3d_glue.h
index 6c6eacc..625770e 100644
--- a/o3d/plugin/cross/o3d_glue.h
+++ b/o3d/plugin/cross/o3d_glue.h
@@ -187,7 +187,6 @@ class PluginObject: public NPObject {
void set_got_dblclick(bool got_dblclick) { got_dblclick_ = got_dblclick; }
#endif
#ifdef OS_MACOSX
-
void SetFullscreenOverlayMacWindow(WindowRef window) {
mac_fullscreen_overlay_window_ = window;
}
@@ -218,12 +217,9 @@ class PluginObject: public NPObject {
bool SetRendererIsSoftware(bool state) {renderer_is_software_ = state;}
bool renderer_is_software_;
- Ptr mac_fullscreen_state_;
NPDrawingModel drawing_model_;
NPEventModel event_model_;
WindowRef mac_window_; // may be NULL in the Chrome case
- WindowRef mac_fullscreen_window_; // NULL if not in fullscreen modee
- WindowRef mac_fullscreen_overlay_window_; // NULL if not in fullscreen mode
// these vars needed for the Safari tab switch detection hack
CFDateRef last_mac_event_time_;
bool wants_redraw_;
@@ -238,7 +234,19 @@ class PluginObject: public NPObject {
// either can be NULL depending on drawing_model
AGLContext mac_agl_context_;
CGLContextObj mac_cgl_context_;
-#endif
+
+ // Fullscreen related stuff.
+
+ // FullscreenIdle gets repeatedly called while we are in fullscreen mode.
+ // Currently its only task is to hide the fullscreen message at the right
+ // time.
+ void FullscreenIdle();
+ double time_to_hide_overlay_;
+ WindowRef mac_fullscreen_window_; // NULL if not in fullscreen modee
+ WindowRef mac_fullscreen_overlay_window_; // NULL if not in fullscreen mode
+ Ptr mac_fullscreen_state_;
+
+#endif // OS_MACOSX
#ifdef OS_LINUX
Display *display_;
Window window_;