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

Unified Diff: ui/views/widget/desktop_aura/desktop_root_window_host_win.h

Issue 12342028: make menus, bubbles, etc. top level windows on aura (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 7 years, 9 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: ui/views/widget/desktop_aura/desktop_root_window_host_win.h
diff --git a/ui/views/widget/desktop_aura/desktop_root_window_host_win.h b/ui/views/widget/desktop_aura/desktop_root_window_host_win.h
index 6e4ae8a2b81a5431adadf56b5db980835da491e1..9aa17c05dc6e39b6b7f355278997062c55581503 100644
--- a/ui/views/widget/desktop_aura/desktop_root_window_host_win.h
+++ b/ui/views/widget/desktop_aura/desktop_root_window_host_win.h
@@ -5,6 +5,7 @@
#ifndef UI_VIEWS_WIDGET_DESKTOP_AURA_DESKTOP_ROOT_WINDOW_HOST_WIN_H_
#define UI_VIEWS_WIDGET_DESKTOP_AURA_DESKTOP_ROOT_WINDOW_HOST_WIN_H_
+#include "ui/aura/client/animation_host.h"
#include "ui/aura/root_window_host.h"
#include "ui/views/views_export.h"
#include "ui/views/widget/desktop_aura/desktop_root_window_host.h"
@@ -31,6 +32,7 @@ class CursorManager;
class VIEWS_EXPORT DesktopRootWindowHostWin
: public DesktopRootWindowHost,
+ public aura::client::AnimationHost,
public aura::RootWindowHost,
public HWNDMessageHandlerDelegate {
public:
@@ -47,6 +49,7 @@ class VIEWS_EXPORT DesktopRootWindowHostWin
// Overridden from DesktopRootWindowHost:
virtual aura::RootWindow* Init(aura::Window* content_window,
const Widget::InitParams& params) OVERRIDE;
+ virtual void InitFocus(aura::Window* window) OVERRIDE;
virtual void Close() OVERRIDE;
virtual void CloseNow() OVERRIDE;
virtual aura::RootWindowHost* AsRootWindowHost() OVERRIDE;
@@ -125,6 +128,10 @@ class VIEWS_EXPORT DesktopRootWindowHostWin
virtual void OnDeviceScaleFactorChanged(float device_scale_factor) OVERRIDE;
virtual void PrepareForShutdown() OVERRIDE;
+ // Overridden from aura::client::AnimationHost
+ virtual void SetHostTransitionBounds(const gfx::Rect& bounds) OVERRIDE;
+ virtual void OnWindowHidingAnimationCompleted() OVERRIDE;
+
// Overridden from HWNDMessageHandlerDelegate:
virtual bool IsWidgetWindow() const OVERRIDE;
virtual bool IsUsingCustomFrame() const OVERRIDE;
@@ -234,6 +241,23 @@ class VIEWS_EXPORT DesktopRootWindowHostWin
scoped_ptr<DesktopDragDropClientWin> drag_drop_client_;
+ // Extra size added to the host window. Typically, the window size matches
+ // the contained content, however, when performing a translating or scaling
+ // animation the window has to be enlarged so that the content is not
+ // clipped.
+ gfx::Rect window_expansion_;
+
+ // Whether the window close should be converted to a hide, and then actually
+ // closed on the completion of the hide animation. This is cached because
+ // the property is set on the contained window which has a shorter lifetime.
+ bool should_animate_window_close_;
+
+ // When Close()d and animations are being applied to this window, the close
+ // of the window needs to be deferred to when the close animation is
+ // completed. This variable indicates that a Close was converted to a Hide,
+ // so that when the Hide is completed the host window should be closed.
+ bool pending_close_;
+
DISALLOW_COPY_AND_ASSIGN(DesktopRootWindowHostWin);
};

Powered by Google App Engine
This is Rietveld 408576698