Commit graph

29693 commits

Author SHA1 Message Date
Ben Wiederhake
2798a19c70 LibC+LookupServer: Use u32 for the endpoint magic
That's how LibIPC treats it, too.
2021-11-05 00:17:01 +03:30
Ben Wiederhake
34a8ee6da5 LibC+LookupServer: Compute magic number to avoid hardcoding 2021-11-05 00:17:01 +03:30
Ben Wiederhake
0d6c8afa4e SQLServer: Remove unnecessary magic number 2021-11-05 00:17:01 +03:30
Jelle Raaijmakers
a4b1c0fd0c Kernel: Process available VMWare mouse events immediately
The Qemu I8042 controller does not send one IRQ per event, it sends
over four since it will not stop trying to emulate the PS/2 mouse.

If the VMWare backdoor is active, a fake I8042 mouse event will be sent
that we can then use to check if there are VMWare mouse events present.
However, we were only processing one mouse event at a time, even though
multiple events could have been queued up. Luckily this does not often
lead to issues, since after the first IRQ we would still get three
additional interrupts that would then empty the queue.

This change makes sure we always empty the event queue immediately,
instead of waiting on the next interrupt to happen. Functionally this
changes nothing - it could merely improve latency by not waiting for
new interrupts to come in.

Coincidently, this brings our implementation closer to how Linux deals
with the VMMouse.
2021-11-04 18:53:37 +01:00
Jelle Raaijmakers
8a65a9c30f Kernel: Clean up VMWareMouseDevice and VMWareBackdoor
No functional changes.
2021-11-04 18:53:37 +01:00
Tor-björn Claesson
53c8faaafc LibCore: Trim trailing whitespaces from ConfigFile values
Previously, trailing whitespaces were not removed from values in
config files. This could cause errors with poorly formatted files.
This commit fixes this by trimming whitespaces from values in
ConfigFile::reparse().
2021-11-04 18:53:17 +01:00
EWouters
20f730dc1c Ports/libtheora: Change download link to mirror with TLS1.2 support
Fixes download on Mac where an old version of LibreSSL won't redirect to
the download mirror.
2021-11-04 17:14:33 +01:00
Linus Groh
38809f90d9 LibJS: Introduce & use FormatISOTimeZoneOffsetString
This is a normative change in the Temporal spec.

See: 6b7a993
2021-11-04 16:45:54 +01:00
Linus Groh
d129e1ff29 LibJS: Move common code into RejectObjectWithCalendarOrTimeZone
This is an editorial change in the Temporal spec.

See: 5654fe0
2021-11-04 16:17:26 +01:00
Linus Groh
bb60629d3b LibJS: Update ToTemporalTimeRecord to not require all properties
This is a normative change in the Temporal spec.

See: 84b7d53
2021-11-04 16:17:26 +01:00
Andreas Kling
f7f6526082 WindowServer: Reevaluate hover state after dismissing window switcher
This makes the cursor update properly if it was above the window
switcher while it was visible, and something underneath it wants to use
something other than the default arrow cursor.
2021-11-04 16:10:40 +01:00
Andreas Kling
6c64721955 WindowServer: Reevaluate hover state when switching highlight windows
This makes the mouse cursor update nicely when another window is brought
directly under it by using the window switcher. :^)
2021-11-04 16:10:40 +01:00
Andreas Kling
dd8a459a1f WindowServer: Rename reevaluate_hovered_window()
...to reevaluate_hover_state_for_window(). This name is not super great
either, but at least it doesn't sound like the window is necessarily
currently being hovered.
2021-11-04 16:10:40 +01:00
Luke Wilde
c001926752 LibJS: Implement Temporal.ZonedDateTime.prototype.startOfDay 2021-11-04 12:11:33 +01:00
Maciej
98accad9ba Base: Add some arrow glyphs to KaticaRegular10
U+2190-U+21BB without U+21AD and U+21AE
2021-11-03 21:54:04 +01:00
Andreas Kling
99a33c9a67 Revert "LibIPC: Use a zero-delay timer for message processing"
This reverts commit 3bed7d5a5e.

As discovered by tomuta, this caused a large increase in WindowServer
CPU usage.
2021-11-03 19:56:47 +01:00
Andreas Kling
60a245b065 LibGUI: Don't ask WindowServer to destroy windows during app teardown
This makes teardown faster since we don't have to wait for responses to
each destroy_window request. It also avoids doing IPC during teardown,
which is a general source of problems.
2021-11-03 19:56:47 +01:00
Andreas Kling
24ea6a8ce7 LibGUI: Add GUI::Application::in_teardown()
This will return true after ~GUI::Application() has been entered.
2021-11-03 19:56:47 +01:00
Luke Wilde
d1a5254e41 LibJS: Implement Temporal.PlainDateTime.prototype.round 2021-11-03 19:48:08 +01:00
Luke Wilde
84f79d4c51 LibJS: Implement Temporal.ZonedDateTime.prototype.hoursInDay 2021-11-03 17:55:04 +01:00
Luke Wilde
23ef6e1a9e LibWeb: Change Document.{hidden,visibilityState} spec links to HTML
The page visibility API was moved to HTML here: 9bed042ab3
2021-11-03 17:48:05 +01:00
Andreas Kling
652042e680 Revert "Kernel: Prevent VMWareMouseDevice from handling invalid mouse packets"
This reverts commit 4131b35851.

We're swallowing way too many mouse events from QEMU with this code
enabled. Something is not right, so let's revert it for now.
2021-11-03 16:48:42 +01:00
FrHun
82d7934959 LibGUI: ScrollableContainerWidget GML autocomplete 2021-11-03 16:13:19 +01:00
FrHun
54f459e020 LibGUI: AbstractScrollableWidget GML/JSON 2021-11-03 16:13:19 +01:00
FrHun
7110afe9bf LibGUI: ScrollableContainerWidget respect size 2021-11-03 16:13:19 +01:00
FrHun
a59e9a7a81 LibGUI: ScrollableContainerWidget consider frame
Do not consider the space that is taken up by the frame, as useable
size.
2021-11-03 16:13:19 +01:00
FrHun
dab7ec190e LibGUI: Margins for AbstractScrollableWidget
Implement, and use internally, content_margins() from Widget.
Since AbstractScrollableWidget already has a method called content_size,
the convenience method, with the same name, in Widget has to be
explicitly called.
2021-11-03 16:13:19 +01:00
frhun
a4eeb6f9eb LibGUI: ToolbarContainer account for frame width
Because Frame now has content_margins, and the layouts now respect
them, this extra margin setting is no longer needed.
2021-11-03 16:13:19 +01:00
FrHun
6964c2a2db LibGUI: Implement content margins for Frame 2021-11-03 16:13:19 +01:00
FrHun
54605794f9 Applications: Remove border from GroupBox margins 2021-11-03 16:13:19 +01:00
FrHun
a21ea5f10f LibGUI: Invalidate GroupBox layout on font change 2021-11-03 16:13:19 +01:00
FrHun
70e5a77794 LibGUI: Consider content_margins for BoxLayout 2021-11-03 16:13:19 +01:00
FrHun
4955769ab8 LibGUI: Implement content_margins for GroupBox 2021-11-03 16:13:19 +01:00
FrHun
72139e1262 LibGUI: Add content margins
Introduce the basic interface through which widgets can define a
rect relative to which Layout margins are now applied.
2021-11-03 16:13:19 +01:00
FrHun
8249ea792e LibGUI+FileManager: Clarify Widget margins name
Even though they are called content_margins,
they are actually only ever used to determine where
a Widget is supposed to be grabbable.
So all methods and members are renamed accordingly.
2021-11-03 16:13:19 +01:00
FrHun
a261e4d9d5 LibGUI+Settings: Remove superfluous margin sets
The margin set is completely superfluous, because it only ever affects
grabbing (in splitters), which is never used for these classes.
2021-11-03 16:13:19 +01:00
FrHun
a08685b9a4 LibGUI: Add utility functions to Margins 2021-11-03 16:13:19 +01:00
Lady Gegga
5275788f1e Base: Add new bitmap font Tiny Regular 2021-11-03 11:28:52 +01:00
EWouters
617c06e82e Ports: Patch Makefile to use normal soname flags on Mac
Remove if statement altogether, as suggested by timschumi.
2021-11-03 11:22:50 +01:00
EWouters
3a8c423447 Ports: Update zstd to version 1.5.0 2021-11-03 11:22:50 +01:00
Tim Schumacher
37aa75c370 Ports: Use immutable tarballs for libsodium
The "stable" tarballs appear to be continuously updated after the
release.
2021-11-03 11:10:38 +01:00
Luke Wilde
e42431ec7c LibJS: Implement Temporal.PlainDateTime.prototype.toJSON 2021-11-03 11:03:30 +01:00
Luke Wilde
2a98b521b4 LibJS: Implement Temporal.PlainDateTime.prototype.toLocaleString 2021-11-03 11:03:30 +01:00
Luke Wilde
b2bbd4d2b8 LibJS: Implement Temporal.PlainDateTime.prototype.toString 2021-11-03 11:03:30 +01:00
kleines Filmröllchen
f922ffb032 LibGUI: Make ComboBox text editor release focus when Escape is pressed 2021-11-03 10:48:25 +01:00
kleines Filmröllchen
1349b8b10f LibGUI: Make ComboBox report on_change for set_selected_index
As navigate and navigate_relative also do this, it seems reasonable to
have it here.
2021-11-03 10:48:25 +01:00
Andreas Kling
642915215f LibWeb: Size non-loaded <img> to fit the replacement (alt) text
We achieve this by simply setting the intrinsic size to the size needed
to render the replacement text.

This fixes a long-standing issue where non-loaded images would default
to the goofy-looking 300x150 fallback size for replaced elements.
2021-11-03 10:27:23 +01:00
Andreas Kling
409b20e316 LibMarkdown: Allow nested links
This fixes an issue where the linked images in our README.md didn't
get turned into images.
2021-11-03 10:21:50 +01:00
sin-ack
edb3e71c1b WindowServer: Add missing window_was_constructed call
In 2e6bb987a3 the "did_construct" API in
Core::Object was removed, since it had only one user. For a replacement,
the Window would manually call the frame's "frame_was_constructed"
method. However, WindowServer::Window has two constructors, and only one
of them called this method. This caused windows to spawn without
buttons and various other breakage that spawned from this.
2021-11-03 09:05:09 +01:00
Brendan Coles
5537334f66 Ports: quake: Do no set PATH environment variable in package.sh 2021-11-02 23:04:22 +01:00