Просмотр исходного кода

Allow canvas toolbar tools to deselect on second tap.

Tapping an already active text, image, or draw tool returns to pointer mode so users can exit a tool without choosing another.

Co-authored-by: Cursor <cursoragent@cursor.com>
AhtashamShahzad1 1 месяц назад
Родитель
Сommit
06cb73f8af
1 измененных файлов с 8 добавлено и 1 удалено
  1. 8 1
      smart_printer/DrawPrintView.swift

+ 8 - 1
smart_printer/DrawPrintView.swift

@@ -1261,7 +1261,14 @@ final class CanvasToolsPanel: NSView, AppearanceRefreshable {
 
         for tool in CanvasTool.toolbarTools {
             let button = CanvasToolButton(tool: tool)
-            button.onClick = { [weak self] in self?.selectTool(tool) }
+            button.onClick = { [weak self] in
+                guard let self else { return }
+                if self.activeTool == tool {
+                    self.selectTool(.pointer)
+                } else {
+                    self.selectTool(tool)
+                }
+            }
             toolButtons[tool] = button
             toolStack.addArrangedSubview(button)
         }