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

Unified Diff: services/ui/ws/window_server.h

Issue 2281583003: services/ui: Split GpuServiceInternal into gpu vs. ws pieces. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@DONE_2016.08.24_mus-ws-gpu-refactor
Patch Set: tot merge Created 4 years, 4 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: services/ui/ws/window_server.h
diff --git a/services/ui/ws/window_server.h b/services/ui/ws/window_server.h
index 3185f00c948ff6864e5e7f867d7c654beb39c7bf..8d52987822e1ef3b6df0422764d57fa52fac3a40 100644
--- a/services/ui/ws/window_server.h
+++ b/services/ui/ws/window_server.h
@@ -21,6 +21,7 @@
#include "services/ui/public/interfaces/window_tree_host.mojom.h"
#include "services/ui/surfaces/surfaces_state.h"
#include "services/ui/ws/display.h"
+#include "services/ui/ws/gpu_service_proxy.h"
#include "services/ui/ws/ids.h"
#include "services/ui/ws/operation.h"
#include "services/ui/ws/server_window_delegate.h"
@@ -35,6 +36,7 @@ namespace ws {
class AccessPolicy;
class DisplayManager;
+class GpuServiceProxy;
class ServerWindow;
class UserActivityMonitor;
class WindowManagerState;
@@ -46,6 +48,7 @@ class WindowTreeBinding;
// WindowTrees) as well as providing the root of the hierarchy.
class WindowServer : public ServerWindowDelegate,
public ServerWindowObserver,
+ public GpuServiceProxy::Delegate,
public UserDisplayManagerDelegate,
public UserIdTrackerObserver {
public:
@@ -62,6 +65,8 @@ class WindowServer : public ServerWindowDelegate,
return display_manager_.get();
}
+ GpuServiceProxy* gpu_proxy() { return gpu_proxy_.get(); }
+
// Creates a new ServerWindow. The return value is owned by the caller, but
// must be destroyed before WindowServer.
ServerWindow* CreateServerWindow(
@@ -319,6 +324,10 @@ class WindowServer : public ServerWindowDelegate,
void OnTransientWindowRemoved(ServerWindow* window,
ServerWindow* transient_child) override;
+ // GpuServiceProxy::Delegate:
+ void OnGpuChannelEstablished(
+ scoped_refptr<gpu::GpuChannelHost> gpu_channel) override;
+
// UserIdTrackerObserver:
void OnActiveUserIdChanged(const UserId& previously_active_id,
const UserId& active_id) override;
@@ -356,6 +365,7 @@ class WindowServer : public ServerWindowDelegate,
// Next id supplied to the window manager.
uint32_t next_wm_change_id_;
+ std::unique_ptr<GpuServiceProxy> gpu_proxy_;
base::Callback<void(ServerWindow*)> window_paint_callback_;
UserActivityMonitorMap activity_monitor_map_;

Powered by Google App Engine
This is Rietveld 408576698