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

Unified Diff: chrome/browser/gtk/fullscreen_exit_bubble_gtk.h

Issue 374023: First cut at Exit Fullscreen bubble on Linux. (Closed)
Patch Set: review comments Created 11 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/browser/gtk/browser_window_gtk.cc ('k') | chrome/browser/gtk/fullscreen_exit_bubble_gtk.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/gtk/fullscreen_exit_bubble_gtk.h
diff --git a/chrome/browser/gtk/fullscreen_exit_bubble_gtk.h b/chrome/browser/gtk/fullscreen_exit_bubble_gtk.h
new file mode 100644
index 0000000000000000000000000000000000000000..f5c3c80f66d96976dc5c24c307cadc1c17707cdd
--- /dev/null
+++ b/chrome/browser/gtk/fullscreen_exit_bubble_gtk.h
@@ -0,0 +1,46 @@
+// Copyright (c) 2009 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef CHROME_BROWSER_GTK_FULLSCREEN_EXIT_BUBBLE_GTK_H_
+#define CHROME_BROWSER_GTK_FULLSCREEN_EXIT_BUBBLE_GTK_H_
+
+#include <gtk/gtk.h>
+
+#include "base/timer.h"
+#include "chrome/common/owned_widget_gtk.h"
+
+typedef struct _GtkFloatingContainer GtkFloatingContainer;
+
+// FullscreenExitBubbleGTK is responsible for showing a bubble atop the screen
+// in fullscreen mode, telling users how to exit and providing a click target.
+class FullscreenExitBubbleGtk {
+ public:
+ // We place the bubble in |container|.
+ explicit FullscreenExitBubbleGtk(GtkFloatingContainer* container);
+ ~FullscreenExitBubbleGtk();
+
+ void InitWidgets();
+
+ private:
+ // Hide the exit bubble.
+ void Hide();
+
+ static void OnSetFloatingPosition(GtkFloatingContainer* floating_container,
+ GtkAllocation* allocation,
+ FullscreenExitBubbleGtk* bubble);
+
+ static void OnLinkClicked(GtkWidget* link,
+ FullscreenExitBubbleGtk* bubble);
+
+ // A pointer to the floating container that is our parent.
+ GtkFloatingContainer* container_;
+
+ // The top widget of the exit bubble.
+ OwnedWidgetGtk alignment_;
+
+ // The timer that does the initial hiding of the exit bubble.
+ base::OneShotTimer<FullscreenExitBubbleGtk> initial_delay_;
+};
+
+#endif // CHROME_BROWSER_GTK_FULLSCREEN_EXIT_BUBBLE_GTK_H_
« no previous file with comments | « chrome/browser/gtk/browser_window_gtk.cc ('k') | chrome/browser/gtk/fullscreen_exit_bubble_gtk.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698