summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-04-29ThemeEditor: Propagate failure to create AlignmentModelSam Atkins
Also make the AlignmentValue struct private, and initialize the Vector in one go instead of empending.
2022-04-29Kernel+WindowServer: Move setting tty graphical mode to UserspacePeter Elliott
This will allow using the console tty and WindowServer regardless of your kernel command line. Also this fixes a bug where, when booting in text mode, the console was in graphical mode, and would not accept input.
2022-04-29Kernel: Support userspace TTY graphics modesettingPeter Elliott
This is a copy of linux's KDSETMODE/KDGETMODE console ioctl(2) interface.
2022-04-29LibJS: Remove outdated FIXMEs about required date_from_fields() optionsLinus Groh
The `options` parameter is no longer required by the function, so we can stop passing in options as well where not required by the spec.
2022-04-29AK: Install generated `Debug.h` into `/usr/include`Jelle Raaijmakers
Ports like SDL2 can depend on headers that try to include `Debug.h`.
2022-04-29Ports: Compile SDL2 against LibAudioJelle Raaijmakers
2022-04-29LibAudio: Add a formatter for `Audio::Sample`Jelle Raaijmakers
Useful for debugging.
2022-04-29LibCore: Simplify conditional logic in SharedCircularQueueJelle Raaijmakers
No functional changes.
2022-04-29LibAudio: Make includes work from portsJelle Raaijmakers
The endpoints were included with a relative path that does not work by default when compiling ports. Include them from a root-relative path instead.
2022-04-29LibWeb: Remove TokenStream::position() and ::rewind_to_position()Sam Atkins
2022-04-29LibWeb: Use StateTransaction for UnicodeRange parsingSam Atkins
...and change how the two parsing steps fit together. The two steps were previously quite muddled. Both worked with the TokenStream directly, and both were responsible for rewinding that stream if there was an error. This is both confusing and also made it impossible to replace the rewinding with StateTransactions. This commit more clearly divides the work between the two functions: One parses ComponentValues and produces a string, and the other parses that string to produce the UnicodeRange. It also replaces manual rewinding in the former with StateTransactions.
2022-04-29LibWeb: Use StateTransaction in more placesSam Atkins
2022-04-29LibWeb: Use StateTransaction for supports-query parsingSam Atkins
2022-04-29LibWeb: Use StateTransaction for media-query parsingSam Atkins
This should be a bit easier to follow. parse_media_query() no longer rewinds if the media query is invalid, because it then interprets all the tokens as a "not all" query.
2022-04-29LibWeb: Extract MediaType to/from_string() logic into functionsSam Atkins
2022-04-29LibWeb: Allow whitespace inside An+B again and use StateTransactionsSam Atkins
I accidentally broke parsing of internal whitespace (eg `-3n + 7` instead of `-3n+7`) when implementing `:nth-child(An+B of foo)`.
2022-04-29LibWeb: Add StateTransaction RAII to CSS TokenStreamSam Atkins
This is modeled after the one in ISO8601Parser. It rolls back the TokenStream state automatically at the end of scope unless told to commit the changes. This should be less error-prone than remembering to manually call `rewind_to_position()` at the correct time. For convenience, a StateTransaction can have "child" transactions. When a transaction is committed, it automatically commits its parents too. This is useful in situations where you have several nested and don't want to have to remember to manually `commit()` them all.
2022-04-29LibWeb: Move variables in parse_a_n_plus_b_pattern() closer to usageSam Atkins
`a` and `b` had to be declared at the top of the function before since they were used by the `make_return_value()` lambda. But now that doesn't exist, we can move them to where they are used - or eliminate them entirely.
2022-04-29LibWeb: Handle trailing tokens outside of parse_a_n_plus_b_pattern()Sam Atkins
parse_a_n_plus_b_pattern()'s job is to parse as much of the TokenStream as it can as a An+B, and then stop. The caller can then deal with any trailing tokens as it wishes.
2022-04-29LibWeb: Rename a local variable to not collide with a parameterSam Atkins
2022-04-29LibWeb: Replace Result with ErrorOr in CSS ParserSam Atkins
...using a ParseErrorOr type alias. This lets us replace a bunch of manual error-checking with TRY. :^) I also replaced the ParsingResult::Done value with returning an Optional. I wasn't happy with treating "Done" as an error when I first wrote this, and this makes a clear distinction between the two.
2022-04-29LibWeb: Make CSS ParsingContext::m_url not OptionalSam Atkins
This always has a value, so let's make that clearer.
2022-04-28LibMarkdown: Add strike-through text support to markdownhuttongrabiel
Using ~~text~~ syntax will strike out the text between the two tildes. Only missing portion is the terminal rendering of strike through text. The ansi escape codes for strike through text are \e[9m and \e[29m but it appears the terminal does not support these. Please correct me if I am wrong. I tested that the render_to_terminal function was being called by giving it bold ANSI escape codes, and that did work so the function is being called correctly.
2022-04-28Base: Improvements to the Light themeJoel Hansen
- Adding more suitable "icons-only" buttons. - Adding WindowShadow from default theme.
2022-04-28ThemeEditor: Add preview window with 'Highlighted' window stateMacDue
This state has been occasionally missed in themes, adding it to the preview may help avoid that.
2022-04-28ThemeEditor: Center preview windows accounting for window frameMacDue
2022-04-28Kernel/Storage: Migrate the partition code to use the ErrorOr containerLiav A
That code used the old AK::Result container, which leads to overly complicated initialization flow when trying to figure out the correct partition table type. Instead, when using the ErrorOr container the code is much simpler and more understandable.
2022-04-28Kernel+Utilities: Add the route utilitybrapru
This exposes the global routing table in the /proc directory and adds the userspace utility to query dynamically add from the table.
2022-04-28Kernel: Use TRY to handle string copies in GlobalProcessExposedbrapru
Each of these string copies are already inside of an ErrorOr context so any failed copy should propagate.
2022-04-28Kernel: Add a global routing tablebrapru
Previously the system had no concept of assigning different routes for different destination addresses as the default gateway IP address was directly assigned to a network adapter. This default gateway was statically assigned and any update would remove the previously existing route. This patch is a beginning step towards implementing #180. It implements a simple global routing table that is referenced during the routing process. With this implementation it is now possible for a user or service (i.e. DHCP) to dynamically add routes to the table. The routing table will select the most specific route when possible. It will select any direct match between the destination and routing entry addresses. If the destination address overlaps between multiple entries, the Kernel will use the longest prefix match, or the longest number of matching bits between the destination address and the routing address. In the event that there is no entries found for a specific destination address, this implementation supports entries for a default route to be set for any specified interface. This is a small first step towards enhancing the system's routing capabilities. Future enhancements would include referencing a configuration file at boot to load pre-defined static routes.
2022-04-28Kernel: Generalize the UpdateArp table to UpdateTablebrapru
We can use the same enum cases to apply to updates on different networking tables within the Kernel (i.e. a routing table)
2022-04-28Ports: Update dropbear port to 2022.82Patrick Meyer
2022-04-27LibCore: Remove fixed EventLoop FIXMEJelle Raaijmakers
This was resolved in commit f25123df66.
2022-04-27unzip: Create parent directory before extracting filesTim Schumacher
2022-04-27LibCore: Remove main event loopJelle Raaijmakers
The main event loop functionality was used in just two places where the alternative is a bit simpler. Remove it in favor of referencing the event loop directly, or just invoking `EventLoop::current()`. Note that we don't need locking in the constructor since we're now only modifying a thread-local `Vector`. We also don't need locking in the old call sites to `::with_main_locked()` since we already lock the event loop in the subsequent `::post_event()` invocation.
2022-04-27LibCore: Remove unused `EventLoop::is_main_event_loop()`Jelle Raaijmakers
2022-04-27LibCore: Fix typo in `EventLoop` commentJelle Raaijmakers
2022-04-27HackStudio: Update window close button on document changetimre13
2022-04-26LibMarkdown: Correct typo in forward declaration of HorizontalRulehuttongrabiel
HoriziontalRule -> HorizontalRule
2022-04-26LoginServer: Change login fail message to avoid enumeration attacksPeter Elliott
The current message distinguishes between a user that doesn't exist, and an invalid password. This is considered to be bad practice, because an attack can first check if a user exists before guessing that users password. Also it's just tradition or something.
2022-04-27HexEditor: Add UTF16 to the value inspectorkleines Filmröllchen
2022-04-27HexEditor: Add UTF8 to the value inspectorkleines Filmröllchen
2022-04-27HexEditor: Add ASCII to the value inspectorkleines Filmröllchen
This is kind of redundant but probably easier to read than the ASCII column. Also, it seems appropriate after we add other character encodings.
2022-04-27HexEditor: Don't require the ValueInspectorModel's value size to be i32kleines Filmröllchen
2022-04-27AK: Put invalid UTF8 debug spam behind a flagkleines Filmröllchen
This is very annoying if we're (intentionally) passing invalid UTF8 into Utf8View.
2022-04-26Kernel: Use C++17 namespace style for nested PCI namespaceb14ckcat
Adjust the nested namespace formatting in PCI files to use the nicer and more consistent C++17 style.
2022-04-26Kernel: Put USB request constants in namespaceb14ckcat
Moved constants in USBRequest.h from global scope to the Kernel::USB namespace.
2022-04-26LibConfig+ConfigServer: Write config values synchronouslyMoustafa Raafat
This patch fixes the issue of pressing the ok button of a settings menu without saving the changes, or not reverting the changes when pressing the cancel button because the app has died before the new values make it to the other end.
2022-04-26Documentation: Add more clangd configuration optionskleines Filmröllchen
This should make clangd work very well. I totally forgot to add this...
2022-04-26Ports: Use correct packages.db location in build_installed.shcircl
The packages.db file now resides in Serenity's root.