Commit Graph

38464 Commits

Author SHA1 Message Date
Tim Schumacher
095eb8194e Ports: Replace manually linking libksba with a libtool patch 2022-06-03 20:50:01 +01:00
Tim Schumacher
c7faa3a229 Ports: Replace manually linking libjpeg with a libtool patch 2022-06-03 20:50:01 +01:00
Tim Schumacher
a97899c088 Ports: Replace manually linking libiconv with a libtool patch 2022-06-03 20:50:01 +01:00
Tim Schumacher
9e1de61613 Ports: Replace manually linking libgpg-error with a libtool patch 2022-06-03 20:50:01 +01:00
Tim Schumacher
9d3e8b3e57 Ports: Replace manually linking libgcrypt with a libtool patch 2022-06-03 20:50:01 +01:00
Tim Schumacher
c4f645f4a2 Ports: Replace manually linking libassuan with a libtool patch 2022-06-03 20:50:01 +01:00
Tim Schumacher
dadb6e1c15 Ports: Replace manually linking SDL2_ttf with a libtool patch 2022-06-03 20:50:01 +01:00
Tim Schumacher
16a34c521e Ports: Replace manually linking SDL2_net with a libtool patch 2022-06-03 20:50:01 +01:00
Tim Schumacher
546f398ff5 Ports: Replace manually linking SDL2_mixer with a libtool patch 2022-06-03 20:50:01 +01:00
Tim Schumacher
e7f8389d37 Ports: Replace manually linking SDL2_image with a libtool patch 2022-06-03 20:50:01 +01:00
Tim Schumacher
9b4b068166 Ports: Replace manually linking SDL2_gfx with a libtool patch 2022-06-03 20:50:01 +01:00
Idan Horowitz
34e193afa6 LibWeb: Reject invalid background-repeat values instead of crashing 2022-06-03 19:14:22 +01:00
Idan Horowitz
56ec781aea LibWeb: Support DocumentFragments in Node.prototype.cloneNode
In this case, "Do nothing" means do nothing *extra* aside from creating
a new instance.
2022-06-03 17:24:24 +01:00
Idan Horowitz
610afb21ac js: Create throw completions instead of raw error values on SyntaxError
This ensures that js's error printing logic is used instead of the
generic value printing logic, which then lets eshost correctly parse
thrown SyntaxErrors using the normal LibJS exception format.
2022-06-03 17:17:54 +01:00
Lorenzo Concas
a67a7229f8 WindowServer: Check that a menu is not null
If an application menu is null, WindowServer crashes
2022-06-03 12:30:32 +01:00
MacDue
5aad6a4378 Applets: Use spawn_or_show_error() for common spawn pattern 2022-06-03 12:29:56 +01:00
MacDue
5fd5a03d1f Applications: Use spawn_or_show_error() for common spawn pattern 2022-06-03 12:29:56 +01:00
MacDue
5e5a055455 Services: Use Core::Process::spawn() for common process spawn pattern 2022-06-03 12:29:56 +01:00
stelar7
e547f5887e LibWeb: Fix Array OOBs in the HTMLTokenizer
Accessing last() if there are no elements makes WebContent crash :^)
2022-06-03 12:29:11 +01:00
EWouters
997890c94e Ports/cmake: Update cmake to version 3.23.2 2022-06-02 23:26:14 +01:00
circl
06eca0a666 Meta: Add check if AvailablePorts.md is sorted 2022-06-02 23:18:06 +01:00
circl
83b21d4299 Ports: Re-sort AvailablePorts.md 2022-06-02 23:18:06 +01:00
circl
6b16430d01 Ports/powdertoy: Use the release build type
This should speed up the game
2022-06-02 23:18:06 +01:00
circl
ddfcefe311 Ports/luajit: Use HOST_CC instead of hardcoding gcc 2022-06-02 23:18:06 +01:00
circl
e51547986e Ports/luajit: Move warning to configure
Putting it in preconfigure did not work, as useconfigure wasn't enabled.
2022-06-02 23:18:06 +01:00
circl
f1111e99bf Ports/tinycc: Fix syntax error in backtrace patch
This typo prevented it from compiling.
2022-06-02 23:18:06 +01:00
stelar7
771e3b9868 LibJS: Stub out String.prototype.normalize 2022-06-02 23:04:27 +01:00
Xexxa
0239c79d3d Base: Add Misc. Symbols and Pictographs to font Katica Regular 10
1F32B, 1F32D, 1F336, 1F33E, 1F33F, 1F34E, 1F34F, 1F350, 1F35E, 1F369,
1F36D, 1F388, 1F397, 1F398, 1F39A, 1F39B, 1F39E, 1F3A2, 1F3A5, 1F3A7,
1F3A8, 1F3B2, 1F3B3, 1F3BF, 1F3C3, 1F3CA, 1F3CB, 1F3CC, 1F3DB, 1F3E0,
1F3E1, 1F3E5, 1F451, 1F452, 1F453, 1F484, 1F49F, 1F4A5, 1F4AB, 1F4B0,
1F4B1, 1F4B2, 1F4B3, 1F4B4, 1F4B5, 1F4B6, 1F4B7, 1F4BA, 1F4CC, 1F4D2,
1F4D3, 1F4DB, 1F4DE, 1F4E1, 1F4E2, 1F4E3, 1F4E4, 1F4E5, 1F4E6, 1F4E7,
1F4EE, 1F4F0, 1F4F8, 1F4F9, 1F4FB, 1F4FC, 1F4FD, 1F4FE
https://www.unicode.org/charts/PDF/U1F300.pdf
2022-06-02 23:13:22 +02:00
Karol Kosek
5f89369f67 LibGUI: Use default buttons in ColorPicker and FontPicker 2022-06-02 22:33:00 +02:00
Karol Kosek
c317275425 Taskbar: Use default buttons in ShutdownDialog 2022-06-02 22:33:00 +02:00
Karol Kosek
72be27e16c PixelPaint: Use default buttons in EditGuideDialog 2022-06-02 22:33:00 +02:00
Karol Kosek
9f1f1b8472 Userland: Use default buttons instead of manually handling return press
Besides simplifying the code, this will also draw outline for these
buttons as a cue for a user!
2022-06-02 22:33:00 +02:00
Karol Kosek
a232395b77 LibWeb: Check recursively if CSS functions contain var() or attr()
Previously, `var()` inside functions like `rgb()` wasn't resolved.

This will set the background color for badges in the New category on
https://ports.serenityos.net. :^)
2022-06-02 22:31:41 +02:00
Timon Kruiper
1072d523e2 Kernel: Initialize and use interrupts in the aarch64 Kernel
Now that everything is in place, we can actually use interrupts in the
aarch64 Kernel build. :^)
2022-06-02 13:14:12 +01:00
Timon Kruiper
dab6dbe893 Kernel: Add interrupt support to aarch64 RPi Timer driver
Since we can now build and use the IRQHandler class, we can implement
interrupt support for the Timer in the aarch64 build.
2022-06-02 13:14:12 +01:00
Timon Kruiper
8b77c61e7d Kernel: Use AK::NeverDestroyed<Timer> to store the timer class
For an upcoming change to support interrupts in this driver, this class
has to inherit from IRQHandler. That in turn will make this class
virtual, which will then actually call the destructor of the class. We
don't want this to happen, thus we have to wrap the class in a
AK::NeverDestroyed.
2022-06-02 13:14:12 +01:00
Timon Kruiper
a0b0c4e723 Kernel: Make RPi Timer::set_clock_rate static
This allows it to be called in UART without calling the Timer
constructor. This in turn allows the UART to be used before interrupts
are enabled.
2022-06-02 13:14:12 +01:00
Timon Kruiper
3cf8d3361e Kernel: Add support for handling interrupts on aarch64
There is currently some code duplication between the aarch64
implementation and the x86 one, but this initial implementation works
for now. :^)
2022-06-02 13:14:12 +01:00
Timon Kruiper
c959344c00 Kernel: Add simple implementation for InterruptManagement on aarch64
This class currently hardcodes the use of the Raspberry Pi interrupt
controller.
2022-06-02 13:14:12 +01:00
Timon Kruiper
5eac2b9f33 Kernel: Add driver for interrupt controller on the Raspberry Pi
This implements the simpler IRQController class and adds a
pending_interrupts() function to the class.
2022-06-02 13:14:12 +01:00
Timon Kruiper
f085903f62 Kernel: Move IRQController and InterruptManagement to Arch directory
These 2 classes currently contain much code that is x86(_64) specific.
Move them to the architecture specific directory. This also allows for a
simpler implementation for aarch64.
2022-06-02 13:14:12 +01:00
Timon Kruiper
63ee2781fb Kernel: Put Raspberry Pi devices into RPi namespace
This makes it clear in the code that these drivers are specific for the
Raspberry Pi devices.
2022-06-02 13:14:12 +01:00
Timon Kruiper
77f24056e0 Kernel: Disable interrupts when halting the aarch64 processor
This will actually halt the processor.
2022-06-02 13:14:12 +01:00
Timon Kruiper
846d9ae858 Kernel: Do not specify new alignment for aarch64
Using the alignment of 4 causes a panic in the aarch64 Kernel. Instead
just don't pass the flag, which will use the default alignment.
2022-06-02 13:14:12 +01:00
Timon Kruiper
cbe1717181 Kernel: Rename idt_init() to initialize_interrupts()
Also move the function out of the x86/Interrupts.h file into the generic
Interrupts.h file and add a stub for aarch64.
2022-06-02 13:14:12 +01:00
Timon Kruiper
02b94c6f0e Kernel: Add UnhandledInterruptHandler and SharedIRQHandler to aarch64 2022-06-02 13:14:12 +01:00
Timon Kruiper
d631a3daf6 Kernel: Add Interrupts/IRQHandler.cpp to the aarch64 build
This requires a few stubs such that the compiler won't complain.
2022-06-02 13:14:12 +01:00
Timon Kruiper
a4534678f9 Kernel: Implement InterruptDisabler using generic Processor functions
Now that the code does not use architectural specific code, it is moved
to the generic Arch directory and the paths are modified accordingly.
2022-06-02 13:14:12 +01:00
Timon Kruiper
ea9cf8b6ab Kernel: Separate NonMaskableInterruptDisabler into its own file
This is for the upcoming change to make InterruptDisabler class work for
the aarch64 build.
2022-06-02 13:14:12 +01:00
Timon Kruiper
9413fe9fe5 Kernel: Add interrupt related functions to Processor class
This adds {enable, disable}_interrupts() and are_interrupts_enabled()
to the Processor class, and also implements them for x86(_64) and
aarch64.
2022-06-02 13:14:12 +01:00