aboutsummaryrefslogtreecommitdiff
path: root/src/layout/workspace.rs
diff options
context:
space:
mode:
authorIvan Molodetskikh <yalterz@gmail.com>2025-02-10 08:47:44 +0300
committerIvan Molodetskikh <yalterz@gmail.com>2025-02-10 07:29:33 -0800
commit55e2ea0c3bb0bccae351aa6e82987a0b77da54ae (patch)
treed1d4d6ce033fe458e4be0cfdfaf3b04b76a7e442 /src/layout/workspace.rs
parent1d883931b4ae7704128f02fd566486fb02351196 (diff)
downloadniri-55e2ea0c3bb0bccae351aa6e82987a0b77da54ae.tar.gz
niri-55e2ea0c3bb0bccae351aa6e82987a0b77da54ae.tar.bz2
niri-55e2ea0c3bb0bccae351aa6e82987a0b77da54ae.zip
layout: Extract tile.hit(), HitType::hit_tile()
Diffstat (limited to 'src/layout/workspace.rs')
-rw-r--r--src/layout/workspace.rs15
1 files changed, 2 insertions, 13 deletions
diff --git a/src/layout/workspace.rs b/src/layout/workspace.rs
index 165ae750..0dca0805 100644
--- a/src/layout/workspace.rs
+++ b/src/layout/workspace.rs
@@ -1468,16 +1468,7 @@ impl<W: LayoutElement> Workspace<W> {
return None;
}
- let pos_within_tile = pos - tile_pos;
-
- if tile.is_in_input_region(pos_within_tile) {
- let win_pos = tile_pos + tile.buf_loc();
- return Some((tile.window(), HitType::Input { win_pos }));
- } else if tile.is_in_activation_region(pos_within_tile) {
- return Some((tile.window(), HitType::Activate));
- }
-
- None
+ HitType::hit_tile(tile, tile_pos, pos)
})
}
@@ -1492,9 +1483,7 @@ impl<W: LayoutElement> Workspace<W> {
let pos_within_tile = pos - tile_pos;
- if tile.is_in_input_region(pos_within_tile)
- || tile.is_in_activation_region(pos_within_tile)
- {
+ if tile.hit(pos_within_tile).is_some() {
let size = tile.tile_size().to_f64();
let mut edges = ResizeEdge::empty();