summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-08-09LibWeb: Add all HTML elements between A and FLuke
2020-08-09LibWeb: Make all existing HTML elements "final"Luke
2020-08-09Lagom: Pass -Wno-deprecated-copy to clang tooNico Weber
Due to Serenity's use of concepts, it now requires clang 10 or newer, and clang 10 or newer both understands and requires -Wno-deprecated-copy.
2020-08-09disasm: For ELF files, disassemble .text sectionNico Weber
Since disasm is built in lagom, this requires adding LibELF to lagom.
2020-08-09LibELF+Lagom: Use FlatPtr instead of u32 in DynamicLoader to get LibELF to ↵Nico Weber
build in Lagom
2020-08-09LibELF+Lagom: Work towards getting LibELF in LagomNico Weber
Mostly -Wformat fixes, some of which pointed out real (if benign) bugs.
2020-08-09Games: Add a 2048 gameAnotherTest
2020-08-09LibCore: fix UDP Server receive to trim buffer to actuall bytes receiveedMuhammad Zahalqa
2020-08-09LibCore: close socket on LocalServer dtorMuhammad Zahalqa
2020-08-09LibCore: close socket on TCPServer dtorMuhammad Zahalqa
2020-08-09LibCore: close socket on UDPServer dtorMuhammad Zahalqa
2020-08-09Shell: Stop a for loop upon receiving two consecutive interruptionsAnotherTest
This does not work perfectly (just like every other shell...), if the running program handles the signal (SIGINT in this case) and quits cleanly, the shell cannot detect the interruption. This is the case with our `sleep(1)`.
2020-08-09WindowServer+LibGfx: Move notification window frame painting to LibGfxAndreas Kling
ClassicWindowTheme can now also paint notification window frames.
2020-08-09WindowServer+LibGfx: Move normal window frame painting to a WindowThemeAndreas Kling
This patch introduces the ClassicWindowTheme, which is our default theme implemented as a Gfx::WindowTheme subclass. In this initial cut, we move normal window frame painting and title bar metrics helpers out of WindowServer and into LibGfx. This will eventually allow us much greater flexibility with theming windows, and also makes it easier to build applications that want to render a window with a specific style for some reason. :^)
2020-08-09LibGfx: Add a basic abstract WindowTheme classAndreas Kling
This class will provide painting and metrics for window themes. :^)
2020-08-09LibWeb: Always add line boxes through LayoutBlock::add_line_box()Andreas Kling
Let's not append directly to the line box vector all over the place.
2020-08-09AK: Add a GenericLexer and extend the JsonParser with it (#2696)Benoît Lormeau
2020-08-09HackStudio: Set the pgrp of the pseudoterminal to the child pidAnotherTest
This fixes #3046.
2020-08-09Kernel: Decorate KResult and KResultOr<T> methods with [[nodiscard]]Brian Gianforcaro
This would have found my error propagation bug.
2020-08-09Kernel: Fix my result propagation bug @BenWiederhake spottedBrian Gianforcaro
In #3001 I was trying to fix result propagation issues, and I actually just introduced another one. Luckily Ben spotted it in the diff after it was in the tree, thanks Ben!
2020-08-08open: Resolve the realpath before passing it to URL()AnotherTest
...which runs it through LexicalPath. Fixes #3016.
2020-08-07LibWeb: Remove some unnecessary throwaway strings in the CSS parserAndreas Kling
We've had StringView::ends_with(..., CaseSensitivity) for a while, so let's use it to avoid creating a bunch of unnecessary strings here.
2020-08-07LibWeb: Handle CSS "ex" lengths (relative to font x-height)Andreas Kling
These are pretty rare, but they do come up in some places and it's not hard to support. The Gfx::Font information is approximate (and bad) but we can fix that separately.
2020-08-07LibGfx: Add dummy Font::x_height() getterAndreas Kling
Right now we just guess that the x-height is glyph_height/2, which is obviously not accurate. We currently don't store the x-height in fonts, so that's something we'll need to fix.
2020-08-07UserspaceEmulator: Add the dup2 syscallAndreas Kling
2020-08-07UserspaceEmulator: Add the chdir syscallAndreas Kling
2020-08-07UserspaceEmulator: Pass full path to new UE instance in virt$execve()Andreas Kling
Don't just pass argv[0] to the new UE, pass the full program path.
2020-08-07LibThread: Remove redundant --m_level in Lock::unlock() (#3040)Muhammad Zahalqa
2020-08-07UserspaceEmulator: Add the getpgid() and waitid() syscallsAndreas Kling
With this, you can now kinda sorta run the shell in UserspaceEmulator!
2020-08-07UserspaceEmulator: Add the setpgid syscallAndreas Kling
2020-08-07UserspaceEmulator: Make the "unimplemented syscall" output look nicerAndreas Kling
2020-08-07Kernel: Use Userspace<T> for the realpath syscallBrian Gianforcaro
2020-08-07Kernel: Use Userspace<T> for the getsockopt syscall and Socket interfaceBrian Gianforcaro
The way getsockopt is implemented for socket types requires us to push down Userspace<T> using into those interfaces. This change does so, and utilizes proper copy implementations instead of the kind of haphazard pointer dereferencing that was occurring there before.
2020-08-07Kernel: Use Userspace<T> for the setsockopt syscallBrian Gianforcaro
2020-08-07AK: Add static_ptr_cast support for the Userspace<T> pointer typeBrian Gianforcaro
When using Userspace<T> there are certain syscalls where being able to cast between types is needed. You should be able to easily cast away the Userspace<T> wrapper, but it's perfectly safe to be able to cast the internal type that is being wrapped.
2020-08-07Kernel: Use Userspace<T> for the getsockname syscallBrian Gianforcaro
2020-08-07Kernel: Use Userspace<T> for the getpeername syscallBrian Gianforcaro
2020-08-07Kernel: Use Userspace<T> for the chown syscallBrian Gianforcaro
2020-08-07Kernel: Use Userspace<T> for the mount syscallBrian Gianforcaro
2020-08-07AK: Remove unnecessary clang-format off comments.asynts
2020-08-07UserspaceEmulator: Result is initialized after OR with all-1 immediateAndreas Kling
When compiling with "-Os", GCC produces the following pattern for atomic decrement (which is used by our RefCounted template): or eax, -1 lock xadd [destination], eax Since or-ing with -1 will always produce the same output (-1), we can mark the result of these operations as initialized. This stops us from complaining about false positives when running the shell in UE. :^)
2020-08-07Shell: Make Command::redirections a NonnullRefPtrVectorAndreas Kling
2020-08-07Shell: Make VariableDeclarations::Variable store NonnullRefPtrsAndreas Kling
2020-08-07Shell: Make resolve_without_cast() return NonnullRefPtr<Value>Andreas Kling
2020-08-07Shell: Store ListValue's values in a NonnullRefPtrVector<Value>Andreas Kling
A ListValue never stores null Values, so it makes sense to restrict it. This also propagates use of NonnullRefPtr to the create() helpers. There's a small bit of awkwardness around the use of initializer_list, since we cannot directly construct a NonnullRefPtrVector from one.
2020-08-07Shell: Add some obvious move() calls in AST constructorsAndreas Kling
2020-08-07LibWeb: Remove unused LayoutPosition comparison operatorsAndreas Kling
2020-08-07KeyboardSettings: Preselect the current keymap in the dropdown menu.Valtteri Koskivuori
This is the little omission that I originally set out to fix, and sure enough, I got to delve into Kernel land and back to implement it. Lots of fun!
2020-08-07AudioServer: Lock the process veil after startupBrian Gianforcaro
We can't do any file syscalls anyway because of the reduction of pledges, so we might as well lock the veil anyway.
2020-08-07LibLine: Add Ctrl-k shortcutNico Weber
Only does the 'delete to end of line' bit for now. No yank ring support yet.