mirror of
https://github.com/labwc/labwc.git
synced 2025-11-04 13:30:07 -05:00
view: show fullscreen views above top-layer
See https://github.com/LBCrion/sfwbar/issues/24
This commit is contained in:
parent
d34efad7bb
commit
6b8c10dcd4
2 changed files with 10 additions and 5 deletions
|
|
@ -8,7 +8,7 @@
|
||||||
#define SSD_HEIGHT 26 /* TODO: use theme->title_height */
|
#define SSD_HEIGHT 26 /* TODO: use theme->title_height */
|
||||||
#define BUTTON_COUNT 4
|
#define BUTTON_COUNT 4
|
||||||
#define BUTTON_WIDTH 26
|
#define BUTTON_WIDTH 26
|
||||||
#define EXTENDED_AREA 20
|
#define EXTENDED_AREA 8
|
||||||
|
|
||||||
#define FOR_EACH(tmp, ...) \
|
#define FOR_EACH(tmp, ...) \
|
||||||
{ \
|
{ \
|
||||||
|
|
|
||||||
13
src/view.c
13
src/view.c
|
|
@ -295,6 +295,9 @@ view_set_fullscreen(struct view *view, bool fullscreen,
|
||||||
wlr_foreign_toplevel_handle_v1_set_fullscreen(
|
wlr_foreign_toplevel_handle_v1_set_fullscreen(
|
||||||
view->toplevel_handle, fullscreen);
|
view->toplevel_handle, fullscreen);
|
||||||
}
|
}
|
||||||
|
if (!wlr_output) {
|
||||||
|
wlr_output = view_wlr_output(view);
|
||||||
|
}
|
||||||
if (fullscreen) {
|
if (fullscreen) {
|
||||||
if (!view->maximized) {
|
if (!view->maximized) {
|
||||||
view->unmaximized_geometry.x = view->x;
|
view->unmaximized_geometry.x = view->x;
|
||||||
|
|
@ -302,10 +305,6 @@ view_set_fullscreen(struct view *view, bool fullscreen,
|
||||||
view->unmaximized_geometry.width = view->w;
|
view->unmaximized_geometry.width = view->w;
|
||||||
view->unmaximized_geometry.height = view->h;
|
view->unmaximized_geometry.height = view->h;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!wlr_output) {
|
|
||||||
wlr_output = view_wlr_output(view);
|
|
||||||
}
|
|
||||||
view->fullscreen = wlr_output;
|
view->fullscreen = wlr_output;
|
||||||
view_apply_fullscreen_geometry(view, view->fullscreen);
|
view_apply_fullscreen_geometry(view, view->fullscreen);
|
||||||
} else {
|
} else {
|
||||||
|
|
@ -317,6 +316,12 @@ view_set_fullscreen(struct view *view, bool fullscreen,
|
||||||
}
|
}
|
||||||
view->fullscreen = false;
|
view->fullscreen = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Show fullscreen views above top-layer */
|
||||||
|
struct output *output =
|
||||||
|
output_from_wlr_output(view->server, wlr_output);
|
||||||
|
uint32_t top = ZWLR_LAYER_SHELL_V1_LAYER_TOP;
|
||||||
|
wlr_scene_node_set_enabled(&output->layer_tree[top]->node, !fullscreen);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue