Andreas Kling
c3bb84239e
TextEditor: Show the open filename in the window title.
2019-03-07 01:08:07 +01:00
Andreas Kling
ca65ca2f2d
TextEditor: Show the current cursor position in the statusbar.
2019-03-07 00:46:29 +01:00
Andreas Kling
9158de6c41
Begin working on a graphical TextEditor.
...
It's gonna be a wrapper around a new GTextEditor widget so I can easily
reuse the functionality anywhere I need it. :^)
2019-03-07 00:31:06 +01:00
Andreas Kling
3729f7cc6a
About: Use Katica Bold for displaying the system name. :^)
2019-03-06 22:39:49 +01:00
Andreas Kling
7df1121e1c
LibGUI: GTableModel::data() should take a GModelIndex instead of int,int.
2019-03-06 19:56:47 +01:00
Andreas Kling
b46c7da0a4
FontEditor: Don't crash when clicking on the unused part of a glyph.
2019-03-06 19:04:30 +01:00
Andreas Kling
66a5ddd94a
More work on the variable-width font support.
...
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 14:06:40 +01:00
Andreas Kling
7f6c81d90f
Implement basic support for variable-width fonts.
...
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 12:52:41 +01:00
Andreas Kling
0a86366c71
Make a preparation pass for variable-width fonts.
2019-03-06 11:03:10 +01:00
Andreas Kling
b0c673265a
Applications: Map Alt+F4 to Quit in FileManager/ProcessManager/Terminal.
2019-03-03 02:52:22 +01:00
Andreas Kling
7c06431ff7
FileManager: Canonicalize paths when opening them.
2019-03-03 00:40:50 +01:00
Andreas Kling
d94abc4f81
FileManager+LibGUI: Add a simple location textbox.
...
The widget layout here is a bit off and needs work.
2019-03-03 00:34:40 +01:00
Andreas Kling
596a5ce5a4
LibGUI+WindowServer: Add app-global keyboard shortcuts.
...
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 10:10:06 +01:00
Andreas Kling
5c0fca0a95
FileManager: Make the "open parent directory" action actually open ".."
2019-03-02 09:16:57 +01:00
Andreas Kling
e11c7a5df5
FileManager: Add "up to parent directory" action to toolbar.
...
It's not actually hooked up to anything yet, I just wanted to add
something more to the toolbar. :^)
2019-03-02 02:20:11 +01:00
Andreas Kling
0c8242dd71
FileManager: Show user/group names instead of UID/GID if available.
2019-03-02 02:05:49 +01:00
Andreas Kling
274b0260f7
Kernel: Don't send SIGCHLD to parent process if he has SA_NOCLDWAIT set.
...
Just transfer ownership of the dead process to the colonel and let the
scheduler reap it on next iteration.
2019-03-01 15:52:05 +01:00
Andreas Kling
5f4245789d
FileManager: Allow launching processes by activating an executable file.
2019-03-01 14:57:42 +01:00
Andreas Kling
1ab995bfff
FileManager: Keep the window title in sync with the current path.
2019-03-01 14:34:53 +01:00
Andreas Kling
ac8fb5da4c
FileManager: Port to GTableModel/GTableView.
...
Replace the custom DirectoryView widget with a GTableView subclass.
This was pleasantly straightforward and it's so cool seeing the huge
increase in app quality from GTableView. :^)
2019-03-01 13:55:48 +01:00
Andreas Kling
e1d0a3f226
LibGUI: Let GTableModel handle the selection instead of doing it virtually.
...
It's silly to force every subclass models to deal with selection.
2019-03-01 13:03:13 +01:00
Andreas Kling
bff5b71467
LibGUI: Add a GModelNotification class that views will receive.
...
I don't want to use GEvent here since these need to be synchronous
and mixing sync and async GEvents would be stupid.
2019-02-28 21:30:17 +01:00
Andreas Kling
322f49caec
ProcessManager: Use icons for the process priorities.
2019-02-28 21:04:26 +01:00
Andreas Kling
b132150799
LibGUI: Support bitmaps in GTableView cells.
...
Use this to add an icon for each process in the ProcessManager.
Right now they all use a generic gear icon, but I'd like to have
per-process icons, obviously. :^)
2019-02-28 20:16:10 +01:00
Andreas Kling
8eefdbdce8
LibGUI: Add horizontal scrollbar to GTableView.
...
Now we can scroll content in both directions if it won't fit in the view.
2019-02-28 17:58:53 +01:00
Andreas Kling
2f266ef649
ProcessManager: Don't show the colonel task. :^)
2019-02-28 16:49:02 +01:00
Andreas Kling
75fabef57b
LibGUI: Add GVariant class and use it for table model data.
2019-02-28 16:20:29 +01:00
Andreas Kling
c1f5f2694b
ProcessManager: Add process owner's username to table view.
2019-02-28 14:12:53 +01:00
Andreas Kling
62b4f39cd4
LibGUI: GTableView should clear the selection if clicking outside items.
2019-02-28 14:05:02 +01:00
Andreas Kling
82c22a7484
ProcessManager: Add "continue" action that sends SIGCONT.
2019-02-28 13:02:55 +01:00
Andreas Kling
c5a32d139a
ProcessManager: Add a "stop" action that sends SIGSTOP to a process.
2019-02-28 12:06:19 +01:00
Andreas Kling
8a0d77f576
ProcessManager: Bump the initial window size to "pretty big"
2019-02-28 11:32:50 +01:00
Andreas Kling
b4c20789fb
LibGUI: Allow specifying per-column text alignment.
2019-02-28 11:27:04 +01:00
Andreas Kling
ce7019f38c
ProcessManager: Add some more per-process columns.
2019-02-28 11:16:27 +01:00
Andreas Kling
dc9f8a9361
LibGUI: Take ProcessManager's process view and turn it into GTableView.
...
Make it sufficiently generic that it can be reused for any table data. :^)
2019-02-28 10:57:09 +01:00
Andreas Kling
b3ae1163ef
ProcessManager: Use a scrollbar-adjusted position for hit testing.
2019-02-28 10:27:29 +01:00
Andreas Kling
c49ceb5a1f
ProcessManager: Make the process table view scrollable while header stays.
2019-02-28 10:24:04 +01:00
Andreas Kling
6e571b66f1
ProcessManager: Move ProcessTableModel class to its own files.
2019-02-28 10:20:04 +01:00
Andreas Kling
a202ed88f6
ProcessManager: Show per-process CPU usage percentage.
2019-02-28 10:09:43 +01:00
Andreas Kling
166aadc4e1
ProcessManager: Start working on a graphical process manager.
...
I need a table view widget for this thing, so I'm also using this to
prototype a model/view thingy.
2019-02-28 01:43:50 +01:00
Andreas Kling
e421c10735
More compat work towards porting vim.
...
It now builds and runs in the small-featureset configuration. :^)
2019-02-27 00:02:01 +01:00
Andreas Kling
424368034b
LibC: Make errno codes be #defines instead of enum values.
...
It turns out that a lot of 3rd party software does things like:
#ifdef EINTR
...
#endif
This won't work if EINTR is an enum. So much for that nice idea.
2019-02-26 22:40:35 +01:00
Andreas Kling
3f29a12d90
More compat work. Rename libraries from LibFoo.a => libfoo.a
...
This makes it more straightforward to build a cross-compiler toolchain.
Also move math stuff from LibC to LibM.
2019-02-26 13:30:57 +01:00
Andreas Kling
51a3f20445
FileManager: Don't crash when clicking on a forbidden directory.
2019-02-26 00:59:37 +01:00
Andreas Kling
9624b54703
More moving towards using signed types.
...
I'm still feeling this out, but I am starting to like the general idea.
2019-02-25 22:06:55 +01:00
Andreas Kling
d7753c7c8d
Move over to building all of userspace with i686-pc-serenity-g++.
2019-02-22 14:45:14 +01:00
Andreas Kling
75b100673f
Switch over to building everything with i686-elf-g++.
2019-02-22 10:45:32 +01:00
Andreas Kling
afa6f88039
Throw away the Clock app since we now have a clock in the menubar. :^)
2019-02-22 10:42:29 +01:00
Andreas Kling
16cd4585cd
WindowServer: Oops, forgot to plumb through the base size for incresize.
2019-02-21 10:11:12 +01:00
Andreas Kling
6084cd0c56
Add concept of size increments to windowing system.
...
Use this to implement incremental resizing for Terminal so that we only
ever resize to fit a perfect number of rows and columns.
This is very nice. :^)
2019-02-21 00:21:23 +01:00