Index: ui/compositor/compositor_retriever_delegate.h |
diff --git a/ui/compositor/compositor_retriever_delegate.h b/ui/compositor/compositor_retriever_delegate.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..72209ead8b89d748e91f74a760e18cbe4c303dd8 |
--- /dev/null |
+++ b/ui/compositor/compositor_retriever_delegate.h |
@@ -0,0 +1,32 @@ |
+// Copyright (c) 2013 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+#ifndef UI_COMPOSITOR_COMPOSITOR_RETRIEVER_DELEGATE_H_ |
+#define UI_COMPOSITOR_COMPOSITOR_RETRIEVER_DELEGATE_H_ |
+ |
+namespace gfx { |
+class Display; |
+} |
+ |
+namespace ui { |
+ |
+class Compositor; |
+ |
+// A class that allows retrieving a compositor associated with a display. |
+class CompositorRetrieverDelegate { |
+ public: |
+ // Returns the compositor associated with the display. |
+ virtual ui::Compositor* GetCompositorForDisplay( |
+ const gfx::Display& display) = 0; |
+ |
+ // Sets the CompositorRetrieverDelegate. Only one delegate may be registered. |
+ static void SetDelegate(CompositorRetrieverDelegate* delegate); |
+ |
+ // Gets the global CompositorRetrieverDelegate instance. |
+ static CompositorRetrieverDelegate* GetInstance(); |
+}; |
+ |
+} // namespace ui |
+ |
+#endif // UI_COMPOSITOR_COMPOSITOR_RETRIEVER_DELEGATE_H_ |