Skip to content

Commit 021c9f2

Browse files
committed
tiliing: Add placeholder when tree is empty
1 parent 35e601b commit 021c9f2

File tree

1 file changed

+19
-0
lines changed

1 file changed

+19
-0
lines changed

src/shell/layout/tiling/mod.rs

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3339,6 +3339,25 @@ impl TilingLayout {
33393339
let last_overview_hover = &mut self.last_overview_hover;
33403340
let tree = &self.queue.trees.back().unwrap().0;
33413341
let Some(root) = tree.root_node_id() else {
3342+
if matches!(
3343+
overview.active_trigger(),
3344+
Some(Trigger::Pointer(_) | Trigger::Touch(_))
3345+
) {
3346+
if location_f64.is_some() {
3347+
let mut tree = tree.copy_clone();
3348+
tree.insert(
3349+
Node::new(Data::Placeholder {
3350+
id: Id::new(),
3351+
last_geometry: Rectangle::from_size((100, 100).into()),
3352+
type_: PlaceholderType::DropZone,
3353+
}),
3354+
InsertBehavior::AsRoot,
3355+
)
3356+
.unwrap();
3357+
let blocker = TilingLayout::update_positions(&self.output, &mut tree, gaps);
3358+
self.queue.push_tree(tree, ANIMATION_DURATION, blocker);
3359+
}
3360+
}
33423361
return;
33433362
};
33443363

0 commit comments

Comments
 (0)