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

Unified Diff: chrome/browser/ui/views/exclusive_access_bubble_views.h

Issue 1979193002: Factor ExclusiveAccessView out to SubtleNotificationView. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@fullscreen-remove-old-theming-code
Patch Set: Avoid dependency patch set. Created 4 years, 7 months 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 | « no previous file | chrome/browser/ui/views/exclusive_access_bubble_views.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/ui/views/exclusive_access_bubble_views.h
diff --git a/chrome/browser/ui/views/exclusive_access_bubble_views.h b/chrome/browser/ui/views/exclusive_access_bubble_views.h
index 979269e15455ff5b727e8f557fa81434e4e76f9a..46d06a732e3189b37655020d2993aeeb539ad6df 100644
--- a/chrome/browser/ui/views/exclusive_access_bubble_views.h
+++ b/chrome/browser/ui/views/exclusive_access_bubble_views.h
@@ -12,6 +12,7 @@
#include "chrome/browser/ui/exclusive_access/exclusive_access_bubble.h"
#include "content/public/browser/notification_observer.h"
#include "content/public/browser/notification_registrar.h"
+#include "ui/views/controls/link_listener.h"
#include "ui/views/widget/widget_observer.h"
class ExclusiveAccessBubbleViewsContext;
@@ -24,13 +25,16 @@ class View;
class Widget;
}
+class SubtleNotificationView;
+
// ExclusiveAccessBubbleViews is responsible for showing a bubble atop the
// screen in fullscreen/mouse lock mode, telling users how to exit and providing
// a click target. The bubble auto-hides, and re-shows when the user moves to
// the screen top.
class ExclusiveAccessBubbleViews : public ExclusiveAccessBubble,
public content::NotificationObserver,
- public views::WidgetObserver {
+ public views::WidgetObserver,
+ public views::LinkListener {
public:
ExclusiveAccessBubbleViews(ExclusiveAccessBubbleViewsContext* context,
const GURL& url,
@@ -45,8 +49,6 @@ class ExclusiveAccessBubbleViews : public ExclusiveAccessBubble,
views::View* GetView();
private:
- class ExclusiveAccessView;
-
// Starts or stops polling the mouse location based on |popup_| and
// |bubble_type_|.
void UpdateMouseWatcher();
@@ -54,6 +56,8 @@ class ExclusiveAccessBubbleViews : public ExclusiveAccessBubble,
// Updates |popup|'s bounds given |animation_| and |animated_attribute_|.
void UpdateBounds();
+ void UpdateViewContent(ExclusiveAccessBubbleType bubble_type);
+
// Returns the root view containing |browser_view_|.
views::View* GetBrowserRootView() const;
@@ -77,6 +81,9 @@ class ExclusiveAccessBubbleViews : public ExclusiveAccessBubble,
// views::WidgetObserver override:
void OnWidgetVisibilityChanged(views::Widget* widget, bool visible) override;
+ // views::LinkListener override:
+ void LinkClicked(views::Link* source, int event_flags) override;
+
ExclusiveAccessBubbleViewsContext* const bubble_view_context_;
views::Widget* popup_;
@@ -85,7 +92,8 @@ class ExclusiveAccessBubbleViews : public ExclusiveAccessBubble,
std::unique_ptr<gfx::SlideAnimation> animation_;
// The contents of the popup.
- ExclusiveAccessView* view_;
+ SubtleNotificationView* view_;
+ base::string16 browser_fullscreen_exit_accelerator_;
content::NotificationRegistrar registrar_;
« no previous file with comments | « no previous file | chrome/browser/ui/views/exclusive_access_bubble_views.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698