Commit graph

40897 commits

Author SHA1 Message Date
Tim Schumacher
39477e923f Toolchain: Remove references to -ldl 2022-09-05 10:12:02 +01:00
Tim Schumacher
da0e28dccc LibC: Remove the LibDl interface target 2022-09-05 10:12:02 +01:00
Tim Schumacher
8778bb3473 Everywhere: Fully remove the separate LibDl directory 2022-09-05 10:12:02 +01:00
Tim Schumacher
226608a48f LibDl: Move the dlfcn implementation to LibC 2022-09-05 10:12:02 +01:00
Tim Schumacher
27bfb81702 Everywhere: Refer to dlfcn*.h by its non-prefixed name 2022-09-05 10:12:02 +01:00
electrikmilk
9b728fbe56 Base: Improve 1 emoji
 - U+2614 UMBRELLA WITH RAIN DROPS
2022-09-05 09:26:31 +01:00
electrikmilk
ec7c9839a0 Base: Add 5 new emoji
☠️ - U+2620 SKULL AND CROSSBONES
🌂 - U+1F302 CLOSED UMBRELLA
☂️ - U+2602 U+FE0F UMBRELLA
⛑️ - U+26D1 RESCUE WORKER’S HELMET
 - U+2651 CAPRICORN
2022-09-05 09:26:31 +01:00
electrikmilk
6247bbc65b Base: Add Ruby File Type Icon
This adds a file type icon for Ruby (.rb) files.
2022-09-05 09:24:15 +01:00
networkException
9b6fab264f LibGUI: Implement basic rubber band selections in ColumnsView
This patch adds the ability to select multiple entries in a column using
a rubber band selection. Currently the implementation is lacking support
for expanding a selection using the ctrl modifier.
2022-09-05 09:23:36 +01:00
networkException
f0a20fc902 LibGUI: Add granular ColumnView helpers for column and index at events
This patch extracts logic for getting colum at an event position and for
getting an index in a column at an event position from
index_at_event_position into separate functions.
2022-09-05 09:23:36 +01:00
networkException
707b4f83eb WebServer: Make bound socket a clickable hyperlink :^)
This patch adds a hyperlink that can be hovered over and clicked on to
open the WebServer's index page in Browser.
2022-09-05 09:23:20 +01:00
networkException
b29fbe96dd LibVT: Handle non file urls in on hover tooltips
Previously we would simply compute the basename of the hovered url's
path and display it as the resource that will be opened. This patch adds
a fallback for non file urls to simply show the full url, making http
urls show up properly.
2022-09-05 09:23:20 +01:00
Linus Groh
4abb4317aa Meta: Add frhun to the contributors list :^) 2022-09-04 20:05:04 +01:00
FrHun
00acf56e94 LibGUI: Add Widgets before the ResizeCorner by default in Statusbar
Before this, any Widgets added through e.g. GML appeared after the
ResizeCorner, which didn't make sense. (see FileManager)
2022-09-04 20:01:43 +01:00
Jesse Buhagiar
8df09f6e13 Utilities/lsusb: Fix uninitialized variable error
The variable `print_verbose` (which prints verbose information about the
USB devices connected to the system) was uninitialized in `lsusb`. This
was causing the verbose information to be printed if `-v` was NOT seen
on the command line.
2022-09-04 13:26:05 -04:00
Xexxa
7661b8ca02 Base: Add more emoji
👂 - U+1F442 EAR
👃 - U+1F443 NOSE
🎅 - U+1F385 SANTA CLAUS
🏃 - U+1F3C3 PERSON RUNNING
🏌️ - U+1F3CC PERSON GOLFING
🏊 - U+1F3CA PERSON SWIMMING
🏋️ - U+1F3CB PERSON LIFTING WEIGHTS
🐽 - U+1F43D PIG NOSE
🐾 - U+1F43E PAW PRINTS
🐳 - U+1F433 SPOUTING WHALE
🐋 - U+1F40B WHALE
🐬 - U+1F42C DOLPHIN
🐚 - U+1F41A SPIRAL SHELL
🐛 - U+1F41B BUG
🏭 - U+1F3ED FACTORY
🏰 - U+1F3F0 CASTLE
🏏 - U+1F3CF CRICKET GAME
🎿 - U+1F3BF SKIS
🎚️ - U+1F39A LEVEL SLIDER
🎛️ - U+1F39B CONTROL KNOBS
💿 - U+1F4BF OPTICAL DISK
📀 - U+1F4C0 DVD
🎞️ - U+1F39E FILM FRAMES
2022-09-04 08:00:07 +01:00
electrikmilk
6dd7a536c6 Base: Improve 1 emoji
 - U+264B CANCER
2022-09-03 21:10:05 +01:00
electrikmilk
f171cfaa0e Base: Add 24 new emojis
💟 - U+1F49F HEART DECORATION
🚺 - U+1F6BA WOMEN’S ROOM
🛐 - U+1F6D0 PLACE OF WORSHIP
⚛️ - U+269B ATOM SYMBOL
🕉 - U+1F549 OM (unqualified)
✡️ - U+2721 STAR OF DAVID
☸️ - U+2638 WHEEL OF DHARMA
☯️ - U+262F YIN YANG
✝️ - U+271D LATIN CROSS
☦️ - U+2626 ORTHODOX CROSS
☪️ - U+262A STAR AND CRESCENT
☮️ - U+262E PEACE SYMBOL
🔯 - U+1F52F DOTTED SIX-POINTED STAR
 - U+2648 ARIES
 - U+2649 TAURUS
 - U+264A GEMINI
 - U+264C LEO
 - U+264D VIRGO
 - U+264E LIBRA
 - U+264F SCORPIO
 - U+2650 SAGITTARIUS
 - U+2652 AQUARIUS
 - U+2653 PISCES
 - U+26CE OPHIUCHUS
2022-09-03 21:10:05 +01:00
Xexxa
dacd7baf0b Base: Add more emoji
🧞 - U+1F9DE GENIE
🐤 - U+1F424 BABY CHICK
🐢 - U+1F422 TURTLE
🎢 - U+1F3A2 ROLLER COASTER
🏀 - U+1F3C0 BASKETBALL
🎮 - U+1F3AE VIDEO GAME
🎥 - U+1F3A5 MOVIE CAMERA
🪙 - U+1FA99 COIN
🪃 - U+1FA83 BOOMERANG
🧯 - U+1F9EF FIRE EXTINGUISHER
2022-09-03 20:53:07 +01:00
Joel Hansen
9ff54648ca Base: Add 11 new emoji
🎱 - U+1F3B1 Pool 8 Ball
💭 - U+1F4AD Thought Balloon
🌼 - U+1F33C Blossom
🍚 - U+1F35A Cooked Rice
🍬 - U+1F36C Candy
🌐 - U+1F310 Globe with Meridians
🌸 - U+1F338 Cherry Blossom
🍁 - U+1F341 Maple Leaf
🍦 - U+1F366 Soft Ice Cream
🐦 - U+1F426 Bird
🥣 - U+1F963 Bowl with Spoon
2022-09-03 20:51:07 +01:00
kleines Filmröllchen
c1c2e6f7d7 PixelPaint: Introduce a vectorscope
Vectorscopes are a standard tool in professional video/film color
grading. *Very* simply, the Vectorscope shows image colors with hue as
the angle and saturation as the radius; brightness for each point in the
scope is determined by the number of "color vectors" at that point. More
specifically, the Vectorscope shows a 2D UV histogram of the image,
where U and V are the chroma ("color") channels of the image.

Co-authored-by: MacDue <macdue@dueutil.tech>
2022-09-03 16:57:37 +01:00
MacDue
f9b08272db LibGfx: Add AntiAliasingPainter::fill_rect
This function is able to draw rectangles of floating-point pixel
precision.
2022-09-03 16:57:37 +01:00
kleines Filmröllchen
049c1a536c LibGfx: Add saturation modification functions to Color
This operates via the HSV color space; I'm not 100% sure whether the
conversions are lossless.
2022-09-03 16:57:37 +01:00
kleines Filmröllchen
5bb277d9ec LibGfx: Add YUV conversion functions to Color 2022-09-03 16:57:37 +01:00
kleines Filmröllchen
ac23b806a2 LibGfx: Make Color::set_alpha constexpr 2022-09-03 16:57:37 +01:00
kleines Filmröllchen
e6f20f27d8 PixelPaint: Invoke the modified_change callback when layers change
This propagates layer edits as well as undo stack operations to whoever
needs to perform updates when the image changes.
2022-09-03 16:57:37 +01:00
kleines Filmröllchen
fe88fd22fa PixelPaint: Extract common scope code into a generic ScopeWidget
When we add more scopes, this will facilitate code sharing.
2022-09-03 16:57:37 +01:00
kleines Filmröllchen
8b60305698 PixelPaint: Specify histogram height in GML
The histogram is perfectly fine with being drawn at any size, but the
code currently fixes its height to 65. Once the histogram is in a
subclass and several GML things around it change, the fixed height
breaks, so we move the height specification to GML. Additionally, the
container is specified to shrink as much as possible, alleviating a
hard-coded UI size. The user can now change histogram height in GML,
which is a lot more obvious.
2022-09-03 16:57:37 +01:00
Veronika Horáčků
b2203e6417 Keymaps: Improve cs-cz and cs-cz-qwertz keymaps
Fixes the semicolon button and AltGr+ů, which now outputs $.
2022-09-03 12:29:11 +01:00
kleines Filmröllchen
c91511b883 Meta+Tests: Allow running FLAC spec tests
The FLAC "spec tests", or rather the test suite by xiph that exercises
weird FLAC features and edge cases, can be found at
https://github.com/ietf-wg-cellar/flac-test-files and is a good
challenge for our FLAC decoder to become more spec compliant. Running
these tests is similar to LibWasm spec tests, you need to pass
INCLUDE_FLAC_SPEC_TESTS to CMake.

As of integrating these tests, 23 out of 63 fail. :yakplus:
2022-09-02 23:54:50 +01:00
Veronika Horáčků
6587638ffe Toolchain: Update Dockerfile to ubuntu:22.10 2022-09-02 23:50:49 +01:00
Andreas Kling
7fce5f102f LibJS: Don't use a Handle<Realm> in FinalizationRegistry
Instead just treat it like a normal GC cell edge.
2022-09-03 00:36:26 +02:00
Andreas Kling
63cc2650e3 LibJS: Make Handle<T> more user-friendly
Allow *handle, !handle, handle.ptr(), assignment from compatible
pointer types, etc. This is in preparation for using Handles in
more generated code.
2022-09-03 00:36:26 +02:00
Andreas Kling
01828edd37 LibJS: Add Cell::Visitor::visit(Cell&) 2022-09-03 00:36:26 +02:00
Andreas Kling
e34e21367e LibJS: Add GCPtr and NonnullGCPtr
These are two new smart pointers that are really just raw pointers under
the hood. The initial benefit is all in the names, they allow us to
declare that we're pointing at something in the GC heap.

Later we may also find ways to add debugging logic or static analysis to
these types.
2022-09-03 00:36:26 +02:00
Andreas Kling
53c0038d2c AK: Make Weakable non-atomic
Let's not punish single-threaded workloads with the performance cost of
atomic weakables. The kernel keeps using LockWeakable.
2022-09-03 00:36:25 +02:00
Liav A
159f9688dc Meta: Use correct boot device selections when using GRUB images 2022-09-02 23:36:08 +01:00
Liav A
94e39308e3 Meta: Remove an unnecessary instance of AHCI controller in the Q35 setup
We don't need this AHCI controller to be present as we already have one
in the Q35 machine. This will help using the correct boot device in GRUB
setups later on.
2022-09-02 23:36:08 +01:00
demostanis
c56cbf8027 CMake: Quote all CMAKE_COMMAND occurences
Building might fail if the cmake command path contains
whitespace. See https://stackoverflow.com/a/35853080.
2022-09-02 23:34:47 +01:00
Laco Papay
65dff8656e Base: Add emoji flags for Slovakia and Slovenia
Doing these together since (like the names) the flags are similar,
especially at this 7x10 scale and I wanted to make sure they can be
disginguished. I hope our Slovenian friends will like it.

Made inside Serenity using pp :^)
2022-09-02 23:32:55 +01:00
Karol Kosek
652870c178 LibGfx: Ignore incorrect .font files when building the Font Database
Previously every GUI application would crash if we had an incorrect (or
empty) .font file in /res/fonts.
2022-09-03 00:07:53 +02:00
Jelle Raaijmakers
6af184b48b Ports: Support SDL_WINDOWEVENT_CLOSE in SDL2
This allows PrBoom+ to properly quit the application when closing the
main window.
2022-09-03 00:07:24 +02:00
Jelle Raaijmakers
180effa8ac Ports: Add PrBoom+
Music (MIDI) works through TiMidity++ and OpenGL support works, but is
still very buggy. Sometimes PrBoom+ fails to load its own configuration
file, which can be worked around by deleting it.
2022-09-03 00:07:24 +02:00
Jelle Raaijmakers
808e0c9b17 Ports: Add TiMidity++
Also add it as a dependency for the `SDL_mixer` and `SDL2_mixer` ports.

Eawpats GUS patches are installed as part of the port, because without
patches TiMidity++ is not able to generate any sound. The license for
these is "fameware", credit to Andrew Suffield:

  https://lists.debian.org/debian-legal/2002/09/msg00137.html
2022-09-03 00:07:24 +02:00
Jelle Raaijmakers
8ab410a536 LibGL: Implement glGetTexImage
The plumbing was already there in LibGPU, so all that was left was to
implement the API :^)
2022-09-03 00:07:24 +02:00
Jelle Raaijmakers
4f69022c32 LibGL: Correct GL_BLEND_*_ALPHA constant values
They were plain wrong; while we're here, also add the `*_EXT` variants.
2022-09-03 00:07:24 +02:00
Jelle Raaijmakers
f08411ba3f LibGL: Improve constants and types compatibility
When compiling with SDL_opengl, all kinds of differences between LibGL
and OpenGL constants and types popped up as redefinition warnings and
errors.

This fixes all LibGL-related warnings when compiling PrBoom+ :^)
2022-09-03 00:07:24 +02:00
thankyouverycool
4d090487ac LibGUI: Stop auto repeat timer for Buttons on EnabledChange events
Since 5064b58 SpinBox buttons are disabled if value reaches the
min or max allowed. Consequently this swallows the final MouseUp
event, leaving the repeat timer running. Fixes SpinBoxes
{dec,inc}rementing their value in perpetuity after min/max value
is reached through button clicking.
2022-09-03 00:07:06 +02:00
Linus Groh
486775f9fe LibJS: Fix incorrect check in ValidateAndApplyPropertyDescriptor
This is an editorial change in the ECMA-262 spec.

See: https://github.com/tc39/ecma262/commit/f0e4ae8
2022-09-02 22:47:28 +01:00
Linus Groh
455537d31d LibJS: Assert Proxy target is a function in [[Call]] and [[Construct]]
As the TODOs suggested for a long time. :^)
2022-09-02 22:44:44 +01:00