LibGUI: Remove copy-pasted auto-repeat logic from ColorInput

This was copy-pasted from button classes and not useful here.
This commit is contained in:
Andreas Kling 2020-04-29 14:38:19 +02:00
parent 40fe076e10
commit 033a4aee50
Notes: sideshowbarker 2024-07-19 07:11:34 +09:00
2 changed files with 5 additions and 19 deletions

View file

@ -36,11 +36,6 @@ ColorInput::ColorInput()
: TextEditor(TextEditor::SingleLine)
{
set_readonly(true);
m_auto_repeat_timer = add<Core::Timer>();
m_auto_repeat_timer->on_timeout = [this] {
click();
};
}
ColorInput::~ColorInput()
@ -64,11 +59,6 @@ void ColorInput::mousedown_event(MouseEvent& event)
if (is_enabled()) {
m_being_pressed = true;
update();
if (m_auto_repeat_interval) {
click();
m_auto_repeat_timer->start(m_auto_repeat_interval);
}
}
}
@ -78,13 +68,11 @@ void ColorInput::mousedown_event(MouseEvent& event)
void ColorInput::mouseup_event(MouseEvent& event)
{
if (event.button() == MouseButton::Left) {
bool was_auto_repeating = m_auto_repeat_timer->is_active();
m_auto_repeat_timer->stop();
if (is_enabled()) {
bool was_being_pressed = m_being_pressed;
m_being_pressed = false;
update();
if (was_being_pressed && !was_auto_repeating)
if (was_being_pressed)
click();
}
}

View file

@ -31,14 +31,14 @@
namespace GUI {
class ColorInput : public TextEditor {
C_OBJECT(ColorInput)
class ColorInput final : public TextEditor {
C_OBJECT(ColorInput);
public:
ColorInput();
virtual ~ColorInput() override;
void set_color(Color color);
void set_color(Color);
Color color() { return m_color; }
void set_color_picker_title(String title) { m_color_picker_title = title; }
@ -53,14 +53,12 @@ protected:
virtual void paint_event(PaintEvent&) override;
private:
virtual void click();
void click();
Color m_color;
String m_color_picker_title { "Select Color" };
int m_auto_repeat_interval { 0 };
bool m_being_pressed { false };
RefPtr<Core::Timer> m_auto_repeat_timer;
};
}