Commit Graph

29866 Commits

Author SHA1 Message Date
Ben Wiederhake
5e9cf47627 Documentation: Recommend a comment style 2021-11-05 21:07:35 +01:00
Liav A
066b1183cd Kernel: Return ENOTIMPL when trying to read from SysFS inodes
Instead of asserting, just return reasonable error back to userland.
2021-11-05 16:26:45 +02:00
Luke Wilde
b8db0ddc70 LibJS: Implement Temporal.ZonedDateTime.prototype.withCalendar 2021-11-05 09:49:47 +01:00
Luke Wilde
58bb73b60f LibJS: Implement Temporal.ZonedDateTime.prototype.withTimeZone 2021-11-05 09:49:47 +01:00
Luke Wilde
d5f2745a19 LibJS: Implement Temporal.ZonedDateTime.prototype.withPlainDate 2021-11-05 09:49:47 +01:00
Luke Wilde
132a56f07c LibJS: Implement Temporal.ZonedDateTime.prototype.withPlainTime 2021-11-05 09:49:47 +01:00
Andreas Kling
c098a6495b LibGUI: Use default Button and TextBox heights in InputBox 2021-11-05 01:37:00 +01:00
Andreas Kling
7a1a8d267d WindowServer: Add menus to open menu stack before making them visible
This prevents an issue where the first mouse event in a newly opened
would not get handled because we didn't think the menu was open yet.
2021-11-05 01:37:00 +01:00
Andreas Kling
239520ae54 WindowServer: Remove redundant Window::set_visible() in Menu::do_popup()
We're already calling MenuManager::open_menu(), which will take care of
making the menu window visible if needed.
2021-11-05 01:37:00 +01:00
Andreas Kling
5f8c949ea1 WindowServer: Remove redundant check in MenuManager::open_menu()
We've already returned early if the menu is open, so there's no need to
verify that it isn't present in the stack of open menus before pushing
it onto said stack.
2021-11-05 01:37:00 +01:00
Linus Groh
1dc32fed8f LibJS: Adjust approximated result in year_from_time() if necessary 2021-11-05 01:18:27 +01:00
Linus Groh
37146e305a LibJS: Account for leap days in year_from_time()
A year has 365.2425 days, not 365. This lead to off-by-one results for
time values (milliseconds) near the end of a year, which would lead to
calculation issues and crashes in other AOs.

Fixes #10796.
2021-11-05 01:09:18 +01:00
Aziz Berkay Yesilyurt
bfb36fec89 WindowServer: Return ShareableBitmap() on fail
WindowServer returns {} on non-existing screen index,
however shot program hangs instead of retriving an empty
ShareableBitmap. With this change, the function returns an empty
ShareableBitmap and shot exits gracefully.
2021-11-05 00:10:23 +01:00
Aziz Berkay Yesilyurt
7f8794f902 shot: Fix hanging due to zero sized Rect
shot was refactored to retrive crop_region,
but it is empty when -r is not used.
2021-11-05 00:10:23 +01:00
Linus Groh
0dae7c9420 LibJS: Replace a couple of TODO()'s in Temporal with InternalError
This helps us to distinguish between crashes because of incomplete code
paths and crashes because of genuine bugs more easily when running
test262.
2021-11-04 23:59:40 +01:00
Linus Groh
dd1a808f7e LibJS: Remove TODO() from implemented code path
Well, that's embarassing. TODO()'d it, implemented it, forgot to remove
the TODO().
2021-11-04 23:59:40 +01:00
Elyse
5c845dbfcb SoundPlayer: Allow playback progress slider jump to cursor
This fix allows us to move the knob wherever we click inside the slider.
The 'jump_to_cursor()' mechanism wasn't working properly because the
player was overwriting the value we had just clicked.
2021-11-04 23:45:26 +01:00
networkException
2462fb5f0e LibWeb: Convert NumberType::Integer to i64 instead of i32 2021-11-04 23:45:07 +01:00
Ben Wiederhake
f9167c9265 Base+LibCore: Store booleans in human-readable format
Fixes #10640.
2021-11-04 23:44:02 +01:00
Ben Wiederhake
3e420b7590 Meta: Remove useless lint-ipc-ids.sh script
This script was silently broken in commit
62af6cd4f9.
2021-11-05 00:17:01 +03:30
Ben Wiederhake
8f65153b03 Meta: Run IPC magic number linter during CI and pre-commit 2021-11-05 00:17:01 +03:30
Ben Wiederhake
585554a245 Meta: Implement checker for IPC magic number collisions 2021-11-05 00:17:01 +03:30
Ben Wiederhake
93356ee3df IPCCompiler: Remove now-unused ability to hardcode magic number 2021-11-05 00:17:01 +03:30
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: https://github.com/tc39/proposal-temporal/commit/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: https://github.com/tc39/proposal-temporal/commit/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: https://github.com/tc39/proposal-temporal/commit/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