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

Issue 82283002: Initial cut at layerless windows. (Closed)

Created:
7 years, 1 month ago by sky
Modified:
6 years, 11 months ago
CC:
chromium-reviews, sadrul, kalyank, Ian Vollick, tfarina, sievers+watch_chromium.org, jbauman+watch_chromium.org, ben+views_chromium.org, piman+watch_chromium.org, ben+aura_chromium.org, danakj+watch_chromium.org, cc-bugs_chromium.org
Visibility:
Public.

Description

Initial cut at layerless windows. This has the minimal support working. You can create layerless windows add/remove them from a hierarchy, add children with layers and everything is kept in sync (including bounds). Painting has not been wired up yet. The interesting bit of this change is that Layer and Window bounds are no longer in sync. This is necessitated by Layer's having to be parented to Layers. To avoid changing bounds() to dynamically figure out the real bounds I made Window cache the bounds. BUG=none TEST=none R=ben@chromium.org Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=238408

Patch Set 1 #

Patch Set 2 : tweaks #

Total comments: 5

Patch Set 3 : improve comments, remove Window::window_layer_type_ and fix test #

Total comments: 1

Patch Set 4 : merge to trunk #

Patch Set 5 : is_layerless() -> \!layer_ #

Total comments: 2
Unified diffs Side-by-side diffs Delta from patch set Stats (+440 lines, -49 lines) Patch
M ui/aura/aura.gyp View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M ui/aura/window.h View 1 2 3 4 7 chunks +42 lines, -6 lines 0 comments Download
M ui/aura/window.cc View 1 2 3 4 19 chunks +185 lines, -37 lines 2 comments Download
A ui/aura/window_layer_type.h View 1 2 1 chunk +24 lines, -0 lines 0 comments Download
M ui/aura/window_unittest.cc View 1 2 3 chunks +182 lines, -1 line 0 comments Download
M ui/compositor/layer.h View 1 chunk +2 lines, -0 lines 0 comments Download
M ui/views/focus_border.h View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M ui/views/view.h View 1 2 3 1 chunk +2 lines, -3 lines 0 comments Download
M ui/views/views.gyp View 1 2 3 1 chunk +1 line, -1 line 0 comments Download

Messages

Total messages: 15 (0 generated)
sky
7 years, 1 month ago (2013-11-22 00:37:38 UTC) #1
Ben Goodger (Google)
This looks really good. See question about layer() below: https://codereview.chromium.org/82283002/diff/30001/ui/aura/aura.gyp File ui/aura/aura.gyp (right): https://codereview.chromium.org/82283002/diff/30001/ui/aura/aura.gyp#newcode103 ui/aura/aura.gyp:103: ...
7 years, 1 month ago (2013-11-22 05:49:23 UTC) #2
sky
https://codereview.chromium.org/82283002/diff/30001/ui/aura/window.cc File ui/aura/window.cc (right): https://codereview.chromium.org/82283002/diff/30001/ui/aura/window.cc#newcode955 ui/aura/window.cc:955: // We should only remove the child's layer if ...
7 years, 1 month ago (2013-11-22 20:20:11 UTC) #3
sky
One comment about this. There is a slight wrinkle with this patch. In particular if ...
7 years, 1 month ago (2013-11-22 23:37:13 UTC) #4
Ben Goodger (Google)
lgtm, but see note below: https://codereview.chromium.org/82283002/diff/140001/ui/aura/window.h File ui/aura/window.h (right): https://codereview.chromium.org/82283002/diff/140001/ui/aura/window.h#newcode521 ui/aura/window.h:521: bool is_layerless() const { ...
7 years ago (2013-12-02 22:12:52 UTC) #5
sky
I nuked is_layerless() and went with !layer_
7 years ago (2013-12-02 22:32:58 UTC) #6
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/sky@chromium.org/82283002/390001
7 years ago (2013-12-02 22:33:44 UTC) #7
commit-bot: I haz the power
Retried try job too often on mac_rel for step(s) browser_tests http://build.chromium.org/p/tryserver.chromium/buildstatus?builder=mac_rel&number=195617
7 years ago (2013-12-03 00:46:38 UTC) #8
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/sky@chromium.org/82283002/390001
7 years ago (2013-12-03 01:24:55 UTC) #9
commit-bot: I haz the power
Retried try job too often on mac_rel for step(s) browser_tests http://build.chromium.org/p/tryserver.chromium/buildstatus?builder=mac_rel&number=195829
7 years ago (2013-12-03 04:17:48 UTC) #10
sky
Committed patchset #5 manually as r238408 (presubmit successful).
7 years ago (2013-12-03 16:29:41 UTC) #11
oshima
https://codereview.chromium.org/82283002/diff/390001/ui/aura/window.cc File ui/aura/window.cc (right): https://codereview.chromium.org/82283002/diff/390001/ui/aura/window.cc#newcode305 ui/aura/window.cc:305: return false; Scott, I just noticed that Window::IsVisible returns ...
6 years, 11 months ago (2014-01-10 04:08:52 UTC) #12
sky
https://codereview.chromium.org/82283002/diff/390001/ui/aura/window.cc File ui/aura/window.cc (right): https://codereview.chromium.org/82283002/diff/390001/ui/aura/window.cc#newcode305 ui/aura/window.cc:305: return false; On 2014/01/10 04:08:53, oshima wrote: > Scott, ...
6 years, 11 months ago (2014-01-10 16:36:19 UTC) #13
oshima
On 2014/01/10 16:36:19, sky wrote: > https://codereview.chromium.org/82283002/diff/390001/ui/aura/window.cc > File ui/aura/window.cc (right): > > https://codereview.chromium.org/82283002/diff/390001/ui/aura/window.cc#newcode305 > ...
6 years, 11 months ago (2014-01-10 20:41:14 UTC) #14
sky
6 years, 11 months ago (2014-01-10 21:17:06 UTC) #15
Ok, sounds good.

On Fri, Jan 10, 2014 at 12:41 PM,  <oshima@chromium.org> wrote:
> On 2014/01/10 16:36:19, sky wrote:
>>
>> https://codereview.chromium.org/82283002/diff/390001/ui/aura/window.cc
>> File ui/aura/window.cc (right):
>
>
>
>
https://codereview.chromium.org/82283002/diff/390001/ui/aura/window.cc#newcod...
>>
>> ui/aura/window.cc:305: return false;
>> On 2014/01/10 04:08:53, oshima wrote:
>> > Scott, I just noticed that Window::IsVisible returns true even if it's
>> detached
>> > from Window tree (that is, GetRootWindow() == NULL) Is this expected?
>
>
>> I don't think this patch changed that behavior. Meaning before and after
>> this
>> patch I believe you would see that behavior.
>
>
>> Is the behavior right? It matches the docs and I would prefer to keep it
>
> simple
>>
>> like it is now. Where is this behavior causing problems?
>
>
> I found the place that expects GetRootWindow() != NULL when IsVisible() ==
> true,
> and I wanted to know which one (that code, or IsVisible()) to fix. Sounds
> like I
> should fix that code.
>
> Thanks.
>
> https://codereview.chromium.org/82283002/

To unsubscribe from this group and stop receiving emails from it, send an email
to chromium-reviews+unsubscribe@chromium.org.

Powered by Google App Engine
This is Rietveld 408576698