Index: ui/base/x/x11_util.h |
diff --git a/ui/base/x/x11_util.h b/ui/base/x/x11_util.h |
index 8cd8bde7a72b93b01e6e8e48ae0f3f53bb8302e0..eb61d9346750757cf4cae6f468fe8877218eab68 100644 |
--- a/ui/base/x/x11_util.h |
+++ b/ui/base/x/x11_util.h |
@@ -37,6 +37,22 @@ class SkBitmap; |
namespace ui { |
+// These constants are defined in the EWMH spec for _NET_WM_MOVERESIZE. |
+enum class NetWmMoveResize { |
+ SIZE_TOPLEFT = 0, |
+ SIZE_TOP = 1, |
+ SIZE_TOPRIGHT = 2, |
+ SIZE_RIGHT = 3, |
+ SIZE_BOTTOMRIGHT = 4, |
+ SIZE_BOTTOM = 5, |
+ SIZE_BOTTOMLEFT = 6, |
+ SIZE_LEFT = 7, |
+ MOVE = 8, // movement only |
+ SIZE_KEYBOARD = 9, // size via keyboard |
+ MOVE_KEYBOARD = 10, // move via keyboard |
+ CANCEL = 11, // cancel operation |
+}; |
+ |
// These functions use the default display and this /must/ be called from |
// the UI thread. Thus, they don't support multiple displays. |
@@ -84,6 +100,13 @@ UI_BASE_X_EXPORT::Cursor CreateInvisibleCursor(); |
// Sets whether |window| should use the OS window frame. |
UI_BASE_X_EXPORT void SetUseOSWindowFrame(XID window, bool use_os_window_frame); |
+// Requests the window manager move or resize the window on behalf of Chromium. |
+// Clients MUST release all grabs prior to calling. Callers must check that the |
+// WM supports the _NET_WM_MOVERESIZE protocol. |
+UI_BASE_X_EXPORT void MoveResizeManagedWindow(XID window, |
+ gfx::Point root_location, |
+ NetWmMoveResize mode); |
+ |
// These functions do not cache their results -------------------------- |
// Returns true if the shape extension is supported. |