Commit Graph

27795 Commits

Author SHA1 Message Date
Jean-Marc Lasgouttes
da57154f94 Rework display of numbers in margins of hull insets
This requires the introduction of the booleans selected_left and
selected_right in PainterInfo. These tell whether the selection
continues at the left/right of the inset.

This information allows to

1/ paint equation number in the right color: either current text color
   or selection text color.

2/ before that, paint a small background rectangle of the correct color.

This allows to avoid painting a large rectangle of an arbitrary color
that was the cause of the bug.

Fixes bug #12319.
2021-07-09 23:46:16 +02:00
Pavel Sanda
5dd96345ab Reformat mangled filenames for (xhtml) export to have them sorted. 2021-07-09 14:35:01 +02:00
Jean-Marc Lasgouttes
008a0825e8 Always remove selection after cursor up/down
When the cursor cannot move on cursor up/down, at least the selection
should be cleared (when not selecting).

To detect this, the method Cursor::upDownInText has been modified to
return true when cursor is at top/bottom of inset, but there is some
room above/below.

Moreover, introduce the functions LFUN_FINISHED_UP/DOWN, which is
dispatched at upper cursor level as long as no local movement is
possible. This allows to handle differently the original char moving
action and its consequences.

Fixes part of bug #12310.
2021-06-30 16:51:58 +02:00
Jean-Marc Lasgouttes
8d90bb9991 Always remove selection after cursor left/right
Example: when a selection is set, a `Left' cursor movement would not
reset selection when the cursor was at the beginning of buffer.

To fix this, it is necessary, when cursor is in top-level text, to
avoid the mechnanism (undispatched cursor) that sends the action to the
upper level (necessary when the cursor leaves an inset).

The change is mechanical and is done for : char-backward,
char-forward, char-left, char-right, word-left, word-right, word-left,
word-right. It might be possible to factor this code a bit, but there
is no evident solution.

char-up/down are *not* handled at this point.

Fixes part of bug #12310.
2021-06-30 16:41:18 +02:00
Eugene Chornyi
e9d5fc0190 prevent Qt6 from defining UNICODE (Qt6.1.1 and upwards) 2021-06-19 10:48:49 +02:00
Eugene Chornyi
b9334a046c Use specialized WINAPI functions for specialized arguments 2021-06-19 10:48:15 +02:00
Jean-Marc Lasgouttes
a9c6fb0c19 Improve test in Geometry::covers
Horizontally, the old code would count an extra pixel on the right.

The vertical test is not changed, and should be eventually audited.

Fixes bug #10468.
2021-06-14 18:01:35 +02:00
Jean-Marc Lasgouttes
22cb573cac Allow line inset to draw a vertical line.
Qpainter::drawline cannot draw a line which is thicker than it is long.
Draw a rectangle instead.

Fix bug #12307.
2021-06-14 15:45:35 +02:00
Jean-Marc Lasgouttes
ca2706e30e Cleanup: fix comments, move declarations around 2021-06-09 16:26:48 +02:00
Jean-Marc Lasgouttes
e309a5599e Fixup f3a0e8ff: forgot to test in main dispatch
I would probably have seen this missing bit if not for the bug fixed
since then at c9146e5b.

Fixes (again) bug #12074
2021-06-08 16:15:28 +02:00
Kornel Benko
8f4ed83f9a FindAdv: Added handling of Thai characters 2021-06-04 14:49:46 +02:00
Jean-Marc Lasgouttes
7e17d1a1b7 Fixup 7e7f9eba: we only need one hasLimits() method
Related to bug #12295.
2021-06-01 16:12:46 +02:00
Thibaut Cuvelier
7e7f9ebae8 MathML: use the right has_limits_ in InsetMathScripts.
Fixes #12295. Details in the ticket.
2021-05-31 23:26:25 +02:00
Jean-Marc Lasgouttes
5e396c3f0c Prevent insets in table cells from expanding artificially to max width
This replaces ad-hoc hacks and does a better job by propagating the
the tightness recursively.

Fixes bug #9363.
2021-05-31 14:38:42 +02:00
Thibaut Cuvelier
2805452229 MathML: InsetMathHull now distinguishes between hull types to present display/inline math and adjust the alignment of the cells
By lynx: https://www.lyx.org/trac/attachment/ticket/12221/0004-mathml-display-changes.patch
2021-05-25 03:56:24 +02:00
Thibaut Cuvelier
dd1a85a2ba MathML: more consistency between DocBook and XHTML.
By lynx: https://www.lyx.org/trac/attachment/ticket/12221/0004-mathml-display-changes.patch
2021-05-25 03:54:42 +02:00
Thibaut Cuvelier
a68e979350 MathML: use M/ETagInline.
By lynx: https://www.lyx.org/trac/attachment/ticket/12221/0003-tag-insertion-unification-for-bold-char-delim-dots-exfunc-.patch
2021-05-25 03:51:29 +02:00
Thibaut Cuvelier
3ab6633b86 MathML: add M/ETagInline.
By lynx: https://www.lyx.org/trac/attachment/ticket/12221/0003-tag-insertion-unification-for-bold-char-delim-dots-exfunc-.patch
2021-05-25 03:34:52 +02:00
Thibaut Cuvelier
a579128c06 DocBook: for MathML, mrow removal for more cases
By lynx: https://www.lyx.org/trac/attachment/ticket/12221/0003-tag-insertion-unification-for-bold-char-delim-dots-exfunc-.patch
2021-05-25 03:29:20 +02:00
Thibaut Cuvelier
5eddfe509b DocBook: for MathML, refactor InsetMathScript::mathmlize to improve readability and lower redundancy. 2021-05-25 03:21:21 +02:00
Thibaut Cuvelier
1cbac6fcb4 DocBook: for MathML, mrow removal from decoration, script, frac
By lynx: https://www.lyx.org/trac/attachment/ticket/12221/0002-mrow-removal-from-decoration-script-frac.patch
2021-05-25 03:15:48 +02:00
Thibaut Cuvelier
e4996026b7 DocBook: for MathML, use display="block" for non-inline formulae.
By lynx:
https://www.lyx.org/trac/attachment/ticket/12221/0001-docbook-display-equation.patch
2021-05-25 02:34:04 +02:00
Thibaut Cuvelier
7a210e4c9a DocBook: missing signal connection in GUI for MathML prefix. 2021-05-25 00:00:08 +02:00
Thibaut Cuvelier
de77854275 DocBook: fix MathML prefix in root tag.
Patch written by lynx: https://www.lyx.org/trac/ticket/12229
2021-05-24 23:55:11 +02:00
Thibaut Cuvelier
39a9e370c7 DocBook: fix handling of footnotes.
A <para> was missing inside starting at 441c6a93.
2021-05-24 23:36:37 +02:00
Daniel Ramoeller
c6c6576515 Open backup files via file open dialog
Fix for bug #12266.

Also: Option to open any files as is standard in other apps.
2021-05-20 13:24:37 -04:00
Jean-Marc Lasgouttes
67c85f54c4 Fixup 9f92fc92: improve FIXME in SystemcallPrivate::startProcess
I wanted to remove the test  Qt >= 5.15, but now I see that it is
not possible because of QProcess::splitCommand.

Neverthless, the best would be to change parsecmd.
2021-05-20 13:20:20 +02:00
Juergen Spitzmueller
70bcffca9c Add missing counter code 2021-05-07 13:38:43 +02:00
Juergen Spitzmueller
6431a9ab13 Make Dock Widgets SubWindows in general (#12170) 2021-05-06 17:56:53 +02:00
Juergen Spitzmueller
67762aaf08 Allow counter insets in pass thru 2021-05-06 14:44:42 +02:00
Juergen Spitzmueller
9586c51c3f GuiSearch: prevent Tab key to switch to work area (part of #12170)
QWidget::focusNextPrevChild() passes over to the parent (which is the
work area here) if the current window is not a dialog (isWindow()) or
a sub-window (window flag Qt::SubWindow).

We set the latter here to prevent this unwanted behavior.

Let's see if there are side-effects.
2021-05-06 12:27:38 +02:00
Juergen Spitzmueller
fb8b484b7f Tab order for search pane 2021-05-06 12:25:32 +02:00
Jean-Marc Lasgouttes
e4b80698be Cache icons of dynamic menu buttons
The current code would load the same icons again and again and LyX
memory footprint would grow.

Tentative fixe to bug #12271.
2021-05-05 14:53:25 +02:00
Scott Kostyshak
5d96ee69eb Revert "Revert "Only set dummy X11 selection if we do not own it""
This reverts commit 1b704b6267.

(the initial reversion was done unintentionally)
2021-05-04 12:34:35 -04:00
Scott Kostyshak
423ddb1199 Revert "Revert "Fix commented out code""
This reverts commit 313d9fa4d0.

(the initial reversion was done unintentionally)
2021-05-04 12:34:21 -04:00
jpc
313d9fa4d0 Revert "Fix commented out code"
This reverts commit 23abb5aaa3.
2021-05-04 18:01:16 +02:00
jpc
1b704b6267 Revert "Only set dummy X11 selection if we do not own it"
This reverts commit af4ee1a487.
2021-05-04 18:00:50 +02:00
Juergen Spitzmueller
eb86239e36 Replace deprecated slot 2021-04-17 15:13:02 +02:00
Juergen Spitzmueller
511ba894ff Fix toqstr(chart_type) with Qt6 (#12252) 2021-04-17 15:10:26 +02:00
Jean-Marc Lasgouttes
0acf594df2 Improve the description of Inset::inheritFont()
The existing descriptions were obsolete (see e.g. ticket #10263).
2021-04-13 10:37:25 +02:00
Jean-Marc Lasgouttes
441c6a9359 Revert "Fix bug #10263"
A series of commits, culminating at 812ff7de, pushed a few days later,
fixes the bug at its root. This one is not needed anymore to fix

This reverts commit 001f5a4786
2021-04-13 10:21:25 +02:00
Juergen Spitzmueller
ebb34a4614 Set advanced repl_buffer internal as well (#12246) 2021-04-11 18:06:11 +02:00
Juergen Spitzmueller
e5370827db Mark c&p buffers internal. Cures assertion (#12246) 2021-04-11 17:25:17 +02:00
Jean-Marc Lasgouttes
f41f88ac2d Revert "The foot inset does not inherit fonts"
Due to braindead semantics, this is not possible.

This reverts commit 59f63602f5.
2021-04-10 13:44:07 +02:00
Jean-Marc Lasgouttes
59f63602f5 The foot inset does not inherit fonts
Fixes bug #12238.
2021-04-09 19:06:28 +02:00
Jean-Marc Lasgouttes
c9146e5be0 Fixup f3a0e8ff: costly thinko
When the buffer stuff has been updated, the Buffer::needUpdate()
should be reset to false. This was forgotten in f3a0e8ff.

Fixes performance issues with MergedManuals, for example. UpdateBuffer
would be run again and again when selecting text.
2021-04-09 18:15:31 +02:00
Jean-Marc Lasgouttes
b08a653f35 We only support gcc >= 4.9. 2021-04-07 17:17:05 +02:00
Jean-Marc Lasgouttes
e33567cdcb Make fall through explixcit 2021-04-07 17:13:43 +02:00
Jean-Marc Lasgouttes
e96a656b4d Fixup 0f0ad1f7: cut and paste error 2021-04-07 16:23:29 +02:00
Jean-Marc Lasgouttes
0f0ad1f715 Make bookmarks display configurable
Introduce a GUI-less LyXRC member bookmarks_visibility. This is
experimental and will not be documented for 2.4.0. Having the code
present will allow to (1) improve it gradually and (2) fix the many
bookmarks bugs that it exposes.

The corresponding tag is \experimental:bookmarks_visibility, which is
intentionally weird.

Three possible values:

* none: no bookmark display
* margin: display the bookmark in margin
* inline: display the bookmark at cursor position.

The default margin has been made wider so that there is room for the
bookmark. This was necessary anyway. The margin bookmark is now
displayed correctly in full screen with limited text width.

Margin display still needs some improvements when several bookmarks
are on the same row.

Mostly fixes bug #2496.
2021-04-07 16:19:20 +02:00