Andreas Kling
f6d2c3ed87
Hook everything up to run the GUI on top of the kernel.
...
Okay things kinda sorta work. Both Bochs and QEMU now boot into GUI mode.
There's a ton of stuff that doesn't make sense and so many things to rework.
Still it's quite cool to have made it this far. :^)
2019-01-10 23:19:29 +01:00
Andreas Kling
305aa25aae
Let's have an RGBA32 typedef for raw pixel data.
2019-01-10 05:36:32 +01:00
Andreas Kling
3e908abfca
Start separating out the SDL-related stuff in Widgets.
2019-01-10 05:21:19 +01:00
Andreas Kling
ceb373cf71
More window manager hacking. FocusIn/FocusOut events.
2019-01-09 05:40:04 +01:00
Andreas Kling
cfd76ade73
Stop recomposing the window hierarchy after every dang widget paint.
2019-01-09 04:46:16 +01:00
Andreas Kling
4775fd88e3
More window management work.
...
- Fix inverted mouse event hit test z-ordering.
- Let the RootWidget backing store simply be the display framebuffer.
2019-01-09 03:51:34 +01:00
Andreas Kling
9963da9005
Start refactoring graphics system to have per-window backing stores.
...
It was fun for everyone to share a single framebuffer but it was also
kinda really awful. Let's move towards having a "GraphicsBitmap" as the
backing store for each Window.
This is going to need a lot of refactoring so let's get started.
2019-01-09 02:06:04 +01:00
Andreas Kling
a3fb19fe9c
Use fooEvent() type names for the virtual event handlers.
2018-10-13 22:51:50 +02:00
Andreas Kling
e16d145cb4
Some color cleanup.
2018-10-12 23:02:23 +02:00
Andreas Kling
6f9e0e3876
After moving a window, try to repaint a bit less.
...
Only repaint windows that intersect either the old or the new rect.
Also only repaint those rects in the root widget.
2018-10-12 19:39:48 +02:00
Andreas Kling
22721e6729
The WindowManager can now react to mouse events on the window title bar.
2018-10-12 01:48:18 +02:00
Andreas Kling
a4491e9630
More hacking on Widgets.
2018-10-11 16:52:40 +02:00
Andreas Kling
f337616741
More hacking on Widgets.
2018-10-11 01:48:09 +02:00
Andreas Kling
6f37429f57
Intense hacking on Widgets.
2018-10-10 16:49:36 +02:00
Andreas Kling
8c84f9749e
Start working on a Widgets library.
2018-10-10 15:12:38 +02:00