Sam Atkins
feb0eb9309
AK: Fix constructing ErrorOr from ErrorOr of a related type
...
Mark other ErrorOr types as friends, and fix a typo in the &&
constructor, so that we can create an ErrorOr<Core::Object> from an
ErrorOr<GUI::Widget>. Also, add some requires() clauses to these
constructors so the error messages are clearer.
2022-12-28 22:34:00 -05:00
Jelle Raaijmakers
7b0adee487
LibGfx+Overall: Remove is_null
from Point
, Rect
and Size
...
Having a `Point`, `Rect` or `Size` claim it's `null` is silly. We have
`Optional<T>` for that. For `Point`, rename `is_null` to `is_zero` to
better reflect what we're testing. For `Rect` and `Size`, `is_null` is
removed outright.
Also, remove `is_empty` from `Point`. Points can't be empty.
2022-12-28 22:32:21 -05:00
Jelle Raaijmakers
d5630bd20e
NotificationServer: Use Optional
for last rect in NotificationWindow
...
We were calling `Gfx::Rect<T>::is_null` which checked if the width and
height were 0. What we want to do instead, is check if the rect value
was set at all. `Optional<Rect>` is the right way to do this.
2022-12-28 22:32:21 -05:00
Jelle Raaijmakers
d83f1eaeb2
LibWeb: Use Optional
for previous SVG path control point
...
Previously, a control point at `(0, 0)` would have been considered
absent. USe `Optional<Gfx::FloatPoint>` instead.
2022-12-28 22:32:21 -05:00
Nico Weber
c051532c82
AK: Add tests for LittleEndian<enum class>
...
This should've been in 57126a0d3c
.
2022-12-28 22:27:19 -05:00
Timothy Flynn
0a7d0362ea
CI: Remove extraneous toolchain job from Azure CI
...
This was useful when building both i686 and x86_64 SerenityOS targets as
we could use a single toolchain build for both targets. But now all this
extra job does is create the opportunity for the toolchain to need to be
built twice (i.e. if the pipelines are backed up and the toolchain cache
is busted between these jobs while the x86_64 step is waiting for a VM).
2022-12-28 15:26:12 -05:00
Arda Cinar
598fcfca26
LibWeb: Make the atob JS function compliant with the spec
...
It is specified to use the "forgiving-base64" decoder instead of the
regular base64 decoder, which is slightly different
2022-12-28 21:15:02 +01:00
Arda Cinar
bbaf86fb46
AK: Add a forgiving_base64_decode helper
...
According to the specification at
https://infra.spec.whatwg.org/#forgiving-base64
2022-12-28 21:15:02 +01:00
Nico Weber
50c6d133a9
LibGfx: Remove now-unneeded casts
2022-12-28 20:13:12 +00:00
Nico Weber
57126a0d3c
AK: Make BigEndian<> and LittleEndian<> work with enum classes
2022-12-28 20:13:12 +00:00
HawDevelopment
a21703f1df
Demos: Add ability to use scroll wheel in starfield
...
This change adds the ability to use the scroll wheel to change
the speed in starfield.
2022-12-28 14:49:05 -05:00
Kyle Lanmon
e8e1d1905e
strace: Propagate errors
2022-12-28 14:45:19 -05:00
Tom
bb062e50b0
LibWeb: Don't expand grid for {row,column} spans
...
Fixes a bug where when you had spans that that were bigger than the
grid, would create enough tracks to accomodate them. When a fixed
position is given, there should be at a minimum a row/column available
for the track. The span will be truncated if there is no space for it
later.
2022-12-28 15:04:58 +01:00
Tom
6e29f693f5
LibWeb: Refactor GridFormattingContext
...
For legibility, split up the run() function of the GridFormattingContext
into individual components.
2022-12-28 15:04:58 +01:00
Tom
0bbf7a1b54
LibWeb: Refactor should_skip_anonymous_text_runs
...
This same function was being copied in the {Flex,Grid}FormattingContext,
so unify them in the parent FormattingContext.
2022-12-28 15:04:58 +01:00
Andreas Kling
97dde51a9b
Kernel: Add missing x86_64 files to CMakeLists.txt
2022-12-28 11:53:41 +01:00
Andreas Kling
fb09661420
Kernel: Add missing Random.h include in x86_64/Processor.cpp
2022-12-28 11:53:41 +01:00
Andreas Kling
7b9ea3efde
Kernel+Userland: Remove uses of the __i386__ compiler macro
2022-12-28 11:53:41 +01:00
Andreas Kling
36980d2a66
Meta: Remove i686 references in YCM configuration
2022-12-28 11:53:41 +01:00
Andreas Kling
c0e3bdd51b
AK: Remove ARCH(I386) macro
2022-12-28 11:53:41 +01:00
Andreas Kling
79b623b52e
LibC: Remove use of ARCH(I386) in sys/arch/aarch64/regs.h
2022-12-28 11:53:41 +01:00
Andreas Kling
d6fa42dd5c
Kernel: Remove the two remaining ARCH(I386) checks
2022-12-28 11:53:41 +01:00
Liav A
fb0dee5a54
Meta: Force compilation with DWARF revision 4
...
We currently don't support DWARF revision 5 and LLVM/Clang might create
such debug info into our binaries in x86_64, which will lead to a crash
in CrashReporter that is unable to parse that information correctly.
2022-12-28 11:53:41 +01:00
Liav A
8c9128f36d
Documentation: Remove i686 support
2022-12-28 11:53:41 +01:00
Liav A
feeb25bcee
AK: Remove i686 support
2022-12-28 11:53:41 +01:00
Liav A
91db482ad3
Kernel: Reorganize Arch/x86 directory to Arch/x86_64 after i686 removal
...
No functional change.
2022-12-28 11:53:41 +01:00
Liav A
5ff318cf3a
Kernel: Remove i686 support
2022-12-28 11:53:41 +01:00
Liav A
32270dcd20
Tests: Remove i686 support
2022-12-28 11:53:41 +01:00
Liav A
b49c4eb94f
Ports: Remove i686 support
2022-12-28 11:53:41 +01:00
Liav A
e11dcd21c1
Applications: Remove i686 support
2022-12-28 11:53:41 +01:00
Liav A
c191daa337
DevTools: Remove i686 support
2022-12-28 11:53:41 +01:00
Liav A
cae736b5fa
HackStudio: Remove i686 support
2022-12-28 11:53:41 +01:00
Liav A
e1ee8f89f2
LibX86: Remove i686 support
2022-12-28 11:53:41 +01:00
Liav A
eca57006f6
LibCoredump: Remove i686 support
2022-12-28 11:53:41 +01:00
Liav A
1d26b46884
LibDebug: Remove i686 support
2022-12-28 11:53:41 +01:00
Liav A
a4c87fac56
LibELF+LibSymbolication: Remove i686 support
2022-12-28 11:53:41 +01:00
Liav A
2f7443c900
DynamicLoader: Remove i686 support
2022-12-28 11:53:41 +01:00
Liav A
92da98822a
LibC: Remove i686 support
2022-12-28 11:53:41 +01:00
Liav A
85b453c2e4
Kernel+Userland: Remove dependency on i386-specific registers
2022-12-28 11:53:41 +01:00
Liav A
445b5e1e94
Userland: Remove i686 support
2022-12-28 11:53:41 +01:00
Liav A
55f17fff36
Meta: Remove i686 target
2022-12-28 11:53:41 +01:00
Timothy Flynn
d3eb4f7a41
Base: Remove UserspaceEmulator from the list of manual pages to verify
...
This is used during CI to verify that some manual pages are up to date
with the output of the corresponding program's --help option. UE does
not exist on x86_64 yet, so we cannot run `UE --help`. Remove it from
this list for now.
2022-12-28 11:53:41 +01:00
Nico Weber
a38b3e112b
icc: Print profile creation time
2022-12-27 15:58:39 -08:00
Nico Weber
782ab0a11f
LibGfx: Read profile creation time from ICCProfile header
2022-12-27 15:58:39 -08:00
Nico Weber
bb1f6f71f1
LibC: Make timegm() force tm_isdst to 0
...
UTC is not affected by summer time, and the BSD manpage for timegm()
says "The tm_isdst [...] members are forced to zero by timegm()."
2022-12-27 15:58:39 -08:00
Nico Weber
7aa9413b53
Documentation: Fix a few typos
2022-12-27 15:58:39 -08:00
Nico Weber
7f52f45e9d
LibGfx: Start adding a utility for handling ICC color profiles
...
For now, this dumps file version and device class.
https://github.com/saucecontrol/compact-icc-profiles has good
test inputs.
2022-12-27 07:44:37 -07:00
Nico Weber
d8867f8077
LibGfx: Start adding a class for handling ICC color profiles
...
For now, this checks the magic number and reads file version and
device class.
2022-12-27 07:44:37 -07:00
Nico Weber
19d3821354
LibVideo: Fix two comment typos
2022-12-27 07:44:37 -07:00
thankyouverycool
352c1fec2d
Taskbar: Propagate more errors on widget population
2022-12-27 09:28:16 -05:00