Index: ui/base/x/x11_util.cc |
diff --git a/ui/base/x/x11_util.cc b/ui/base/x/x11_util.cc |
index ec6b5363d72403d266c487e9e625a49ff7751e1d..01ce47bce67162b3d525e7ed267bf16352d9d134 100644 |
--- a/ui/base/x/x11_util.cc |
+++ b/ui/base/x/x11_util.cc |
@@ -495,6 +495,30 @@ void SetUseOSWindowFrame(XID window, bool use_os_window_frame) { |
sizeof(MotifWmHints)/sizeof(long)); |
} |
+void MoveResizeWindowManaged(XID window, |
+ gfx::Point origin, |
+ NetWmMoveResize mode) { |
+ XDisplay* display = gfx::GetXDisplay(); |
+ XAtom message_type = GetAtom("_NET_WM_MOVERESIZE"); |
+ XEvent event; |
+ memset(&event, 0, sizeof(event)); |
+ event.xclient.type = ClientMessage; |
+ event.xclient.display = display; |
+ event.xclient.window = window; |
+ event.xclient.message_type = message_type; |
+ event.xclient.format = 32; |
+ event.xclient.data.l[0] = origin.x(); |
+ event.xclient.data.l[1] = origin.y(); |
+ event.xclient.data.l[2] = static_cast<long>(mode); |
+ event.xclient.data.l[3] = |
+ Button1; // Currently all our managed dragging is done with LMB. |
+ event.xclient.data.l[4] = 1; |
Daniel Erat
2016/10/12 16:13:10
nit: add something like "// Requested by normal ap
Tom (Use chromium acct)
2016/10/12 18:08:27
Done.
|
+ |
+ XSendEvent(display, DefaultRootWindow(display), False, |
+ SubstructureRedirectMask | SubstructureNotifyMask, &event); |
+ XFlush(display); |
+} |
+ |
bool IsShapeExtensionAvailable() { |
int dummy; |
static bool is_shape_available = |