Commit graph

46745 commits

Author SHA1 Message Date
Nico Weber 839bec14af LibGfx: Validate type of cicpTag in ICC Profile
This should've really been part of e8bbb3d915.
2023-02-08 17:18:54 +00:00
Evan Smal cb3216cb45 js: Remove DeprecatedString usage in load_json_impl() 2023-02-08 16:48:32 +00:00
Evan Smal ff5a8a21e8 js: Use const where possible in parse_and_run() 2023-02-08 16:48:32 +00:00
Evan Smal 698bcf4b4e js: Convert s_history_path to String and propagate errors 2023-02-08 16:48:32 +00:00
Evan Smal d18a7ca2dc js: Use Core::Stream::File in place of POSIX in write_to_file() 2023-02-08 16:48:32 +00:00
Evan Smal f871dc097b js: Use String in prompt_for_level() and read_next_piece() 2023-02-08 16:48:32 +00:00
Nico Weber e8bbb3d915 LibGfx+icc: Read cicpType
This is a very new tag used for HDR content. The only files I know that
use it are the jpegs on https://ccameron-chromium.github.io/hdr-jpeg/
But they have an invalid ICC creation date, so `icc` can't process them.
(Commenting out the check for that does allow to print them.)

If the CIPC tag is present, it takes precedence about the actual data
in the profile and from what I understand, the ICC profile is
basically ignored. See https://www.color.org/events/HDR_experts.xalter
for background, in particular
https://www.color.org/hdr/02-Luke_Wallis.pdf (but the other talks
are very interesting too).

(PNG also has a cICP chunk that's supposed to take precedence over
iCCP.)
2023-02-08 16:41:58 +00:00
Nico Weber a434b89521 LibGfx: Add another profile ID to ICC quirk list 2023-02-08 16:37:47 +00:00
Nico Weber 21cc0c0cb2 LibGfx: Add ICC v2 tags to tag list 2023-02-08 16:36:31 +00:00
Nico Weber 8bd64f001c LibGfx+icc: Read signatureType
This isn't used by any mandatory tags, and it's not terribly useful.
But jpegs exported by Lightroom Classic write the 'tech' tag, and
it seems nice to be able to dump its contents.

signatureType stores a single u32 which for different tags with this
type means different things.

In each case, the value is one from a short table of valid values,
suggesting this should be a per-tag enum class instead of a
per-tag DistinctFourCC, per the comment at the top of DistincFourCC.h.
On the other hand, 3 of the 4 tables have an explicit "It is possible
that the ICC will define other signature values in the future" note,
which suggests the FourCC might actually be the way to go.

For now, just punt on that and manually dump the u32 in fourcc style
in icc.cpp and don't add any to_string() methods that return a readable
string based on the contents of these tables.
2023-02-08 16:35:57 +00:00
Nico Weber cbcf8471a6 LibGfx+icc: Read namedColor2Type
This is the type of namedColor2Tag, which is a required tag in
NamedColor profiles.

The implementation is pretty basic for now and only exposes the
numbers stored in the file directly (after endian conversion).
2023-02-08 16:34:24 +00:00
Cubic Love 1ce34805f8 Settings: Improve default window size
Before, one icon was hidden out of sight and there was a scrollbar.
This small fix displays two neat rows of five icons.
2023-02-08 11:28:20 +01:00
Aliaksandr Kalenik 83b0613c68 LibWeb: Null check nearest_sibling in generate_missing_parents
Caught by AddressSanitizer.
2023-02-07 17:04:38 +01:00
Aliaksandr Kalenik f43f4feb1e LibWeb: Table wrappers should not be ignored in auto height calculation
Though table wrappers are anonymous block containers (because
TableWrapper is inherited from BlockContainer) with no lines they
should not be skipped in block auto height calculation.
2023-02-07 17:04:38 +01:00
Andreas Kling 9e5fd95e44 SpaceAnalyzer: "Open Containing Folder" => "Reveal in File Manager"
Also "Open Folder" => "Open in File Manager".
2023-02-07 17:01:55 +01:00
Andreas Kling f103f3af60 TextEditor: "Open Containing Folder" => "Reveal in File Manager" 2023-02-07 17:01:55 +01:00
Andreas Kling 2bc8cbfe8f LibGUI: Add 9 and 11 to the list of suggested sizes in FontPicker 2023-02-07 17:01:55 +01:00
Zaggy1024 3a1efbb9e4 SoundPlayer: Remove AutoSlider for the seek bar in favor of Slider 2023-02-07 14:36:58 +00:00
Zaggy1024 9e61e48b31 VideoPlayer: Pause while the user is dragging the seek bar 2023-02-07 14:36:58 +00:00
Zaggy1024 d9a73bbc96 LibGUI: Add callbacks for Slider drags starting and ending 2023-02-07 14:36:58 +00:00
Zaggy1024 fa98c43c0d LibGUI: Make sliders start a drag when jumping to the cursor
This allows users to seek to any position in VideoPlayer, then continue
adjusting the playback timestamp while holding left mouse.
2023-02-07 14:36:58 +00:00
Kenneth Myhra 944191560a Ports: Update qemu to 7.2.0 2023-02-07 13:35:49 +00:00
Kenneth Myhra 96ac527e3c Ports: Update mc to 4.8.29 2023-02-07 13:35:49 +00:00
Kenneth Myhra 6acb8279f6 Ports: Update glib to 2.75.2 2023-02-07 13:35:49 +00:00
MacDue b0606d90f0 Meta: Automatically select best apt mirror
This is an attempt to avoid issues with the azure ubuntu apt mirror
by using apt-spy2 to select the best mirror before installing
dependencies.
2023-02-07 13:22:17 +00:00
Sam Atkins 89b8d346fe LibGUI+About: Make AboutDialog creation fallible 2023-02-07 10:43:15 +00:00
Sam Atkins 65c8dfe923 LibGUI: Convert AboutDialog layout to GML 2023-02-07 10:43:15 +00:00
Sam Atkins c2082b45ee Browser: Use GUI::CommonActions::make_about_action()
Browser had bespoke code for showing the exact same AboutDialog, in a
more convoluted way.
2023-02-07 10:43:15 +00:00
Aliaksandr Kalenik 900cd78121 LibWeb: Add layout tests for floats, margins collapsing and positioning
Those are copied from 'Base/res/html/misc/'.
2023-02-06 20:42:14 +01:00
Aliaksandr Kalenik 12eca612bc Ladybird: Specify window size in layout dump mode 2023-02-06 20:42:14 +01:00
Sam Atkins e249d751c8 Kernel: Return ENAMETOOLONG when trying to set a too-long thread name 2023-02-06 20:36:53 +01:00
Sam Atkins 1014aefe64 Kernel: Protect Thread::m_name with a spinlock
This replaces manually grabbing the thread's main lock.

This lets us remove the `get_thread_name` and `set_thread_name` syscalls
from the big lock. :^)
2023-02-06 20:36:53 +01:00
Sam Atkins fe7b08dad7 Kernel: Protect Process::m_name with a spinlock
This also lets us remove the `get_process_name` and `set_process_name`
syscalls from the big lock. :^)
2023-02-06 20:36:53 +01:00
Sam Atkins b26ecca970 Kernel: Remove create_inode_watcher syscall from the big lock 2023-02-06 20:36:53 +01:00
Sam Atkins cc558d95f0 Kernel: Remove pledge syscall from the big lock
This already does all its dangerous work inside
`with_mutable_protected_data()`.
2023-02-06 20:36:53 +01:00
Nico Weber ce78394ae8 LibGfx: Add table size validation for ICC lut16Type 2023-02-06 11:53:50 -05:00
Mr.UNIX b8003fa027 Ports/grep: Update to 3.8 2023-02-06 10:19:53 +00:00
Mr.UNIX 306162de35 Ports/sed: Update to 4.9 2023-02-06 10:19:37 +00:00
Mr.UNIX 93d456077e Ports/nano: Update to 7.2 2023-02-06 10:19:21 +00:00
Mr.UNIX 1c7de460ff Ports/gawk: Update to 5.2.1 2023-02-06 10:18:58 +00:00
Lucas CHOLLET 597faaff5f LibChess: Factorize the returned StringView for a draw 2023-02-06 10:18:16 +00:00
Lucas CHOLLET 55c5639004 Chess+LibChess: Avoid using DeprecatedString whenever possible 2023-02-06 10:18:16 +00:00
Lucas CHOLLET e7377c6d60 Chess: Move ChessWidget to the create pattern 2023-02-06 10:18:16 +00:00
Cubic Love f66098ab6f Base: Add some characters to Katica Regular 10
Add characters expected by the DE, EN-GB & NO macintosh keymaps
plus extra prime symbols, as they were easy to do :^)

https://www.unicode.org/charts/PDF/U2000.pdf
2032-2037, 2044

https://www.unicode.org/charts/PDF/U2200.pdf
2202, 2211, 221A, 221E, 2260
2023-02-06 10:12:41 +00:00
Steren 4acffe7c18 Meta: Use proper abbreviation for WebAssembly in README
WebAssembly should be abbreviated "Wasm", as called out at https://webassembly.org/
2023-02-06 10:46:34 +01:00
Nico Weber 5ccfd0e49d LibGfx: Fix comment typo in ICC code 2023-02-05 23:20:36 +00:00
Iman Seyed 85feab4095 Kernel: Pass ipv4_packet_size to ipv4.set_length()
Instead of `sizeof(IPv4Packet) + payload_size` expression,
pass `ipv4_packet_size` to `ipv4.set_length()`
2023-02-05 22:14:14 +00:00
MacDue 83a59396c8 Kernel: Fix CPUInfo error propagation fixme
We can now propagate the errors directly from for_each_split_view(),
which I think counts as "Make this nicer" :^)
2023-02-05 19:31:21 +01:00
Andrew Kaster 012aaecccf AK: Always define ak_assertion_failed, even when NDEBUG is false
Just because we may compile serenity with or without NDEBUG doesn't
mean that consuming projects or Ports will share the setting.

Always define the custom assertion function so that we don't have to
keep the same debug settings between all projects.
2023-02-05 09:46:51 -07:00
Mr.UNIX 17965f4d2d Ports/nasm: Update to 2.16.01 2023-02-05 16:43:02 +00:00