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

Add ability to switch video modes from the system menu.

I had to change PhysicalPage around a bit for this. Physical pages can now
be instantiated for any arbitrary physical address without worrying that
such pages end up in the kernel page allocator when released.

Most of the pieces were already in place, I just glued everything together.
This commit is contained in:
Andreas Kling 2019-02-17 13:12:59 +01:00
parent 8321908abe
commit 0730b3c15f
7 changed files with 91 additions and 26 deletions

View file

@ -54,8 +54,9 @@ public:
void invalidate(const WSWindow&);
void invalidate(const WSWindow&, const Rect&);
void invalidate(const Rect&);
void invalidate(const Rect&, bool should_schedule_compose_event = true);
void invalidate();
void recompose_immediately();
void flush(const Rect&);
Font& font() { return *m_font; }
@ -66,6 +67,8 @@ public:
Color menu_selection_color() const { return m_menu_selection_color; }
int menubar_menu_margin() const;
void set_resolution(int width, int height);
private:
void process_mouse_event(WSMouseEvent&);
void handle_menu_mouse_event(WSMenu&, WSMouseEvent&);