Andreas Kling
47b096feb4
Kernel: More work on bringing up E1000 support.
2019-03-11 11:11:29 +01:00
Andreas Kling
a36eaeb18c
Kernel: Remove accidentally committed debugging code.
2019-03-11 01:57:34 +01:00
Andreas Kling
1678ac69ef
Kernel: More work on Ethernet support.
2019-03-10 23:40:09 +01:00
Andreas Kling
97664fad60
Kernel: A bunch of hacking towards initial Ethernet support.
2019-03-10 20:59:23 +01:00
Andreas Kling
4641ee49b5
Kernel: Add a simple MACAddress class.
2019-03-10 19:15:22 +01:00
Andreas Kling
405413c354
Kernel: Start adding support for E1000 network adapters.
2019-03-10 15:25:33 +01:00
Andreas Kling
0c806bfa25
WindowServer: Include switcher windows in the window iteration.
2019-03-10 13:30:43 +01:00
Andreas Kling
5d69bf06d2
LibGUI: Don't fill widgets with background color by defualt.
2019-03-10 13:16:36 +01:00
Andreas Kling
6836e21d1c
ProcessManager: Tidy up the memory stats and align everything nicely.
2019-03-10 12:34:44 +01:00
Andreas Kling
37388b311f
ProcessManager: Show some basic system memory stats below the process table.
...
This really improves the feeling of "system overview" :^)
2019-03-10 12:13:22 +01:00
Andreas Kling
8017c1e17c
GTextEditor: Let the Tab key insert up to 4 spaces.
2019-03-10 11:08:36 +01:00
Andreas Kling
64237c5028
WindowServer: Show the username of the WindowServer owner in the menu.
2019-03-10 03:16:27 +01:00
Andreas Kling
8175d75432
LibC: Implement getlogin().
2019-03-10 03:15:36 +01:00
Andreas Kling
a149ad9b44
WindowServer: Window iteration should see the highlight window "in front".
2019-03-10 02:33:43 +01:00
Andreas Kling
420ef4da8a
WindowServer: Clear any highlighted window when dismissing the switcher.
2019-03-10 02:19:55 +01:00
Andreas Kling
48e4b3e751
LibGUI: Preserve selection when resorting a GSortingProxyTableModel.
2019-03-10 02:13:59 +01:00
Andreas Kling
0b32ab12f1
ProcessManager: Make the toolbar actions work again.
...
We can't grab at the ProcessTableModel directly anymore since we have a
sorting proxy model in the middle now.
2019-03-10 02:03:36 +01:00
Andreas Kling
2336d43abc
WindowServer: Tweak CPU usage history color.
2019-03-10 01:22:36 +01:00
Andreas Kling
94df0c1ba6
WindowServer: Fix bug where window content could bleed through menus.
...
We have to iterate using for_each_visible_window_from_back_to_front()
if we want every window in the correct order.
2019-03-10 01:08:21 +01:00
Andreas Kling
ed61fdbc32
Base: Improved FileManager (folder) icon.
2019-03-10 00:58:47 +01:00
Andreas Kling
6c70629a49
LibGUI: Make buttons a little bit sharper.
2019-03-10 00:58:27 +01:00
Andreas Kling
702adb13c1
TextEditor: Remove the selection from the status bar.
2019-03-09 22:04:54 +01:00
Andreas Kling
b4a099d212
GTextEditor: Allow jumping lines by hitting Left/Right at start/end of line.
2019-03-09 22:02:35 +01:00
Andreas Kling
76094128e7
LibGUI: Fix small painting glitch in GScrollBar buttons.
2019-03-09 21:51:36 +01:00
Andreas Kling
272a41d02d
WindowServer: Skip composing windows where entire dirty rect is covered.
...
If another window is currently in front of us and is fully opaque,
we can just skip to the next window. This avoids a whole lot of painting
with overlapping windows. :^)
2019-03-09 21:38:28 +01:00
Andreas Kling
963e95cb1a
GTableView: Minor painting cleanup.
2019-03-09 21:38:13 +01:00
Andreas Kling
0a7137617d
GTextEditor: Simplify painting of the ruler.
2019-03-09 21:30:16 +01:00
Andreas Kling
ffe4522316
SharedGraphics: Allow passing a Font to text drawing functions.
...
This way we don't have to juggle around with calls to Painter::set_font()
which simplifies a bunch of places.
2019-03-09 21:24:12 +01:00
Andreas Kling
b8f999cbef
About+LibGUI: Use a GBoxLayout for the About app.
2019-03-09 21:09:29 +01:00
Andreas Kling
eac3a6ad52
GEventLoop: Make the server fd/pid global, and only connect to server once.
2019-03-09 17:34:09 +01:00
Andreas Kling
b1c272a507
WindowServer: Initiating a window drag/resize should also make frontmost.
2019-03-09 17:10:53 +01:00
Andreas Kling
684c52941d
WindowServer: Always clip window updates to the window's outer rect.
2019-03-09 17:03:08 +01:00
Andreas Kling
e009be5973
LibGUI: Use PainterStateSaver in GStyle::paint_button().
2019-03-09 16:56:26 +01:00
Andreas Kling
88f6ce152f
SharedGraphics: Add PainterStateSaver RAII helper and Point::operator-().
...
Two little things to help tidy up a bit in WSWindowManager.
2019-03-09 16:54:41 +01:00
Andreas Kling
3c2139b824
GTextEditor: Use Painter save/restore to simplify.
2019-03-09 16:48:43 +01:00
Andreas Kling
f7097d21f6
SharedGraphics: Give painter a state stack and save()/restore() operations.
...
This will make some painting code a lot less confusing since there's no
need to manually undo translations, clips, etc.
2019-03-09 16:48:02 +01:00
Andreas Kling
971dd46aec
Userland: Use AK::quick_sort() in /bin/top
2019-03-09 16:20:46 +01:00
Andreas Kling
0d5e6593b2
AK: Add a basic QuickSort template implementation.
...
It was depressing not being able to capture anything when passing a lambda
to qsort_r() so let's just have our own QuickSort. I was gonna have to do
this eventually anyway. :^)
2019-03-09 16:20:12 +01:00
Andreas Kling
e14dd06b8c
FileManager: Hook up a GSortingProxyTableModel so we get sorted files. :^)
...
The next step here is coming up with a nice way to always put directories
ahead of files.
2019-03-09 14:52:25 +01:00
Andreas Kling
7d2c962836
LibGUI: Minor tidying.
2019-03-09 14:39:24 +01:00
Andreas Kling
46caa2663b
LibGUI: Use a separate data role for the table model sorting order.
...
This allows data to be displayed nicely while sorting happens based on some
underlying raw data. :^)
2019-03-09 14:24:34 +01:00
Andreas Kling
3681a402ba
GTableView: Allow changing sort options by clicking column headers.
...
Also paint the sorted column slightly differently to indicate what's up.
2019-03-09 13:59:01 +01:00
Andreas Kling
7d1142c7d9
Make it possible to sort a GTableModel by column+order.
...
This is accomplished by putting a GSortingProxyTableModel between the model
and the view. It's pretty simplistic but it works for this use case. :^)
2019-03-09 13:33:52 +01:00
Andreas Kling
0680fe2383
ProcessManager: Show the colonel process.
2019-03-09 11:29:32 +01:00
Andreas Kling
2bde251163
Base: Add 16x16 icon for TextEditor.
2019-03-08 19:56:12 +01:00
Andreas Kling
48470cdf44
Launcher: Add a launcher button for TextEditor.
2019-03-08 19:53:11 +01:00
Andreas Kling
5a28392660
GTextEditor: Use a subwidget for the scrollbar corner and tighten clipping.
2019-03-08 18:58:40 +01:00
Andreas Kling
ccda716028
GTextEditor: Backspace and Delete should work regardless of modifier state.
2019-03-08 18:50:14 +01:00
Andreas Kling
032549d7bf
GTextEditor: Refactor selection into a GTextRange class.
...
This is a bit more expressive than "selection start + current cursor".
2019-03-08 18:28:24 +01:00
Andreas Kling
f40d11f06d
LibGUI+WindowServer: Implement drag-to-select behavior in GTextEditor.
...
To make this feel right, I needed to start passing keyboard modifiers along
with mouse events. That allows shift-clicking to extend the selection. :^)
2019-03-08 17:53:02 +01:00