From 618bb2d33e8bcda6ef1ebb1bd6c0a196c35fba44 Mon Sep 17 00:00:00 2001 From: Marcus Nilsson Date: Mon, 5 Jul 2021 23:22:57 +0200 Subject: [PATCH] PixelPaint: Make brush draw on mousedown This makes the brush tool start drawing a point before the user moves the mouse, like in Photoshop and Gimp. The number of iterations of draw_point makes for roughly 4 clicks to full opacity. --- Userland/Applications/PixelPaint/BrushTool.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/Userland/Applications/PixelPaint/BrushTool.cpp b/Userland/Applications/PixelPaint/BrushTool.cpp index dea6e3da4a..f918efe2e0 100644 --- a/Userland/Applications/PixelPaint/BrushTool.cpp +++ b/Userland/Applications/PixelPaint/BrushTool.cpp @@ -25,11 +25,17 @@ BrushTool::~BrushTool() { } -void BrushTool::on_mousedown(Layer&, GUI::MouseEvent& event, GUI::MouseEvent&) +void BrushTool::on_mousedown(Layer& layer, GUI::MouseEvent& event, GUI::MouseEvent&) { if (event.button() != GUI::MouseButton::Left && event.button() != GUI::MouseButton::Right) return; + const int first_draw_opacity = 10; + + for (int i = 0; i < first_draw_opacity; ++i) + draw_point(layer.bitmap(), m_editor->color_for(event), event.position()); + + layer.did_modify_bitmap(); m_last_position = event.position(); }