Line height change unit preserve current text line height status
Not change visual line height when only change units
We currently have two type of text selection, inner and outer.
Outer one or more text items selected or one with cursor focus on it.
Inner is when there is a selection on the text (some letters on blue).
When we are in outer mode and change line height, it remove all child line height and apply to root node.
When we are in inline mode we move the root line height to all lines of the element with line height below, except
the ones in the subselecton that take the value changed.
To fix it, on selection change, set the cursor line affected also in outer mode.
On line height unit change, we check for the case one item selected with line height == 0. If it happends,
only on unit change we bypass outer code and thread as inner, that give no visual changes.
(cherry picked from commit 91f032153bbd8dce16ede2cb9796ae5f1e95eebc)
3ac67a7...
by
Thomas Holder <email address hidden>
XML Editor: prevent svg:defs reparenting
Fixes a dangling pointer crash, similar to inkscape#1241
777940f...
by
Thomas Holder <email address hidden>
XML Editor: Drag begin/end logic improvements
- Set up drag state on `drag-begin` (emitted on the drag source)
instead of `drag-data-received` (emitted on the drop site)
- Restore selection on `drag-end` instead of `row-changed`, this
works around https://gitlab.gnome.org/GNOME/gtk/issues/2510