Andreas Kling
203f8e5320
AK: Add IPv4Address(NetworkOrdered<dword>) constructor.
2019-06-18 11:40:39 +02:00
Andreas Kling
d9a48b5916
AK: Move IPv4Address from Kernel/Net/ to AK/ since it's quite useful.
2019-06-18 11:28:48 +02:00
Andreas Kling
9f7c11710f
printf: Treat %g as %f for now.
2019-06-18 09:46:39 +02:00
Andreas Kling
aa3df518e7
AK: Rename JsonObject::to_string() and pals to serialized().
...
And the variant that serializes into a StringBuilder is called serialize().
2019-06-18 09:37:47 +02:00
Andreas Kling
15fa4f1c55
AK: ScopeGuard.h needs StdLibExtras.h
2019-06-18 09:31:14 +02:00
Andreas Kling
4ee39d6292
AK: Override StringImpl's operator delete to silence valgrind.
2019-06-18 09:26:36 +02:00
Andreas Kling
92cda74724
AK: Fix leak in JsonValue::operator=(JsonValue&&).
...
Amusingly I introduced this leak while explaining that this type of leak is
a common bug, and saying I'm used to looking for it. :^)
2019-06-18 09:22:19 +02:00
Andreas Kling
4147394dcb
AK: Add JsonValue(const char*).
...
This should obviously become a string, but if we don't have it, constructing
from a string literal ends up creating a boolean value.
2019-06-18 09:11:31 +02:00
Andreas Kling
1a761ea4fd
AK: Add JsonValue(unsigned) ctor and as_string().
2019-06-18 08:55:58 +02:00
Andreas Kling
114768562a
AK: Including <AK/kstdio.h> should pull in <stdio.h> etc on host builds.
2019-06-18 08:53:26 +02:00
Andreas Kling
28a4963242
AK: Make ASSERT_NOT_REACHED() work nicely in host builds.
2019-06-18 08:52:21 +02:00
Andreas Kling
ee347effac
AK: Use a single StringBuilder throughout JSON serialization.
2019-06-17 21:36:54 +02:00
Andreas Kling
3b9fcab1af
VisualBuilder: Switch to JSON for the form output.
...
This makes widgets-within-widgets straightforward instead of confusing.
The UI doesn't actually let you put widgets inside one another just yet,
but at least now the output format won't be a problem. :^)
2019-06-17 19:50:30 +02:00
Andreas Kling
04a8fc9bd7
AK: Add some classes for JSON encoding.
...
This patch adds JsonValue, JsonObject and JsonArray. You can use them to
build up a JsonObject and then serialize it to a string via to_string().
This patch only implements encoding, no decoding yet.
2019-06-17 19:47:35 +02:00
Sergey Bugaev
7ccb84e58e
PaintBrush: Make spray circular.
2019-06-17 16:11:01 +02:00
Sergey Bugaev
9fa4e779ff
LibM: Rewrite trigonometric functions.
...
This way they seem to actually work as expected ;)
2019-06-17 16:11:01 +02:00
Robin Burchell
502c54e39a
Add a simple spray fill tool
...
Could do with some more tweaking no doubt, and it'd be nice to have a
circular spray, but this is better than nothing.
2019-06-17 05:54:32 +02:00
Andreas Kling
940eb1bbeb
Merge pull request #173 from faissaloo/serenity-keys
...
SerenityKeys
2019-06-16 22:37:33 +02:00
faissaloo
b7d1eee047
LibM: Add trigonometric approximations and misc mathematical functions
2019-06-16 22:14:49 +02:00
faissaloo
54005e6942
GWindow: Get rid of superflous variable
2019-06-16 21:07:55 +01:00
faissaloo
55e115b0cd
LibGUI: clang-format
2019-06-16 21:01:51 +01:00
Andreas Kling
0db2f3cbe6
LibHTML: Add a Frame class, start fleshing out recursive layout.
...
Layout is initiated from Frame::layout(). It makes the document's layout
node as wide as the frame, and then we'll take it from there.
2019-06-16 21:35:03 +02:00
faissaloo
770907f90c
GWindow: Cleanup
2019-06-16 16:55:39 +01:00
Andreas Kling
f49e5c6732
PaintBrush: Reduce debug spam in the color editor dialog.
2019-06-16 16:33:16 +02:00
Andreas Kling
cf17e385b5
PaintBrush: Allow editing palette colors by ctrl-clicking them.
...
Maybe the ColorDialog class could be fashioned into something generally
usable in LibGUI, but for now it lives in the PaintBrush app. :^)
2019-06-16 15:09:36 +02:00
Andreas Kling
017c0f87b4
Color: Add setters for the red, green and blue components.
2019-06-16 15:09:11 +02:00
Andreas Kling
1db169244a
GSpinBox: The initial text should be "0".
2019-06-16 15:08:52 +02:00
Robin Burchell
862682b1bb
SystemServer: Shut down after 5 seconds if testmode=1 is set on the kernel command line
2019-06-16 14:33:59 +02:00
Robin Burchell
0a3abcc0a8
Kernel: Expose kernel command line to userspace through /proc/cmdline
2019-06-16 14:33:59 +02:00
Callum Attryde
267672efee
Userland: Add wc program ( #228 )
...
Fixes #159 .
2019-06-16 14:13:57 +02:00
Andreas Kling
e3d3e431dc
LibHTML: Add a LayoutStyle object (computed style for a LayoutNode.)
2019-06-16 13:44:09 +02:00
Andreas Kling
fec098b5cd
LibHTML: Give LayoutNodes a rect.
...
Also improve the layout tree dump format somewhat.
2019-06-16 12:26:24 +02:00
Robin Burchell
c52d553249
WindowServer: Add a shutdown option to the menu, rather than forcing terminal use
2019-06-16 12:25:30 +02:00
Robin Burchell
952382b413
Kernel/Userland: Add a halt syscall, and a shutdown binary to invoke it
2019-06-16 12:25:30 +02:00
Andreas Kling
9e0f7acfe5
Kernel+Userland: Expose list of network adapters through /proc/netadapters.
...
Added a simple /bin/ifconfig program that just pretty-prints that file. :^)
2019-06-16 07:06:49 +02:00
Andreas Kling
264890bfc3
PaintBrush: Flood filling with the same color is a no-op.
2019-06-16 06:34:29 +02:00
Andreas Kling
1f51c2b7da
LibHTML: Create some subdirectories.
2019-06-15 23:41:15 +02:00
Andreas Kling
0522a8f71c
LibHTML: Collapse all-whitespace LayoutText into a single ' ' char.
2019-06-15 23:18:00 +02:00
faissaloo
b635c3db54
Merge remote-tracking branch 'origin/master' into serenity-keys
2019-06-15 21:55:17 +01:00
faissaloo
50fd9ed383
GWindow: Hide SerenityKeys when window is deselected
2019-06-15 21:53:25 +01:00
Andreas Kling
8a0e21b22b
LibHTML: Start fleshing out a basic layout tree.
2019-06-15 22:49:44 +02:00
Andreas Kling
f8a86b5164
LibHTML: Basic element attribute parsing.
2019-06-15 21:08:36 +02:00
Andreas Kling
581d6b00c8
LibHTML: Start working on a very simplified HTML parser.
2019-06-15 20:21:57 +02:00
Andreas Kling
a67e823838
LibHTML: Start working on a simple HTML library.
...
I'd like to have rich text, and we might as well use HTML for that. :^)
2019-06-15 18:55:47 +02:00
Andreas Kling
01d1aee922
AK: Make RetainPtr and Retained more friendly towards const pointers.
...
Also add operator T&'s to Retained since it's nice to be able to pass them
to a function that takes a T&.
2019-06-15 18:45:44 +02:00
Andreas Kling
694b4a64bd
PaintBrush: Make little icons for the pen and bucket tools.
2019-06-15 17:52:53 +02:00
Andreas Kling
dcbddb4f8c
GraphicsBitmap: Provide templated versions of get_pixel() and set_pixel().
...
If we already know the bitmap format used, we can use these functions to
bypass the format checks and go straight to pixel manipulation.
2019-06-15 11:06:02 +02:00
Andreas Kling
150b3cf378
PaintBrush: Fix some silly logic typos in flood fill.
2019-06-15 10:48:20 +02:00
Andreas Kling
a8b2b96f38
PaintBrush: Use a Queue<Point> for the flood fill.
2019-06-15 10:39:45 +02:00
Andreas Kling
bfaa74f076
AK/Tests: Test Queue<String> with large number of elements.
2019-06-15 10:39:19 +02:00