Browse Source

LibGUI: Move editing key handling up to AbstractView

We want all views to respond to the editing key as long as the relevant
edit trigger is activated.
Andreas Kling 4 years ago
parent
commit
f52527ef9c

+ 8 - 0
Libraries/LibGUI/AbstractView.cpp

@@ -447,6 +447,14 @@ void AbstractView::set_edit_triggers(unsigned triggers)
 
 void AbstractView::keydown_event(KeyEvent& event)
 {
+    if (event.key() == KeyCode::Key_F2) {
+        if (is_editable() && edit_triggers() & EditTrigger::EditKeyPressed) {
+            begin_editing(cursor_index());
+            event.accept();
+            return;
+        }
+    }
+
     SelectionUpdate selection_update = SelectionUpdate::Set;
     if (event.modifiers() == KeyModifier::Mod_Shift) {
         selection_update = SelectionUpdate::Shift;

+ 0 - 8
Libraries/LibGUI/IconView.cpp

@@ -610,14 +610,6 @@ void IconView::keydown_event(KeyEvent& event)
     if (!m_visual_row_count || !m_visual_column_count)
         return;
 
-    if (event.key() == KeyCode::Key_F2) {
-        if (is_editable() && edit_triggers() & EditTrigger::EditKeyPressed) {
-            begin_editing(cursor_index());
-            event.accept();
-            return;
-        }
-    }
-
     if (event.key() == KeyCode::Key_Return) {
         activate_selected();
         return;

+ 0 - 8
Libraries/LibGUI/TableView.cpp

@@ -166,14 +166,6 @@ void TableView::keydown_event(KeyEvent& event)
     if (!model())
         return;
 
-    if (event.key() == KeyCode::Key_F2) {
-        if (is_editable() && edit_triggers() & EditTrigger::EditKeyPressed) {
-            begin_editing(cursor_index());
-            event.accept();
-            return;
-        }
-    }
-
     if (event.key() == KeyCode::Key_Return) {
         activate(cursor_index());
         return;