1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 15:37:46 +00:00

GWindow: Add SerenityKeys minimum functionality

This commit is contained in:
faissaloo 2019-06-03 16:02:49 +01:00
parent 9ac95d1867
commit 72264661fd
6 changed files with 109 additions and 4 deletions

View file

@ -1,12 +1,15 @@
#pragma once
#include <AK/AKString.h>
#include <AK/HashMap.h>
#include <AK/StringBuilder.h>
#include <AK/WeakPtr.h>
#include <LibCore/CObject.h>
#include <LibGUI/GWindowType.h>
#include <SharedGraphics/GraphicsBitmap.h>
#include <SharedGraphics/Rect.h>
class GPainter;
class GWidget;
class GWMEvent;
@ -130,6 +133,8 @@ protected:
private:
virtual bool is_window() const override final { return true; }
void find_keyboard_selectable();
void find_keyboard_selectable_children(GWidget* widget);
Retained<GraphicsBitmap> create_backing_bitmap(const Size&);
void set_current_backing_bitmap(GraphicsBitmap&, bool flush_immediately = false);
void flip(const Vector<Rect, 32>& dirty_rects);
@ -159,4 +164,8 @@ private:
bool m_resizable { true };
bool m_fullscreen { false };
bool m_show_titlebar { true };
bool m_keybind_mode { false };
String m_entered_keybind;
Vector<GWidget*> m_potential_keybind_widgets;
HashMap<String, GWidget*> m_hashed_potential_keybind_widgets;
};