Commit Graph

25097 Commits

Author SHA1 Message Date
Jean-Marc Lasgouttes
64e5a8c016 Introduce BufferView::caretInView()
It is not a good idea to call caretPosAndHeight when the caret is in a
paragraph that is not in cached metrics. This can happen when not
using "cursor follows scrollbar".

This commit refactor things a bit so that testing is done in
BufferView.

(cherry picked from commit e6b54ea4d2)
2020-09-18 09:26:28 +02:00
Yuriy Skalko
195f307a39 Show custom text styles in status bar
Fixes bug #11951.

(cherry picked from commit b0db575dc1)
2020-09-16 18:43:23 +02:00
Juergen Spitzmueller
316a6470ad Localize format prettyName in some more places (#11954)
(cherry picked from commit 6f476b960e)
2020-09-11 09:11:00 +02:00
Eugene Chornyi
0638574dc9 Workaround Qtbug where QAbstractScrollArea::mouseMoveEvent(...)
is called falsely when quickly double tapping on a touchpad of a notebook running Windows (only for specific Qt Versions)
2020-09-10 21:43:37 +02:00
Enrico Forestieri
34f33b27a3 Try to use the right width for math symbols
The rules for typesetting math differ from the rules for typesetting
text. For example, two italic 'f' chars have to be typeset more closely
than two 'o' chars in text mode, but not in math mode. Qt provides a
method that returns the distance appropriate for drawing a subsequent
character in text mode, but nothing for math mode. Typically, the
distance appropriate for drawing the next character in math mode is
the actual width span by the character, corrected by the rules of
an appendix in the TeXbook. Recently, those rules are followed more
closely in LyX but not exactly, and we have to find a way to adapt to them.
Some symbols may need more spacing around them than the width they span.
So, we use the distance suggested by Qt, unless it is less than the
width of the rectangle bounding the symbol. Before Qt 5.11 the used method
was QFontMetrics::width(), but since then it has been declared obsolete
in favor of QFontMetrics::horizontalAdvance(), whose name conveys better
its meaning.

No status entry is needed as this amends 79998fdc.
2020-09-09 01:25:12 +02:00
Enrico Forestieri
82b3a26a32 Adjust debug output for fonts
This restores the debug output as it was intended before the
introduction of the LYXERR macro that was unconditionally outputing
an end of line. This is how this output was appearing until lyx 1.5:

Looking for font family cmr10 ... got: cmr10
 got it normal!

instead of as it was since lyx 1.6 and until now:

Looking for font family cmr10 ...
got: cmr10
 got it
normal!
2020-09-03 20:53:41 +02:00
Enrico Forestieri
1f1a8f6007 Personalize fonts
When the fonts distributed with texlive with same family name
as ours are also managed by fontconfig, Qt is not able to
discriminate ours by the style only. In order to be sure Qt
will load our fonts, we change the foundry name from 'PfEd'
to 'LyEd' and augment the font family name with this foundry
name. This only works on *nix, because adding a foundry name
seemingly breaks things on Windows. However, this is a *nix
only problem, seemingly.
2020-09-03 20:42:05 +02:00
Richard Kimberly Heck
14e23c97ad Accelerators
(cherry picked from commit 5606e934ac)
2020-09-03 07:39:56 +02:00
Richard Kimberly Heck
ec5b4be73e Localization
(cherry picked from commit 1ba785f2c6)
2020-09-01 01:44:39 -04:00
Richard Kimberly Heck
7f69fb3b3c Fix problem with edit button.
The previous implementation relied upon the cursor being immediately
in front of the inset. A bad idea.

(cherry picked from commit cf7e32ee8f)
2020-08-31 11:53:02 -04:00
Richard Kimberly Heck
3a7560dcb0 Fix bug 4475.
Add ability to create child from the include dialog.

(cherry picked from commit a385b7dc2b)
2020-08-31 11:48:13 -04:00
Yuriy Skalko
eb132b3b95 Prevent permanent disabling of comboboxes in Vertical/Horizontal space dialogs 2020-08-29 11:24:19 +02:00
Juergen Spitzmueller
65c8e70588 Amend 89d9334e03
This needs to be default layout, not plain layout

(cherry picked from commit ea122aa8fa)
2020-08-15 09:19:17 +02:00
Juergen Spitzmueller
028593b979 Maintain plain layout for separating paragraphs when switching layouts (#11936)
(cherry picked from commit 89d9334e03)
2020-08-15 09:17:19 +02:00
Yuriy Skalko
e3789263ef Disable editing of math package names in Document Settings
(cherry picked from commit e1dd91e10e)
2020-08-15 07:50:44 +02:00
Juergen Spitzmueller
8436073582 Consider nesting when checking whether an inset is in a title
Amends e2a29fe556

No status entry needed.
2020-08-10 08:54:56 +02:00
Daniel Ramoeller
e0840677e3 Fix for bug #11926
Change comobox signal to user interaction only to avoid problems with "Apply changes immediately" aka "Immediate Apply". (See https://doc.qt.io/qt-5/qcombobox.html#currentIndexChanged and https://doc.qt.io/qt-5/qcombobox.html#activated.)

(cherry picked from commit d3a04c089b)
2020-08-09 13:44:27 -04:00
Enrico Forestieri
a85bd34348 Correctly compute metrics for single-char non-math fonts
No status entry needed, as this amends 79998fdc.
2020-08-06 19:10:23 +02:00
Juergen Spitzmueller
0994a9612d Revert [9370135c3e/lyxgit] and fix #8499 properly
Fixes #11920

(cherry picked from commit 7250aad280)
2020-08-06 16:58:46 +02:00
Juergen Spitzmueller
777bf805e2 Revert "Fix #11827"
Not ready yet.

This reverts commit 3a544072a5.
2020-07-31 09:17:34 +02:00
Daniel Ramoeller
3a544072a5 Fix #11827
Keep spacing of math intact.

(cherry picked from commit b521d36bfb)
2020-07-31 08:29:58 +02:00
Enrico Forestieri
79998fdc62 Fix placement of limits with integral signs
Since be836909c5 the positioning of super- and subscripts
for symbol fonts has been broken because the metrics of the
font of the environment (rather than those of the symbol itself)
were used.
2020-07-24 19:09:17 +02:00
Jean-Marc Lasgouttes
67c0ca678b Improve metrics for \limits in display mode
(cherry picked from commit 8d54457dbf)
2020-07-18 22:18:25 +02:00
Jean-Marc Lasgouttes
d968717940 Fix paragraph position in TextMetrics::singleParUpdate()
When running redoParagraph, it may happen that the ascent of the first
row changes. Since the ParagraphMetrics position is actually the
baseline of its first row, it may be necessary to update it.

Fixes bug #11601.

(cherry picked from commit 2e8c9cfc83)
2020-07-14 19:48:55 +02:00
Jean-Marc Lasgouttes
dc5eda84b8 Set desktop name for Wayland
Fixes bug 11847.

(cherry picked from commit 2a80b0ac01)
2020-07-12 15:44:38 +02:00
Jean-Marc Lasgouttes
4804f63740 Use Common Number separator instead of European to detect numbers
This is a fixup to commit 611df441. It seems that the wrong unicode
property was selected. It could be that both classes should be used.

Fixes bug #11900.

(cherry picked from commit f758894c2f)
2020-07-11 21:06:35 +02:00
Juergen Spitzmueller
e2a29fe556 Prevent outputting \maketitle within an inset embedded in title.
Amends [e4ef8ddc0f8202/lyxgit]

(cherry picked from commit 0bddf448ef)
2020-07-04 11:01:22 +02:00
Juergen Spitzmueller
b86b80d74e Properly fix handling of title layouts within insets (#11787)
(cherry picked from commit e4ef8ddc0f)
2020-07-04 09:44:31 +02:00
Juergen Spitzmueller
83d76a66f6 Fix pasting of math grid with more rows in source than target (#11897) 2020-06-30 09:06:40 +02:00
Juergen Spitzmueller
b0c8dc54b4 Correctly initialize font (language) for multiple-cell paste (#11898)
(cherry picked from commit 2cee820f71)
2020-06-30 08:59:03 +02:00
Juergen Spitzmueller
41ebc1f9ae Do not paste \t when pasting multiple table columns outside table (#4449)
(cherry picked from commit 6dd990560e)
2020-06-30 08:57:07 +02:00
Juergen Spitzmueller
bccafdac19 Fix swapped logic (#11889)
(cherry picked from commit bde95c1876)
2020-06-20 09:07:55 +02:00
Richard Kimberly Heck
2e7e9af991 Focus keyword filed in Thesaurus dialog
(cherry picked from commit ef65414d25)
2020-06-18 10:51:59 -04:00
Enrico Forestieri
10e1f90883 Add support for the doublestroke package
This commit adds the mathed command \mathds that selects a
font more appropriate than \mathbb for typesetting the
mathematical symbols for the natural (N), whole numbers (Z),
rational numbers (Q), real numbers (R), complex numbers (C),
and some others.

As in the \mathbb case, only capital letters are supported,
but in addition one can also typeset a symbol often used for
representing the indicator function (\mathds{1}) and the
letters a, h, k.

Fixes bug #11887.
2020-06-12 23:58:32 +02:00
Juergen Spitzmueller
e20389ed6b UI improvement to math matrix dialog, suggested by magistere (#11888) 2020-06-11 17:29:37 +02:00
Jean-Marc Lasgouttes
f01c23bd5a Fixup d207e85c: paint sublabel with the correct background color
The above mentionned patch did paint the background of the sublabel to
avoid "bold-like" effect. However the correct backgound color is the
row's one, not the inset's one.

To fix this, extend MetricsInfo::backgroundColor to work when no inset
is specified. The code is also simplified as in master.

(cherry picked from commit 74540c9896)
(cherry picked from commit a71b96ac42)
2020-06-07 14:25:48 +02:00
Richard Kimberly Heck
774bbbe1b6 Fix bug #11405.
We don't actually prevent hidden buffers from being dirty, so we need
to save them if they are.

(cherry picked from commit b2517d60b8)
2020-06-05 15:48:44 -04:00
Richard Kimberly Heck
a355cd82c2 Fix bug #10316.
By sending the request through the usual dispatch machinery, we
make sure the cursor is valid when we're done.

(cherry picked from commit e5b6be0712)
2020-06-05 15:45:07 -04:00
Jean-Marc Lasgouttes
0fde27465d Fix first draw of auto-open inset
note-next and reference-next should trigger an update so that metrics
are updated when the cursor ends up in an auto-open inset.

Fixes bug #11870.

(cherry picked from commit 7761e1317e)
2020-06-05 15:40:44 -04:00
Richard Kimberly Heck
092bc93903 Update lyx-build script and add header file for Windows. 2020-06-01 16:10:47 -04:00
Richard Kimberly Heck
96dea61f22 Internal buffers are valid 2020-06-01 12:25:07 -04:00
Juergen Spitzmueller
2975a869d4 update tex2lyx tests after d13e3193b3 2020-05-30 09:32:10 +02:00
Juergen Spitzmueller
d13e3193b3 tex2lyx: reset language after polyglossia lang environment has been closed
Fixes #11878

(cherry picked from commit 5b2479176b)
2020-05-26 17:49:17 +02:00
Juergen Spitzmueller
89d42a68f5 Disable bookmarksopenlevel SL when bookmarksopen is false
Fixes #11289

(cherry picked from commit f2243a3bc7)
2020-05-18 09:15:56 +02:00
Richard Kimberly Heck
1741eb9c2c Fix bug #11456.
Add cancel button and take no action if we're canceled.

(cherry picked from commit 2de99c5dd9)
2020-05-18 00:30:13 -04:00
Juergen Spitzmueller
af4e5aefe0 Check class options for uncodable glyphs
Fixes #11865

(cherry picked from commit 11dc817e9d)
2020-05-16 09:05:36 +02:00
Juergen Spitzmueller
991ef3840e Assign InsetBibtex to appropriate toc level
Fixes #11863

(cherry picked from commit 92ba05c53b)
2020-05-16 09:02:55 +02:00
Juergen Spitzmueller
119d38bedf Move \PassOptionsToPackage before the first package loaded
Fixes #11862

(cherry picked from commit 2663e3845e)
2020-05-14 09:18:16 +02:00
Richard Kimberly Heck
94c2466c4c Fix bug #11864 2020-05-13 14:44:08 -04:00
Scott Kostyshak
7a158055fe Only set dummy X11 selection if we do not own it
Before, we would continually set the selection to the empty string,
to maintain ownership. This causes problems with clipboard managers
GPaste and CopyQ. Further, in theory this should have better
performance since checking ownership should be faster than setting.

A disadvantage of this change is that the timestamp of the selection
will be old at this point in the code. However, when the selection
is requested, we put the selection contents at that point so the
selection timestamp should be accurate then. Further, the selection
contents are not accurate at this point in the code (they are just
the empty string), so it is not clear whether having an accurate
timestamp is beneficial.

Fixes #11715.

(cherry picked from commit af4ee1a487)
(cherry picked from commit 23abb5aaa3)
2020-05-06 08:29:00 -04:00