| OLD | NEW | 
|---|
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be | 
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. | 
| 4 | 4 | 
| 5 #ifndef UI_VIEWS_LINUX_UI_LINUX_UI_H_ | 5 #ifndef UI_VIEWS_LINUX_UI_LINUX_UI_H_ | 
| 6 #define UI_VIEWS_LINUX_UI_LINUX_UI_H_ | 6 #define UI_VIEWS_LINUX_UI_LINUX_UI_H_ | 
| 7 | 7 | 
| 8 #include "third_party/skia/include/core/SkColor.h" | 8 #include "third_party/skia/include/core/SkColor.h" | 
| 9 #include "ui/base/ime/linux/linux_input_method_context_factory.h" | 9 #include "ui/base/ime/linux/linux_input_method_context_factory.h" | 
| 10 #include "ui/gfx/linux_font_delegate.h" | 10 #include "ui/gfx/linux_font_delegate.h" | 
| 11 #include "ui/shell_dialogs/linux_shell_dialog.h" | 11 #include "ui/shell_dialogs/linux_shell_dialog.h" | 
| 12 #include "ui/views/controls/button/button.h" | 12 #include "ui/views/controls/button/button.h" | 
| 13 #include "ui/views/linux_ui/status_icon_linux.h" | 13 #include "ui/views/linux_ui/status_icon_linux.h" | 
| 14 #include "ui/views/views_export.h" | 14 #include "ui/views/views_export.h" | 
| 15 | 15 | 
| 16 // The main entrypoint into Linux toolkit specific code. GTK code should only | 16 // The main entrypoint into Linux toolkit specific code. GTK code should only | 
| 17 // be executed behind this interface. | 17 // be executed behind this interface. | 
| 18 | 18 | 
| 19 namespace gfx { | 19 namespace gfx { | 
| 20 class Image; | 20 class Image; | 
| 21 } | 21 } | 
| 22 | 22 | 
| 23 namespace ui { | 23 namespace ui { | 
| 24 class NativeTheme; | 24 class NativeTheme; | 
| 25 } | 25 } | 
| 26 | 26 | 
| 27 namespace views { | 27 namespace views { | 
| 28 class Border; | 28 class Border; | 
| 29 class CustomButton; | 29 class LabelButton; | 
| 30 class View; | 30 class View; | 
| 31 class WindowButtonOrderObserver; | 31 class WindowButtonOrderObserver; | 
| 32 | 32 | 
| 33 // Adapter class with targets to render like different toolkits. Set by any | 33 // Adapter class with targets to render like different toolkits. Set by any | 
| 34 // project that wants to do linux desktop native rendering. | 34 // project that wants to do linux desktop native rendering. | 
| 35 // | 35 // | 
| 36 // TODO(erg): We're hardcoding GTK2, when we'll need to have backends for (at | 36 // TODO(erg): We're hardcoding GTK2, when we'll need to have backends for (at | 
| 37 // minimum) GTK2 and GTK3. LinuxUI::instance() should actually be a very | 37 // minimum) GTK2 and GTK3. LinuxUI::instance() should actually be a very | 
| 38 // complex method that pokes around with dlopen against a libuigtk2.so, a | 38 // complex method that pokes around with dlopen against a libuigtk2.so, a | 
| 39 // liuigtk3.so, etc. | 39 // liuigtk3.so, etc. | 
| (...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 96       const base::string16& tool_tip) const = 0; | 96       const base::string16& tool_tip) const = 0; | 
| 97 | 97 | 
| 98   // Returns the icon for a given content type from the icon theme. | 98   // Returns the icon for a given content type from the icon theme. | 
| 99   // TODO(davidben): Add an observer for the theme changing, so we can drop the | 99   // TODO(davidben): Add an observer for the theme changing, so we can drop the | 
| 100   // caches. | 100   // caches. | 
| 101   virtual gfx::Image GetIconForContentType( | 101   virtual gfx::Image GetIconForContentType( | 
| 102       const std::string& content_type, int size) const = 0; | 102       const std::string& content_type, int size) const = 0; | 
| 103 | 103 | 
| 104   // Builds a Border which paints the native button style. | 104   // Builds a Border which paints the native button style. | 
| 105   virtual scoped_ptr<Border> CreateNativeBorder( | 105   virtual scoped_ptr<Border> CreateNativeBorder( | 
| 106       views::CustomButton* owning_button, | 106       views::LabelButton* owning_button, | 
| 107       scoped_ptr<views::Border> border) = 0; | 107       scoped_ptr<views::Border> border) = 0; | 
| 108 | 108 | 
| 109   // Notifies the observer about changes about how window buttons should be | 109   // Notifies the observer about changes about how window buttons should be | 
| 110   // laid out. If the order is anything other than the default min,max,close on | 110   // laid out. If the order is anything other than the default min,max,close on | 
| 111   // the right, will immediately send a button change event to the observer. | 111   // the right, will immediately send a button change event to the observer. | 
| 112   virtual void AddWindowButtonOrderObserver( | 112   virtual void AddWindowButtonOrderObserver( | 
| 113       WindowButtonOrderObserver* observer) = 0; | 113       WindowButtonOrderObserver* observer) = 0; | 
| 114 | 114 | 
| 115   // Removes the observer from the LinuxUI's list. | 115   // Removes the observer from the LinuxUI's list. | 
| 116   virtual void RemoveWindowButtonOrderObserver( | 116   virtual void RemoveWindowButtonOrderObserver( | 
| 117       WindowButtonOrderObserver* observer) = 0; | 117       WindowButtonOrderObserver* observer) = 0; | 
| 118 | 118 | 
| 119   // Determines whether the user's window manager is Unity. | 119   // Determines whether the user's window manager is Unity. | 
| 120   virtual bool UnityIsRunning() = 0; | 120   virtual bool UnityIsRunning() = 0; | 
| 121 }; | 121 }; | 
| 122 | 122 | 
| 123 }  // namespace views | 123 }  // namespace views | 
| 124 | 124 | 
| 125 #endif  // UI_VIEWS_LINUX_UI_LINUX_UI_H_ | 125 #endif  // UI_VIEWS_LINUX_UI_LINUX_UI_H_ | 
| OLD | NEW | 
|---|