Commit Graph

2248 Commits

Author SHA1 Message Date
ea3907d012
terminal: Add cursor support
All checks were successful
continuous-integration/drone/pr Build is passing
2023-09-16 13:12:39 +02:00
0f926d5094
libui: Properly request redraws from the server
Before this, the call to update() was always skipped.
2023-09-16 13:12:26 +02:00
a202ef1f34
terminal: Use pseudoterminals and add keyboard support
All checks were successful
continuous-integration/drone/pr Build is passing
2023-09-16 11:48:31 +02:00
35633fc65f
libc: Add pseudoterminal-related functions 2023-09-16 11:48:31 +02:00
d7db4e6147
init: Mount /dev/pts on startup 2023-09-16 11:48:31 +02:00
fd46d134aa
kernel: Add pseudoterminals and a /dev/pts filesystem 2023-09-16 11:48:30 +02:00
fbfa5328d7
wind: Stop tracking windows after they're closed 2023-09-16 11:45:51 +02:00
d3cc4d109b
wind+libui: Add support for keyboard events 2023-09-16 11:45:19 +02:00
65b7518e50
apps: Remove gclient 2023-09-16 11:42:19 +02:00
b134d2d0e0
taskbar: Add a button to open terminal instead of gclient 2023-09-16 11:41:51 +02:00
69a0600d45
kernel: Allow performing extra actions when opening an inode
All checks were successful
continuous-integration/drone/pr Build is passing
2023-09-14 22:55:54 +02:00
05a0d912fa
apps: Add basic terminal app
All checks were successful
continuous-integration/drone/pr Build is passing
2023-09-14 22:51:19 +02:00
8227e7c0ea
shell: Allow running as interactive even if not running in a TTY
All checks were successful
continuous-integration/drone/pr Build is passing
2023-09-14 21:31:45 +02:00
dce7b92c95
libui: Add option to run event processing in a loop instead of in app.run()
All checks were successful
continuous-integration/drone/pr Build is passing
2023-09-14 21:29:48 +02:00
ff525c9044
libui: Reduce redraw calls by doing them only when events are actually handled
All checks were successful
continuous-integration/drone/pr Build is passing
2023-09-12 22:09:45 +02:00
8a7a2c2a53
apps: Add about 2023-09-12 22:09:45 +02:00
ec501359df
libui: Add a basic Label component 2023-09-12 22:09:45 +02:00
c26887c03c
libui: Clarify that Font is only used for low-level glyph rendering 2023-09-12 22:09:45 +02:00
45c8e05809
libui: Zero-initialize counter variables in Layout 2023-09-12 22:09:45 +02:00
10786f08ee
wind: Move more fallible operations before window creation 2023-09-12 22:09:44 +02:00
b1aab83f63
wind: Make sure stdin is always a TTY 2023-09-12 22:09:44 +02:00
c3907af53f
libui+wind+libos: Move shared memory handling code to os::SharedMemory 2023-09-12 22:09:44 +02:00
2bd5b2425e
libui: Add default handlers for events in Widget 2023-09-12 22:09:44 +02:00
f563977438
libui: Propagate Container events only if they are in the child widget's rect 2023-09-12 22:09:44 +02:00
35a7308c69
libui+wind: Handle mouse leave events when the mouse leaves a window 2023-09-12 22:09:44 +02:00
949b6bb9e5
wind: Stop using the removed 'signal' pledge 2023-09-12 22:09:44 +02:00
58f7c101bb
libui: Install the built library into the system root 2023-09-12 22:09:44 +02:00
17f6eb898e
wind: Show memory usage in debug output 2023-09-12 22:09:44 +02:00
306e387938
wind: Handle ftruncate() and mmap() errors properly 2023-09-12 22:09:44 +02:00
41e47c6b5b
wind: Fix client references being out-of-date in windows when disconnecting other clients
Classic "keeping a pointer to an element inside a vector after the vector is updated" bug, ah yes.
2023-09-12 22:09:43 +02:00
17c6ff9a97
taskbar: Wait for terminated child windows 2023-09-12 22:09:43 +02:00
e4dfa418d2
wind: Add debug keybind 2023-09-12 22:09:43 +02:00
f0db982c14
wind+libos+libui: Handle interrupted reads properly 2023-09-12 22:09:43 +02:00
8c08acc2d9
base: Actually add the start icon to source control 2023-09-12 22:09:43 +02:00
1447fe3e35
libui: Add Buttons 2023-09-12 22:09:43 +02:00
550a80b8b3
libui: Handle other mouse events 2023-09-12 22:09:43 +02:00
e5b7c72145
libui: Add aligned items using Containers, ImageWidget 2023-09-12 22:09:43 +02:00
b50b17e831
libui: Add VerticalLayout 2023-09-12 22:09:43 +02:00
7c01bb2a0d
wind+libui+taskbar: Add GetScreenRect IPC, non-decorated windows, taskbar 2023-09-12 22:09:43 +02:00
a337f3fb6e
libui: Actually fill window backgrounds with the correct color 2023-09-12 22:09:42 +02:00
7c30cda667
libui: Add basic widget and layout system =D 2023-09-12 22:09:42 +02:00
4f25509465
ui+wind: Send mouse move events through IPC 2023-09-12 22:09:42 +02:00
04626e189f
wind+libui: Add protocol for window close requests 2023-09-12 22:09:42 +02:00
03d7e8d84e
libos+libui+wind: Use uppercase for static struct IDs to avoid confusion with fields 2023-09-12 22:09:42 +02:00
a4e1dc24f5
libui+gclient: Add basic OOP wrappers around the IPC protocol 2023-09-12 22:09:42 +02:00
ed572a86c6
wind+gclient: Add SetWindowTitle and support shm buffers 2023-09-12 22:09:42 +02:00
5994b52192
gclient: Create two example windows 2023-09-12 22:09:42 +02:00
e08667b2d5
wind: Handle CreateWindow IPC messages 2023-09-12 22:09:42 +02:00
8b2fbc6613
libui: Add CreateWindow IPC message definitions 2023-09-12 22:09:42 +02:00
71ea55f4c0
libos: Add basic IPC message framework 2023-09-12 22:09:42 +02:00