summaryrefslogtreecommitdiffstats
path: root/chrome/browser/views
diff options
context:
space:
mode:
authorpkasting@chromium.org <pkasting@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-08-17 17:41:15 +0000
committerpkasting@chromium.org <pkasting@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-08-17 17:41:15 +0000
commitfd9a66a10353556be8f28aad743a96dcee7679b9 (patch)
treec4c2112d0d5a8b035741d4aa7551da0477a3fedd /chrome/browser/views
parent62a208748ef7fd733e375a9893a116105a0d8c23 (diff)
downloadchromium_src-fd9a66a10353556be8f28aad743a96dcee7679b9.zip
chromium_src-fd9a66a10353556be8f28aad743a96dcee7679b9.tar.gz
chromium_src-fd9a66a10353556be8f28aad743a96dcee7679b9.tar.bz2
Merge 56379 - Turns out this code I'd removed is still necessary for the RTL OTR avatar to not look broken.
TBR=ben BUG=none TEST=Run in Aero with --lang=he, hit ctrl-shift-n, Incognito image should not be broken in two Review URL: http://codereview.chromium.org/3117016 TBR=pkasting@chromium.org Review URL: http://codereview.chromium.org/3152024 git-svn-id: svn://svn.chromium.org/chrome/branches/472/src@56380 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/views')
-rw-r--r--chrome/browser/views/frame/browser_frame_win.cc14
1 files changed, 14 insertions, 0 deletions
diff --git a/chrome/browser/views/frame/browser_frame_win.cc b/chrome/browser/views/frame/browser_frame_win.cc
index 7ddd92f..3a9d7d6 100644
--- a/chrome/browser/views/frame/browser_frame_win.cc
+++ b/chrome/browser/views/frame/browser_frame_win.cc
@@ -239,6 +239,20 @@ void BrowserFrameWin::OnWindowPosChanged(WINDOWPOS* window_pos) {
// Let the default window procedure handle - IMPORTANT!
WindowWin::OnWindowPosChanged(window_pos);
+
+ // Windows lies to us about the position of the minimize button before a
+ // window is visible. We use this position to place the OTR avatar in RTL
+ // mode, so when the window is shown, we need to re-layout and schedule a
+ // paint for the non-client frame view so that the icon top has the correct
+ // position when the window becomes visible. This fixes bugs where the icon
+ // appears to overlay the minimize button.
+ // Note that we will call Layout every time SetWindowPos is called with
+ // SWP_SHOWWINDOW, however callers typically are careful about not specifying
+ // this flag unless necessary to avoid flicker.
+ if (window_pos->flags & SWP_SHOWWINDOW) {
+ GetNonClientView()->Layout();
+ GetNonClientView()->SchedulePaint();
+ }
}
ThemeProvider* BrowserFrameWin::GetThemeProvider() const {