Fix Ctrl+H layer hiding and Ctrl+L layer locking only working with the graph open (#2029)

* Add DocumentMessage::ToggleSelectedVisibility

* Add DocumentMessage::ToggleSelectedLocked

* Update editor/src/messages/input_mapper/input_mappings.rs

---------

Co-authored-by: Keavon Chambers <keavon@keavon.com>
This commit is contained in:
fiveeyy 2024-10-14 02:49:46 +05:30 committed by GitHub
parent d6f46f73da
commit 5c98378c7a
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 10 additions and 2 deletions

View File

@ -69,8 +69,6 @@ pub fn input_mappings() -> Mapping {
entry!(KeyDown(KeyX); modifiers=[Accel], action_dispatch=NodeGraphMessage::Cut),
entry!(KeyDown(KeyC); modifiers=[Accel], action_dispatch=NodeGraphMessage::Copy),
entry!(KeyDown(KeyD); modifiers=[Accel], action_dispatch=NodeGraphMessage::DuplicateSelectedNodes),
entry!(KeyDown(KeyH); modifiers=[Accel], action_dispatch=NodeGraphMessage::ToggleSelectedVisibility),
entry!(KeyDown(KeyL); modifiers=[Accel], action_dispatch=NodeGraphMessage::ToggleSelectedLocked),
entry!(KeyDown(KeyL); modifiers=[Alt], action_dispatch=NodeGraphMessage::ToggleSelectedAsLayersOrNodes),
entry!(KeyDown(KeyC); modifiers=[Shift], action_dispatch=NodeGraphMessage::PrintSelectedNodeCoordinates),
entry!(KeyDown(KeyC); modifiers=[Alt], action_dispatch=NodeGraphMessage::SendClickTargets),
@ -311,6 +309,8 @@ pub fn input_mappings() -> Mapping {
entry!(KeyDown(KeyP); modifiers=[Alt], action_dispatch=DocumentMessage::DebugPrintDocument),
entry!(KeyDown(KeyO); modifiers=[Alt], action_dispatch=DocumentMessage::ToggleOverlaysVisibility),
entry!(KeyDown(KeyS); modifiers=[Alt], action_dispatch=DocumentMessage::ToggleSnapping),
entry!(KeyDown(KeyH); modifiers=[Accel], action_dispatch=DocumentMessage::ToggleSelectedVisibility),
entry!(KeyDown(KeyL); modifiers=[Accel], action_dispatch=DocumentMessage::ToggleSelectedLocked),
entry!(KeyDown(KeyG); modifiers=[Alt], action_dispatch=DocumentMessage::ToggleGridVisibility),
entry!(KeyDown(KeyZ); modifiers=[Accel, Shift], action_dispatch=DocumentMessage::Redo),
entry!(KeyDown(KeyY); modifiers=[Accel], action_dispatch=DocumentMessage::Redo),

View File

@ -153,6 +153,8 @@ pub enum DocumentMessage {
ToggleLayerExpansion {
id: NodeId,
},
ToggleSelectedVisibility,
ToggleSelectedLocked,
ToggleGridVisibility,
ToggleOverlaysVisibility,
ToggleSnapping,

View File

@ -1081,6 +1081,10 @@ impl MessageHandler<DocumentMessage, DocumentMessageData<'_>> for DocumentMessag
}
responses.add(NodeGraphMessage::SendGraph);
}
DocumentMessage::ToggleSelectedLocked => responses.add(NodeGraphMessage::ToggleSelectedLocked),
DocumentMessage::ToggleSelectedVisibility => {
responses.add(NodeGraphMessage::ToggleSelectedVisibility);
}
DocumentMessage::ToggleGridVisibility => {
self.snapping_state.grid_snapping = !self.snapping_state.grid_snapping;
responses.add(OverlaysMessage::Draw);
@ -1311,6 +1315,8 @@ impl MessageHandler<DocumentMessage, DocumentMessageData<'_>> for DocumentMessag
SelectedLayersRaise,
SelectedLayersRaiseToFront,
UngroupSelectedLayers,
ToggleSelectedVisibility,
ToggleSelectedLocked
);
if !self.graph_view_overlay_open {
select.extend(actions!(DocumentMessageDiscriminant; NudgeSelectedLayers));