Andreas Kling
b77f9a5042
VisualBuilder: Pressing the Tab key when there are no widgets is a no-op.
2019-04-16 23:19:19 +02:00
Andreas Kling
428cae7864
VisualBuilder: Pressing the Tab key when there are no widgets is a no-op.
2019-04-16 23:17:14 +02:00
Andreas Kling
ef8c613737
VisualBuilder: Share code for setting the selected widget.
...
This fixes an issue where the properties window didn't update when selecting
a new widget using the keyboard shortcuts. :^)
2019-04-16 23:11:35 +02:00
Andreas Kling
f7157520eb
VisualBuilder: Add some keyboard navigation support.
...
Allow selecting widgets using the Tab key, and moving them around
using the arrow keys. :^)
2019-04-16 23:01:37 +02:00
Andreas Kling
ac324f14b8
GWidget: Add move_by() and make set_relative_rect() invalidate parent.
2019-04-16 22:59:27 +02:00
Andreas Kling
486ed41fd2
WindowServer: Tweak window icon placement.
2019-04-16 22:37:46 +02:00
Andreas Kling
8251f97858
Terminal: Add a window icon.
2019-04-16 17:55:39 +02:00
Andreas Kling
29abfc8623
ProcessManager: Add a window icon.
2019-04-16 17:55:27 +02:00
Andreas Kling
86361d3d45
WindowServer: Improve the look of menus.
...
This patch makes menus stand out a bit more from their background by using
the same kind of shading that Windows 2000 had.
2019-04-16 17:02:26 +02:00
Andreas Kling
311019d8ee
WindowServer: Don't waste time pre-filling windows with background color.
...
There's a subsequent pass that fills whatever the backing store didn't
cover anyway, just a few lines later. This was all wasted work.
2019-04-16 15:10:57 +02:00
Andreas Kling
f61549ca5f
Make better use of geometry class helpers in some places.
2019-04-16 13:58:02 +02:00
Andreas Kling
952f334de7
GWidget: Tidy up the hit-testing code somewhat.
2019-04-16 13:25:00 +02:00
Andreas Kling
c812d63ea6
GWidget: Remove unnecessary extra parent lookup in move_to_{back,front}().
2019-04-16 04:01:14 +02:00
Andreas Kling
52e846df87
VisualBuilder: Make it possible to move widgets to front/back.
2019-04-16 03:52:26 +02:00
Andreas Kling
04500c1ae2
GWidget: Add some new child z-ordering facilities.
...
- child_at(Point)
- move_to_front()
- move_to_back()
- is_frontmost()
- is_backmost()
This patch also makes it possible to receive the mouse event that triggers
a context menu before the context menu is shown. I'm not sure this is the
best design for context menus but it works for now.
2019-04-16 03:47:55 +02:00
Andreas Kling
d31b47b371
AK: Add Vector::prepend().
2019-04-16 03:47:24 +02:00
Andreas Kling
73c70e5d2e
GTableView: Remove the old-style focus rect.
2019-04-16 03:04:14 +02:00
Andreas Kling
33920df299
AK: Try to use StringViews more for substrings and splitting.
2019-04-16 02:39:16 +02:00
Andreas Kling
a082738f04
SharedGraphics: Move PainterStateSaver out of line.
2019-04-16 01:01:03 +02:00
Andreas Kling
b5759089d8
LibCore: Add CIODevice::seek().
2019-04-16 00:51:05 +02:00
Andreas Kling
1debc0a78c
Kernel: Reduce kmallocing in all_processes() and all_pids().
2019-04-16 00:37:35 +02:00
Andreas Kling
2533e0b57b
Kernel: Reduce kmallocing in /proc/all and /proc/memstat.
2019-04-16 00:36:17 +02:00
Andreas Kling
88f03f86ff
Kernel: Have TTY subclasses cache their tty_name/pts_name.
2019-04-16 00:35:02 +02:00
Andreas Kling
d384c7815f
Kernel: Make it possible to have kmalloc() dump call stacks.
...
This can be enabled at any time using a sysctl:
sysctl kmalloc_stacks=1
The stacks will go to the debugger output only.
2019-04-15 23:58:48 +02:00
Andreas Kling
bc6ac1c2f2
WindowServer: Let the CPU monitor keep /proc/all open between refreshes.
...
Just seek to the beginning on every iteration and start over. This avoids
a bunch of syscalls.
2019-04-15 23:57:31 +02:00
Andreas Kling
30b0e5f82e
AK: Make StringBuilder::appendf() pre-allocate the format string length.
2019-04-15 23:56:35 +02:00
Andreas Kling
fa89446cb6
Kernel: Make symbolication callable from kmalloc().
...
It wasn't possible to symbolicate from kmalloc(), since symbolication would
call kmalloc(). :^)
2019-04-15 23:50:25 +02:00
Andreas Kling
ae0dc22716
Kernel: Make validate_read_from_kernel() return early for nullptr checks.
...
Null pointers are always invalid, so don't bother going through all the
various checks for them.
2019-04-15 23:48:31 +02:00
Andreas Kling
9eab8734fe
PNGLoader: Disable debug spam.
2019-04-15 23:47:42 +02:00
Andreas Kling
e9c0f4567d
Kernel+ProcessManager: Expose the number of kmalloc/kfree calls.
...
This will be very helpful in tracking down unwanted kmalloc traffic. :^)
2019-04-15 19:43:12 +02:00
Andreas Kling
13041f894f
Kernel: Start using StringView in the VFS class.
...
The less kmalloc() we can do, the better. Calling kmalloc() disables all
interrupts while it runs, so it's directly affecting responsiveness.
2019-04-15 14:57:27 +02:00
Andreas Kling
461aa550eb
AK: Add a StringView class.
2019-04-15 14:56:37 +02:00
Andreas Kling
7972303405
Meta: Oops, screwed up one of the links.
2019-04-15 14:17:44 +02:00
Andreas Kling
d4211ede31
Meta: Update ReadMe with license and links.
2019-04-15 14:16:45 +02:00
Andreas Kling
ddcaf02a57
Let's go with a 2-clause BSD license.
2019-04-15 14:04:23 +02:00
Andreas Kling
87c4d2bc92
Userland: Add a /bin/basename program.
2019-04-15 13:57:09 +02:00
Andreas Kling
024057b39a
Userland: Make sync.sh copy all executables from ../Userland
2019-04-15 13:53:27 +02:00
Andreas Kling
c8e601a5d5
Minesweeper: Add little icons to the flags and timer labels.
2019-04-15 03:12:28 +02:00
Andreas Kling
791e8f5bb0
Minesweeper: Paint a grid pattern below the mines.
2019-04-15 02:45:04 +02:00
Andreas Kling
bc5148354f
LibCore: Add a CConfigFile class, a simple INI file parser.
...
You open the configuration for an app like so:
auto config = CConfigFile::get_for_app("MyApp");
This will then open ~/MyApp.ini and parse it for you.
Immediately start using it in Minesweeper to load the field size and mine
count from a config file.
2019-04-15 02:23:20 +02:00
Nicolas Van Bossuyt
37c27e2e39
Userspace: gitignore binaries
2019-04-15 00:35:37 +02:00
Andreas Kling
1503834c3b
Minesweeper: Add flag counter and game timer.
2019-04-14 21:01:52 +02:00
Andreas Kling
adc91d92a3
Userland: Oops, that merge broke the build, just needed a few tweaks. :^)
2019-04-14 20:32:44 +02:00
Andreas Kling
16ef7517c4
Merge pull request #6 from NicolasVanBossuyt/patch-1
...
Userland: Making the makefile smarter.
2019-04-14 20:16:07 +02:00
Nicolas Van Bossuyt
40e710da3d
Userland: Maybe find is overkill
2019-04-14 20:15:29 +02:00
Nicolas Van Bossuyt
dfeeaff237
Userland: making the makefile smarter
2019-04-14 19:58:25 +02:00
Andreas Kling
1e0e5b492b
Merge pull request #5 from NicolasVanBossuyt/patch-1
...
Uptime: making the ouput prettier
2019-04-14 19:28:43 +02:00
VAN BOSSUYT Nicolas
12f2d1f2e8
Uptime: making the ouput prettier
...
Just like the -p option on linux
2019-04-14 19:10:24 +02:00
Andreas Kling
c0fe48635b
Kernel: Add /proc/uptime file (number of seconds since boot.)
...
Also added a simple /bin/uptime to pretty-print this information. :^)
2019-04-14 15:19:45 +02:00
Andreas Kling
0e30f4e412
Minesweeper: Flood fill should include the first numbered found.
2019-04-14 05:53:13 +02:00