|
871b5c6a35
|
libui: Properly cut off the last drawn character if necessary
|
2023-08-08 12:51:04 +02:00 |
|
|
a38dbce9bd
|
libui: Add Rect::contains(Rect)
|
2023-08-08 12:51:04 +02:00 |
|
|
93d74a29b5
|
libui: Render font characters properly with no spacing, matching the width calculations
|
2023-08-08 12:51:04 +02:00 |
|
|
3d3d1aeed5
|
wind: Render an actual TGA mouse cursor
|
2023-08-08 12:51:04 +02:00 |
|
|
60385c4614
|
wind: Add a close button to windows using a TGA icon
|
2023-08-08 12:51:04 +02:00 |
|
|
38c00a8384
|
libui: Add support for TGA image loading
|
2023-08-08 12:51:04 +02:00 |
|
|
ae5dd3f340
|
libui: Add an interface to fill a Canvas with an array of pixels
|
2023-08-08 12:51:03 +02:00 |
|
|
a843ef943e
|
wind: Add window titlebars using ui::Font
|
2023-08-08 12:51:03 +02:00 |
|
|
4cb2c5ea83
|
libui: Add PSF font loading and rendering
|
2023-08-08 12:51:03 +02:00 |
|
|
0bc7af62df
|
libui: Add Color::GRAY
|
2023-08-08 12:51:03 +02:00 |
|
|
98a0049e54
|
libui: Rename Rect::absolute to normalized and add a new absolute function
|
2023-08-08 12:51:03 +02:00 |
|
|
9c78ec605c
|
libluna: Add assignment operators to Buffer
|
2023-08-08 12:51:03 +02:00 |
|
|
d8ba20b23d
|
wind: Reorder drag sequence
|
2023-08-08 12:51:02 +02:00 |
|
|
0927dd71cc
|
libui: Add Rect::relative
|
2023-08-08 12:51:02 +02:00 |
|
|
3d559cb8c8
|
libui: Remove redundant statement
|
2023-08-08 12:51:02 +02:00 |
|
|
42dca14d09
|
libui: Add getters for separate color values
|
2023-08-08 12:51:02 +02:00 |
|
|
69b36b0b09
|
libui: Remove unnecessary stuff
|
2023-08-08 12:51:02 +02:00 |
|
|
ee0bdd59d3
|
base: Remove startup items not necessary for GUI startup
|
2023-08-08 12:51:01 +02:00 |
|
|
d8150113c5
|
libui+wind: (Draggable) windows
|
2023-08-08 12:51:01 +02:00 |
|
|
b48daad58a
|
wind: Create a local server object
|
2023-08-08 12:51:01 +02:00 |
|
|
a1f47cacd4
|
libos: Add a new LocalServer class for local domain sockets
|
2023-08-08 12:51:01 +02:00 |
|
|
78a4c4f111
|
kernel: Support listening sockets in poll()
|
2023-08-08 12:51:01 +02:00 |
|
|
cab45a414c
|
base: Start wind on startup instead of the shell
|
2023-08-08 12:51:01 +02:00 |
|
|
646ccb2854
|
wind: Add a simple display server skeleton using libui
No client functionality yet, but it's a start.
|
2023-08-08 12:51:01 +02:00 |
|
|
1984a4de08
|
libui: Add a GUI and graphics library
|
2023-08-08 12:51:00 +02:00 |
|
|
5c09fdfbc6
|
kernel: Fix negative movement in the PS/2 mouse driver
|
2023-08-08 12:50:56 +02:00 |
|
|
159c05c064
|
libluna: Add max() and min()
continuous-integration/drone/push Build is passing
|
2023-08-08 12:39:03 +02:00 |
|
|
b63a8ff245
|
libluna: Move get_blocks_from_size to a new header and call it ceil_div instead
continuous-integration/drone/push Build is passing
|
2023-08-08 11:58:33 +02:00 |
|
|
917203ef11
|
kernel: Run the init function in a separate block to free everything before kernel_exit is called
continuous-integration/drone/push Build is passing
|
2023-08-08 10:44:18 +02:00 |
|
|
826be882a9
|
kernel: Interrupt syscalls before exiting because of a signal
Closes #40.
|
2023-08-08 10:41:46 +02:00 |
|
|
198935eb30
|
libc: Reset the read buffer even when read() returns an error
This fixes the same data being read multiple times if an error was returned
|
2023-08-08 10:39:15 +02:00 |
|
|
7c254e5e15
|
kernel: Properly check memory bounds in strdup_from_user()
continuous-integration/drone/push Build is passing
Missed this one in 097353e779 .
|
2023-08-08 10:27:19 +02:00 |
|
|
2e63b93e48
|
libos: Remove debug statements from Process::spawn()
continuous-integration/drone/push Build is passing
|
2023-08-07 22:53:37 +02:00 |
|
|
77ebdda2e0
|
libos: Add Process::spawn()
continuous-integration/drone/push Build is passing
|
2023-08-07 22:49:12 +02:00 |
|
|
097353e779
|
kernel: Properly check memory bounds while touching user memory
Before this patch, one byte of each page was being accessed without checking the page's permissions.
|
2023-08-07 22:49:00 +02:00 |
|
|
10c892d606
|
kernel: Allow null envp in execve()
As far as I know, this is not standard, but I'm doing this as a convenience for programs using exec() right after clearenv().
|
2023-08-07 22:48:21 +02:00 |
|
|
f45734c61d
|
kernel/ATA: Stop storing ATA::Drive in a separate shared pointer
continuous-integration/drone/push Build is passing
|
2023-08-07 19:22:57 +02:00 |
|
|
bc20e1a31b
|
kernel: Store FD_CLOEXEC in the file descriptor itself
continuous-integration/drone/push Build is passing
Closes #39.
|
2023-08-03 17:47:18 +02:00 |
|
|
b01aa72f17
|
libc+init+shmem-test: Add POSIX shared memory objects
continuous-integration/drone/push Build is passing
|
2023-08-03 10:32:52 +02:00 |
|
|
d41fb85466
|
libluna/SharedPtr: Count references with separately created objects properly
|
2023-08-03 10:32:22 +02:00 |
|
|
5aa042a5f2
|
kernel: Add constructors to SharedMemory
|
2023-08-03 10:31:58 +02:00 |
|
|
f150425222
|
kernel: Create a new shared memory object if the old one was lost
|
2023-08-03 10:31:29 +02:00 |
|
|
842b212685
|
kernel: Set a SharedMemory object's prot value
|
2023-08-03 10:30:43 +02:00 |
|
|
641b65da0f
|
kernel: Take devices into account in SharedMemory::free()
|
2023-08-03 09:33:10 +02:00 |
|
|
bfcca3a220
|
gol: Use memory-mapped IO
continuous-integration/drone/push Build is passing
|
2023-08-03 09:26:35 +02:00 |
|
|
b5d146b492
|
kernel/mmap: Fix some parameters
|
2023-08-03 09:26:21 +02:00 |
|
|
b447c1a261
|
kernel: Set the shmem->inode field in query_shared_memory
|
2023-08-03 09:25:56 +02:00 |
|
|
f8e86b3b01
|
fix
|
2023-08-03 09:25:38 +02:00 |
|
|
d8f6af99b8
|
kernel: Let devices use shared memory
|
2023-08-03 09:25:23 +02:00 |
|
|
c5e24e478f
|
kernel+libc: Add truncate and ftruncate
continuous-integration/drone/push Build is passing
|
2023-08-03 08:47:37 +02:00 |
|