Andreas Kling
fd4e86460b
Make PS2MouseDevice behave more like a proper character device.
...
Get rid of the goofy MouseClient interface and have the GUI event loop just
read mouse data from the character device.
The previous approach was awful as it was sending us into random GUI code
in the mouse interrupt handler.
2019-01-12 05:23:16 +01:00
Andreas Kling
9bc7b128b2
Constrain the mouse cursor to keep it inside the screen rect.
2019-01-12 01:00:24 +01:00
Andreas Kling
b95aa18315
Hook up the Keyboard device to the AbstractScreen.
...
Basic text editing in a TextBox works. How very cool :^)
2019-01-11 04:40:05 +01:00
Andreas Kling
e5e295052f
Hook up the PS2MouseDevice to the AbstractScreen+WindowManager.
...
Render the mouse cursor by xor'ing the pixels. I don't know anything about
hardware cursors yet and this way we don't need to recompose the window
hierarchy every time you move the mouse. :^)
2019-01-11 03:52:09 +01:00
Andreas Kling
d1ceb4b603
Fix uninitialized AbstractScreen instance pointer.
...
...yeah yeah, one day I'm gonna zero out the kernel's BSS segment. Soon..
2019-01-11 01:43:41 +01:00
Andreas Kling
02f4d6ef8e
Move windowing stuff from AbstractScreen to WindowManager.
2018-10-12 01:11:38 +02:00
Andreas Kling
ab5266b924
Rage hacking on TerminalWidget.
...
There's some really hideous plumbing with globals going on here, but my
priority right now is getting a basic VT100 terminal emulator working.
2018-10-11 12:33:03 +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