1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 10:28:10 +00:00
serenity/Userland/Libraries/LibWeb/Layout
Max Wipfli 08d09c4afb LibWeb: Improving cursor behavior in editable DOM nodes
This patch makes two modifications to improve the behavior of cursors in
editable DOM nodes, such as HTML tags with the contenteditable
attribute.

When the cursor blink cycle is reset in an editable DOM node, a repaint
should be initiated. For this, set_needs_display() needs to be called on
the layout node. Previously, the cursor blink cycle would not reset
properly and moving the cursor with the arrow keys did not feel
intuitive.

Furthermore, this modifies one of the conditions necessary to actually
paint the cursor, which previously prevented it from being painted when
at the end of a text node, after all the text present.
2021-05-21 21:57:03 +02:00
..
BlockBox.cpp LibGfx: Unify Rect, Point, and Size 2021-05-02 22:48:06 +02:00
BlockBox.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
BlockFormattingContext.cpp LibWeb: Move clearing boxes below preceding floating boxes 2021-05-12 08:50:20 +01:00
BlockFormattingContext.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
Box.cpp LibWeb: Deal with Boxes that have a background, border and -radius 2021-05-20 22:08:02 +02:00
Box.h LibWeb: Introduce struct to hold border radii and normalize once 2021-05-20 22:08:02 +02:00
BoxModelMetrics.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
BoxModelMetrics.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
BreakNode.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
BreakNode.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
ButtonBox.cpp LibGfx: Unify Rect, Point, and Size 2021-05-02 22:48:06 +02:00
ButtonBox.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
CanvasBox.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
CanvasBox.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
CheckBox.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
CheckBox.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
FlexFormattingContext.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
FlexFormattingContext.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
FormattingContext.cpp LibWeb: Compute intrinsic height of absolute replaced elements 2021-05-04 15:36:07 +01:00
FormattingContext.h LibWeb: Fix height computation (again) :^) 2021-04-22 19:17:10 +02:00
FrameBox.cpp LibGfx: Unify Rect, Point, and Size 2021-05-02 22:48:06 +02:00
FrameBox.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
ImageBox.cpp LibGfx: Unify Rect, Point, and Size 2021-05-02 22:48:06 +02:00
ImageBox.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
InitialContainingBlockBox.cpp LibWeb: Propagate body background properties to root HTML element 2021-05-13 16:16:25 +02:00
InitialContainingBlockBox.h LibWeb: Propagate body background properties to root HTML element 2021-05-13 16:16:25 +02:00
InlineFormattingContext.cpp LibGfx: Unify Rect, Point, and Size 2021-05-02 22:48:06 +02:00
InlineFormattingContext.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
InlineNode.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
InlineNode.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
Label.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
Label.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
LabelableNode.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
LayoutPosition.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
LayoutPosition.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
LineBox.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
LineBox.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
LineBoxFragment.cpp LibGfx: Unify Rect, Point, and Size 2021-05-02 22:48:06 +02:00
LineBoxFragment.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
ListItemBox.cpp LibWeb: Position the ListItemMarkers according to their width 2021-05-12 08:53:18 +01:00
ListItemBox.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
ListItemMarkerBox.cpp LibWeb: Fix off-by-one for alphabetical markers in <ol>s 2021-05-13 15:43:51 +02:00
ListItemMarkerBox.h LibWeb: Position the ListItemMarkers according to their width 2021-05-12 08:53:18 +01:00
Node.cpp LibWeb: Make border-radius attibutes accessible 2021-05-20 22:08:02 +02:00
Node.h LibWeb: Make painting order more spec-compliant 2021-05-07 22:27:48 +02:00
RadioButton.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
RadioButton.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
ReplacedBox.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
ReplacedBox.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
SVGBox.cpp Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
SVGBox.h Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
SVGGraphicsBox.cpp Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
SVGGraphicsBox.h Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
SVGPathBox.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
SVGPathBox.h Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
SVGSVGBox.cpp Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
SVGSVGBox.h Userland: Use mattco@serenityos.org for my copyright headers 2021-04-23 08:24:53 +02:00
TableBox.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
TableBox.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
TableCellBox.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
TableCellBox.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
TableFormattingContext.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
TableFormattingContext.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
TableRowBox.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
TableRowBox.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
TableRowGroupBox.cpp Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
TableRowGroupBox.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00
TextNode.cpp LibWeb: Improving cursor behavior in editable DOM nodes 2021-05-21 21:57:03 +02:00
TextNode.h LibWeb: Move Layout::TextNode whitespace collapse to separate function 2021-04-29 10:34:02 +02:00
TreeBuilder.cpp AK: Rename adopt() to adopt_ref() 2021-04-23 16:46:57 +02:00
TreeBuilder.h Everything: Move to SPDX license identifiers in all files. 2021-04-22 11:22:27 +02:00