Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
Again, this is an entirely virtual class since the methods involve
direct access to the Painter. Though, maybe I could just expose the
Painter...
|
|
This one requires drawing to the canvas, so it doesn't make so much
sense to move the implementation over.
|
|
|
|
|
|
The implementation of this got a little funky, because it has to access
methods from CanvasState.
|
|
As with CanvasPath, this is to better match the spec IDL.
|
|
|
|
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. :^)
|
|
|
|
This better matches the spec, and makes it possible for things like
Path2D to reuse the same implementation without duplicate code. :^)
|
|
|
|
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.
|
|
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.
|
|
|
|
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.
|
|
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.
|
|
We are going to remove this slice of data from the SysFS later on, so
lsblk must not try to read it.
|
|
This adds a 16x16 and 32x32 icon that is missing for the Partition
Editor.
|
|
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.
|
|
This lets you run `br example.com wikipedia.org some/local/file.html` in
one go and have them all opened as tabs.
|
|
|
|
Closes #14297
|
|
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
|
|
|
|
These allow you to specify the point were the gradient transitions
from one color to the next (without a transition hint the transition
occurs at the point 50% of the way between the two colors).
There is a little bit of guesswork in this implementation as the
specification left out how hints work with the color stop fixup,
though it appears that they are treated the same as color stops.
|
|
|
|
That's getting too spammy and too useless.
|
|
|
|
|
|
|
|
Menu and Window animations can now be disabled and the geometry
overlay made conditional. Shadow options are dependent on the
current theme actually supplying bitmaps, but they provide a fast
way to toggle those that do without having to edit theme files.
|
|
Scrolling can now be set Coarse or Smooth system-wide, Splitter
knurls and Tab accents toggled on and off, and Menu flashing
disabled.
|
|
Effects tab provides the UI for setting SystemEffects.
DisplaySettings is getting a bit crowded and might need a re-org
at some point, but this seems like a good home for effects while
the settings mature.
|
|
SystemEffects are sent to the WindowManager through
set_system_effects() and broadcast to Desktop clients with
update_system_effects(). WindowManager is reponsible for saving,
loading and rebroadcasting effects from WindowServer.ini on
config changes.
|
|
These settings might well ultimately be factored into a dedicated
settings manager, but until then, a charitable interpretation of
Desktop::the() as the desktop environment will suffice.
|
|
SystemEffects provides a tidy way to work with system-wide
visual options passed through IPC.
|
|
With this change, the wpath and cpath promises as well as unveiling
user's entire home directory are no longer needed. :^)
|
|
Previously, during a m_might_drag mouse_up event, we were updating
the selection directly, which caused the selection to be accurate
but the location of the cursor index to be stale/incorrect. The
side effect of this is then future events may point to the wrong
index.
Instead, call the set_cursor function with SelectionUpdate::Set,
which handles both updating the cursor index as well as the
selection index.
|
|
Without this the background-image can be painted up to 8 extra
times, that contribute nothing to the final image.
|
|
This commit moves both the ImageStyleValue and LinearGradientStyleValue
to a common base class of AbstractImageStyleValue. This abstracts
getting the natural_width/height, loading/resolving, and painting
the image.
Now for 'free' you get:
- Linear gradients working with the various background sizing/repeat
properties.
- Linear gradients working as list-markers :^) -- best feature ever!
P.s. This commit is a little large as it's tricky to make this change
incrementally without breaking things.
|
|
Currently this is only specialized for rounding to integer types.
|
|
This fixes the clip-rect-comma-002, clip-rect-comma-003, and
clip-rect-comma-004 web platform tests.
|
|
Previously the clip rect was not relative to the top/left egdes
of the element, which lead to it being positioned incorrectly.
This fixes the clip-rect-auto-004 and clip-rect-auto-005 web
platform tests.
|
|
This fixes the clip-absolute-positioned-002 web platform test.
|
|
Fix implementation of to_string() for RectStyleValue so that it can be
used by JS.
|
|
With this you can start to see Francine's face in the CSS oil painting
(https://diana-adrianne.com/purecss-francine/)
|