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

Unified Diff: ui/aura/mus/window_tree_client.h

Issue 2456623002: Fixes to WindowTreeHostMus (Closed)
Patch Set: merge Created 4 years, 2 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 | « ui/aura/mus/window_port_mus.cc ('k') | ui/aura/mus/window_tree_client.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ui/aura/mus/window_tree_client.h
diff --git a/ui/aura/mus/window_tree_client.h b/ui/aura/mus/window_tree_client.h
index bd8c4fe79056076ef2e6cfc327a3ea560b95bd07..8c77d24d0cc80119362fc6449d1791eaa95564c2 100644
--- a/ui/aura/mus/window_tree_client.h
+++ b/ui/aura/mus/window_tree_client.h
@@ -26,6 +26,7 @@
#include "ui/aura/client/focus_change_observer.h"
#include "ui/aura/mus/mus_types.h"
#include "ui/aura/mus/window_manager_delegate.h"
+#include "ui/aura/mus/window_tree_host_mus_delegate.h"
namespace display {
class Display;
@@ -40,10 +41,12 @@ class Connector;
}
namespace aura {
+class InFlightBoundsChange;
class InFlightCaptureChange;
class InFlightChange;
class InFlightFocusChange;
class InFlightPropertyChange;
+class InFlightVisibleChange;
class WindowMus;
class WindowPortMus;
struct WindowPortInitData;
@@ -72,7 +75,8 @@ class AURA_EXPORT WindowTreeClient
NON_EXPORTED_BASE(public ui::mojom::WindowManager),
public WindowManagerClient,
public client::CaptureClientObserver,
- public client::FocusChangeObserver {
+ public client::FocusChangeObserver,
+ public WindowTreeHostMusDelegate {
public:
explicit WindowTreeClient(
WindowTreeClientDelegate* delegate,
@@ -174,14 +178,14 @@ class AURA_EXPORT WindowTreeClient
void RemoveObserver(WindowTreeClientObserver* observer);
private:
+ friend class InFlightBoundsChange;
friend class InFlightCaptureChange;
friend class InFlightFocusChange;
friend class InFlightPropertyChange;
+ friend class InFlightVisibleChange;
friend class WindowPortMus;
friend class WindowTreeClientPrivate;
- enum class WindowTreeHostType { EMBED, TOP_LEVEL, DISPLAY };
-
struct CurrentDragState;
using IdToWindowMap = std::map<Id, WindowMus*>;
@@ -233,8 +237,9 @@ class AURA_EXPORT WindowTreeClient
// details.
// TODO(sky): it would be nice to always have a single window and not the
// two different. That requires ownership changes to WindowTreeHost though.
- Window* CreateWindowTreeHost(WindowTreeHostType type,
+ Window* CreateWindowTreeHost(RootWindowType type,
const ui::mojom::WindowDataPtr& window_data,
+ int64_t display_id,
Window* content_window);
WindowMus* NewWindowFromWindowData(
@@ -269,6 +274,12 @@ class AURA_EXPORT WindowTreeClient
void OnReceivedCursorLocationMemory(mojo::ScopedSharedBufferHandle handle);
+ // Called when a property needs to change as the result of a change in the
+ // server, or the server failing to accept a change.
+ void SetWindowBoundsFromServer(WindowMus* window,
+ const gfx::Rect& revert_bounds);
+ void SetWindowVisibleFromServer(WindowMus* window, bool visible);
+
// Following are called from WindowMus.
std::unique_ptr<WindowPortInitData> OnWindowMusCreated(WindowMus* window);
void OnWindowMusInitDone(WindowMus* window,
@@ -431,6 +442,9 @@ class AURA_EXPORT WindowTreeClient
// Overriden from client::CaptureClientObserver:
void OnCaptureChanged(Window* lost_capture, Window* gained_capture) override;
+ // Overriden from WindowTreeHostMusDelegate:
+ void SetRootWindowBounds(Window* window, gfx::Rect* bounds) override;
+
// The one int in |cursor_location_mapping_|. When we read from this
// location, we must always read from it atomically.
base::subtle::Atomic32* cursor_location_memory() {
« no previous file with comments | « ui/aura/mus/window_port_mus.cc ('k') | ui/aura/mus/window_tree_client.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698