Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(275)

Issue 2078031: wm: Fix override-redirect window stacking bug. (Closed)

Created:
10 years, 7 months ago by Daniel Erat
Modified:
9 years, 7 months ago
Reviewers:
sky
CC:
chromium-os-reviews_chromium.org, Greg Spencer (Chromium), Daniel Erat
Visibility:
Public.

Description

wm: Fix override-redirect window stacking bug. This fixes an issues where we'd often stack override-redirect windows' actors too low initially, which could result in regular windows' actors incorrectly being drawn above them later. The problem is described in more detail at http://crosbug.com/3451. This change also adds a basic implementation of GetDebugString() to MockCompositor::Actor and includes layer stacking reference points' X IDs in their actors' names (making debugging a bit easier). BUG=chromium-os:3451 TEST=added

Patch Set 1 #

Total comments: 1

Patch Set 2 : LOG(DFATAL) on invalid actor raise/lower #

Unified diffs Side-by-side diffs Delta from patch set Stats (+130 lines, -56 lines) Patch
M src/platform/window_manager/compositor.h View 3 chunks +4 lines, -2 lines 0 comments Download
M src/platform/window_manager/mock_compositor.cc View 1 3 chunks +17 lines, -0 lines 0 comments Download
M src/platform/window_manager/real_compositor.cc View 2 chunks +16 lines, -9 lines 0 comments Download
M src/platform/window_manager/stacking_manager.h View 4 chunks +9 lines, -4 lines 0 comments Download
M src/platform/window_manager/stacking_manager.cc View 4 chunks +14 lines, -5 lines 0 comments Download
M src/platform/window_manager/window_manager.cc View 2 chunks +9 lines, -20 lines 0 comments Download
M src/platform/window_manager/window_manager_test.cc View 4 chunks +61 lines, -16 lines 0 comments Download

Messages

Total messages: 3 (0 generated)
Daniel Erat
Sorry for all of these reviews. This is the last one in the series!
10 years, 7 months ago (2010-05-21 22:14:45 UTC) #1
sky
LGTM http://codereview.chromium.org/2078031/diff/1/3 File src/platform/window_manager/mock_compositor.cc (right): http://codereview.chromium.org/2078031/diff/1/3#newcode64 src/platform/window_manager/mock_compositor.cc:64: out += " "; I believe out.resize(ident_level, ' ...
10 years, 7 months ago (2010-05-21 22:36:03 UTC) #2
Daniel Erat
10 years, 7 months ago (2010-05-21 23:16:55 UTC) #3
Thanks, updated it to use assign() (which seems a bit more accurate
than resize() here).  I made a trivial change to make us handle bogus
stacking attempts gracefully in non-debug mode and crash in debug mode
and am committing now.

On Fri, May 21, 2010 at 3:36 PM,  <sky@chromium.org> wrote:
> LGTM
>
>
> http://codereview.chromium.org/2078031/diff/1/3
> File src/platform/window_manager/mock_compositor.cc (right):
>
> http://codereview.chromium.org/2078031/diff/1/3#newcode64
> src/platform/window_manager/mock_compositor.cc:64: out += "  ";
> I believe out.resize(ident_level, ' ') does this for you.
>
> http://codereview.chromium.org/2078031/show
>

Powered by Google App Engine
This is Rietveld 408576698