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

Unified Diff: chrome/browser/ui/panels/panel_browser_view.h

Issue 10408047: Fix bug 105043: Panels [WIN]: For minimize panels, taskbar hover preview show the 4-pixel represent… (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix win_aura Created 8 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
Index: chrome/browser/ui/panels/panel_browser_view.h
diff --git a/chrome/browser/ui/panels/panel_browser_view.h b/chrome/browser/ui/panels/panel_browser_view.h
index 58892c80d4680a62a833566ab4cd261893795186..1cc612a7f6cb5a38b740d96ca94e4565ed4cbfe3 100644
--- a/chrome/browser/ui/panels/panel_browser_view.h
+++ b/chrome/browser/ui/panels/panel_browser_view.h
@@ -19,6 +19,10 @@ class NativePanelTestingWin;
class Panel;
class PanelBoundsAnimation;
class PanelBrowserFrameView;
+class TaskbarWindowThumbnailerWin;
+namespace ui {
+class HWNDSubclass;
+}
// A browser view that implements Panel specific behavior.
class PanelBrowserView : public BrowserView,
@@ -32,6 +36,9 @@ class PanelBrowserView : public BrowserView,
Panel* panel() const { return panel_.get(); }
bool closed() const { return closed_; }
bool focused() const { return focused_; }
+ bool force_to_paint_as_inactive() const {
+ return force_to_paint_as_inactive_;
+ }
PanelBrowserFrameView* GetFrameView() const;
@@ -125,6 +132,9 @@ class PanelBrowserView : public BrowserView,
virtual void SetPanelAlwaysOnTop(bool on_top) OVERRIDE;
virtual void EnableResizeByMouse(bool enable) OVERRIDE;
virtual void UpdatePanelMinimizeRestoreButtonVisibility() OVERRIDE;
+ virtual void PanelExpansionStateChanging(
+ Panel::ExpansionState old_state,
+ Panel::ExpansionState new_state) OVERRIDE;
// Overridden from AnimationDelegate:
virtual void AnimationEnded(const ui::Animation* animation) OVERRIDE;
@@ -175,12 +185,26 @@ class PanelBrowserView : public BrowserView,
// Is the panel in highlighted state to draw people's attention?
bool is_drawing_attention_;
+ // Should we force to paint the panel as inactive? This is needed when we need
+ // to capture the screenshot before an active panel goes minimized.
+ bool force_to_paint_as_inactive_;
+
// The last view that had focus in the panel. This is saved so that focus can
// be restored properly when a drag ends.
views::View* old_focused_view_;
content::NotificationRegistrar registrar_;
+#if defined(OS_WIN) && !defined(USE_ASH) && !defined(USE_AURA)
+ // Used to provide custom taskbar thumbnail for Windows 7 and later.
+ // Note that once the subclass has been triggered, it should be kept alive
+ // for the live of the window.
+ scoped_ptr<ui::HWNDSubclass> thumbnail_subclass_;
+
+ // Weak, owned by thumbnail_subclass_.
+ TaskbarWindowThumbnailerWin* thumbnailer_;
+#endif
+
DISALLOW_COPY_AND_ASSIGN(PanelBrowserView);
};
« no previous file with comments | « chrome/browser/ui/panels/panel_browser_frame_view.cc ('k') | chrome/browser/ui/panels/panel_browser_view.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698