Commit graph

48304 commits

Author SHA1 Message Date
Cameron Youell
1d24f394c6 Everywhere: Use LibFileSystem where trivial 2023-03-21 19:03:21 +00:00
Cameron Youell
edab0cbf41 LibFileSystem: Create LibFileSystem
Copy over updated `DeprecatedFile` functions
2023-03-21 19:03:21 +00:00
Cameron Youell
e78be03b49 LibCore: Add ErrorOr wrapper for utimensat 2023-03-21 19:03:21 +00:00
LukasACH
b5f0f94757 LibGfx/OpenType: Do not preemptively return while searching for kerning
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-21 19:11:53 +01:00
LukasACH
b6cfacfd9f LibGfx/OpenType: Get size of ValueRecord from PairPos valueFormat field
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-21 19:11:53 +01:00
LukasACH
7eb5fa38c4 LibGfx/OpenType: Move function read_value_record, add argument stream
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-21 19:11:53 +01:00
Timothy Flynn
24459a44b0 LibJS: Ensure Date tests can pass in any time zone by testing UTC values
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-21 18:05:22 +00:00
Timothy Flynn
8a27180fb8 LibCore: Set tm_isdst to a negative value before invoking mktime
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-21 18:05:22 +00:00
Ryan Liptak
19302a471d Base: Add 7 new emojis
🚲 U+1F6B2 - Bicycle
🛀 U+1F6C0 - Person Taking Bath
🛝 U+1F6DD - Playground Slide
🦦 U+1F9A6 - Otter
🦧 U+1F9A7 - Orangutan
🐒 U+1F412 - Monkey
🩼 U+1FA7C - Crutch
2023-03-21 17:31:49 +00:00
implicitfield
a3d43b067a LibWeb: Parse CSS identifiers case-insensitively 2023-03-21 16:07:44 +00:00
Andreas Kling
3195c1832a LibWeb: Don't try to parse GPOS lookup types we don't understand yet
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-21 15:48:32 +01:00
Andreas Kling
a7a1df42c7 LibGfx/OpenType: Fix typo in 'kern' table parsing
Thanks to Timon for spotting this :^)
2023-03-21 15:32:22 +01:00
Simon Wanner
9e00ef0849 LibWeb: Pass scope in ParentNode::query_selector_all 2023-03-21 10:45:19 +01:00
Simon Wanner
4e6fb65ea3 LibWeb: Pass scope in ParentNode::query_selector 2023-03-21 10:45:19 +01:00
Simon Wanner
f3ba44a9f2 LibWeb: Pass scope in Element::closest 2023-03-21 10:45:19 +01:00
Simon Wanner
d55373067d LibWeb: Pass scope in Element::matches 2023-03-21 10:45:19 +01:00
Simon Wanner
c8ebacb1c9 LibWeb: Support the :scope pseudo class 2023-03-21 10:45:19 +01:00
Timothy Flynn
a96ba912b3 WebDriver: Activate the browser tab during the Switch To Window command 2023-03-21 09:39:49 +00:00
Timothy Flynn
f8b6369c23 WebContent+Everywhere: Add a WebContent IPC to activate a tab 2023-03-21 09:39:49 +00:00
Timothy Flynn
a77daf77bd WebDriver: Do not activate tabs created by the New Window endpoint
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-21 09:39:49 +00:00
Timothy Flynn
e6fc35897f WebContent+Everywhere: Add an option to not activate new tabs over IPC
WebDriver, for example, will want to create new tabs without activating
them.
2023-03-21 09:39:49 +00:00
Tim Schumacher
78ed798852 Tests: Add XZ tests from XZ utils 2023-03-21 10:25:13 +01:00
Tim Schumacher
16cb127c0b tar: Add partial support for XZ-compressed archives :^) 2023-03-21 10:25:13 +01:00
Tim Schumacher
a61c120b3f Utilities: Add an xzcat utility 2023-03-21 10:25:13 +01:00
Tim Schumacher
9e990f7329 LibCompress: Add support for XZ 2023-03-21 10:25:13 +01:00
Tim Schumacher
aae1404016 LibCompress: Add support for LZMA2 2023-03-21 10:25:13 +01:00
Tim Schumacher
1b8318ab67 LibCompress: Allow providing an external dictionary for LZMA
While at it, rename the former "output buffer" to "dictionary", since
that's its primary function.
2023-03-21 10:25:13 +01:00
Tim Schumacher
f4506a3a72 LibCompress: Allow appending input streams to an existing LZMA decoder 2023-03-21 10:25:13 +01:00
Tim Schumacher
04f69de7f1 LibCompress: Refactor LZMA model property decoding into a static helper 2023-03-21 10:25:13 +01:00
Tim Schumacher
52d9fc92f1 AK: Expose the seekback limit of CircularBuffer 2023-03-21 10:25:13 +01:00
Tim Schumacher
e62183f0ba AK: Add a Stream wrapper that counts read bytes 2023-03-21 10:25:13 +01:00
Tim Schumacher
d1f6a28ffd AK: Move ConstrainedStream from LibWasm and limit discarding 2023-03-21 10:25:13 +01:00
Caoimhe
92800cff4a Presenter: Add a "Resize to Fit Content" action
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-21 10:10:29 +01:00
Caoimhe
72a45799e0 Presenter: Add a "View" menu
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-21 10:10:29 +01:00
Caoimhe
f2df495970 Presenter: Change "Full Screen" action to "Toggle Full Screen"
When using its keybind, it didn't really feel right to press Shift+F5 to
enter fullscreen, but not to exit it!
2023-03-21 10:10:29 +01:00
implicitfield
1eb6484ebd DisplaySettings: Detect if a non-default color scheme is in use 2023-03-21 10:06:41 +01:00
implicitfield
44b67db7ab DisplaySettings: Stop using DeprecatedString
This also further improves error propagation in cases where String
demands it.
2023-03-21 10:06:41 +01:00
implicitfield
c9ad252e33 LibGUI: Make Desktop::set_wallpaper accept an Optional<StringView> 2023-03-21 10:06:41 +01:00
implicitfield
9f2a396c6e DisplaySettings: Propagate errors in MonitorWidget 2023-03-21 10:06:41 +01:00
implicitfield
f1d1517414 DisplaySettings: Propagate errors in MonitorSettingsWidget 2023-03-21 10:06:41 +01:00
implicitfield
682bff4c49 DisplaySettings: Propagate errors in FontSettingsWidget 2023-03-21 10:06:41 +01:00
implicitfield
00be9eb210 DisplaySettings: Propagate errors in EffectsSettingsWidget 2023-03-21 10:06:41 +01:00
implicitfield
1c20cf7bee DisplaySettings: Propagate errors in BackgroundSettingsWidget 2023-03-21 10:06:41 +01:00
implicitfield
c95ec6092b DisplaySettings: Propagate errors in DesktopSettingsWidget 2023-03-21 10:06:41 +01:00
implicitfield
9c7dfd4fd4 DisplaySettings: Propagate errors in ThemesSettingsWidget 2023-03-21 10:06:41 +01:00
LukasACH
83eca15e51 LibGfx/OpenType: Extend support for GPOS glyph positioning
This patch extends the kerning support using the GPOS table to fonts
which use PairPosFormat1. Previously, only PairPosFormat2 was
supported.
2023-03-21 09:50:27 +01:00
Junior Rantila
f0ceaca2f4 VideoPlayer: Add drag and drop support
This patch makes it so that we view clips by dropping them on an open
VideoPlayer window.
2023-03-21 08:45:58 +00:00
Simon Wanner
03c225b023 LibWeb: Move Element.prototype.style to ElementCSSInlineStyle mixin
Also adds the `PutForwards` extended attribute allowing setting the
style property.
2023-03-20 20:37:40 -04:00
Simon Wanner
63ca149be5 LibWeb: Make [PutForwards] work together with [ImplementedAs] 2023-03-20 20:37:40 -04:00
Tim Ledbetter
d5c913082b Tests: Add tests to verify alpha values are premultiplied when scaling 2023-03-21 00:29:33 +01:00