Age | Commit message (Collapse) | Author | |
---|---|---|---|
2019-04-10 | Introduce LibCore and move GElapsedTimer => CElapsedTimer. | Andreas Kling | |
I need a layer somewhere between AK (usable both by userspace and kernel) and LibGUI (usable by userspace except WindowServer.) So here's LibCore. | |||
2019-04-10 | LibGUI: Move frame painting from GFrame to StylePainter. | Andreas Kling | |
This way it can be used by others who might not have a GFrame object. | |||
2019-04-10 | LibGUI: Turn GTextBox into a wrapper around a single-line GTextEditor. | Andreas Kling | |
2019-04-07 | Kernel+Userland: Add the rename() syscall along with a basic /bin/mv. | Andreas Kling | |
2019-03-28 | LibGUI: Improve GFrame's look for Container shapes. | Andreas Kling | |
This is now starting to look like a proper container. Very nice :^) | |||
2019-03-28 | Userland: Add a simple GFrame testing window to guitest2. | Andreas Kling | |
2019-03-28 | LibGUI: Add a GPainter class that inherits from Painter. | Andreas Kling | |
This gets rid of the last little piece of LibGUI knowledge in Painter. | |||
2019-03-27 | Kernel: Add Inode::truncate(size). | Andreas Kling | |
- Use this to implement the O_TRUNC open flag. - Fix creat() to pass O_CREAT | O_TRUNC | O_WRONLY. - Make sure we truncate wherever appropriate. | |||
2019-03-27 | LibC: Run constructors on process startup. | Andreas Kling | |
Cooperate with the compiler to generate and execute the _init_array list of constructor functions on userspace program statup. This took two days to get working, my goodness. :^) | |||
2019-03-27 | LibC: Time-related POSIX compliance fixes. | Andreas Kling | |
2019-03-24 | QuickShow: Fill the window with white if the opened image has alpha. | Andreas Kling | |
2019-03-22 | LibGUI: Add a setting to make GLabel stretch its icon. | Andreas Kling | |
Use this in QuickShow to allow arbitrarily scaling the opened image. | |||
2019-03-22 | LibGUI: Add a GProgressBar widget. | Andreas Kling | |
2019-03-21 | WindowServer: Support PNG wallpapers. | Andreas Kling | |
Fix up /bin/pape so it tells the WindowServer which wallpaper file to use. | |||
2019-03-21 | Userland: Turn off double buffering in QuickShow. | Andreas Kling | |
Since this program is primarily used to display potentially huge but still static images, let's not put extra strain on the system by double buffering. | |||
2019-03-21 | PNGLoader: Support for color type 2 (RGB triplets) and multiple IDAT chunks. | Andreas Kling | |
2019-03-21 | SharedGraphics: Implement a simple PNG decoder. | Andreas Kling | |
This is extremely unoptimized, but it does successfully load "folder32.png" so it must be at least somewhat correct. :^) | |||
2019-03-20 | Userland: Allow ping <hostname> :^) | Andreas Kling | |
2019-03-20 | LibC: Implement gethostbyname() by talking to the DNSLookupServer. | Andreas Kling | |
We now talk to the lookup server over a local socket and it does the lookup on our behalf. Including some retry logic, which is nice, because it seems like DNS requests disappear in the ether pretty damn often where I am. | |||
2019-03-19 | LibGUI: Implement nested event loops to support dialog boxes. | Andreas Kling | |
This patch adds a simple GMessageBox that can run in a nested event loop. Here's how you use it: GMessageBox box("Message text here", "Message window title"); int result = box.exec(); The next step is to make the WindowServer respect the modality flag of these windows and prevent interaction with other windows in the same process until the modal window has been closed. | |||
2019-03-14 | Userland: Turn the tc test util into a simple dumb HTTP client. | Andreas Kling | |
2019-03-14 | IPv4: Last burst of TCP hacking for today. | Andreas Kling | |
Connecting to a test server and exchanging data back and forth works. | |||
2019-03-14 | IPv4: More work on the TCP implementation. | Andreas Kling | |
Reading from the peer now kinda works. Something still going wrong with sending packets but it's getting closer. | |||
2019-03-13 | IPv4: More hacking on bringing up TCP support. | Andreas Kling | |
This was a bit more complicated than I expected, but it's moving forward. | |||
2019-03-13 | Userland+LibC: Add a new little "tc" program for testing TCP. | Andreas Kling | |
Also added send() and recv() to LibC in support of this. They are just wrappers around sendto() and recvfrom(). | |||
2019-03-13 | IPv4: More work on UDP support. | Andreas Kling | |
I'm now able to connect to a simple UDP server on my host machine and exchange some data. Very cool! :^) | |||
2019-03-13 | Userland: Add a simple utility for UDP testing. | Andreas Kling | |
2019-03-13 | Kernel: recvfrom() should treat the address arguments as outparams. | Andreas Kling | |
2019-03-13 | Add support for socket send/receive timeouts. | Andreas Kling | |
Only the receive timeout is hooked up yet. You can change the timeout by calling setsockopt(..., SOL_SOCKET, SO_RCVTIMEO, ...). Use this mechanism to make /bin/ping report timeouts. | |||
2019-03-13 | More work on IPv4 sockets and /bin/ping. | Andreas Kling | |
It's now actually possible to ping other hosts on the network! :^) I've switched the "run" script over to starting QEMU with user networking since that works better for my testing needs right now. | |||
2019-03-12 | Kernel+LibC+Userland: Yet more networking bringup hacking. | Andreas Kling | |
All ICMP sockets now receive all ICMP packets. All this buffering is gonna need some limits and such. | |||
2019-03-12 | Kernel+LibC+Userland: Start working on an IPv4 socket backend. | Andreas Kling | |
The first userland networking program will be "ping" :^) | |||
2019-03-09 | Userland: Use AK::quick_sort() in /bin/top | Andreas Kling | |
2019-03-07 | Userland: Fix broken permissions for files created by /bin/cp. | Andreas Kling | |
When passing O_CREAT to open(), it will grab a third "mode" argument from the stack. Let's not forget to actually pass this! Also use the process umask for the created files. | |||
2019-03-06 | Userland: /bin/cp needs to handle open(dst) failing with EISDIR. | Andreas Kling | |
2019-03-06 | Userland: Support "cp foo somedirectory" | Andreas Kling | |
Don't overwrite the literal directory inode contents when copying a file to a directory, duh. :^) | |||
2019-03-06 | More work on the variable-width font support. | Andreas Kling | |
Katica is now the default system font, and it looks quite nice. :^) I'm gonna need to refine the GTextBox movement stuff eventually, but it works well-enough for basic editing now. | |||
2019-03-02 | Kernel+Userland: Add symlink() syscall and add "-s" flag to /bin/ln. | Andreas Kling | |
It's now possible to create symbolic links! :^) This exposed an issue in Ext2FS where we'd write uninitialized data past the end of an inode's content. Fix this by zeroing out the tail end of the last block in a file. | |||
2019-03-01 | Kernel+Userland: Implement fchmod() syscall and use it to improve /bin/cp. | Andreas Kling | |
/bin/cp will now copy the permission bits from source to destination. :^) | |||
2019-02-28 | Kernel: Only allow sending signals to process you own. | Andreas Kling | |
2019-02-27 | Userland: Add a simple /bin/stat program. | Andreas Kling | |
2019-02-27 | Userland: /bin/ls should show major,minor for block devices. | Andreas Kling | |
2019-02-27 | Add chown() syscall and a simple /bin/chown program. | Andreas Kling | |
2019-02-26 | More compat work. Rename libraries from LibFoo.a => libfoo.a | Andreas Kling | |
This makes it more straightforward to build a cross-compiler toolchain. Also move math stuff from LibC to LibM. | |||
2019-02-25 | More moving towards using signed types. | Andreas Kling | |
I'm still feeling this out, but I am starting to like the general idea. | |||
2019-02-25 | Fix a bunch of compiler warnings. Not all, but a lot. | Andreas Kling | |
2019-02-23 | LibC: Enough compat work to make binutils-2.32 build and run. | Andreas Kling | |
2019-02-22 | Move over to building all of userspace with i686-pc-serenity-g++. | Andreas Kling | |
2019-02-22 | Userland: Fix two compiler warnings. | Andreas Kling | |
2019-02-22 | Switch over to building everything with i686-elf-g++. | Andreas Kling | |