diff --git a/Userland/Applications/PixelPaint/Tools/WandSelectTool.cpp b/Userland/Applications/PixelPaint/Tools/WandSelectTool.cpp index 4d4ab4ad8e..873d4cfd51 100644 --- a/Userland/Applications/PixelPaint/Tools/WandSelectTool.cpp +++ b/Userland/Applications/PixelPaint/Tools/WandSelectTool.cpp @@ -37,6 +37,14 @@ static void set_flood_selection(Gfx::Bitmap& bitmap, Image& image, Gfx::IntPoint image.selection().merge(selection_mask, merge_mode); } +void WandSelectTool::on_keydown(GUI::KeyEvent& key_event) +{ + Tool::on_keydown(key_event); + if (key_event.key() == KeyCode::Key_Escape) { + m_editor->image().selection().clear(); + } +} + void WandSelectTool::on_mousedown(Layer* layer, MouseEvent& event) { if (!layer) diff --git a/Userland/Applications/PixelPaint/Tools/WandSelectTool.h b/Userland/Applications/PixelPaint/Tools/WandSelectTool.h index f1e281b3b6..e239bd266a 100644 --- a/Userland/Applications/PixelPaint/Tools/WandSelectTool.h +++ b/Userland/Applications/PixelPaint/Tools/WandSelectTool.h @@ -22,6 +22,7 @@ public: virtual ~WandSelectTool() = default; virtual void on_mousedown(Layer*, MouseEvent& event) override; + virtual void on_keydown(GUI::KeyEvent&) override; virtual GUI::Widget* get_properties_widget() override; virtual Variant> cursor() override { return Gfx::StandardCursor::Crosshair; }