Add mouse window controls and finer display scaling (#63)
Add configurable mouse and wheel bindings, window move and resize, tab drops, cross-output dragging, and device settings. Adjust display scaling in 0.05 increments. Preserve opposite-edge positioning during scrolling resizes and show rows for edge drops into tabbed columns.
This commit is contained in:
1 parent
ab11269246
commit
ad00e55fe4
35 files changed
+3454
-512
No files matched your search
@@ -232,7 +232,7 @@ fn scene_elements(
|
||||
presentation_alpha,
|
||||
))
|
||||
};
|
||||
let windows = if workspace.is_none() && state.overview.is_active() {
|
||||
let mut windows = if workspace.is_none() && state.overview.is_active() {
|
||||
state
|
||||
.windows
|
||||
.overview_windows()
|
||||
@@ -258,6 +258,16 @@ fn scene_elements(
|
||||
.collect::<Vec<_>>()
|
||||
};
|
||||
|
||||
if let Some(operation) = state
|
||||
.pointer_operation
|
||||
.as_ref()
|
||||
.filter(|operation| operation.visual.is_some())
|
||||
&& let Some(index) = windows.iter().position(|(_, id, ..)| *id == operation.id)
|
||||
{
|
||||
// A dragged tile stays above floating windows, even after a relayout.
|
||||
windows[..=index].rotate_right(1);
|
||||
}
|
||||
|
||||
let mut closing = if workspace.is_some() {
|
||||
Default::default()
|
||||
} else {
|
||||
|
||||
Reference in new issue
Block a user