| Index: ui/aura/desktop_host_linux.cc
|
| diff --git a/ui/aura/desktop_host_linux.cc b/ui/aura/desktop_host_linux.cc
|
| index 20112b1e46c64d570af4a30367f999eb44cc466f..768a33e27a09c5084fd503596c811e4107d5038e 100644
|
| --- a/ui/aura/desktop_host_linux.cc
|
| +++ b/ui/aura/desktop_host_linux.cc
|
| @@ -98,8 +98,14 @@ base::MessagePumpDispatcher::DispatchStatus DesktopHostLinux::Dispatch(
|
| DCHECK_EQ(xdisplay_, xev->xconfigure.display);
|
| DCHECK_EQ(xwindow_, xev->xconfigure.window);
|
| DCHECK_EQ(xwindow_, xev->xconfigure.event);
|
| - desktop_->OnHostResized(gfx::Size(xev->xconfigure.width,
|
| - xev->xconfigure.height));
|
| +
|
| + // It's possible that the X window may be resized by some other means than
|
| + // from within aura (e.g. the X window manager can change the size). Make
|
| + // sure the desktop size is maintained properly.
|
| + gfx::Size size(xev->xconfigure.width, xev->xconfigure.height);
|
| + if (bounds_.size() != size)
|
| + bounds_.set_size(size);
|
| + desktop_->OnHostResized(size);
|
| handled = true;
|
| break;
|
| }
|
|
|