st/widget: Include the shadow in the paint volume
Having an inaccurate paint volume didn't matter until ae338af1e8
, but
after that having too small a paint volume resulted in apparent clipping.
Not because `clip_to_allocation` is set, but because the offscreen
framebuffer is sized to fit the paint volume only.
Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1897>
This commit is contained in:
parent
f51fb4bed0
commit
c08c142f95
@ -794,6 +794,16 @@ st_widget_get_paint_volume (ClutterActor *self,
|
|||||||
if (!clutter_actor_get_clip_to_allocation (self))
|
if (!clutter_actor_get_clip_to_allocation (self))
|
||||||
{
|
{
|
||||||
ClutterActor *child;
|
ClutterActor *child;
|
||||||
|
StShadow *shadow_spec = st_theme_node_get_text_shadow (theme_node);
|
||||||
|
|
||||||
|
if (shadow_spec)
|
||||||
|
{
|
||||||
|
ClutterActorBox shadow_box;
|
||||||
|
|
||||||
|
st_shadow_get_box (shadow_spec, &alloc_box, &shadow_box);
|
||||||
|
clutter_paint_volume_union_box (volume, &shadow_box);
|
||||||
|
}
|
||||||
|
|
||||||
/* Based on ClutterGroup/ClutterBox; include the children's
|
/* Based on ClutterGroup/ClutterBox; include the children's
|
||||||
* paint volumes, since they may paint outside our allocation.
|
* paint volumes, since they may paint outside our allocation.
|
||||||
*/
|
*/
|
||||||
|
Loading…
Reference in New Issue
Block a user