[PATCH 1/3] simple-egl: Set the opaque region if windowed and -o is passed

Scott Moreau oreaus at gmail.com
Mon Sep 10 10:21:35 PDT 2012


On Mon, Sep 10, 2012 at 5:02 AM, Ander Conselvan de Oliveira <
conselvan2 at gmail.com> wrote:

> Hi Scott,
>
> Thanks for reviewing!
>
>
> On 09/07/2012 11:23 PM, Scott Moreau wrote:
>
>>
>>
>> On Fri, Sep 7, 2012 at 7:32 AM, Ander Conselvan de Oliveira
>> <conselvan2 at gmail.com <mailto:conselvan2 at gmail.com>> wrote:
>>
>>     Since commit d523a87d2d8c0099d8ac323375b3d0**83aafccf9a [1],
>>
>>
>> I'm not sure where you got this sha from but it's wrong. There is no
>> such commit in weston.
>>
>
> My mistake. I had a rebased branch with one extra commit that I used for
> bisecting and forgot to change to master before doing this.
>
>
>      window.opaque
>>     would be 1 only in fullscreen mode, causing the opaque region to be
>> set
>>     only when running in fullscreen mode. Having it set properly for the
>>     windowed case is helpful to test the overlay path in compositor-drm.
>>
>>     This reverts that commit and makes window.opaque independent of the -f
>>     switch. Instead, we set the opaque region if the window is fullscreen
>>     or -o was passed and leave window.opaque alone in the case -f was
>>     passed.
>>
>>
>> Did you read the entire commit message? It seems you have cut it here so
>> I will post it:
>>
>
> I did. And it seems I forgot to mention in the commit message that this
> patch does not regress the bug solved in said commit, it just, IMO, a
> better fix for the problem.
>
> [...]
>
>
>  I'm not sure what you're trying to do with your patches here but please
>> note the problem that this commit fixed and do not break it.
>>
>
> What I'm trying to do here is have the opaque region of the simple-egl
> surface set properly when it is run with the -o switch, even when not
> running fullscreen. That setup uncovered a bug where too much redrawing was
> culled when using overlays.
>
> I guess I created this whole mess because when I added fullscreen support
> I made it use an XRGB config to test the scanning out of client buffers.
> The "if (fullscreen) opaque = 1;" conditional survived this far, but since
> the introduction of '-o' it shouldn't be needed anymore. (Well, the
> compositor should know that a fullscreen surface is opaque anyway, but
> that's a different story.)
>
> So what this patch does is:
>
>  - reverts your patch;
>  - removes the if fullscreen make the window opaque switch, which fixes
> the problem of getting an opaque window if simple-egl is launched with -f
> and later made not fullscreen;
>  - sets the opaque region in redraw() also when in fullscreen mode,
> regardless of the -o switch, so the compositor still scans out the client
> buffers in that case.
>
> Anyway, I'll resend the patch with the correct sha1 of the commit and try
> to be clearer about what the patch does.
>
> Thanks,
> Ander
>


That makes it much clearer, thanks for explaining. This seems like the
better fix.

Scott
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/wayland-devel/attachments/20120910/344502f9/attachment.html>


More information about the wayland-devel mailing list