Bug 94312 - Whether to use the "subsurfaces"?
Summary: Whether to use the "subsurfaces"?
Status: RESOLVED INVALID
Alias: None
Product: Wayland
Classification: Unclassified
Component: wayland (show other bugs)
Version: unspecified
Hardware: Other All
: medium normal
Assignee: Wayland bug list
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-02-26 21:00 UTC by belnd
Modified: 2016-02-29 08:56 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments

Description belnd 2016-02-26 21:00:29 UTC
So, consider a button with text. In the shm file are:
    * three button states: normal, pressed and hovered pointer,
    * the rendered text.
A total of 4 bitmaps.

How best to organize the rendering of the button?
    1. To use the "subsurfaces" for the text and for the button, changing its 3 state when needed.
    2. To draw directly in "shellsurface". The text and the button state is stored in memory, but each time the update button will be copied into a separate memory area "wl_buffer" for "shellsurface".

At the end of the article concludes that the surface is better not to use when building widgets. http://ppaalanen.blogspot.ru/2013/11/sub-surfaces-now.html

It turns out that you need to use method #2, but then each time you hover the cursor, the client will copy the button state and text. You can make a crutch: cutting text bitmap from the bitmaps of the button states, then when you hover the cursor would to copy _only_ the button state. But still not effective..

Stop, handling the pointer-hover is possible because only in the presence of the surface.. of a button.
Comment 1 Pekka Paalanen 2016-02-29 08:56:29 UTC
This does not look like a bug report, so closing as INVALID.

Bugzilla is for bug reports, it is not a general discussion forum. If you have questions, the Wayland upstream forum for that is the wayland-devel mailing list, or the IRC channel on Freenode. Use those, please.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.