Commit c73968d6 authored by Tom Anderson's avatar Tom Anderson Committed by Commit Bot

Fix browser frame view not getting a relayout after a state change

views::NonClientView has 2 things: a views::NonClientFrameView and a
views::ClientView. We were previously only invalidating the layout on
the ClientView after a state change.  This was causing the browser
frame to paint as if it were still maximized after restoring from
a maximized state on Linux.  Invalidating the layout of the frame view
fixes the issue.

BUG=1046122
R=sky

Change-Id: I7da525efe1f436564ffffb410afe294e901e5d89
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2033759Reviewed-by: default avatarScott Violet <sky@chromium.org>
Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
Cr-Commit-Position: refs/heads/master@{#737890}
parent 0fff1c2b
......@@ -717,6 +717,8 @@ void DesktopWindowTreeHostPlatform::Relayout() {
NonClientView* non_client_view = widget->non_client_view();
// non_client_view may be NULL, especially during creation.
if (non_client_view) {
if (non_client_view->frame_view())
non_client_view->frame_view()->InvalidateLayout();
non_client_view->client_view()->InvalidateLayout();
non_client_view->InvalidateLayout();
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment