Sam Atkins
7f6bf8c7c1
FontEditor: Store glyph modified state on the undo stack
...
This means that if you modify a glyph, then undo that modification, we
stop showing the glyph as modified.
2022-08-14 13:59:19 +01:00
Sam Atkins
014d825472
LibGUI: Allow GlyphMapWidget to highlight modified glyphs
...
This makes modifications in FontEditor more visible, both so you know
what you've changed, and for taking a handy "here's what's changed"
screenshot for a font PR. :^)
The background color for new glyphs is green, modified glyphs is blue,
and deleted glyphs is red. The changes persist until you load a new
font file, so you can continue saving your work as you go and still be
able to take a convenient screenshot at the end.
I didn't feel like this one use was enough to add 3 new color roles to
themes, so to make this look decent on dark themes, it detects if the
theme is marked as dark, and uses darker colors for the highlights
which look nice with a light text color.
2022-08-14 13:59:19 +01:00
Andreas Kling
bddbb49923
WorkspacePicker: Add missing unveil(nullptr, nullptr)
...
Thanks Dex for pointing this out! :^)
2022-08-14 14:41:45 +02:00
Andreas Kling
6744930f4a
WorkspacePicker: Tweak applet height and draw frame around desktop rects
2022-08-14 12:50:50 +02:00
Sam Atkins
8cfb0d4514
LibWeb: Add fixmes for other missing CRC2D mixins
2022-08-14 11:30:40 +02:00
Sam Atkins
9f71d65005
LibWeb: Extract CanvasPathDrawingStyles class from CRC2D
2022-08-14 11:30:40 +02:00
Sam Atkins
53b9f36413
LibWeb: Extract CanvasImageData class from CRC2D
2022-08-14 11:30:40 +02:00
Sam Atkins
270c60c5e8
LibWeb: Extract CanvasDrawImage class from CRC2D
2022-08-14 11:30:40 +02:00
Sam Atkins
7cf42ede68
LibWeb: Extract CanvasText class from CRC2D
2022-08-14 11:30:40 +02:00
Sam Atkins
62b561e2e1
LibWeb: Extract CanvasDrawPath class from CRC2D
...
Again, this is an entirely virtual class since the methods involve
direct access to the Painter. Though, maybe I could just expose the
Painter...
2022-08-14 11:30:40 +02:00
Sam Atkins
c0494988ed
LibWeb: Extract CanvasRect class from CRC2D
...
This one requires drawing to the canvas, so it doesn't make so much
sense to move the implementation over.
2022-08-14 11:30:40 +02:00
Sam Atkins
aa3cb8b425
LibWeb: Extract CanvasFillStrokeStyles class from CRC2D
2022-08-14 11:30:40 +02:00
Sam Atkins
afabd613bd
LibWeb: Extract CanvasFillStrokeStyles class from CRC2D
2022-08-14 11:30:40 +02:00
Sam Atkins
aa87b9699e
LibWeb: Extract CanvasTransform class from CRC2D
...
The implementation of this got a little funky, because it has to access
methods from CanvasState.
2022-08-14 11:30:40 +02:00
Sam Atkins
08e6071ebb
LibWeb: Extract CanvasState class from CRC2D
...
As with CanvasPath, this is to better match the spec IDL.
2022-08-14 11:30:40 +02:00
Sam Atkins
7b61d16262
LibWeb: Correct variable name in get_shortest_function_length()
2022-08-14 11:30:40 +02:00
Sam Atkins
5fbcda950b
Documentation: Add missing step when creating a new IDL type
...
If you use your new IDL class as a type in an IDL file without doing
this, you'll get confusing error messages.
2022-08-14 11:30:40 +02:00
Sam Atkins
9075dea3a8
Base: Add a test page for Path2D
...
Neither of the tests here actually passes properly right now. It's a
little more aspirational...
In the first one, the circle draws in the wrong place due apparently to
existing bugs in `CanvasRenderingContext2D::ellipse()`.
In the second, I just haven't yet implemented creating a Path2D from an
SVG path string, because that's going to take a fair bit of untangling
first.
2022-08-14 11:30:40 +02:00
Sam Atkins
6644f3ab44
LibWeb: Teach CRC2D to draw Path2Ds :^)
2022-08-14 11:30:40 +02:00
Sam Atkins
389f1ee6f5
LibGfx: Add method for copying a Path with a transform applied
...
The Web's CanvasRenderingContext2D needs a way to draw a path with a
transform applied to it, without modifying the original path, so here
it is. :^)
2022-08-14 11:30:40 +02:00
Sam Atkins
2ec52bbbd5
LibWeb: Implement Path2D class
2022-08-14 11:30:40 +02:00
Sam Atkins
a37ab7b9f8
LibWeb: Extract CanvasPath class from CRC2D
...
This better matches the spec, and makes it possible for things like
Path2D to reuse the same implementation without duplicate code. :^)
2022-08-14 11:30:40 +02:00
Sam Atkins
8fd83b56d5
LibWeb: Use "unrestricted float/double" where we should in IDL
2022-08-14 11:30:40 +02:00
Sam Atkins
504d221e4a
LibWeb: Allow "unrestricted" floats and doubles in IDL
...
For now, we don't treat them any differently from regular floats and
doubles.
2022-08-14 11:30:40 +02:00
martinfalisse
eef0edae7a
Base: Clean up Clip test page after absolutely positioned divs fix
...
Clean up the Clip test page after adding the logic necessary so that
absolutely positioned divs are correctly positioned.
2022-08-14 11:22:52 +02:00
martinfalisse
872b6369c4
LibWeb: Use parent and sibling positions for absolutely positioned div
...
If absolutely positioned divs do not have a fixed position, then their
position must be calculated based off of the position of their parent
and their siblings.
2022-08-14 11:22:52 +02:00
martinfalisse
65e7126c48
LibWeb: Factor out compute_y_position
...
Factor out the code that computes the vertical position of a Box with
respect to its siblings so that it can be used when computing the
absolutely positioned divs as well.
2022-08-14 11:22:52 +02:00
Filiph Sandström
99ae4fa161
Kernel: Move TrapFrame into its own header on aarch64
2022-08-14 09:44:48 +01:00
Filiph Sandström
4aaf38e4f7
Kernel: Stub Spinlock is_locked
on aarch64
2022-08-14 09:44:48 +01:00
cflip
0822bf5580
FileManager: Add 'Set as Desktop Wallpaper' action to file context menu
2022-08-14 09:44:08 +01:00
David Smith
ac034bdf7d
LibGUI: Avoid too large tooltip when switching to shorter text
...
The tooltip window didn't resize when setting a shorter text, or moving
to a widget with shorter text, so it had extra space on the sides.
Fix by allowing the window to resize without obeying the minimum size
of the (previous) tooltip.
2022-08-14 09:39:30 +01:00
Andreas Kling
2121760700
WorkspacePicker: Allow opening workspace settings via a context menu
...
Previously you had to open Display Settings and navigate to the
"Workspaces" tab in order to edit workspace settings. This patch adds a
context menu shortcut to the same place.
2022-08-14 02:28:25 +02:00
Liav A
c3eaa73113
Kernel/Storage: Remove InterfaceType enum
...
This enum was created to help put distinction between the commandset and
the interface type, as ATAPI devices are simply ATA devices utilizing
the SCSI commandset. Because we don't support ATAPI, putting such type
of distinction is pointless, so let's remove this for now.
2022-08-14 01:09:03 +01:00
Liav A
c85f81bc9d
Utilities/lsblk: Remove Interface Type column
...
We are going to remove this slice of data from the SysFS later on, so
lsblk must not try to read it.
2022-08-14 01:09:03 +01:00
Liav A
423dc71cc8
Kernel/Storage: Remove the stale ATAPIDiscDevice class
...
We don't really support ATAPI (SCSI packets over ATA channels) and it's
uncertain if we ever will support such type of media. For this reason,
there's basically no reason to keep this code.
If we ever introduce ATAPI support into the Kernel, we can simply put
this back into the codebase.
2022-08-14 01:09:03 +01:00
Liav A
1102089f9f
Kernel/Storage: Don't hardcode a maximum of 16 partitions per drive
...
In the near future, we will be able to figure out connections between
storage devices and their partitions, so there's no need to hardcode 16
partitions per storage device - each storage device should be able to
have "infinite" count of partitions in it, and we should be able to use
and figure out about them.
2022-08-14 01:09:03 +01:00
Liav A
cb68619b7f
Kernel/Storage: Safely increment the Controller atomic ID counter
2022-08-14 01:09:03 +01:00
Liav A
0d6315dcc8
Kernel/Storage: Safely increment the Device atomic minor number
2022-08-14 01:09:03 +01:00
Liav A
d4bfb479fd
Kernel/Commandline: Remove a remainder of the removed boot_mode flag
2022-08-14 01:03:23 +01:00
Liav A
6164729d06
Everywhere: Get rid of the fbdev kernel boot argument remainders
2022-08-14 01:03:23 +01:00
electrikmilk
a5cef2c41a
Base: Add Icon for Partition Editor
...
This adds a 16x16 and 32x32 icon that is missing for the Partition
Editor.
2022-08-14 00:52:56 +01:00
Linus Groh
849495915b
LibJS: Make Function.prototype a callable function object
...
20.2.3 Properties of the Function Prototype Object
https://tc39.es/ecma262/#sec-properties-of-the-function-prototype-object
The Function prototype object:
- is itself a built-in function object.
2022-08-14 00:44:27 +01:00
Sam Atkins
913412e0c5
Browser+Base: Allow opening multiple URLs at once from command line
...
This lets you run `br example.com wikipedia.org some/local/file.html` in
one go and have them all opened as tabs.
2022-08-13 23:32:52 +02:00
Lucas CHOLLET
9df81e20d7
ThemeEditor: Use FileSystemAccessServer
instead of unveiling files
2022-08-13 21:04:06 +01:00
Federico Guerinoni
8753dc72e8
HackStudio: Fix update modified document on tab widget
...
Closes #14297
2022-08-13 16:43:18 +01:00
cflip
272917de28
PixelPaint: Allow configuration of default image size through GUI
...
This adds a checkbox to the new image dialog that allows the user to
set the default values without needing to manually edit the config file
2022-08-13 09:10:29 +01:00
Hendiadyoin1
e62e01ccec
Base: Add a quote to the fortunes database
2022-08-13 09:09:28 +01:00
Xexxa
5b7736f5c4
Base: Add more emoji
...
🇮🇩 - U+1F1EE_U+1F1E9 ID Indonesia
🇲🇫 - U+1F1F2_U+1F1EB MF St. Martin
🇺🇲 - U+1F1FA_U+1F1F2 UM U.S. Outlying Islands
🅰️ - U+1F170 A BUTTON (BLOOD TYPE)
🅱️ - U+1F171 B BUTTON (BLOOD TYPE)
🅾️ - U+1F17E O BUTTON (BLOOD TYPE)
🅿️ - U+1F17F P BUTTON
🆎 - U+1F18E AB BUTTON (BLOOD TYPE)
🆑 - U+1F191 CL BUTTON
🆔 - U+1F194 ID BUTTON
🆖 - U+1F196 NG BUTTON
🆗 - U+1F197 OK BUTTON
🆘 - U+1F198 SOS BUTTON
🆙 - U+1F199 UP! BUTTON
🆚 - U+1F19A VS BUTTON
🈁 - U+1F201 JAPANESE “HERE” BUTTON
🈂️ - U+1F202 JAPANESE “SERVICE CHARGE” BUTTON
🈳 - U+1F233 JAPANESE “VACANCY” BUTTON
🈴 - U+1F234 JAPANESE “PASSING GRADE” BUTTON
🈶 - U+1F236 JAPANESE “NOT FREE OF CHARGE” BUTTON
🈷️ - U+1F237 JAPANESE “MONTHLY AMOUNT” BUTTON
🈸 - U+1F238 JAPANESE “APPLICATION” BUTTON
🉑 - U+1F251 JAPANESE “ACCEPTABLE” BUTTON
🌱 - U+1F331 SEEDLING
📊 - U+1F4CA BAR CHART
🕐 - U+1F550 ONE O’CLOCK
🕑 - U+1F551 TWO O’CLOCK
🕒 - U+1F552 THREE O’CLOCK
🕓 - U+1F553 FOUR O’CLOCK
🕔 - U+1F554 FIVE O’CLOCK
🕕 - U+1F555 SIX O’CLOCK
🕖 - U+1F556 SEVEN O’CLOCK
🕗 - U+1F557 EIGHT O’CLOCK
🕘 - U+1F558 NINE O’CLOCK
🕙 - U+1F559 TEN O’CLOCK
🕚 - U+1F55A ELEVEN O’CLOCK
🕛 - U+1F55B TWELVE O’CLOCK
🕜 - U+1F55C ONE-THIRTY
🕝 - U+1F55D TWO-THIRTY
🕞 - U+1F55E THREE-THIRTY
🕟 - U+1F55F FOUR-THIRTY
🕠 - U+1F560 FIVE-THIRTY
🕡 - U+1F561 SIX-THIRTY
🕢 - U+1F562 SEVEN-THIRTY
🕣 - U+1F563 EIGHT-THIRTY
🕤 - U+1F564 NINE-THIRTY
🕥 - U+1F565 TEN-THIRTY
🕦 - U+1F566 ELEVEN-THIRTY
🕧 - U+1F567 TWELVE-THIRTY
🪜 - U+1FA9C LADDER
2022-08-13 08:10:51 +01:00
Kristiyan Stoimenov
9e1bea50ee
Kernel/VFS: Check that mount-point is not in use
...
Before committing the mount, verify that this host i-node is not already
a mount-point.
2022-08-12 19:57:18 -07:00
Tim Schumacher
7e245b74f1
Ports: Remove two getprogname patches that are no longer needed
2022-08-12 19:51:45 -07:00