mirror of
https://github.com/SerenityOS/serenity.git
synced 2025-01-23 18:02:05 -05:00
PixelPaint: Record action for all select operations to allow undo
Since selections with the select tools support undo, it makes sense for the edit operations 'select all', 'none', 'invert' and 'clear selection' to also support undo.
This commit is contained in:
parent
427d488d7e
commit
8cca9e94a2
2 changed files with 4 additions and 0 deletions
|
@ -426,6 +426,7 @@ void ImageEditor::keydown_event(GUI::KeyEvent& event)
|
|||
|
||||
if (event.key() == Key_Escape && !m_image->selection().is_empty()) {
|
||||
m_image->selection().clear();
|
||||
did_complete_action("Clear Selection"sv);
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
|
@ -359,18 +359,21 @@ void MainWidget::initialize_menubar(GUI::Window& window)
|
|||
if (!editor->active_layer())
|
||||
return;
|
||||
editor->image().selection().merge(editor->active_layer()->relative_rect(), PixelPaint::Selection::MergeMode::Set);
|
||||
editor->did_complete_action("Select All"sv);
|
||||
}));
|
||||
m_edit_menu->add_action(GUI::Action::create(
|
||||
"Clear &Selection", g_icon_bag.clear_selection, [&](auto&) {
|
||||
auto* editor = current_image_editor();
|
||||
VERIFY(editor);
|
||||
editor->image().selection().clear();
|
||||
editor->did_complete_action("Clear Selection"sv);
|
||||
}));
|
||||
m_edit_menu->add_action(GUI::Action::create(
|
||||
"&Invert Selection", g_icon_bag.invert_selection, [&](auto&) {
|
||||
auto* editor = current_image_editor();
|
||||
VERIFY(editor);
|
||||
editor->image().selection().invert();
|
||||
editor->did_complete_action("Invert Selection"sv);
|
||||
}));
|
||||
|
||||
m_edit_menu->add_separator();
|
||||
|
|
Loading…
Add table
Reference in a new issue