diff options
author | Drew DeVault <sir@cmpwn.com> | 2019-01-27 18:06:50 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-01-27 18:06:50 -0500 |
commit | 783fadab284c79c8e13625e5e2a2eefae02c75d3 (patch) | |
tree | 795c5c69a7fcfc9336115ac157a41b943190f206 /sway/input/cursor.c | |
parent | Merge pull request #3519 from emersion/pointer-frame (diff) | |
parent | Implement fullscreen global (diff) | |
download | sway-783fadab284c79c8e13625e5e2a2eefae02c75d3.tar.gz sway-783fadab284c79c8e13625e5e2a2eefae02c75d3.tar.zst sway-783fadab284c79c8e13625e5e2a2eefae02c75d3.zip |
Merge pull request #3423 from RyanDwyer/fullscreen-global
Implement fullscreen global
Diffstat (limited to 'sway/input/cursor.c')
-rw-r--r-- | sway/input/cursor.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/sway/input/cursor.c b/sway/input/cursor.c index af2799ce..c84d6c40 100644 --- a/sway/input/cursor.c +++ b/sway/input/cursor.c | |||
@@ -90,6 +90,16 @@ struct sway_node *node_at_coords( | |||
90 | double ox = lx, oy = ly; | 90 | double ox = lx, oy = ly; |
91 | wlr_output_layout_output_coords(root->output_layout, wlr_output, &ox, &oy); | 91 | wlr_output_layout_output_coords(root->output_layout, wlr_output, &ox, &oy); |
92 | 92 | ||
93 | if (root->fullscreen_global) { | ||
94 | // Try fullscreen container | ||
95 | struct sway_container *con = tiling_container_at( | ||
96 | &root->fullscreen_global->node, lx, ly, surface, sx, sy); | ||
97 | if (con) { | ||
98 | return &con->node; | ||
99 | } | ||
100 | return NULL; | ||
101 | } | ||
102 | |||
93 | // find the focused workspace on the output for this seat | 103 | // find the focused workspace on the output for this seat |
94 | struct sway_workspace *ws = output_get_active_workspace(output); | 104 | struct sway_workspace *ws = output_get_active_workspace(output); |
95 | 105 | ||
@@ -659,7 +669,7 @@ void dispatch_cursor_button(struct sway_cursor *cursor, | |||
659 | // Handle moving a tiling container | 669 | // Handle moving a tiling container |
660 | if (config->tiling_drag && (mod_pressed || on_titlebar) && | 670 | if (config->tiling_drag && (mod_pressed || on_titlebar) && |
661 | state == WLR_BUTTON_PRESSED && !is_floating_or_child && | 671 | state == WLR_BUTTON_PRESSED && !is_floating_or_child && |
662 | cont && !cont->is_fullscreen) { | 672 | cont && cont->fullscreen_mode == FULLSCREEN_NONE) { |
663 | struct sway_container *focus = seat_get_focused_container(seat); | 673 | struct sway_container *focus = seat_get_focused_container(seat); |
664 | bool focused = focus == cont || container_has_ancestor(focus, cont); | 674 | bool focused = focus == cont || container_has_ancestor(focus, cont); |
665 | if (on_titlebar && !focused) { | 675 | if (on_titlebar && !focused) { |