Commit graph

3044 commits

Author SHA1 Message Date
Andreas Kling
83df654904 Meta: Add note about rebuilding after pulling new changes.
Fixes #260.
2019-07-01 14:33:31 +02:00
Andreas Kling
24c0aae34e Build: Remove Userland/qs if we see one lying around.
Userland/qs was moved to Applications/QuickShow, but some people still have
old built binaries lying around in their Userland/ directories and the build
system complains about this. Here goes a silly temporary hack to just get
rid of them.
2019-07-01 14:33:30 +02:00
Andreas Kling
2daf89e2f7 Ports: Fix SDL2 port trying to build against PulseAudio for some reason.
I didn't look into why, but for some reason the SDL2 cmake build system
thinks it should build against PulseAudio which we definitely don't have.
So just tell it explicitly not to do that.

Fixes #265.
2019-07-01 14:08:15 +02:00
Jookia
eb4c42bfa8 Minesweeper: Move configuration reading to Field
This makes more sense as it's where configuration writing happens.
2019-07-01 09:51:03 +02:00
Jookia
9dbf453015 Minesweeper: Allow single-click chording
This is how other Minesweeper games I've played usually behave.
Single-click chording can be disabled from the menu or config file.
2019-07-01 09:51:03 +02:00
Jookia
d2b6f79835 CConfigFile: Implement write_bool_entry 2019-07-01 09:51:03 +02:00
Rhin
070a2f8980 LibGUI: GScrollbar compression when very small (#255)
Fixes #124.
2019-07-01 09:46:36 +02:00
Andreas Kling
9ca453d8c9 LibHTML: LayoutDocument should call LayoutBlock parent constructor. 2019-07-01 08:01:30 +02:00
Andreas Kling
7a9d5e2a69 LibHTML: Let's not support CSS shorthand properties right away.
This will simplify style building right now, and we can come back later
and implement shorthand expansion.
2019-07-01 07:33:21 +02:00
Andreas Kling
22fec1a250 LibHTML: Start fleshing out block layout.
The basic idea of block layout is: width, then children based on width,
then height based on height of children.
2019-07-01 07:31:04 +02:00
Andreas Kling
f1a0e8b8e6 LibHTML: The document node should have a LayoutDocument representative.
This will be a special LayoutBlock that provides the ICB dimensions based
on the containing frame.
2019-07-01 07:27:17 +02:00
Andreas Kling
0bfa864021 LibC: Fix -Werror build in new strtol(). 2019-07-01 06:37:36 +02:00
Christopher Dumas
df34de369b LibC: New implementation of strtol (NIH) (#263)
Fixes #189.
2019-07-01 06:07:10 +02:00
Andreas Kling
c70fbca23a QuickShow: Make the window background black for a nicer contrast. 2019-06-30 17:22:12 +02:00
Andreas Kling
575acfac98 WindowServer: Add a separator before "close" in window menus. 2019-06-30 15:59:11 +02:00
Andreas Kling
1fa467a424 Launcher: Tighten up the widget layout a bit. 2019-06-30 15:58:53 +02:00
Andreas Kling
daf44d5ec5 Terminal: Unbreak single-line text selection. 2019-06-30 15:11:56 +02:00
Andreas Kling
f6498bb0e9 Kernel: Make more crash info show up in dmesg.
kprintf() shows up in dmesg, dbgprintf() does not.
2019-06-30 15:02:23 +02:00
Andreas Kling
038f99eeff QuickShow: When zooming with the mouse wheel, keep image centered at cursor. 2019-06-30 15:01:35 +02:00
Andreas Kling
e7ce4514ec Kernel: Disable interrupts in Thread::set_state().
We don't want to get interrupted while we're manipulating the thread lists.
2019-06-30 11:42:27 +02:00
VAN BOSSUYT Nicolas
802d4dcb6b Meta: Removed all gitignore in the source tree only keeping the root one 2019-06-30 10:41:26 +02:00
Andreas Kling
29bd0d9f90 Meta: Tweak ReadMe. 2019-06-30 10:11:13 +02:00
Andreas Kling
0a44837738 PaintBrush: Make a little icon for the eraser tool. 2019-06-30 09:40:15 +02:00
Andreas Kling
77dc11f481 ProcessManager: Add app icon. 2019-06-30 09:31:47 +02:00
Andreas Kling
0299cf5b02 PaintBrush: Make app icon transparent. 2019-06-30 09:26:00 +02:00
Andreas Kling
315716d193 GUI: Use Win2K-like "warm gray" color instead of the older colder gray.
Someone suggested this a long time ago and I never got around to it.
So here we go, here's the warm gray! I have to admit I like it better. :^)
2019-06-30 09:23:16 +02:00
Andreas Kling
73d0e7cd8f Userland: Add a simple JSON pretty-printing utility called /bin/jp 2019-06-30 09:11:04 +02:00
Andreas Kling
9962cb7291 ProcessManager: Add process-specific context menus to the main table view. 2019-06-30 08:15:55 +02:00
Andreas Kling
b8ef5b5804 GTableView: Support per-index context menus.
This patch adds an on_context_menu_request hook to GAbstractView which is
currently only invoked by GTableView. We also pass along the entire context
menu event, so that anyone using the hook can use it for menu placement etc.
2019-06-30 08:15:55 +02:00
Rhin
ce0b615bef Userland: Fixed "id" usage error typo (#254) 2019-06-30 07:36:14 +02:00
Andreas Kling
806b91b444 PaintBrush: Add a simple app icon.
I ended up drawing four crayons for the app icon. This is not a great fit
for the app name. But uh, we'll figure this out somehow. :^)
2019-06-29 22:32:34 +02:00
Rhin
1d39310d01 Userland: Added flags to id command (#253)
Fixes #158.
2019-06-29 21:47:38 +02:00
Andreas Kling
7eef69ad4b LibHTML: Refactor to go from DOM -> styled tree -> layout tree.
Frame::layout() drives everything now, it takes the DOM contained in the
frame and puts it through the tree transformations.
2019-06-29 21:42:07 +02:00
Andreas Kling
6e95b11395 AK: Allow HashMap to be used with non-default-constructible values.
Solve this by adding find() overloads to HashTable and SinglyLinkedList
that take a templated functor for comparing the values.

This allows HashMap to call HashTable::find() without having to create
a temporary Entry for use as the table key. :^)
2019-06-29 21:09:40 +02:00
Andreas Kling
d5bb98acbc AK: Defer to Traits<T> for equality comparison in container templates.
This is prep work for supporting HashMap with NonnullRefPtr<T> as values.
It's currently not possible because many HashTable functions require being
able to default-construct the value type.
2019-06-29 19:14:03 +02:00
Andreas Kling
9a7dc06567 LibHTML: Add Selector::specificity(), which returns a Specificity object. 2019-06-29 17:32:32 +02:00
Andreas Kling
b729b5fc64 VisualBuilder: Support loading a saved form from JSON.
The form to load is specified on the command line, e.g "vb test.frm".
2019-06-29 12:07:46 +02:00
Andreas Kling
57a589a6e7 LibGUI: Make it easy to construct a GVariant from a JsonValue. 2019-06-29 12:07:46 +02:00
Andreas Kling
2735ff4687 ProcFS: Remove unused StringBuilder in procfs$all(). 2019-06-29 12:07:46 +02:00
Andreas Kling
293946c960 JsonValue: Add is_bool() and various as_foo() helpers. 2019-06-29 12:07:46 +02:00
Andreas Kling
7f224ade60 JsonValue: No need to null-check StringImpls if type is Type::String.
If you try to create a JsonValue from a null String(), it will become a
null JsonValue anyway.
2019-06-29 12:07:46 +02:00
Andreas Kling
50677a58d4 StringView: Make it easy to construct from a ByteBuffer. 2019-06-29 12:07:46 +02:00
Andreas Kling
53479f9356 HashTable: Don't use move assignment in set(const T&). 2019-06-29 12:07:46 +02:00
Andreas Kling
b1d113e32a AK: Make a tiny JSON unit test based on a saved VisualBuilder form. 2019-06-29 12:07:42 +02:00
Andreas Kling
c9826bb429 LibCore: Port CProcessStatisticsReader to the JSON formatted /proc/all. 2019-06-29 10:12:40 +02:00
Andreas Kling
14b51253c0 WindowServer: Allow changing window opacity with Logo+MouseWheel.
This is just a silly little feature that I thought was a bit neat. :^)
2019-06-29 09:27:55 +02:00
Andreas Kling
2bd8118843 Kernel: Change the format of /proc/all to JSON.
Update ProcessManager, top and WSCPUMonitor to handle the new format.

Since the kernel is not allowed to use floating-point math, we now compile
the JSON classes in AK without JsonValue::Type::Double support.
To accomodate large unsigned ints, I added a JsonValue::Type::UnsignedInt.
2019-06-29 09:04:45 +02:00
Andreas Kling
561bfd3ed6 Terminal: Make it so typing resets the cursor blink timer.
Patch contributed by "pd"
2019-06-28 21:46:23 +02:00
Andreas Kling
96ca8bea6c Terminal: Don't write erroneous characters to PTY when modifiers pressed.
Additionally the Alt modifier now generates the correct characters, as do
Insert/Delete/PgUp/PgDown.

Patch contributed by "pd"
2019-06-28 21:46:05 +02:00
Andreas Kling
274b41e47c Terminal: Changex internal opacity representation to byte instead of float.
This lets us avoid some math during paint events.
Patch contributed by "pd"
2019-06-28 21:42:15 +02:00