Simon Wanner
539adf5b9c
LibWeb: Support WOFF in font-face
2022-04-09 23:48:18 +02:00
Simon Wanner
bf6d64c199
LibGfx: Add a loader the Web Open Font Format (WOFF)
...
This format is 'just' a zlib compressed wrapper for TrueType/OpenType
which makes implementing it rather convenient. :^)
2022-04-09 23:48:18 +02:00
Simon Wanner
f386b0d43c
LibWeb: Migrate SC::FontLoader from TTF::Font to Gfx::VectorFont
2022-04-09 23:48:18 +02:00
Simon Wanner
17baf05c5a
LibGfx: Migrate Typeface from TTF::Font to Gfx::VectorFont
2022-04-09 23:48:18 +02:00
Simon Wanner
5136c5ae1a
LibGfx: Move ScaledFont and new base class VectorFont out of TTF
2022-04-09 23:48:18 +02:00
Simon Wanner
206d6ece55
LibGfx: Move other font-related files to LibGfx/Font/
2022-04-09 23:48:18 +02:00
Simon Wanner
6f8fd91f22
LibGfx: Move TTF files from TrueTypeFont/ to Font/TrueType/
2022-04-09 23:48:18 +02:00
Idan Horowitz
e84bbfed44
Kernel: Remove big lock from sys$mkdir
...
This syscall doesn't access any unprotected shared data.
2022-04-09 23:46:02 +02:00
Idan Horowitz
165a23b68c
Kernel: Remove big lock from sys$rename
...
This syscall doesn't access any unprotected shared data.
2022-04-09 23:46:02 +02:00
Idan Horowitz
5c064d3e8e
Kernel: Remove big lock from sys$rmdir
...
This syscall doesn't access any unprotected shared data.
2022-04-09 23:46:02 +02:00
Idan Horowitz
d4ce43cf45
Kernel: Remove big lock from sys$statvfs
...
This syscall doesn't access any unprotected shared data.
2022-04-09 23:46:02 +02:00
Idan Horowitz
4ae93179f1
Kernel: Remove big lock from sys$symlink
...
This syscall doesn't access any unprotected shared data.
2022-04-09 23:46:02 +02:00
Idan Horowitz
1474b18070
Kernel: Remove big lock from sys$link
...
This syscall doesn't access any unprotected shared data.
2022-04-09 23:46:02 +02:00
Idan Horowitz
fa360f7d88
Kernel: Remove big lock from sys$unlink
...
This syscall doesn't access any unprotected shared data.
2022-04-09 23:46:02 +02:00
Idan Horowitz
5a96260e25
Kernel: Remove big lock from sys$setsockopt
...
This syscall doesn't access any unprotected shared data.
2022-04-09 23:46:02 +02:00
Idan Horowitz
c2372242b1
Kernel: Remove big lock from sys$getsockopt
...
This syscall doesn't access any unprotected shared data.
2022-04-09 23:46:02 +02:00
Idan Horowitz
849c227f72
Kernel: Remove big lock from sys$shutdown
...
This syscall doesn't access any unprotected shared data.
2022-04-09 23:46:02 +02:00
Idan Horowitz
e620487b66
Kernel: Remove big lock from sys$connect
...
This syscall doesn't access any unprotected shared data.
2022-04-09 23:46:02 +02:00
Idan Horowitz
9547a8e8a2
Kernel: Remove big lock from sys$close
...
This syscall doesn't access any unprotected shared data.
2022-04-09 23:46:02 +02:00
Idan Horowitz
0297349922
Kernel: Remove big lock from sys$chown
...
This syscall doesn't access any unprotected shared data.
2022-04-09 23:46:02 +02:00
Idan Horowitz
8458313e8a
Kernel: Remove big lock from sys$fchown
...
This syscall doesn't access any unprotected shared data.
2022-04-09 23:46:02 +02:00
Idan Horowitz
f986a3b886
Kernel: Remove big lock from sys$bind
...
This syscall doesn't access any unprotected shared data.
2022-04-09 23:46:02 +02:00
Idan Horowitz
2c025d6334
Kernel: Move NNRP<Socket>s instead of copying in queue_connection_from
2022-04-09 23:46:02 +02:00
Idan Horowitz
4a270c93ed
Kernel: Accept NNRP<Socket> instead of RP<Socket> in release_for_accept
...
This value is always non-null, so let's make it explicit.
2022-04-09 23:46:02 +02:00
martinfalisse
472a3df03b
LibGUI: Calculate width of table headers when there is no content
...
In order to correctly calculate the width of the header add the
top left x coordinate + the width of the content. Previously was
using the width returned by the visible_content_rect(), which
when there was no content would be null. This would be problematic
as it would lead to not rendering the headers of tables when there was
no content (for example in the SystemsMonitor in the Networks tab).
Now, regardless of whether there is content or not in the table,
the header is visible.
2022-04-09 22:07:16 +02:00
Luke Wilde
1682b0b6d8
Kernel: Remove big lock from sys$set_coredump_metadata
...
The only requirement for this syscall is to make
Process::m_coredump_properties SpinlockProtected.
2022-04-09 21:51:16 +02:00
Julen Ruiz Aizpuru
343aec2200
Meta: Fix grammar in CONTRIBUTING.md
...
It needs a plural instead of the possesive form.
2022-04-09 18:19:00 +01:00
Igor Pissolati
7f45a9e9c1
LibWeb: Add "which" attribute to UIEvent
...
This is non-standard but is supported by all major browsers.
2022-04-09 18:27:24 +02:00
Igor Pissolati
1b94b4c593
LibWeb: Bring MouseEvent a bit closer to spec
2022-04-09 18:27:24 +02:00
Igor Pissolati
a2bc97a9c2
LibWeb: Skip anchor activation behavior if the click event was cancelled
2022-04-09 18:27:24 +02:00
Jelle Raaijmakers
cc411b328c
Kernel: Remove big lock from sys$accept4
...
The only thing we needed to check is whether `socket.accept()` returns
a socket, and if not, we go back to blocking again.
2022-04-09 17:53:18 +02:00
Jelle Raaijmakers
14fc05e912
Kernel: Verify mutex big lock behavior
...
These two methods are big lock specific, so verify our mutex' behavior.
2022-04-09 15:55:20 +02:00
Jelle Raaijmakers
bb02e9a7b9
Kernel: Unblock big lock waiters correctly
...
If the regular exclusive and shared lists were empty (which they
always should be for the big lock), we were not unblocking any waiters.
2022-04-09 15:55:20 +02:00
Andreas Kling
cc77c82383
LibWeb: Follow relaxed CSS clamping rules in flexbox layout
...
AFAICT, css-values-4 tells us that clamping numbers to a range where
min>max is okay. That means we can't use AK::clamp() since it will
VERIFY that max>=min.
This patch adds a css_clamp() helper (locally in FFC for now).
This fixes an issue where a bunch of sites were crashing due to the
VERIFY in AK::clamp().
2022-04-09 14:50:05 +02:00
Andreas Kling
f21eb90294
LibWeb: Remove debug spam about proxy configuration lookups
2022-04-09 14:50:05 +02:00
Ali Mohammad Pur
b16918ccb9
pro: Only attempt to parse a proxy url if it is provided
...
Otherwise we'd end up trying to parse an empty string as a proxy url
which is certainly not one.
2022-04-09 14:36:28 +02:00
Ali Mohammad Pur
a42e03b01a
Browser+LibWeb+WebContent: Implement per-URL-pattern proxies
...
...at least for SOCKS5.
2022-04-09 12:21:43 +02:00
Ali Mohammad Pur
f9fc28931f
pro: Accept an optional proxy to tunnel the download through
...
For now, this only accepts the format `socks5://ip:port` (i.e. the
hostname has to be an ipv4, and the port must be present).
2022-04-09 12:21:43 +02:00
Ali Mohammad Pur
45867435c4
RequestServer+LibProtocol: Allow users to specify a per-request proxy
2022-04-09 12:21:43 +02:00
Ali Mohammad Pur
cd9d740107
LibCore+RequestServer: Add support for SOCKS5 proxies
2022-04-09 12:21:43 +02:00
Ali Mohammad Pur
bd5403adf1
LibTLS: Mark the underlying stream as nonblock
...
LibTLS does not want to be blocked.
2022-04-09 12:21:43 +02:00
Jesse Buhagiar
e2f1da8cec
Ports: Add quake3 port :^)
2022-04-09 11:40:33 +02:00
Jesse Buhagiar
c08dfe063a
LibGL: Add stub for glCopyTexSubImage2D
2022-04-09 11:40:33 +02:00
Jesse Buhagiar
6e9ea2f21f
LibGL: Implement glArrayElement
2022-04-09 11:40:33 +02:00
Jesse Buhagiar
85985e2cf4
LibGL: Implement gl_tex_parameterfv
...
This is the vectorized version of `gl_tex_parameter`, which sets the
parameters of a texture's sampler. We currently only support one single
pname, `GL_TEXTURE_BORDER_COLOR`, which sets the border color of a texel
for if it is sampled outside of a mip-map's range.
2022-04-09 11:40:33 +02:00
Jesse Buhagiar
c509e0c73c
LibGL: Add border_color
to Sampler2D
...
We need this to plumb the per-sampler border color into the GPU's
sampler border color
2022-04-09 11:40:33 +02:00
Jesse Buhagiar
b928fdc3ee
LibGL: Add stub glClipPlane
2022-04-09 11:40:33 +02:00
Jesse Buhagiar
c9f44c746a
LibGL+LibSoftGPU: Add GL_ADD
Texture Environment
2022-04-09 11:40:33 +02:00
Lady Gegga
e34f199997
WebServer: Add utf-8 charset to Content-Type header for text/plain
2022-04-09 01:14:14 +02:00
Andreas Kling
45db35ad04
LibWeb: Fix double-sized box model metrics on inline replaced elements
...
We were mistakenly treating inline replaced elements as if they are the
start of a regular display:inline element. This meant that we collected
the horizontal start and end metrics from the box model, and then added
those to the inline-level item produced by InlineLevelIterator.
This effectively meant that <img>, <svg> and other replaced elements got
double-sized values for margin/border/padding on the left and right
sides. (Which manifested as a mysterious margin around the element.)
2022-04-08 23:12:04 +02:00