Commit Graph

2842 Commits

Author SHA1 Message Date
Xexxa
a829160d55 Base: Add more emoji
🏻 - U+1F3FB LIGHT SKIN TONE
🏼 - U+1F3FC MEDIUM-LIGHT SKIN TONE
🏽 - U+1F3FD MEDIUM SKIN TONE
🏾 - U+1F3FE MEDIUM-DARK SKIN TONE
🏿 - U+1F3FF DARK SKIN TONE
2023-03-04 00:16:30 +00:00
Timothy Flynn
360e7d22fc Base: Remove emoji image for U+1F408 U+2B1B (BLACK CAT)
This was added in d1de7f7782, but these are not the right code points
(missing U+200D), and we already have a BLACK CAT emoji with the right
code points.
2023-03-03 17:09:58 +00:00
Timothy Flynn
b52d6c2539 Base: Add Norwegian NO-23 Trøndelag flag to emoji-serenity.txt
This was missed in 2f7873d427.
2023-03-03 17:09:58 +00:00
Cubic Love
60f699338d Base: Improve Presenter Icons
Before, the shading of the Presenter icons was the wrong way round and
the external contrast was not as good as it could be. This has been
rectified and the icons are now light on the left- and dark on the
right-side. Also, they now use the same gray colors as other system
icons, making them sit much more nicely together, and have been
generally improved.
2023-02-28 10:17:40 +01:00
Cubic Love
80d1fc39a4 Base: Update Presenter man page with correct icon + Add a link to open
Use the correct icon in the Presenter application man page and add a
link to open the executable.
2023-02-28 10:17:40 +01:00
Xexxa
7485521619 Base: Add more emoji
🧎 - U+1F9CE PERSON KNEELING
🧎‍♂️ - U+1F9CE U+200D U+2642 MAN KNEELING
🧎‍♀️ - U+1F9CE U+200D U+2640 WOMAN KNEELING
🏂 - U+1F3C2 SNOWBOARDER
🥡 - U+1F961 TAKEOUT BOX
🚇 - U+1F687 METRO
🥎 - U+1F94E SOFTBALL
2023-02-24 19:49:40 +01:00
Timothy Flynn
4212010ebd Base: Add a trailing newline to emoji-serenity.txt
We currently aren't parsing the last line of emoji-serenity.txt because
Core::Stream does not think the last line is readable. We should, of
course, fix Core::Stream. But keeping a trailing newline here is nice
anyways.
2023-02-24 19:48:47 +01:00
Itamar
47f5a3ea9a HackStudio: Add 'pause debuggee' button
This button sends a SIGSTOP to the debugged process, which pauses it.
The debuggee can be resumed with the 'continue' button.
2023-02-24 19:09:27 +01:00
Liav A
61f4914d6e Kernel+Userland: Add constants subdirectory at /sys/kernel directory
This subdirectory is meant to hold all constant data related to the
kernel. This means that this data is never meant to updated and is
relevant from system boot to system shutdown.
Move the inodes of "load_base", "cmdline" and "system_mode" to that
directory. All nodes under this new subdirectory are generated during
boot, and therefore don't require calling kmalloc each time we need to
read them. Locking is also not necessary, because these nodes and their
data are completely static once being generated.
2023-02-19 13:47:11 +01:00
Ryan Liptak
52f156be01 Base: Add and update a few body part/hand emojis
👂 - U+1F442 Ear
Improve + bring colors in line with other body part emojis
👃 - U+1F443 Nose
Improve + bring colors in line with other body part emojis
👅 - U+1F445 Tongue
🤌 - U+1F90C Pinched Fingers
🤘 - U+1F918 Sign of the Horns
2023-02-19 13:22:05 +01:00
kleines Filmröllchen
fcb5259796 Base: Improve BrickGame documentation 2023-02-19 01:05:08 +01:00
Lucas CHOLLET
856d0202f2 LibGfx: Rename JPGLoader to JPEGLoader
The patch also contains modifications on several classes, functions or
files that are related to the `JPGLoader`.

Renaming include:
 - JPGLoader{.h, .cpp}
 - JPGImageDecoderPlugin
 - JPGLoadingContext
 - JPG_DEBUG
 - decode_jpg
 - FuzzJPGLoader.cpp
 - Few string literals or texts
2023-02-18 23:56:24 +01:00
Sam Atkins
6b66e39df4 LibGUI+Userland: Stop returning Layout from Widget::(try_)set_layout()
Nobody uses this return value any more. It also lets us remove a whole
bunch of `(void)` casts. :^)
2023-02-18 16:56:56 +00:00
Sam Atkins
77ad0fdb07 Userland: Specify margins and spacing in the GUI::Layout constructor 2023-02-18 16:56:56 +00:00
Ben Wiederhake
e3f3470a6c Presenter: Fix unintentional U+00A0 codepoint in text
Found using git grep -FIn $'\u00a0'

I just got bit by this type of bug in a different project, and was
wondering whether Serenity has this problem, too. See also:
https://dhwthompson.com/2019/my-favourite-git-commit
2023-02-16 22:07:07 +00:00
Karol Baraniecki
7fc7d4f8c6 su: Document the [-c command] option 2023-02-16 12:52:11 +00:00
Karol Baraniecki
040012a196 su: Correct brackets in documentation for the user option
The `<brackets>` syntax usually suggests a required option, while the
`[brackets]` syntax an optional one. `user` is an optional argument.
2023-02-16 12:52:11 +00:00
Ryan Liptak
2a32f8ad42 Base: Improve eye emoji and add mouth emoji
👁️ - U+1FF41 EYE
Add a bit of shadow so that it works better on white backgrounds
👄 - U+1F444 MOUTH
2023-02-16 12:07:21 +00:00
Niko
790f0c98c2 Base: Add some emoji
New:
1F37E fully-qualified     # 🍾 E1.0 bottle with popping cork
1F38D fully-qualified     # 🎍 E0.6 pine decoration
1F960 fully-qualified     # 🥠 E5.0 fortune cookie
1F985 fully-qualified     # 🦅 E3.0 eagle
1FAC5 fully-qualified     # 🫅 E14.0 person with crown

Modified:
1F5FE fully-qualified     # 🗾 E0.6 map of Japan
2023-02-16 12:28:11 +01:00
Ali Mohammad Pur
eb20fbe145 Everywhere: Use /bin/Shell as the shebang for Shell scripts 2023-02-13 23:00:15 +03:30
kleines Filmröllchen
863afbaf38 Base: Add a quote to the fortunes database 2023-02-13 12:10:27 +00:00
Tim Schumacher
d43a7eae54 LibCore: Rename File to DeprecatedFile
As usual, this removes many unused includes and moves used includes
further down the chain.
2023-02-13 00:50:07 +00:00
Kenneth Myhra
2f20f16292 Base: Add a test using FormData and FormDataEvent 2023-02-12 00:18:09 +00:00
Victor Panisa
e1b15b9a44 Keymaps: Stop pt-br's r-shift printing "?"
Currently when trying to use the right-shift on the pt-br layout
it prints a "?" on key-down on top of applying the shift modifier.
This patch removes the unwanted "?".
2023-02-10 23:35:10 +01:00
Julian Offenhäuser
d470df1c6a Base: Add LiberationSans and LiberationMono fonts
These will be used by LibPDF as replacements for Helvetica/Arial and
Courier.
2023-02-10 15:37:51 +01:00
Xexxa
b4f47935a5 Base: Add more emoji
💪 - U+1F4AA FLEXED BICEPS
🐕‍🦺 - U+1F415 U+200D U+1F9BA SERVICE DOG
🧈 - U+1F9C8 BUTTER
🚚 - U+1F69A DELIVERY TRUCK
🕰️ - U+1F570 MANTELPIECE CLOCK
🏸 - U+1F3F8 BADMINTON
🥻 - U+1F97B SARI
2023-02-08 19:48:49 +01:00
Cubic Love
f66098ab6f Base: Add some characters to Katica Regular 10
Add characters expected by the DE, EN-GB & NO macintosh keymaps
plus extra prime symbols, as they were easy to do :^)

https://www.unicode.org/charts/PDF/U2000.pdf
2032-2037, 2044

https://www.unicode.org/charts/PDF/U2200.pdf
2202, 2211, 221A, 221E, 2260
2023-02-06 10:12:41 +00:00
Karol Kosek
a85c18d3c4 Base: Add .ico file association to Image Viewer and Pixel Paint 2023-02-04 18:02:03 -07:00
kleines Filmröllchen
e5dea00bb1 Base: Add a quote to the fortunes database
t.how.does.it.even.workis /shrug
2023-02-04 16:04:45 -07:00
Liav A
ed67a877a3 Kernel+SystemServer+Base: Introduce the RAMFS filesystem
This filesystem is based on the code of the long-lived TmpFS. It differs
from that filesystem in one keypoint - its root inode doesn't have a
sticky bit on it.

Therefore, we mount it on /dev, to ensure only root can modify files on
that directory. In addition to that, /tmp is mounted directly in the
SystemServer main (start) code, so it's no longer specified in the fstab
file. We ensure that /tmp has a sticky bit and has the value 0777 for
root directory permissions, which is certainly a special case when using
RAM-backed (and in general other) filesystems.

Because of these 2 changes, it's no longer needed to maintain the TmpFS
filesystem, hence it's removed (renamed to RAMFS), because the RAMFS
represents the purpose of this filesystem in a much better way - it
relies on being backed by RAM "storage", and therefore it's easy to
conclude it's temporary and volatile, so its content is gone on either
system shutdown or unmounting of the filesystem.
2023-02-04 15:32:45 -07:00
Sam Atkins
08e30a17c5 Base: Delete the "test" chess piece set
We have several nice sets to choose from now, and so we no longer need
this one, which is "ugly" even according to its original author. ;^)
2023-02-04 12:29:03 +01:00
Xexxa
f9742d53c5 Base: Add more emoji
🤳 - U+1F933 SELFIE
🏄 - U+1F3C4 PERSON SURFING
🏄‍♂️ - U+1F3C4 U+200D U+2642 MAN SURFING
🏄‍♀️ - U+1F3C4 U+200D U+2640 WOMAN SURFING
🥋 - U+1F94B MARTIAL ARTS UNIFORM
🚭 - U+1F6AD NO SMOKING
📴 - U+1F4F4 MOBILE PHONE OFF
2023-02-04 12:28:26 +01:00
Cubic Love
2586b8faf1 Base: Fix typo of MasterWrod.af
MasterWrod.af becomes MasterWord.af - too small a change?
2023-02-04 12:27:28 +01:00
MacDue
bcc4e5ee0b Base: Add a test page for canvas patterns 2023-02-03 20:36:21 +01:00
Cubic Love
85ca19ffd5 Base: Add British English Apple Macintosh keymap
Full support for EN-GB Mac Laptop and Magic Keyboards
2023-02-03 12:50:42 +00:00
Cubic Love
0cfce93e51 Base+Presenter: Add icons for Presenter
Add application and filetype icons for Presenter in 32px and 16px
2023-02-01 19:17:48 +01:00
Xexxa
389224c2d2 Base: Add more emoji
👊 - U+1F44A ONCOMING FIST
🚶 - U+1F6B6 PERSON WALKING
🚶‍♂️ - U+1F6B6 U+200D U+2642 MAN WALKING
🚶‍♀️ - U+1F6B6 U+200D U+2640 WOMAN WALKING
🧑‍🦯 - U+1F9D1 U+200D U+1F9AF PERSON WITH WHITE CANE
👨‍🦯 - U+1F468 U+200D U+1F9AF MAN WITH WHITE CANE
👩‍🦯 - U+1F469 U+200D U+1F9AF WOMAN WITH WHITE CANE
🚴 - U+1F6B4 PERSON BIKING
🚴‍♂️ - U+1F6B4 U+200D U+2642 MAN BIKING
🚴‍♀️ - U+1F6B4 U+200D U+2640 WOMAN BIKING
👡 - U+1F461 WOMAN’S SANDAL
2023-02-01 13:46:04 +00:00
Xexxa
c55a5add0f Base: Add more emoji
🔗💥 - U+1F517_U+200D_U+1F4A5 BROKEN CHAIN
🍄🟫 - U+1F344_U+200D_U+1F7EB MUSHROOM (NON-POISONOUS)
🙂‍↕ - U+1F642_U+200D_U+2195 NODDING FACE
🙂‍↔ - U+1F642_U+200D_U+2194 SHAKING FACE
🍋🟩 - U+1F34B_U+200D_U+1F7E9 LIME
🐦🔥 - U+1F426_U+200D_U+1F525 PHOENIX
🧑🧒 - U+1F9D1_U+200D_U+1F9D2 FAMILY: ADULT, CHILD
🧑🧑🧒 - U+1F9D1_U+200D_U+1F9D1_U+200D_U+1F9D2
FAMILY: ADULT, ADULT, CHILD
🧑🧒🧒 - U+1F9D1_U+200D_U+1F9D2_U+200D_U+1F9D2
FAMILY: ADULT, CHILD, CHILD
🧑🧑🧒🧒 - U+1F9D1_U+200D_U+1F9D1_U+200D_U+1F9D2_U+200D_U+1F9D2
FAMILY: ADULT, ADULT, CHILD, CHILD
2023-01-28 15:22:14 +00:00
Xexxa
816b557460 Base: Remove U+FE0F from emoji-serenity.txt 2023-01-28 15:22:14 +00:00
Xexxa
6607336b38 Base: Add more emoji
👩‍❤️‍👨 - U+1F469 U+200D U+2764 U+200D U+1F468
COUPLE WITH HEART: WOMAN, MAN
👨‍❤️‍👨 - U+1F468 U+200D U+2764 U+200D U+1F468
COUPLE WITH HEART: MAN, MAN
🦙 - U+1F999 LLAMA
🦡 - U+1F9A1 BADGER
🦃 - U+1F983 TURKEY
🌺 - U+1F33A HIBISCUS
🍲 - U+1F372 POT OF FOOD
🫗 - U+1FAD7 POURING LIQUID
🥄 - U+1F944 SPOON
🗾 - U+1F5FE MAP OF JAPAN
🏪 - U+1F3EA CONVENIENCE STORE
🎪 - U+1F3AA CIRCUS TENT
🎆 - U+1F386 FIREWORKS
🎇 - U+1F387 SPARKLER
🎽 - U+1F3BD RUNNING SHIRT
🎭 - U+1F3AD PERFORMING ARTS
🧶 - U+1F9F6 YARN
🎷 - U+1F3B7 SAXOPHONE
🎺 - U+1F3BA TRUMPET
📽️ - U+1F4FD FILM PROJECTOR
🗳️ - U+1F5F3 BALLOT BOX WITH BALLOT
🔏 - U+1F50F LOCKED WITH PEN
2023-01-26 20:21:54 +00:00
Torstennator
452285a3f8 PixelPaint: Add a GradientTool
This patch adds a new gradient tool to pixelpaint that allows us to fill
the canvas with a smooth color gradient outline at the edge of the
filled area.
2023-01-26 10:37:26 +00:00
MacDue
8272cfc9f3 Base: Add a radial gradient with transparent end stops canvas demo 2023-01-23 10:03:54 +00:00
MacDue
9b35e3d95b Base: Add test page for canvas gradients 2023-01-22 18:15:52 +01:00
martinfalisse
173cc5e6e0 Base: Add tests for grid-template-areas and min/max-content 2023-01-21 14:35:00 +01:00
Sam Atkins
1910dc8976 Tests: Move test PDF files into Tests/LibPDF
Let's put test files with the tests themselves, instead of a random user
directory. (But still copy them so they appear in the user directory
for convenience.)
2023-01-19 11:50:10 +00:00
Peter Elliott
d50de8e4ef Utilities: Replace fgrep with grep --fixed-strings 2023-01-19 12:22:24 +01:00
Cameron Youell
ce1b7e63c9 LibWeb: Fix error page icon outside of serenity 2023-01-18 14:46:13 +00:00
Xexxa
8a3cad58e0 Base: Add more emoji
🤱 - U+1F931 BREAST-FEEDING
💃 - U+1F483 WOMAN DANCING
🚣 - U+1F6A3 PERSON ROWING BOAT
🚣‍♂️ - U+1F6A3 U+200D U+2642 MAN ROWING BOAT
🚣‍♀️ - U+1F6A3 U+200D U+2640 WOMAN ROWING BOAT
⛹️ - U+26F9 PERSON BOUNCING BALL
⛹️‍♂️ - U+26F9 U+200D U+2642 MAN BOUNCING BALL
⛹️‍♀️ - U+26F9 U+200D U+2640 WOMAN BOUNCING BALL
👨‍👦‍👦 - U+1F468 U+200D U+1F466 U+200D U+1F466
FAMILY: MAN, BOY, BOY
👩‍👦 - U+1F469 U+200D U+1F466 FAMILY: WOMAN, BOY
👩‍👦‍👦 - U+1F469 U+200D U+1F466 U+200D U+1F466
FAMILY: WOMAN, BOY, BOY
👩‍👧 - U+1F469 U+200D U+1F467 FAMILY: WOMAN, GIRL
👩‍👧‍👦 - U+1F469 U+200D U+1F467 U+200D U+1F466
FAMILY: WOMAN, GIRL, BOY
👩‍👧‍👧 - U+1F469 U+200D U+1F467 U+200D U+1F467
FAMILY: WOMAN, GIRL, GIRL
🪶 - U+1FAB6 FEATHER
💮 - U+1F4AE WHITE FLOWER
🧉 - U+1F9C9 MATE
⛴️ - U+26F4 FERRY
2023-01-17 23:45:32 +00:00
Liav A
01db302a33 Utilities: Add new utility for converting images to raw bitmap binaries
I used this utility to check if the possible TGA images' cases for
different origins (explictly the Y origin) are generating the same
bitmap, as I felt that my eyes are not a good-enough measurement tool
for this kind of task.
This might be useful in the future for testing other implementations so
I rather have this nice utility in our codebase.
2023-01-15 12:43:03 +01:00
Liav A
71f275b5ad Tests/LibGfx: Add tests for compressed TGA images 2023-01-15 12:43:03 +01:00
Liav A
6bf2460231 Tests/LibGfx: Add tests for top-left and bottom-left TGA images 2023-01-15 12:43:03 +01:00
Tom Needham
761b89c28e Base: Add ImageViewer as the default app to open TGA files :^)
This patch allows .tga files to be opened by ImageViewer automatically
when selected in FileManager
2023-01-15 12:43:03 +01:00
Sam Atkins
9d3e174040 Base: Add an icon for reformatting code 2023-01-13 13:37:19 +01:00
Brandon Jordan
121181e392 Base: Add video file type icon
This adds a file type icon for video files.
2023-01-12 22:25:31 +01:00
Ben Wiederhake
493658423a fortunes: Fix broken links to now-defunct freenode.logbot.info
On the page https://archive.logbot.info/ , the old data is still easily
accessible. Even if it goes down, there will 'always' be a backup of the
serenityos content at my backup site, as a gzipped text file:
https://benwiederhake.github.io/freenode-serenity-archive/index.html

Long live fortunes(1)!
2023-01-09 09:13:48 +01:00
kleines Filmröllchen
66a68a9523 Base: Move GUI application man pages into their own subsection
We do not want to move POSIX utilities into subsections since they have
standard names, but we can do whatever we want with Applications :^).
This is particularly advantageous as many applications contain several
images, which declutters the man1 directory.
2023-01-08 13:35:29 +01:00
kleines Filmröllchen
f4b95835d1 markdown-check: Check that no old-style inter-manpage links are used
We've had quite some instances of people reintroducing these kinds of
links because they didn't know about the "new" help:// scheme. This
check should now prevent that from happening, though it might in rare
circumstances trigger a false positive.
2023-01-08 13:35:29 +01:00
Karol Kosek
7d330d379c Base: Make the serenity-application HackStudio template build again
Applies changes as seen in 0c24522635.
2023-01-06 21:09:15 +00:00
Andreas Kling
80ce0419b6 LibWeb: Fix abspos flex container with height:auto getting zero height
When laying out abspos boxes, we compute the height twice: before and
after the inside of the box has been laid out.

The first pass allows percentage vertical values inside the box to be
resolved against the box's height. The second pass resolves the final
used value for the height of the box itself.

In cases where the box height depends on the results of inside layout,
we were incorrectly setting the box to having a definite zero height.
This led to incorrect results when sizing an abspos flex container,
since the FFC sizes containers (in row layouts) based on whether the
container has a definite height.

To avoid this problem, this patch adds an enum so we can differentiate
between the two abspos height computation passes. If the first pass
discovers a dependency on the inside layout, we simply bail out of
computing the height, leaving it as indefinite. This allows the FFC
to size its container correctly, and the correct height gets set by
the second pass.
2023-01-06 21:12:55 +01:00
Liav A
0f7cc468b2 Kernel: Make i8042 controller initialization sequence more robust
The setting of scan code set sequence is removed, as it's buggy and
could lead the controller to fail immediately when doing self-test
afterwards. We will restore it when we understand how to do so safely.

Allow the user to determine a preferred detection path with a new kernel
command line argument. The defualt option is to check i8042 presence
with an ACPI check and if necessary - an "aggressive" test to determine
i8042 existence in the system.
Also, keep the i8042 controller pointer on the stack, so don't assign
m_i8042_controller member pointer if it does not exist.
2023-01-06 11:09:56 +01:00
Sam Atkins
33b6ac0306 Base: Add some unlisted test pages to welcome.html 2023-01-05 18:54:33 +00:00
Timothy Flynn
dec96bb00f Base: Remove some old, not particularly useful aliases from .shellrc
Things like games and demos don't really need aliases here.
2023-01-05 13:05:13 +00:00
martinfalisse
ba5e0607fd Base: Add test page for table 2023-01-03 20:02:47 +01:00
Timothy Flynn
9c5915b5b4 Screensaver: Add a screensaver launcher application
Similar to the Settings application, this adds a single Screensaver
application to launch all screensaver demos. This is to declutter the
taskbar menu a bit.
2023-01-03 17:56:55 +01:00
Timothy Flynn
3d6b0e60ca LibDesktop+Taskbar: Add an option to exclude apps from the system menu
We currently hard-code excluding Settings apps from the system menu.
This adds an "ExcludeFromSystemMenu" option to the AppFile configuration
to selectively exclude these apps, which all Settings app now set.

This is to allow selectively excluding a few Demo apps in a future
commit.
2023-01-03 17:56:55 +01:00
Timothy Flynn
10bf86de2c Demos: Rename Screensaver to GradientScreensaver
This is to avoid naming conflicts with an upcoming Screensaver launcher
application.
2023-01-03 17:56:55 +01:00
Andreas Kling
0fe4f4fe53 Demos: Remove "Cube" application
This wasn't doing anything interesting enough to justify being its own
demo application. If we need a spinning cube, we can just load a cube
model into 3DFileViewer. :^)
2023-01-03 15:43:10 +01:00
Brandon Jordan
4321a7def1 Base+Userland: Add menu item icons
Base+Userland: Add menu item icons

This adds missing icons to Presenter Presentation menu.

This adds missing icon to Image Viewer View menu.

This adds a scale icon for the Image Viewer and Font Editor.

This moves the Fit Image to View icon to the 16x16 folder as it's now
used by Image Viewer and not only Pixel Paint.

This improves the fullscreen and play icons so that they fit together
better.
2023-01-02 09:56:05 -05:00
Andreas Kling
88ebc44cbf Demos: Remove "Mouse" application
This was a plain-looking test app for debugging mouse events.
Mouse events work now, and if we want mouse testing facilities, they
can be added to MouseSettings instead.
2023-01-02 15:29:12 +01:00
Andreas Kling
6760653d62 Demos: Remove "Fire" application
This served no purpose other than looking somewhat neat.
2023-01-02 15:29:12 +01:00
kleines Filmröllchen
3df2eb66be Base: Move GML Widget documentation to subsubsection
This is not only convenient, but also a subsection testcase :^)
2023-01-02 06:15:13 -07:00
kleines Filmröllchen
ad6cbc4192 Base: Move GML documentation into subsection
That was the whole point of this endeavour :^)
2023-01-02 06:15:13 -07:00
kleines Filmröllchen
f824a67b3b Base: Document manpage structure separately
This section is now removed from Help(1) and man(1).
2023-01-02 06:15:13 -07:00
kleines Filmröllchen
b8e4e473e8 Base: Add 8 new emoji and improve consistency on one more
- 👐 U+1F450 Open Hands
- 🙌 U+1F64C Raising Hands is modified to match 👐 and other hand emoji.
-  U+270A Raised Fist
- ✴️ U+2734 Eight-Pointed Star
- ❇️ U+2747 Sparkle
-  U+274E Cross Mark Button
- ❤️‍🔥 U+2764 U+200D U+1F525 Heart on Fire
- 〰️ U+3030 Wavy Dash
2023-01-01 18:42:29 -05:00
Andreas Kling
16793d1c3d Base: Remove /etc/motd
This was not used for anything.
2023-01-01 13:24:48 +01:00
Ben Wiederhake
b272b45137 Meta: Fix link to relocated intel.com webpage
Using archive.org, it appears that this page has moved at some point
between May 14, 2021, and December 22, 2022, for no discernible reason.
2022-12-31 13:00:13 -05:00
Ben Wiederhake
21b7c32af0 Meta: Fix link to wrong version of commit in Mitigations.md
The old commit seems to be the one from the PR, hence it is not in the
master branch.
2022-12-31 13:00:13 -05:00
Liav A
658f9eec6a Utilities: Introduce the ldd utility
This utility lets a user to figure out what are the dependency libraries
for an ELF dynamic object, whether it's a dynamically loaded executable
or dynamically loaded library.
2022-12-31 05:06:39 -07:00
implicitfield
05334169cf Themes: Add color schemes to all themes 2022-12-31 04:20:59 -07:00
implicitfield
4aec8491d6 Everywhere: Move Base/res/terminal-colors to Base/res/color-schemes 2022-12-31 04:20:59 -07:00
Liav A
e598f22768 Kernel: Disallow executing SUID binaries if process is jailed
Check if the process we are currently running is in a jail, and if that
is the case, fail early with the EPERM error code.

Also, as Brian noted, we should also disallow attaching to a jail in
case of already running within a setid executable, as this leaves the
user with false thinking of being secure (because you can't exec new
setid binaries), but the current program is still marked setid, which
means that at the very least we gained permissions while we didn't
expect it, so let's block it.
2022-12-30 15:49:37 -05:00
Xexxa
0e010790a4 Base: Add more emoji
🧑‍🍳 - U+1F9D1 U+200D U+1F373 COOK
🥷 - U+1F977 NINJA
💒 - U+1F492 WEDDING
 - U+27BF DOUBLE CURLY LOOP
2022-12-30 15:32:21 -05:00
Ravi J
3a31f37b3d MouseSettings: Update "switch buttons" icon to reflect checkbox state
Using an additional "right button" variant of the graphic, it now
updates the icon based on the user's preference of primary button.
2022-12-30 09:20:42 -05:00
djwisdom
2ba66a9941 Documentation: Update FontEditor document to be in-sync with latest 2022-12-30 09:12:36 -05:00
Aliaksandr Kalenik
8259ff12bd LibWeb: Margin bottom collapsing between parent and last child 2022-12-30 14:21:19 +01:00
Aliaksandr Kalenik
7088a87f49 LibWeb: Margin top collapsing between parent and first child
Implement collapsing of a box margin-top and first in-flow
child margin-top by saving function that updates y position
of containing block inside BlockMarginState and then for
every child until "non-collapsed through" child is reached
y position of containing block is updated by calling
update_box_waiting_fox_final_y_position_callback.
2022-12-30 14:21:19 +01:00
Xexxa
ec53d86534 Base: Add more emoji
🕵️ - U+1F575 DETECTIVE
🫂 - U+1FAC2 PEOPLE HUGGING
🦝 - U+1F99D RACCOON
🧄 - U+1F9C4 GARLIC
 - U+26F2 FOUNTAIN
👢 - U+1F462 WOMAN’S BOOT
🖲️ - U+1F5B2 TRACKBALL
📚 - U+1F4DA BOOKS
📇 - U+1F4C7 CARD INDEX
🗃️ - U+1F5C3 CARD FILE BOX
🧹 - U+1F9F9 BROOM
🚸 - U+1F6B8 CHILDREN CROSSING
👩‍❤️‍👩 - U+1F469 U+200D U+2764 U+200D U+1F469
COUPLE WITH HEART: WOMAN, WOMAN
2022-12-29 16:17:53 -05:00
Tom
bb062e50b0 LibWeb: Don't expand grid for {row,column} spans
Fixes a bug where when you had spans that that were bigger than the
grid, would create enough tracks to accomodate them. When a fixed
position is given, there should be at a minimum a row/column available
for the track. The span will be truncated if there is no space for it
later.
2022-12-28 15:04:58 +01:00
Liav A
8c9128f36d Documentation: Remove i686 support 2022-12-28 11:53:41 +01:00
Timothy Flynn
d3eb4f7a41 Base: Remove UserspaceEmulator from the list of manual pages to verify
This is used during CI to verify that some manual pages are up to date
with the output of the corresponding program's --help option. UE does
not exist on x86_64 yet, so we cannot run `UE --help`. Remove it from
this list for now.
2022-12-28 11:53:41 +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
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
Liav A
ca134e8bfa Base: Mention pledge promise for jail-specific syscalls 2022-12-26 04:59:54 +03:30
Xexxa
26fb41d1f8 Base: Adjust emoji
🥕 - U+1F955 CARROT
Add some shadow
🔝 - U+1F51D TOP ARROW
Adjust "o" in emoji
2022-12-25 15:50:58 +01:00
Xexxa
b89bdd9497 Base: Add more emoji
💞 - U+1F49E REVOLVING HEARTS
🧅 - U+1F9C5 ONION
🎾 - U+1F3BE TENNIS
🛷 - U+1F6F7 SLED
👛 - U+1F45B PURSE
🎼 - U+1F3BC MUSICAL SCORE
🧻 - U+1F9FB ROLL OF PAPER
㊗️ - U+3297 JAPANESE “CONGRATULATIONS” BUTTON
❤️‍🩹 - U+2764 U+200D U+1FA79 MENDING HEART
👩‍❤️‍👩 - U+1F469 U+200D U+2764 U+200D U+1F469
COUPLE WITH HEART: WOMAN, WOMAN
👨‍👩‍👦 - U+1F468 U+200D U+1F469 U+200D U+1F466
FAMILY: MAN, WOMAN, BOY
👨‍👩‍👧 - U+1F468 U+200D U+1F469 U+200D U+1F467
FAMILY: MAN, WOMAN, GIRL
👨‍👨‍👦 - U+1F468 U+200D U+1F468 U+200D U+1F466
FAMILY: MAN, MAN, BOY
👨‍👨‍👧 - U+1F468 U+200D U+1F468 U+200D U+1F467
FAMILY: MAN, MAN, GIRL
👩‍👩‍👦 - U+1F469 U+200D U+1F469 U+200D U+1F466
FAMILY: WOMAN, WOMAN, BOY
👩‍👩‍👧 - U+1F469 U+200D U+1F469 U+200D U+1F467
FAMILY: WOMAN, WOMAN, GIRL
👨‍👦 - U+1F468 U+200D U+1F466 FAMILY: MAN, BOY
👨‍👧 - U+1F468 U+200D U+1F467 FAMILY: MAN, GIRL
👨‍👧‍👦 - U+1F468 U+200D U+1F467 U+200D U+1F466
FAMILY: MAN, GIRL, BOY
👨‍👧‍👧 - U+1F468 U+200D U+1F467 U+200D U+1F467
FAMILY: MAN, GIRL, GIRL
🪒 - U+1FA92 RAZOR
2022-12-25 15:50:58 +01:00
Liav A
2b5d7a8a72 Base: Mention new immutable memory mappings security feature 2022-12-22 20:32:57 -08:00
Sam Atkins
c4e8509aac Base: Unquote the timestamp in a quote
`fortune` was failing to read this and treating the timestamp as 0.

The irony in this being a quote about the absence of boogs is not lost
on me. :^)
2022-12-22 14:13:47 +00:00
kleines Filmröllchen
00db1dffa8 Base: Add a quote to the fortunes database 2022-12-22 08:57:18 +00:00
Bruno Conde
7e9019a9c3 LibGfx: Support BMP favicons with less than 32 bpp
Adapt BMPImageDecoderPlugin to support BMP images included in ICOns.
ICOImageDecoderPlugin now uses BMPImageDecoderPlugin to decode all
BMP images instead of it's own ad-hoc decoder which only supported
32 bpp BMPs.
2022-12-20 10:26:55 +01:00
Timothy Slater
7b4e5d6ac0 PixelPaint: Add Text Tool 2022-12-16 10:14:20 +00:00
Federico Guerinoni
43ff500a80 LibCore: Use ';' to split socket path in SOCKET_TAKEOVER
This allow to use socket path with spaces inside.

Closes #16436.
2022-12-15 12:33:36 -05:00
Edward Banner
a3423f2af2 Base: Add man page for the dd command
Base: Add man page for the dd command
2022-12-15 12:09:43 +00:00
kleines Filmröllchen
e6a8bd1058 Base: Add a quote to the fortunes database 2022-12-14 15:07:35 +00:00
Andreas Kling
7a51e846b2 Base: Add two HTML test pages for DOM cloneNode() functionality 2022-12-14 15:21:48 +01:00
Xexxa
8379b87d4e Base: Adjust size of emoji flags
🏴󠁵󠁡󠀰󠀵󠁿 - U+1F3F4 U+E0075 U+E0061 U+E0030 U+E0035 U+E007F
UA-05 Vinnychchyna
🏴󠁵󠁡󠀰󠀷󠁿 - U+1F3F4 U+E0075 U+E0061 U+E0030 U+E0037 U+E007F
UA-07 Volyn
🏴󠁵󠁡󠀰󠀹󠁿 - U+1F3F4 U+E0075 U+E0061 U+E0030 U+E0039 U+E007F
UA-09 Luhanshchyna
🏴󠁵󠁡󠀱󠀲󠁿 - U+1F3F4 U+E0075 U+E0061 U+E0031 U+E0032 U+E007F
UA-12 Dnipropetrovshchyna
🏴󠁵󠁡󠀱󠀴󠁿 - U+1F3F4 U+E0075 U+E0061 U+E0031 U+E0034 U+E007F
UA-14 Donechchyna
🏴󠁵󠁡󠀱󠀸󠁿 - U+1F3F4 U+E0075 U+E0061 U+E0031 U+E0038 U+E007F
UA-18 Zhytomyrshchyna
🏴󠁵󠁡󠀲󠀱󠁿 - U+1F3F4 U+E0075 U+E0061 U+E0032 U+E0031 U+E007F
UA-21 Zakarpattia
🏴󠁵󠁡󠀲󠀳󠁿 - U+1F3F4 U+E0075 U+E0061 U+E0032 U+E0033 U+E007F
UA-23 Zaporizhzhya
🏴󠁵󠁡󠀲󠀶󠁿 - U+1F3F4 U+E0075 U+E0061 U+E0032 U+E0036 U+E007F
UA-26 Prykarpattia
🏴󠁵󠁡󠀳󠀰󠁿 - U+1F3F4 U+E0075 U+E0061 U+E0033 U+E0030 U+E007F
UA-30 Kiev
🏴󠁵󠁡󠀳󠀲󠁿 - U+1F3F4 U+E0075 U+E0061 U+E0033 U+E0032 U+E007F
UA-32 Kyivshchyna
🏴󠁵󠁡󠀳󠀵󠁿 - U+1F3F4 U+E0075 U+E0061 U+E0033 U+E0035 U+E007F
UA-35 Kirovohradschyna
🏴󠁵󠁡󠀴󠀰󠁿 - U+1F3F4 U+E0075 U+E0061 U+E0034 U+E0030 U+E007F
UA-40 Sevastopol
🏴󠁵󠁡󠀴󠀳󠁿 - U+1F3F4 U+E0075 U+E0061 U+E0034 U+E0033 U+E007F
UA-43 Crimea
🏴󠁵󠁡󠀴󠀶󠁿 - U+1F3F4 U+E0075 U+E0061 U+E0034 U+E0036 U+E007F
UA-46 Lvivshchyna
🏴󠁵󠁡󠀴󠀸󠁿 - U+1F3F4 U+E0075 U+E0061 U+E0034 U+E0038 U+E007F
UA-48 Mykolayivschyna
🏴󠁵󠁡󠀵󠀱󠁿 - U+1F3F4 U+E0075 U+E0061 U+E0035 U+E0031 U+E007F
UA-51 Odeshchyna
🏴󠁵󠁡󠀵󠀳󠁿 - U+1F3F4 U+E0075 U+E0061 U+E0035 U+E0033 U+E007F
UA-53 Poltavshchyna
🏴󠁵󠁡󠀵󠀶󠁿 - U+1F3F4 U+E0075 U+E0061 U+E0035 U+E0036 U+E007F
UA-56 Rivnenshchyna
🏴󠁵󠁡󠀵󠀹󠁿 - U+1F3F4 U+E0075 U+E0061 U+E0035 U+E0039 U+E007F
UA-59 Sumshchyna
🏴󠁵󠁡󠀶󠀱󠁿 - U+1F3F4 U+E0075 U+E0061 U+E0036 U+E0031 U+E007F
UA-61 Ternopilshchyna
🏴󠁵󠁡󠀶󠀳󠁿 - U+1F3F4 U+E0075 U+E0061 U+E0036 U+E0033 U+E007F
UA-63 Kharkivshchyna
🏴󠁵󠁡󠀶󠀵󠁿 - U+1F3F4 U+E0075 U+E0061 U+E0036 U+E0035 U+E007F
UA-65 Khersonshchyna
🏴󠁵󠁡󠀶󠀸󠁿 - U+1F3F4 U+E0075 U+E0061 U+E0036 U+E0038 U+E007F
UA-68 Khmelnychchyna
🏴󠁵󠁡󠀷󠀱󠁿 - U+1F3F4 U+E0075 U+E0061 U+E0037 U+E0031 U+E007F
UA-71 Cherkashchyna
🏴󠁵󠁡󠀷󠀴󠁿 - U+1F3F4 U+E0075 U+E0061 U+E0037 U+E0034 U+E007F
UA-74 Chernihivshchyna
🏴󠁵󠁡󠀷󠀷󠁿 - U+1F3F4 U+E0075 U+E0061 U+E0037 U+E0037 U+E007F
UA-77 Chernivtsi Oblast
2022-12-14 09:59:19 +00:00
Tim Schumacher
ceb118e1fa Base: Reenable the disabled LibCore::Stream tests 2022-12-13 11:34:38 +01:00
Oleg Kosenkov
28bb3367cb Games: Add ColorLines 2022-12-12 17:30:04 +00:00
Andrea Giancola
21647b9a4e Games: Add help entries for Solitaire and Spider 2022-12-12 16:25:46 +00:00
kleines Filmröllchen
7a5ceebb50 Base: Add a quote to the fortunes database 2022-12-11 11:32:29 +00:00
Andrew Kaster
bee31d2f90 Base: Add extra sync to run-tests-and-shutdown.sh
This shouldn't be necessary but reproducing the odd corrupted profile
data from the nightly Azure runs is proving tricky locally. Hopefully
this will mitigate the issue.
2022-12-10 11:51:16 +00:00
Liav A
905becc991 Base: Add a note about Jails open access in the Mitigations(7) document 2022-12-09 23:09:00 -07:00
Xexxa
23b07b3408 Base: Add emoji flags for French subdivisions
🏴󠁦󠁲󠁢󠁲󠁥󠁿 -
U+1F3F4 U+E0066 U+E0072 U+E0062 U+E0072 U+E0065 U+E007F FR-BRE
Bretagne
🏴󠁦󠁲󠁯󠁣󠁣󠁿 -
U+1F3F4 U+E0066 U+E0072 U+E006F U+E0063 U+E0063 U+E007F FR-OCC
Occitanie
🏴󠁦󠁲󠁮󠁡󠁱󠁿 -
U+1F3F4 U+E0066 U+E0072 U+E006E U+E0061 U+E0071 U+E007F FR-NAQ
Nouvelle-Aquitaine
🏴󠁦󠁲󠁰󠁡󠁣󠁿 -
U+1F3F4 U+E0066 U+E0072 U+E0070 U+E0061 U+E0063 U+E007F FR-PAC
Provence-Alpes-Côte-d’Azur
🏴󠁦󠁲󠁮󠁯󠁲󠁿 -
U+1F3F4 U+E0066 U+E0072 U+E006E U+E006F U+E0072 U+E007F FR-NOR
Normandie
🏴󠁦󠁲󠁰󠁤󠁬󠁿 -
U+1F3F4 U+E0066 U+E0072 U+E0070 U+E0064 U+E006C U+E007F FR-PDL
Pays-de-la-Loire
🏴󠁦󠁲󠁣󠁯󠁲󠁿 -
U+1F3F4 U+E0066 U+E0072 U+E0063 U+E006F U+E0072 U+E007F FR-COR
Corse
🏴󠁦󠁲󠁡󠁲󠁡󠁿 -
U+1F3F4 U+E0066 U+E0072 U+E0061 U+E0072 U+E0061 U+E007F FR-ARA
Auvergne-Rhône-Alpes
🏴󠁦󠁲󠁣󠁶󠁬󠁿 -
U+1F3F4 U+E0066 U+E0072 U+E0063 U+E0076 U+E006C U+E007F FR-CVL
Centre-Val de Loire
🏴󠁦󠁲󠁢󠁦󠁣󠁿 -
U+1F3F4 U+E0066 U+E0072 U+E0062 U+E0066 U+E0063 U+E007F FR-BFC
Bourgogne-Franche-Comté
2022-12-09 18:50:52 +00:00
FrHun
59028515c0 LibGUI: Split OpacitySlider into vertical and horizontal helper classes 2022-12-09 00:25:30 +01:00
Xexxa
f4f5b045ca Base: Add more emoji
🫷 - U+1FAF7 LEFTWARDS PUSHING HAND
🫸 - U+1FAF8 RIGHTWARDS PUSHING HAND
⛷️ - U+26F7 SKIER
🫏 - U+1FACF DONKEY
🐔 - U+1F414 CHICKEN
🌹 - U+1F339 ROSE
🪻 - U+1FABB HYACINTH
🗺️ - U+1F5FA WORLD MAP
🚏 - U+1F68F BUS STOP
🛥️ - U+1F6E5 MOTOR BOAT
🎗️ - U+1F397 REMINDER RIBBON
🥅 - U+1F945 GOAL NET
🪇 - U+1FA87 MARACAS
✏️ - U+270F PENCIL
✒️ - U+2712 BLACK NIB
🗂️ - U+1F5C2 CARD INDEX DIVIDERS
⚒️ - U+2692 HAMMER AND PICK
🔩 - U+1F529 NUT AND BOLT
⚖️ - U+2696 BALANCE SCALE
🔗 - U+1F517 LINK
🛋️ - U+1F6CB COUCH AND LAMP
2022-12-07 23:47:27 +00:00
Xexxa
b63ce06604 Base: Adjust emoji
🖕 - U+1F595 MIDDLE FINGER
🖋️ - U+1F58B FOUNTAIN PEN
Remove left padding
✈️ - U+2708 AIRPLANE
Make plane motors symmetrical
2022-12-07 23:47:27 +00:00
Linus Groh
6e19ab2bbc AK+Everywhere: Rename String to DeprecatedString
We have a new, improved string type coming up in AK (OOM aware, no null
state), and while it's going to use UTF-8, the name UTF8String is a
mouthful - so let's free up the String name by renaming the existing
class.
Making the old one have an annoying name will hopefully also help with
quick adoption :^)
2022-12-06 08:54:33 +01:00
Filiph Sandström
5a083c03a6 WindowServer: Add "Natural scrolling" support
Also commonly referred to as "reverse scrolling" or "inverted
scrolling".
2022-12-04 19:32:43 +00:00
Alec Murphy
8677dbfc7f Utilities: Add strings 2022-12-04 12:08:48 +00:00
MacDue
cdf6e568f6 Base: Add some repeating-radial-gradient() HTML examples 2022-12-03 09:06:51 -05:00
Liav A
756d2a7f63 Base: Add a description about Jails to the Mitigations(7) document
We add a new document entry to mention jailed processes' restrictions,
so it is clear which restrictions apply when using Jails.
2022-12-03 05:47:58 -07:00
Timothy Flynn
4a30446999 LibWeb: Support displaying HTMLInputElement placeholder values
This adds support for parsing the ::placeholder pseudo-element and
injecting an anonymous layout node with that element when the input
element's data is empty.
2022-12-01 11:18:11 -05:00
MacDue
cdbb2cc917 Base: Add some radial-gradient() HTML examples 2022-11-30 14:24:04 +00:00
Sam Atkins
fc86ea7e5b Base: Use spaces instead of underscores to separate emoji codepoints
This broke the build, oops!
2022-11-30 12:24:52 +00:00
Xexxa
01653bd94b Base: Add emoji flags for provinces in Liberia
🏴󠁬󠁲󠁢󠁭󠁿 - U+1F3F4_U+E006C_U+E0072_U+E0062_U+E006D_U+E007F LR-BM
Bomi
🏴󠁬󠁲󠁢󠁧󠁿 - U+1F3F4_U+E006C_U+E0072_U+E0062_U+E0067_U+E007F LR-BG
Bong
🏴󠁬󠁲󠁧󠁰󠁿 - U+1F3F4_U+E006C_U+E0072_U+E0067_U+E0070_U+E007F LR-GP
Gbarpolu
🏴󠁬󠁲󠁧󠁢󠁿 - U+1F3F4_U+E006C_U+E0072_U+E0067_U+E0062_U+E007F LR-GB
Grand Bassa
🏴󠁬󠁲󠁣󠁭󠁿 - U+1F3F4_U+E006C_U+E0072_U+E0063_U+E006D_U+E007F LR-CM
Grand Cape Mount
🏴󠁬󠁲󠁧󠁧󠁿 - U+1F3F4_U+E006C_U+E0072_U+E0067_U+E0067_U+E007F LR-GG
Grand Gedeh
🏴󠁬󠁲󠁧󠁫󠁿 - U+1F3F4_U+E006C_U+E0072_U+E0067_U+E006B_U+E007F LR-GK
Grand Kru
🏴󠁬󠁲󠁬󠁯󠁿 - U+1F3F4_U+E006C_U+E0072_U+E006C_U+E006F_U+E007F LR-LO
Lofa
🏴󠁬󠁲󠁭󠁧󠁿 - U+1F3F4_U+E006C_U+E0072_U+E006D_U+E0067_U+E007F LR-MG
Margibi
🏴󠁬󠁲󠁭󠁯󠁿 - U+1F3F4_U+E006C_U+E0072_U+E006D_U+E006F_U+E007F LR-MO
Montserrado
🏴󠁬󠁲󠁭󠁹󠁿 - U+1F3F4_U+E006C_U+E0072_U+E006D_U+E0079_U+E007F LR-MY
Maryland
🏴󠁬󠁲󠁮󠁩󠁿 - U+1F3F4_U+E006C_U+E0072_U+E006E_U+E0069_U+E007F LR-NI
Nimba
🏴󠁬󠁲󠁲󠁩󠁿 - U+1F3F4_U+E006C_U+E0072_U+E0072_U+E0069_U+E007F LR-RI
Rivercess
🏴󠁬󠁲󠁲󠁧󠁿 - U+1F3F4_U+E006C_U+E0072_U+E0072_U+E0067_U+E007F LR-RG
River Gee
🏴󠁬󠁲󠁳󠁩󠁿 - U+1F3F4_U+E006C_U+E0072_U+E0073_U+E0069_U+E007F LR-SI
Sinoe
2022-11-30 12:13:13 +00:00
martinfalisse
f351418a1e LibWeb: Include tests for grid track spans
Include tests for grid track spans when given for automatically-placed
grid tracks in the grid-*-end properties.
2022-11-29 19:27:31 +01:00
Sam Atkins
33041f3a71 Base: Update and expand profile(1) manpage 2022-11-29 18:54:27 +01:00
Andreas Kling
e3b8a8f7c8 LibWeb: Treat unresolvable percentage width on inline-block as auto 2022-11-28 19:14:05 +01:00
Andreas Oppebøen
93f85f1a09 Base: Set transparent rubber band for all themes
The rubber band is the rectangle indicating the selection region on the
desktop, the file manager, and other icon views. If this region is
painted opaque with alpha=ff, the rectangle obscures the icons
underneath, harming the user experience. We set it to 3c like the other
themes.
2022-11-27 11:02:04 -05:00
Liav A
8e16588757 Utilities+Base: Add unveil utility
This utility essentially creates a filesystem sandbox for a specified
command, so it can be tested with only the unveiled paths the user
specifies beforehand.
2022-11-26 12:42:15 -07:00
thankyouverycool
e50a43652e Base: Add icon for Office application category
A trusty briefcase for the salt mine.
2022-11-26 12:58:33 +01:00
Liav A
9f571e0dae Userland: Enhance jail-attach utility to support existing and new jails
The Core::System::create_jail function already provided the new jail
index as a result, so it was just a matter of using it when calling the
LibCore join_jail function to use the new jail.
2022-11-26 01:47:50 -07:00
Timothy Slater
3d542b0c38 PixelPaint: Add lasso selection tool
Lasso selection works by allowing the user to draw an arbitrary shape
much like the pen tool and ensuring the shape is closed by connecting
the start/end points when the user is done drawing. Everything inside
the shape becomes the selection.

Selection is determined via an outer flood fill. We begin a flood fill
from a point that is guaranteed to be outside of the drawn shape, and
anything the fill doesn't touch is determined to be the selection
region.
2022-11-25 22:52:45 +01:00
Andreas Kling
c884aa3f25 Base: Add a test for [SameObject] behavior in LibWeb 2022-11-25 22:49:59 +01:00
kleines Filmröllchen
66c903424c Base: Add an example presentation
This contains CatDog and uses most of the currently supported features.
2022-11-25 14:28:33 -07:00
kleines Filmröllchen
de44d6c0a6 Applications: Add Presenter
This version can already:
- load all of the defined file format except for the image type and the
  frame-specific stuff
- navigate frames and slides (though frames are mostly stubbed out)
- display text with various common settings
- displays text with various fitting and scaling methods
- scale and position objects correctly no matter the window size
2022-11-25 14:28:33 -07:00
kleines Filmröllchen
295f83e54c Base: Document Presenter and its file format 2022-11-25 14:28:33 -07:00
kleines Filmröllchen
2be89597a8 Base: Create "Office" Application category
This category includes anything useful for getting work done with your
computer. It is mostly a split-off from the Utilites category which was
becoming very large.
2022-11-25 14:28:33 -07:00
Xexxa
2f7873d427 Base: Add emoji for current and former Norwegian subdivisions
🏴󠁮󠁯󠀰󠀱󠁿 - U+1F3F4 U+E006E U+E006F U+E0030 U+E0031 U+E007F NO-01
Østfold
🏴󠁮󠁯󠀰󠀳󠁿 - U+1F3F4 U+E006E U+E006F U+E0030 U+E0033 U+E007F NO-03
Oslo
🏴󠁮󠁯󠀰󠀴󠁿 - U+1F3F4 U+E006E U+E006F U+E0030 U+E0034 U+E007F NO-04
Hedmark
🏴󠁮󠁯󠀰󠀵󠁿 - U+1F3F4 U+E006E U+E006F U+E0030 U+E0035 U+E007F NO-05
Oppland
🏴󠁮󠁯󠀰󠀶󠁿 - U+1F3F4 U+E006E U+E006F U+E0030 U+E0036 U+E007F NO-06
Buskerud
🏴󠁮󠁯󠀰󠀹󠁿 - U+1F3F4 U+E006E U+E006F U+E0030 U+E0039 U+E007F NO-09
Aust-Agder
🏴󠁮󠁯󠀱󠀰󠁿 - U+1F3F4 U+E006E U+E006F U+E0031 U+E0030 U+E007F NO-10
Vest-Agder
🏴󠁮󠁯󠀱󠀲󠁿 - U+1F3F4 U+E006E U+E006F U+E0031 U+E0032 U+E007F NO-12
Hordaland
🏴󠁮󠁯󠀱󠀴󠁿 - U+1F3F4 U+E006E U+E006F U+E0031 U+E0034 U+E007F NO-14
Fjordane
🏴󠁮󠁯󠀱󠀵󠁿 - U+1F3F4 U+E006E U+E006F U+E0031 U+E0035 U+E007F NO-15
Møre og Romsdal
🏴󠁮󠁯󠀱󠀶󠁿 - U+1F3F4 U+E006E U+E006F U+E0031 U+E0036 U+E007F NO-16
Sør-Trøndelag
🏴󠁮󠁯󠀱󠀷󠁿 - U+1F3F4 U+E006E U+E006F U+E0031 U+E0037 U+E007F NO-17
Nord-Trøndelag
🏴󠁮󠁯󠀱󠀸󠁿 - U+1F3F4 U+E006E U+E006F U+E0031 U+E0038 U+E007F NO-18
Nordland
🏴󠁮󠁯󠀱󠀹󠁿 - U+1F3F4 U+E006E U+E006F U+E0031 U+E0039 U+E007F NO-19
Troms
🏴󠁮󠁯󠀲󠀱󠁿 - U+1F3F4 U+E006E U+E006F U+E0032 U+E0031 U+E007F NO-21
Svalbard
🏴󠁮󠁯󠀲󠀲󠁿 - U+1F3F4 U+E006E U+E006F U+E0032 U+E0032 U+E007F NO-22
Jan Mayen
🏴󠁮󠁯󠀲󠀳󠁿 - U+1F3F4 U+E006E U+E006F U+E0032 U+E0033 U+E007F NO-23
Trøndelag
🏴󠁮󠁯󠀳󠀰󠁿 - U+1F3F4 U+E006E U+E006F U+E0033 U+E0030 U+E007F NO-30
Viken
🏴󠁮󠁯󠀳󠀴󠁿 - U+1F3F4 U+E006E U+E006F U+E0033 U+E0034 U+E007F NO-34
Innlandet
🏴󠁮󠁯󠀴󠀲󠁿 - U+1F3F4 U+E006E U+E006F U+E0034 U+E0032 U+E007F NO-42
Agder
🏴󠁮󠁯󠀴󠀶󠁿 - U+1F3F4 U+E006E U+E006F U+E0034 U+E0036 U+E007F NO-46
Vestland
🏴󠁮󠁯󠀵󠀰󠁿 - U+1F3F4 U+E006E U+E006F U+E0035 U+E0030 U+E007F NO-50
Trøndelag
🏴󠁮󠁯󠀵󠀴󠁿 - U+1F3F4 U+E006E U+E006F U+E0035 U+E0034 U+E007F NO-54
Troms og Finnmark
2022-11-24 10:06:42 +00:00
martinfalisse
0c577b4b3b Base: Add test for multiple line names in CSS Grid 2022-11-21 21:48:25 +00:00
Xexxa
f5a3355639 Base: Add more emoji
🧔 - U+1F9D4 PERSON: BEARD
🧔‍♂️ - U+1F9D4 U+200D U+2642 MAN: BEARD
💂 - U+1F482 GUARD
💂‍♂️ - U+1F482 U+200D U+2642 MAN GUARD
💂‍♀️ - U+1F482 U+200D U+2640 WOMAN GUARD
🧗‍♂️ - U+1F9D7 U+200D U+2642 MAN CLIMBING
🧗‍♀️ - U+1F9D7 U+200D U+2640 WOMAN CLIMBING
🗣️ - U+1F5E3 SPEAKING HEAD
🐵 - U+1F435 MONKEY FACE
🐈‍⬛ - U+1F408 U+200D U+2B1B BLACK CAT
🐯 - U+1F42F TIGER FACE
🐴 - U+1F434 HORSE FACE
🐎 - U+1F40E HORSE
🪿 - U+1FABF GOOSE
🐲 - U+1F432 DRAGON FACE
🍂 - U+1F342 FALLEN LEAF
🪹 - U+1FAB9 EMPTY NEST
🪺 - U+1FABA NEST WITH EGGS
🫚 - U+1FADA GINGER ROOT
🍮 - U+1F36E CUSTARD
 - U+26FA TENT
🛣️ - U+1F6E3 MOTORWAY
🛤️ - U+1F6E4 RAILWAY TRACK
✈️ - U+2708 AIRPLANE
🪭 - U+1FAAD FOLDING HAND FAN
🎓 - U+1F393 GRADUATION CAP
🪘 - U+1FA98 LONG DRUM
☎️ - U+260E TELEPHONE
🦯 - U+1F9AF WHITE CANE
🚮 - U+1F6AE LITTER IN BIN SIGN
↩️ - U+21A9 RIGHT ARROW CURVING LEFT
↪️ - U+21AA LEFT ARROW CURVING RIGHT
2022-11-16 21:43:33 +00:00
Xexxa
332061e002 Base: Adjust emoji
🌬️ - U+1F32C WIND FACE
🇪🇪 - U+1F1EA U+1F1EA FLAG: ESTONIA
2022-11-16 21:43:33 +00:00
Xexxa
2c8e161f2d Base: Add more emoji subdivision flags
🏴󠁮󠁯󠀰󠀲󠁿 - U+1F3F4 U+E006E U+E006F U+E0030 U+E0032 U+E007F NO-02
Akershus
🏴󠁮󠁯󠀰󠀷󠁿 - U+1F3F4 U+E006E U+E006F U+E0030 U+E0037 U+E007F NO-07
Vestfold
🏴󠁮󠁯󠀰󠀸󠁿 - U+1F3F4 U+E006E U+E006F U+E0030 U+E0038 U+E007F NO-08
Telemark
🏴󠁮󠁯󠀱󠀱󠁿 - U+1F3F4 U+E006E U+E006F U+E0031 U+E0031 U+E007F NO-11
Rogaland
🏴󠁮󠁯󠀲󠀰󠁿 - U+1F3F4 U+E006E U+E006F U+E0032 U+E0030 U+E007F NO-20
Finnmark
🏴󠁮󠁯󠀳󠀸󠁿 - U+1F3F4 U+E006E U+E006F U+E0033 U+E0038 U+E007F NO-38
Vestfold og Telemark
🏴󠁺󠁷󠁨󠁡󠁿 - U+1F3F4 U+E007A U+E0077 U+E0068 U+E0061 U+E007F ZW-HA
Harare
2022-11-16 21:43:33 +00:00
Xexxa
4e3498c388 Base: Add new yaks to emoji-serenity.txt
􌴤 - U+10CD24 Yakslow
􌴥 - U+10CD25 Buffyak
􌴦 - U+10CD26 Yaktrap
􌵪 - U+10CD6A Yakthink
􌵫 - U+10CD6B Hyperyakkie
2022-11-16 21:43:33 +00:00
Timothy Flynn
894bddf62c Base: Add a simple test page for window.prompt
The window prototypes alert, confirm, and prompt must "pause" execution
until a response is received from the user. This test page is meant to
ensure that a timeout queued before a prompt is not executed until after
that prompt is closed.
2022-11-16 17:23:56 +00:00
martinfalisse
70559e9d14 Base: Add test for grid-gap and auto-fit 2022-11-16 00:53:00 +01:00
Samuel Bowman
025c16a6f9 Base: Mark PartitionEditor as requiring root 2022-11-14 14:58:10 +00:00
Moustafa Raafat
f5a2603714 Keymaps: Add Arabic keymap 2022-11-13 17:51:52 -07:00
jahway603
e9ca641d45 Base: Add manpages for which(1) and stat(1) 2022-11-07 19:19:09 +00:00
MacDue
d5cf403f70 Base: Add some repeating-conic-gradient() test cases 2022-11-07 13:13:22 +00:00
Brianna
5822bc9cb5 Base: Add media emojis
Added
🔀 - U+1F500 Shuffle Tracks Button
🔁 - U+1F501 Repeat Button
🔂 - U+1F502 Repeat Single
🔃 - U+1F503 Clockwise Vertical Arrows
🔄 - U+1F504 Counterclockwise Arrows Button
🔙 - U+1F519 Back Arrow
Fixed color consistency
🔠 - U+1F520 Input latin uppercase
🔡 - U+1F521 Input latin lowercase
🔢 - U+1F522 Input numbers
🔣 - U+1F523 Input symbols
🔤 - U+1F524 Input latin letters
2022-11-07 12:26:01 +00:00
martinfalisse
0586730a92 Base: Add tests for grid gap 2022-11-07 10:06:07 +01:00
Slimey
e00b16460c Base+VideoPlayer: Add an icon for video player
Co-authored-by: TreuKS <ks2225@protonmail.com>
2022-11-06 22:27:22 -08:00
Slimey
fb71df5cb1 Base: Add appropriate entries for VideoPlayer
VideoPlayer will now show up in the Media category, and `vp` is now
an alias for it.
2022-11-06 16:27:18 +01:00
Slimey
ce75a04908 Base+Ports: Rename 'Sound' category to 'Media' 2022-11-06 16:27:18 +01:00
martinfalisse
13ac078202 Base: Add test for sizing children of grid 2022-11-06 13:23:33 +01:00
MacDue
d66b219453 Base: Add some extra conic-gradient() test cases
This adds a test of a conic-gradient() with just a center position
and no starting angle.

This also adds a gradient that gives each quadrant a different color,
this is very sensitive to the center position being correct.
2022-11-06 01:42:55 +00:00
Liav A
8d8b0d0a34 Userland: Add support for jails
This happens in two ways:
1. LibCore now has two new methods for creating Jails and attaching
   processes to a Jail.
2. We introduce 3 new utilities - lsjails, jail-create and jails-attach,
   which list jails, create jails and attach processes to a Jail,
   respectively.
2022-11-05 18:00:58 -06:00
Liav A
942e262e86 Base: Add information about the new /sys/kernel/jails node 2022-11-05 18:00:58 -06:00
Oleg Kosenkov
46c6176fad Games: Add BrickGame 2022-11-05 16:35:13 -06:00
Andreas Kling
7809cc6557 LibWeb: Use preferred flex item sizes as min/max-content contribution
When a flex item has a specific preferred size, that size should be its
contribution to the containers intrinsic sizes.

This fixes an issue on Patreon where the logo would cover the entire
viewport since the SVG had a large intrinsic size but the flex item
containing it had a small specified size in CSS.
2022-11-05 11:42:19 +01:00
Timothy Flynn
9564f04fa6 Base: Add a disabled button to the button.html test page 2022-11-03 19:15:43 +00:00
Nico Weber
daeaefad17 Everywhere: Clean up "the the" comment typos 2022-11-03 17:38:32 +00:00
implicitfield
7eca8f7e62 Games: Add Flood 2022-11-03 01:02:56 -06:00
demostanis
e03f014e7a Base: Update tail(1) man page 2022-11-02 21:29:20 -06:00
MacDue
d6334dcab1 Base: Add some conic-gradient() HTML examples 2022-11-01 23:07:05 +00:00
premek
92efa21727 Base: Add Black&White Square Button emoji
🔲 - U+1F532 Black Square Button
🔳 - U+1F533 White Square Button
2022-11-01 11:00:17 +00:00
martinfalisse
937fcfc75c LibWeb+Base: Use line names for positioning grid items
When there are grid tracks with line names, use these to resolve
line-names passed to positioned grid items.
2022-11-01 11:19:41 +01:00
Timothy Flynn
2d7ad6dbe6 CI: Remove the manpage generator error file upon success
On some systems, just specifying "2> error_file" will create the file,
even if nothing is logged to it.
2022-10-31 18:25:01 -04:00
Timothy Flynn
9e9a07415e CI: Ensure the manpage generation step shuts down the VM on failure
Currently, if the script fails, it simply runs "exit 1". This exits the
script, but keeps the VM running, so CI hangs until it times out.

Instead of exiting, write a failure status to an error log and shutdown.
CI can then read that error log and fail the run if needed.
2022-10-31 22:10:14 +00:00
premek
429bd32016 Base: Add Scissors & arrows emoji
✂️ - U+2702 Scissors
➡️ - U+27A1 Right Arrow
⤴️ - U+2934 Right Arrow Curving Up
⤵️ - U+2935 Right Arrow Curving Down
⬅️ - U+2B05 Left Arrow
⬆️ - U+2B06 Up Arrow
⬇️ - U+2B07 Down Arrow
2022-10-31 10:39:42 +00:00
implicitfield
cea7386ea8 Base: Set PATH in text mode 2022-10-31 00:02:34 +01:00
premek
63122d0276 Base: Add Houses, Safety pin emoji
🧷 - U+1F9F7 Safety Pin
🏘 - U+1F3D8 House Buildings
2022-10-29 23:49:21 +01:00
Xexxa
c2e2b9d2ae Base: Add more yak emoji
􌴤 - U+10CD24 Yakslow
􌴥 - U+10CD25 Buffyak
􌴦 - U+10CD26 Yaktrap
􌵪 - U+10CD6A Yakthink
􌵫 - U+10CD6B Hyperyakkie
2022-10-29 18:54:08 +01:00
Xexxa
35dbef9808 Base: Add more emoji
🧔‍♀️ - U+1F9D4 U+200D U+2640 WOMAN: BEARD
🧝‍♂️ - U+1F9DD U+200D U+2642 MAN ELF
🧗 - U+1F9D7 PERSON CLIMBING
🦕 - U+1F995 SAUROPOD
🦖 - U+1F996 T-REX
💱 - U+1F4B1 CURRENCY EXCHANGE
🌬️ - U+1F32C WIND FACE
2022-10-29 18:54:08 +01:00
Xexxa
a1ffb7a5d3 Base: Adjust size of emoji U+26A7
⚧️ - U+26A7 TRANSGENDER SYMBOL
2022-10-29 18:54:08 +01:00
Xexxa
dcad3ee05f Base: Add U+2264 and U+2265 to Katica Regular 12
2264-2265 https://www.unicode.org/charts/PDF/U2200.pdf
2022-10-29 18:54:08 +01:00
premek
bddc9d6c52 Spreadsheet: Fix maxIf and minIf name in documentation 2022-10-29 06:29:11 +03:30
codelikecraze
7fd0035600 Base: Add Transgender Emoji (⚧ U+2617)
This commit adds a trans emoji
2022-10-27 20:40:27 +01:00
Beckett Normington
3c76f58999 Base: Add elephant emoji (U+1F418)
Emoji added:
🐘 - U+1F418 ELEPHANT
2022-10-27 13:08:36 +02:00
kleines Filmröllchen
90d967baf1 Base: Document scheduler_{get,set}_parameters syscalls 2022-10-27 11:30:19 +01:00
Timothy Flynn
23afb59a3d Base: Remove invalid U+1F5CBC emoji image
This code point is invalid. It was meant to be U+1F5BC, but we already
have an icon for that emoji.
2022-10-26 18:40:20 +01:00
Liav A
a0c41fc3f0 Base: Describe the moved SysFS power_state node in SysFS document 2022-10-25 15:33:34 -06:00
Liav A
75f01692b4 Kernel+Userland: Move /sys/firmware/power_state to /sys/kernel directory
Let's put the power_state global node into the /sys/kernel directory,
because that directory represents all global nodes and variables being
related to the Kernel. It's also a mutable node, that is more acceptable
being in the mentioned directory due to the fact that all other files in
the /sys/firmware directory are just firmware blobs and are not mutable
at all.
2022-10-25 15:33:34 -06:00
Liav A
8c21d974b2 Base: Remove all global entries from the ProcFS document 2022-10-25 15:33:34 -06:00
Liav A
1c5e09f789 Base: Use new global variables at /sys/kernel/ directory 2022-10-25 15:33:34 -06:00
Liav A
a0ed543993 sysctl: Use /sys/kernel/variables/ directory instead of /proc/sys 2022-10-25 15:33:34 -06:00
Liav A
4556fdc891 Base: Document the new /sys/kernel/ directory 2022-10-25 15:33:34 -06:00
Mykola
97c0f603e3 Base: Add just a bit more emojis
Added:
	1F4D6 # 📖 E0.6 open book
	1F4F9 # 📹 E0.6 video camera
	1F52C # 🔬 E1.0 microscope
	1F52D # 🔭 E1.0 telescope
	1F697 # 🚗 E0.6 automobile
	1F69B # 🚛 E1.0 articulated lorry
	1F9FE # 🧾 E11.0 receipt
	1F9FF # 🧿 E11.0 nazar amulet
	1FAA1 # 🪡 E13.0 sewing needle
	1FAD3 # 🫓 E13.0 flatbread
2022-10-25 12:55:07 +01:00
electrikmilk
e2ebc8826f Base: Add 25 emojis
🫁 - U+1FAC1 LUNGS
🧟 - U+1F9DF ZOMBIE
🪷 - U+1FAB7 LOTUS
🫙 - U+1FAD9 JAR
🚖 - U+1F696 ONCOMING TAXI
🚢 - U+1F6A2 SHIP
🧸 - U+1F9F8 TEDDY BEAR
🪗 - U+1FA97 ACCORDION
↗️ - U+2197 UP-RIGHT ARROW
↘️ - U+2198 DOWN-RIGHT ARROW
↙️ - U+2199 DOWN-LEFT ARROW
↖️ - U+2196 UP-LEFT ARROW
↕️ - U+2195 UP-DOWN ARROW
↔️ - U+2194 LEFT-RIGHT ARROW
🪯 - U+1FAAF KHANDA
 - U+2B55 HOLLOW RED CIRCLE
 - U+27B0 CURLY LOOP
✳️ - U+2733 EIGHT-SPOKED ASTERISK
Ⓜ️ - U+24C2 CIRCLED M
◼️ - U+25FC BLACK MEDIUM SQUARE
◻️ - U+25FB WHITE MEDIUM SQUARE
 - U+25FE BLACK MEDIUM-SMALL SQUARE
 - U+25FD WHITE MEDIUM-SMALL SQUARE
▪️ - U+25AA BLACK SMALL SQUARE
▫️ - U+25AB WHITE SMALL SQUARE
2022-10-23 00:44:06 +02:00
Liav A
07387ec19a Kernel+Base: Introduce MS_NOREGULAR mount flag
This flag doesn't conform to any POSIX standard nor is found in any OS
out there. The idea behind this mount flag is to ensure that only
non-regular files will be placed in a filesystem, which includes device
nodes, symbolic links, directories, FIFOs and sockets. Currently, the
only valid case for using this mount flag is for TmpFS instances, where
we want to mount a TmpFS but disallow any kind of regular file and only
allow other types of files on the filesystem.
2022-10-22 19:18:15 +02:00
Smrtnyk
ae950816b5 Base: Add SameSite cookie test cases 2022-10-22 18:17:01 +02:00
Liav A
e52f0a991b Base: Rename jp(1) manual page to json(1) 2022-10-22 10:39:05 +02:00
Mykola
dcfaee8d6c Base: Add cool emoji
Added:
	1F32B      # 🌫 E0.7 fog
	1F361      # 🍡 E0.6 dango
	1F3A3      # 🎣 E0.6 fishing pole
	1F3B4      # 🎴 E0.6 flower playing cards
	1F413      # 🐓 E1.0 rooster
	1F456      # 👖 E0.6 jeans
	1F45C      # 👜 E0.6 handbag
	1F5EF      # 🗯 E0.7 right anger bubble
	1F6B0      # 🚰 E1.0 potable water
	1F6B1      # 🚱 E1.0 non-potable water
	1F6FB      # 🛻 E13.0 pickup truck
	1F9C6      # 🧆 E12.0 falafel
	1F9F4      # 🧴 E11.0 lotion bottle
	1FAB0      # 🪰 E13.0 fly
	1FAB1      # 🪱 E13.0 worm
	1FAD4      # 🫔 E13.0 tamale
	2618       # ☘ E1.0 shamrock
	1F684      # 🚄 E0.6 high-speed train
	1F685      # 🚅 E0.6 bullet train
	1F686      # 🚆 E1.0 train
2022-10-21 20:02:17 +02:00
Jelle Besseling
5de4507b6f Base: Add WC emoji and other blue block ones
Added:
    1F6BE   # 🚾 E1.0 Water closet
    1F6C2   # 🛂 E1.0 Passport control
    1F6C3   # 🛃 E1.0 Customs
    1F6C4   # 🛄 E1.0 Baggage claim
    1F6C5   # 🛅 E1.0 Left luggage
    1F6B9   # 🚹 E1.0 Men's room
    1F6D7   # 🛗 E13.0 Elevator
2022-10-21 20:01:31 +02:00
Jelle Besseling
1fa8aaca83 Base: Add some clock emoji
Added:
    23F0    #  E1.0 Alarm Clock
    23F1    # ⏱️ E1.0 Stopwatch
    23F2    # ⏲️ E1.0 Timer Clock
2022-10-21 20:01:20 +02:00
Xexxa
0968501b62 Base: Add more emoji
🐕 - U+1F415 DOG
🐩 - U+1F429 POODLE
🦌 - U+1F98C DEER
🐖 - U+1F416 PIG
🐁 - U+1F401 MOUSE
🐀 - U+1F400 RAT
🐇 - U+1F407 RABBIT
🐿️ - U+1F43F CHIPMUNK
🦥 - U+1F9A5 SLOTH
🐣 - U+1F423 HATCHING CHICK
🐥 - U+1F425 FRONT-FACING BABY CHICK
🦎 - U+1F98E LIZARD
🦗 - U+1F997 CRICKET
🪳 - U+1FAB3 COCKROACH
🧮 - U+1F9EE ABACUS
2022-10-21 12:18:50 +02:00
Xexxa
d87e2287dc Snake: Use emoji for in-game food graphics 2022-10-20 10:27:00 +02:00
Tobias Lundberg
8d7158025f Base: Add more emoji
🐑 - U+1F411 sheep
🐗 - U+1F417 boar
🐷 - U+1F437 pig face
🐻 - U+1F43B bear face
🐼 - U+1F43C panda face
2022-10-19 23:59:45 +02:00
Timothy Slater
038a833f0c PixelPaint: Add Polygonal Select Tool
Polygonal selection tool allows for the drawing of any arbitrary
polygonal shape. It tracks clicked points in a vector, upon double
clicking we finalize the polygon and generate the selection mask. The
user can press the escape key during selection to cancel.

The mask is generated as follows:

- First we calculate the size of the bounding rect needed to hold the
  polygon
- We add 2 pixels to height/width to allow us a 1 pixel border, the
  polygon will be centered in this bitmap
- Draw the polygon into the bitmap via Gfx::Painter, making sure to
  connect final polygon point to the first to ensure an enclosed shape
- Generate a selection mask the size of the bitmap, with all pixels
  initially selected
- Perform a flood fill from (0,0) which is guaranteed to be outside the
  polygon
- For every pixel reached by the flood fill, we clear the selected pixel
  from the selection mask
- Finally we merge the selection mask like other selection tools.
2022-10-19 23:04:07 +02:00
snooze6214
d3353ee0e7 PixelPaint: Add action to invert selection 2022-10-18 18:57:12 +02:00