Index: ui/aura/root_window_host_linux.cc |
diff --git a/ui/aura/root_window_host_linux.cc b/ui/aura/root_window_host_linux.cc |
index 1f8cc0d1431cf0e3bcd670b3ca9694ebfa67b05a..88a8d0d24c5afe5758c96c16f5c491d40021eec1 100644 |
--- a/ui/aura/root_window_host_linux.cc |
+++ b/ui/aura/root_window_host_linux.cc |
@@ -511,6 +511,17 @@ bool RootWindowHostLinux::Dispatch(const base::NativeEvent& event) { |
delegate_->OnHostResized(bounds.size()); |
if (origin_changed) |
delegate_->OnHostMoved(bounds_.origin()); |
+ // TODO(oshima): Clear the root when the window is moved or |
+ // resized while the extended desktop is disabled. |
+ // crbug.com/152003. |
+ if (base::chromeos::IsRunningOnChromeOS()) { |
+ XSetWindowBackground(xdisplay_, |
+ x_root_window_, |
+ BlackPixel(xdisplay_, DefaultScreen(xdisplay_))); |
+ XClearWindow(xdisplay_, x_root_window_); |
+ // Set the background back to None to preserve content. |
+ XSetWindowBackgroundPixmap(xdisplay_, x_root_window_, None); |
Daniel Erat
2012/09/25 19:10:57
it's not obvious to me why this is necessary. can
oshima
2012/09/25 19:33:28
According to @marcheu, we intentionally set backgr
Daniel Erat
2012/09/25 19:54:41
Got it, thanks. Wonder if it'd be cleaner to just
oshima
2012/09/25 20:45:09
Done.
|
+ } |
break; |
} |
case GenericEvent: |