summaryrefslogtreecommitdiff
path: root/Userland
AgeCommit message (Collapse)Author
2023-03-22LibGUI: Resolve use-after-free errorLucas CHOLLET
Objects taken by reference are no longer valid when used in `deferred_invoke`. Explicitly copying them solve the issue.
2023-03-22LibWeb: Change "popup"-related storage types to named enumsTimothy Flynn
2023-03-22LibWeb: Change the "noreferrer" storage type to a named enumTimothy Flynn
2023-03-22LibWeb+WebContent: Change the "noopener" storage type to a named enumTimothy Flynn
2023-03-21LibGfx: Move all image loaders and writers to a subdirectoryLucas CHOLLET
2023-03-21LibFileSystem: Move `TempFile` from `LibCore` to `LibFileSystem`Cameron Youell
As suggested in commit de18485
2023-03-21LibCore: Remove all unused `DeprecatedFile` functionsCameron Youell
2023-03-21Everywhere: Use `LibFileSystem` where trivialCameron Youell
2023-03-21LibFileSystem: Create `LibFileSystem`Cameron Youell
Copy over updated `DeprecatedFile` functions
2023-03-21LibCore: Add ErrorOr wrapper for `utimensat`Cameron Youell
2023-03-21LibGfx/OpenType: Do not preemptively return while searching for kerningLukasACH
The kerning value for a particular glyph may not be in the first table. Continue until we either run out of tables or we find an applicable value.
2023-03-21LibGfx/OpenType: Get size of ValueRecord from PairPos valueFormat fieldLukasACH
The stored ValueRecord in the font file only contains the fields specified in the valueFormat field of the PairPosFormat1 table. This means we need to construct the ValueRecord dynamically at runtime and cannot bit_cast it to a struct.
2023-03-21LibGfx/OpenType: Move function read_value_record, add argument streamLukasACH
read_value_record(u16 value_format, FixedMemoryStream& stream) takes a bitmask value_format that describes the available fields of the ValueRecord and a FixedMemoryStream at the location of the next ValueRecord. It then advances the stream and returns a complete ValueRecord.
2023-03-21LibJS: Ensure Date tests can pass in any time zone by testing UTC valuesTimothy Flynn
When we create a Date object from a timestamp, or set its value by way of Date.prototype.setTime, the timestamp is interpreted as UTC. Change test expecatations against such instances to use UTC as well.
2023-03-21LibCore: Set tm_isdst to a negative value before invoking mktimeTimothy Flynn
If it is default-initialized to 0, mktime will assume that DST is not in effect for the specified time. Setting it to a negative value instructs mktime to determine for itself whether DST is in effect.
2023-03-21LibWeb: Parse CSS identifiers case-insensitivelyimplicitfield
2023-03-21LibWeb: Don't try to parse GPOS lookup types we don't understand yetAndreas Kling
At the moment, we only understand lookup type 2 (pair adjustment) so let's ignore lookup tables with other types. This fixes an issue where we'd choke on Noto Sans versions that come with a chained context positioning lookup table (type 8). Fixes #17924
2023-03-21LibGfx/OpenType: Fix typo in 'kern' table parsingAndreas Kling
Thanks to Timon for spotting this :^)
2023-03-21LibWeb: Pass scope in ParentNode::query_selector_allSimon Wanner
2023-03-21LibWeb: Pass scope in ParentNode::query_selectorSimon Wanner
2023-03-21LibWeb: Pass scope in Element::closestSimon Wanner
2023-03-21LibWeb: Pass scope in Element::matchesSimon Wanner
2023-03-21LibWeb: Support the :scope pseudo classSimon Wanner
2023-03-21WebDriver: Activate the browser tab during the Switch To Window commandTimothy Flynn
2023-03-21WebContent+Everywhere: Add a WebContent IPC to activate a tabTimothy Flynn
2023-03-21WebDriver: Do not activate tabs created by the New Window endpointTimothy Flynn
The spec states that creating new windows "must be done without invoking the focusing steps for the created browsing context". It also states we should do so by "running the window open steps", but nowhere in those steps is there an option to invoke or skip any focusing steps. So we do so with a custom WebContent IPC parameter.
2023-03-21WebContent+Everywhere: Add an option to not activate new tabs over IPCTimothy Flynn
WebDriver, for example, will want to create new tabs without activating them.
2023-03-21tar: Add partial support for XZ-compressed archives :^)Tim Schumacher
2023-03-21Utilities: Add an `xzcat` utilityTim Schumacher
2023-03-21LibCompress: Add support for XZTim Schumacher
2023-03-21LibCompress: Add support for LZMA2Tim Schumacher
2023-03-21LibCompress: Allow providing an external dictionary for LZMATim Schumacher
While at it, rename the former "output buffer" to "dictionary", since that's its primary function.
2023-03-21LibCompress: Allow appending input streams to an existing LZMA decoderTim Schumacher
2023-03-21LibCompress: Refactor LZMA model property decoding into a static helperTim Schumacher
2023-03-21AK: Move ConstrainedStream from LibWasm and limit discardingTim Schumacher
2023-03-21Presenter: Add a "Resize to Fit Content" actionCaoimhe
When resizing, it can be hard to get the content to appear nicely without a black border where the window's aspect ratio doesn't match the content's aspect ratio. With this new action, it is possible to automatically adjust the window's size to match the content's aspect ratio. When it is resizing, it will maintain the width of the window, but adjust the height to match the aspect ratio of the content.
2023-03-21Presenter: Add a "View" menuCaoimhe
It didn't really make sense for "Toggle Full Screen" to be under "Presentation", and now there's a place for any future view-related actions.
2023-03-21Presenter: Change "Full Screen" action to "Toggle Full Screen"Caoimhe
When using its keybind, it didn't really feel right to press Shift+F5 to enter fullscreen, but not to exit it!
2023-03-21DisplaySettings: Detect if a non-default color scheme is in useimplicitfield
2023-03-21DisplaySettings: Stop using DeprecatedStringimplicitfield
This also further improves error propagation in cases where String demands it.
2023-03-21LibGUI: Make Desktop::set_wallpaper accept an Optional<StringView>implicitfield
2023-03-21DisplaySettings: Propagate errors in MonitorWidgetimplicitfield
2023-03-21DisplaySettings: Propagate errors in MonitorSettingsWidgetimplicitfield
2023-03-21DisplaySettings: Propagate errors in FontSettingsWidgetimplicitfield
2023-03-21DisplaySettings: Propagate errors in EffectsSettingsWidgetimplicitfield
2023-03-21DisplaySettings: Propagate errors in BackgroundSettingsWidgetimplicitfield
2023-03-21DisplaySettings: Propagate errors in DesktopSettingsWidgetimplicitfield
2023-03-21DisplaySettings: Propagate errors in ThemesSettingsWidgetimplicitfield
2023-03-21LibGfx/OpenType: Extend support for GPOS glyph positioningLukasACH
This patch extends the kerning support using the GPOS table to fonts which use PairPosFormat1. Previously, only PairPosFormat2 was supported.
2023-03-21VideoPlayer: Add drag and drop supportJunior Rantila
This patch makes it so that we view clips by dropping them on an open VideoPlayer window.