Skip to content

Commit 91dee6d

Browse files
authored
Fix settings popup items (View as / Density) being unclickable (#9540)
1 parent 73074ba commit 91dee6d

1 file changed

Lines changed: 5 additions & 17 deletions

File tree

app/src/workspace/view/vertical_tabs.rs

Lines changed: 5 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1449,23 +1449,11 @@ fn render_vertical_tabs_panel(
14491449
.with_child(Shrinkable::new(1., scrollable_groups).finish())
14501450
.finish();
14511451

1452-
let panel_with_popup: Box<dyn Element> = if state.show_settings_popup {
1453-
let popup = render_settings_popup(state, app);
1454-
let mut stack = Stack::new().with_child(panel_content);
1455-
stack.add_positioned_overlay_child(
1456-
popup,
1457-
OffsetPositioning::offset_from_save_position_element(
1458-
VERTICAL_TABS_SETTINGS_BUTTON_POSITION_ID,
1459-
vec2f(0., 4.),
1460-
PositionedElementOffsetBounds::WindowByPosition,
1461-
PositionedElementAnchor::BottomLeft,
1462-
ChildAnchor::TopLeft,
1463-
),
1464-
);
1465-
stack.finish()
1466-
} else {
1467-
panel_content
1468-
};
1452+
// The settings popup is rendered at the workspace level (with Dismiss for click-outside-
1453+
// to-close). Rendering it here again shares MouseStateHandle instances across two Hoverable
1454+
// trees; click_count.take() is consumed by this copy first, leaving the workspace copy
1455+
// with None and silently dropping all clicks on the popup items.
1456+
let panel_with_popup: Box<dyn Element> = panel_content;
14691457

14701458
let drag_side = match side {
14711459
super::PanelPosition::Left => DragBarSide::Right,

0 commit comments

Comments
 (0)