cairo-util: Fix geometry for frames with buttons but without title

There exist frames which have buttons without title such as a simple
X application piped through xwayland which doesn't specify a title.
We draw the title bar with buttons, but hide it under the window
because geometry thinks a window needs titlebar only if it has title.

This patch change the condition, making it titlebar is needed if a
frame has title or has button(s), which makes more sense.

Signed-off-by: Boyan Ding <stu_dby@126.com>
This commit is contained in:
Boyan Ding 2014-07-04 15:19:22 +08:00 committed by Jason Ekstrand
parent ef5400843f
commit c4902124f9

View file

@ -426,7 +426,7 @@ frame_resize_inside(struct frame *frame, int32_t width, int32_t height)
struct theme *t = frame->theme;
int decoration_width, decoration_height, titlebar_height;
if (frame->title)
if (frame->title || !wl_list_empty(&frame->buttons))
titlebar_height = t->titlebar_height;
else
titlebar_height = t->width;
@ -467,7 +467,7 @@ frame_refresh_geometry(struct frame *frame)
if (!frame->geometry_dirty)
return;
if (frame->title)
if (frame->title || !wl_list_empty(&frame->buttons))
titlebar_height = t->titlebar_height;
else
titlebar_height = t->width;