Age | Commit message (Collapse) | Author | |
---|---|---|---|
2019-03-06 | Userland: /bin/cp needs to handle open(dst) failing with EISDIR. | Andreas Kling | |
2019-03-06 | Kernel: Add two error checks for open() to return EISDIR or ENODEV. | 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 | Base: Tweak Katica system menu glyph. | Andreas Kling | |
2019-03-06 | ProcessManager: Tweak priority icons. | Andreas Kling | |
2019-03-06 | LibGUI: GTableModel::data() should take a GModelIndex instead of int,int. | Andreas Kling | |
2019-03-06 | LibGUI: Fix LibGUI::to_string() for GVariant::Type::Float. | Andreas Kling | |
2019-03-06 | GTableView: Ignore right clicks for now. | Andreas Kling | |
2019-03-06 | Base: Tweak Katica and Katica Bold glyphs. | Andreas Kling | |
2019-03-06 | FontEditor: Don't crash when clicking on the unused part of a glyph. | Andreas Kling | |
2019-03-06 | Add a bold variant of Katica and make that the system's default bold font. | Andreas Kling | |
..and do some minor tweaks to the font rendering code. | |||
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-06 | Kernel: Dump kernel stack trace on assertion failure. | Andreas Kling | |
2019-03-06 | Implement basic support for variable-width fonts. | Andreas Kling | |
Also add a nice new font called Katica. It's not used anywhere yet but I'm definitely itching to start using it. :^) | |||
2019-03-06 | Make a preparation pass for variable-width fonts. | Andreas Kling | |
2019-03-06 | WindowServer: Let the window switcher render itself as a WSWindow. | Andreas Kling | |
Much better than drawing directly into the back buffer. | |||
2019-03-05 | WindowServer: Store the mouse button state in one variable. | Andreas Kling | |
This makes the logic around it a lot less verbose. | |||
2019-03-05 | Kernel+WindowServer: Move mouse input signal parsing to kernel driver. | Andreas Kling | |
It was silly for the WindowServer to have to know anything about the format of PS/2 mouse packets. This patch also enables use of the middle mouse button. | |||
2019-03-05 | Kernel: Remove "requested wakeups" feature. | Andreas Kling | |
I only needed this to support the WindowServer living inside the kernel. Now that it's been migrated to userspace, this can go. :^) | |||
2019-03-05 | Kernel: More signal handling improvements. | Andreas Kling | |
Finally fixed the weird flaky crashing when resizing Terminal windows. It was because we were dispatching a signal to "current" from the scheduler. Yet another thing I dislike about even having a "current" process while we're in the scheduler. Not sure yet how to fix this. Let the signal handler's kernel stack be a kmalloc() allocation for now. Once we can do allocation of consecutive physical pages in the supervisor memory region, we can use that for all types of kernel stacks. | |||
2019-03-05 | LibGUI: Let GApplication::exec() call exit() instead of returning to main(). | Andreas Kling | |
This sidesteps the problem of having various things on the heap that don't get torn down. It's obviously not a great solution, but it'll work for now. | |||
2019-03-05 | Kernel: Returning from a signal handler reset the signal mask correctly. | Andreas Kling | |
We were setting the handled signal number as the new signal mask, oops. | |||
2019-03-05 | Kernel: Block a signal from being dispatched again until handler returns. | Andreas Kling | |
We don't handle nesting yet, but this is a step in the right direction. | |||
2019-03-04 | WindowServer: Determine resizing "hot corner" based on window's outer rect. | Andreas Kling | |
2019-03-04 | Kernel: SIGCONT should unblock a blocked process. | Andreas Kling | |
Otherwise we might stay in BlockedSignal state forever. Unblocking just means that the current syscall may fail with EINTR. | |||
2019-03-04 | GTableView: Tweak focus appearance for selected items. | Andreas Kling | |
2019-03-04 | GTableView: Allow initiating keyboard navigation with no current selection. | Andreas Kling | |
2019-03-04 | GTableView: Tweak the look of column headers. | Andreas Kling | |
2019-03-04 | LibGUI: Improve GStatusBar and GToolBar and share some code via GStyle. | Andreas Kling | |
2019-03-04 | GTableView: Make the last column header separator look right. | Andreas Kling | |
2019-03-04 | LibGUI: Unbreak clearing GTableView selection by clicking outside items. | Andreas Kling | |
Also, clicking on the column headers should not clear selection. | |||
2019-03-04 | LibGUI: Tweak focus appearance and add it to GTableView. | Andreas Kling | |
2019-03-03 | WindowServer: Add a window switcher. | Andreas Kling | |
This needs some work on the window ordering and things like that, but it works quite nicely as a starting point. The keyboard shortcut is Logo+Tab. :^) | |||
2019-03-03 | SharedGraphics: Add Rect::center_within(Rect). | Andreas Kling | |
2019-03-03 | Kernel: Detect the Tab key. :^) | Andreas Kling | |
2019-03-03 | WindowManager: Allow moving windows around using Logo+LMB. | Andreas Kling | |
2019-03-03 | Detect the "Logo" (Windows/Apple/whatever) key and use it for window resize. | Andreas Kling | |
This will be comfortable enough while I'm still developing with emulators. QEMU keeps eating my "Alt" key presses and it's making things difficult. | |||
2019-03-03 | Kernel: No need to check is_superuser() after may_execute(). | Andreas Kling | |
Since may_execute() incorporates a superuser check. :^) | |||
2019-03-03 | LibGUI: Move shortcut actions from GEventLoop to GApplications. | Andreas Kling | |
I'm gonna want to have nested event loops sooner or later, so let's not pollute GEventLoop with things that are meant to work globally. This patch also changes key events to pass around their modifiers as a bitfield all the way around the system instead of breaking them up. | |||
2019-03-03 | Kernel: Try to do the right thing by default for unhandled signals. | Andreas Kling | |
2019-03-03 | Applications: Map Alt+F4 to Quit in FileManager/ProcessManager/Terminal. | Andreas Kling | |
2019-03-03 | FileManager: Canonicalize paths when opening them. | Andreas Kling | |
2019-03-03 | FileManager+LibGUI: Add a simple location textbox. | Andreas Kling | |
The widget layout here is a bit off and needs work. | |||
2019-03-02 | LibGUI: Support GTableView navigation with Page Up and Page Down. | Andreas Kling | |
Also base the vertical scrollbar's gutter range on the visible content rect, making it very similar to a Page Up/Down. Maybe they should be exactly the same, I don't know. | |||
2019-03-02 | Kernel: Keyboard should detect the Page Up and Page Down keys. | Andreas Kling | |
2019-03-02 | LibGUI+WindowServer: Add app-global keyboard shortcuts. | Andreas Kling | |
This patch adds a GShortcut class. Each GAction can have a GShortcut which will cause the event loop to listen for that key combination app-globally and activate the event in case it's pressed. The shortcut will also be displayed when the action is added to a menu. Use this to hook up Alt+Up with the "open parent directory" action in the FileManager app. :^) | |||
2019-03-02 | FileManager: Make the "open parent directory" action actually open ".." | Andreas Kling | |
2019-03-02 | FileManager: Add "up to parent directory" action to toolbar. | Andreas Kling | |
It's not actually hooked up to anything yet, I just wanted to add something more to the toolbar. :^) | |||
2019-03-02 | FileManager: Show user/group names instead of UID/GID if available. | Andreas Kling | |
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. |