mirror of
https://github.com/RGBCube/serenity
synced 2025-06-18 18:42:10 +00:00
GWindow: Make destroy-on-close an optional behavior.
Also add missing implementation of GWindow::is_visible().
This commit is contained in:
parent
ae8eff55a7
commit
e9cbda29e9
2 changed files with 7 additions and 2 deletions
|
@ -47,6 +47,7 @@ void GWindow::close()
|
||||||
{
|
{
|
||||||
if (should_exit_event_loop_on_close())
|
if (should_exit_event_loop_on_close())
|
||||||
GEventLoop::current().quit(0);
|
GEventLoop::current().quit(0);
|
||||||
|
if (should_destroy_on_close())
|
||||||
delete_later();
|
delete_later();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -421,7 +422,7 @@ void GWindow::collect_keyboard_activation_targets()
|
||||||
|
|
||||||
bool GWindow::is_visible() const
|
bool GWindow::is_visible() const
|
||||||
{
|
{
|
||||||
return false;
|
return m_window_id != 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void GWindow::update(const Rect& a_rect)
|
void GWindow::update(const Rect& a_rect)
|
||||||
|
|
|
@ -53,6 +53,9 @@ public:
|
||||||
Color background_color() const { return m_background_color; }
|
Color background_color() const { return m_background_color; }
|
||||||
void set_background_color(Color color) { m_background_color = color; }
|
void set_background_color(Color color) { m_background_color = color; }
|
||||||
|
|
||||||
|
bool should_destroy_on_close() { return m_destroy_on_close; }
|
||||||
|
void set_should_destroy_on_close(bool b) { m_destroy_on_close = b; }
|
||||||
|
|
||||||
int x() const { return rect().x(); }
|
int x() const { return rect().x(); }
|
||||||
int y() const { return rect().y(); }
|
int y() const { return rect().y(); }
|
||||||
int width() const { return rect().width(); }
|
int width() const { return rect().width(); }
|
||||||
|
@ -158,6 +161,7 @@ private:
|
||||||
GWindowType m_window_type { GWindowType::Normal };
|
GWindowType m_window_type { GWindowType::Normal };
|
||||||
bool m_is_active { false };
|
bool m_is_active { false };
|
||||||
bool m_should_exit_app_on_close { false };
|
bool m_should_exit_app_on_close { false };
|
||||||
|
bool m_destroy_on_close { true };
|
||||||
bool m_has_alpha_channel { false };
|
bool m_has_alpha_channel { false };
|
||||||
bool m_double_buffering_enabled { true };
|
bool m_double_buffering_enabled { true };
|
||||||
bool m_modal { false };
|
bool m_modal { false };
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue