Commit graph

44883 commits

Author SHA1 Message Date
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
thankyouverycool
10626e6c6c Taskbar: Load Assistant's AppFile on window creation
Fixes crashing when spawning Assistant by shortcut
2022-12-27 09:28:16 -05:00
Jelle Raaijmakers
7d5839f793 LibDesktop: Do not quit screensaver on immediate mouse move
Let's delay this way of quitting the screensavers by 750ms. :^)
2022-12-27 12:38:08 +01:00
Jelle Raaijmakers
18b6bdb563 Demos+LibDesktop: Centralize screensaver logic
We have 3 demos with pretty similar window logic and quitting behavior
on user activity, so centralize that into `Desktop::Screensaver`.
2022-12-27 12:38:08 +01:00
Florian Cramer
379e4a2432 Browser: Escape question marks for google.com urls in content filter
This makes it possible to load today''s doodle, which is loaded from
http://www.google.com/logos/doodles/...
2022-12-27 07:28:25 +03:30
Florian Cramer
af2ffcaba8 AK: Make StringUtils::matches() handle escaping correctly
Previously any backslash and the character following it were ignored.
This commit adds a fall through to match the character following the
backslash without checking whether it is "special".
2022-12-27 07:28:25 +03:30
Vetrox
0e26f2657e Shell: Add where builtin
The builtin is based on the behaviour of the z-shell.
Namely it tries to resolve every argument one by one.

When resolving (in the order below) the following results can occur:
  1. The argument is a shell built-in command. Then print it.
  2. The argument is an alias. In this case we print the mapped value.
  3. The argument was found in the `PATH` environment variable.
     In this case we print the resolved absolute path
     and try to find more occurences in the `PATH` environment variable.
  4. None of the above. If no earlier argument got resolved,
     we print the error `{argument} not found`.

If at least one argument got resolved we exit with exit code 0,
otherwise 1.

By not using Core::File to resolve the executable in the environment
but rather using a modified version of the code we print every
matching executable of the given name. This behaviour matches
up with the z-shell.

The builtin has the following flags to modify the behaviour according
to the users needs:
  - `-p --path-only`: This skips the built-in and alias checks
  (step 1 & 2)
  - `-s --follow-symlink`: This follows the symlinks of an executable to
  its symlink-free location.
  - `-w --type`: This displays the type of the found object
  without any additional descriptive information.
2022-12-27 07:25:42 +03:30
Karol Kosek
8238f926fd LibArchive+Utilities: Port ZipOutputStream to Core::Stream 2022-12-27 07:24:07 +03:30
Karol Kosek
012645bdf9 Utilities/zip: Read files using Core::Stream::File 2022-12-27 07:24:07 +03:30
Nico Weber
8932b28b8a AK: Mark Error::from_ functions as [[nodiscard]]
Prevents mistakes like the one fixed in #16672.
2022-12-26 13:56:13 -05:00
Nico Weber
c96e663b0a LibCompress: Add two missing return statements 2022-12-26 13:56:13 -05:00
Tom
9d5049230c LibWeb: Clamp {row,column} spans if outside of grid
A bug was found where grid items were being drawn outside of the grid if
the item had a large span and the grid was defined as having gaps
between the rows/columns.

This was caused by an erroneous calculation of the
{row,column}_{start,span} properties.
2022-12-26 16:02:48 +01:00
Timothy Flynn
ba86011fab LibWeb: Add missing return statement in an element scrolling error case 2022-12-26 09:56:22 -05:00
konrad
88d0d0d90d Kernel: Add PMCCNTR_EL0, Performance Monitors Cycle Count Register 2022-12-26 14:11:27 +01:00
konrad
e1c3bf0ec0 Kernel: Add NZCV, Condition Flags 2022-12-26 14:11:27 +01:00
konrad
e7d4bbcde8 Kernel: Add MIDR_EL1, Main ID Register
This register is already provided in a separate class
but will be migrated here for uniform access
2022-12-26 14:11:27 +01:00
konrad
d0b73352cc Kernel: Add CNTFRQ_EL0, Counter-timer Frequency Register 2022-12-26 14:11:27 +01:00
konrad
91c3d7199f Kernel: Add MPIDR_EL1, Multiprocessor Affinity Register 2022-12-26 14:11:27 +01:00
konrad
d80d7744b6 Kernel: Add ID_AA64ISAR0_EL1, Instruction Set Attribute Register 0 2022-12-26 14:11:27 +01:00
Tim Ledbetter
fd3639ecba PixelPaint: Erase old active layer boundary when active layer changes 2022-12-26 09:40:11 +01:00
Stephan Unverwerth
60c9e3bfc6 Demos: Remove VirGLDemo
All interesting code from the demo now lives in LibVirtGPU.
2022-12-26 09:39:20 +01:00
Stephan Unverwerth
07053d32dd Kernel/Graphics: Increase VirtIO GPU transfer buffer size to 4MiB
This is necessary to allow transferring frame buffers larger than
~500x500 pixels back to user space. Until the buffer management is
improved this allows us to at least test the existing game ports.
2022-12-26 09:39:20 +01:00
Stephan Unverwerth
2658351fa6 LibVirtGPU: Adopt rendering code from VirGLDemo 2022-12-26 09:39:20 +01:00
Stephan Unverwerth
1ec791fcd0 LibVirtGPU: Adopt device initialization code from VirGLDemo 2022-12-26 09:39:20 +01:00
Stephan Unverwerth
086c7c4c88 LibVirtGPU: Create and initialize device from file descriptor 2022-12-26 09:39:20 +01:00
Stephan Unverwerth
4b792cb7be LibVirtGPU: Replace magic values with command bitfields 2022-12-26 09:39:20 +01:00
Stephan Unverwerth
93b5af932e LibVirtGPU: Add utility header for command flag bitfields 2022-12-26 09:39:20 +01:00
Stephan Unverwerth
65a1ebcccf LibVirtGPU: Add enum for Gallium texture formats 2022-12-26 09:39:20 +01:00
Stephan Unverwerth
0993aba321 LibVirtGPU: Add length verification to append_create_shader() 2022-12-26 09:39:20 +01:00
Stephan Unverwerth
140338670a LibVirtGPU: Make depth and color clearing separate functions 2022-12-26 09:39:20 +01:00
Stephan Unverwerth
03884fad74 LibVirtGPU: Remove hard coded primitive type in append_draw_vbo() 2022-12-26 09:39:20 +01:00
Stephan Unverwerth
b5acfba487 LibVirtGPU: Improve append_set_framebuffer_state_no_attach()
Remove hardcoded framebuffer size and add argument verification.
2022-12-26 09:39:20 +01:00
Stephan Unverwerth
4a4aa23aed LibVirtGPU: Remove hardcoded size from append_viewport() 2022-12-26 09:39:20 +01:00
Stephan Unverwerth
7a2b9ad164 LibVirtGPU: Drop gl_ prefix from CommandBufferBuilder methods 2022-12-26 09:39:20 +01:00
Stephan Unverwerth
b220ed6b5c LibVirtGPU: Use c++ style casts in CommandBuilder 2022-12-26 09:39:20 +01:00
Stephan Unverwerth
44b2a746ca LibVirtGPU: Improve type safety of encode_command()
ObjectType is now passed as an enum instead of a plain number. The
underlying type for both ObjectType and VirGLCommand have been reduced
to u8 to make sure they fit in the encoded command. Command length is
verified to not overflow u16.
2022-12-26 09:39:20 +01:00
Stephan Unverwerth
ce57174802 LibVirtGPU: Make BindTarget an enum and move it into VirtGPU::Protocol 2022-12-26 09:39:20 +01:00
Stephan Unverwerth
51ac0d73a3 LibVirtGPU: Move VirGLDemo protocol code into VirtGPU namespace 2022-12-26 09:39:20 +01:00
Stephan Unverwerth
a95eea5ae2 LibVirtGPU: Add newlines between CommandBuilder methods 2022-12-26 09:39:20 +01:00
Stephan Unverwerth
255b12ea97 LibVirtGPU: Remove unnecessary BufferBuilder constructor deletion
Since there is a non-default constructor this line is not needed.
2022-12-26 09:39:20 +01:00
Stephan Unverwerth
a34998fb76 LibVirtGPU: Adopt virgl protocol files from VirGLDemo 2022-12-26 09:39:20 +01:00
Stephan Unverwerth
bd7931ff23 LibGPU+LibVirtGPU: Allow loading the driver and instantiating the device
This adds LibVirtGPU to the list of allowed drivers in LibGPU and adds a
factory method to create the device to libVirtGPU.
2022-12-26 09:39:20 +01:00
Stephan Unverwerth
c52abe0bea LibVirtGPU: Add a new GPU device that talks to our VirtIO-GPU driver
At this moment this only contains function stubs.
2022-12-26 09:39:20 +01:00
Stephan Unverwerth
3b2ded1d44 LibGPU+LibSoftGPU: Move size and pixel format information to GPU::Image
Size and format information are the same for every implementation and do
not need to be virtual. This removes the need to reimplement them for
each driver.
2022-12-26 09:39:20 +01:00
Thomas Keppler
dc8be499e6 WebServer: Use new String type internally as much as possible
Here, we try to use the new String type for everything internal,
keeping the public interface and the interface to other code the same.
2022-12-26 09:38:03 +01:00
Thomas Keppler
1d6528b94b WebServer: Use new String type for default option values
We've also pulled out the default root path instead of folding it in
with the receiving variables, so that it's uniform across all options
with default values.
2022-12-26 09:38:03 +01:00
Thomas Keppler
5d305845e3 WebServer: Require document root and credentials as config init params
Now, there is nothing that can react to `set_...()` calls, so
offering this possibility can cause wrong assumptions as to what one
can do as soon as a WebServer instance has launched.

The main program can still decide whether to supply the optional
credentials or not, but this way, the configuration can become a Value
Object that won't change after initial creation.
2022-12-26 09:38:03 +01:00
Thomas Keppler
bb91857885 WebServer: Rename {real_}root_path to {real_}document_root_path
The concept of a "document root" seems to be a de-facto industry
standard and doesn't make you wonder what kind of root path is meant.
2022-12-26 09:38:03 +01:00
Timothy Flynn
4abafbbe3c LibIPC: Remove requirement that Variant types must begin with Empty
This is no longer required by the decoder.
2022-12-26 09:36:16 +01:00