Commit Graph

416 Commits

Author SHA1 Message Date
Juergen Spitzmueller
262b0dcca4 GuiCharacter: INHERIT is OFF for the tristate buttons.
(cherry picked from commit 1b6ce0e827)
2018-12-17 10:44:10 +01:00
Jean-Marc Lasgouttes
47adf27ac3 Fix undo after breaking a nested paragraph
We have to take into account that Buffer::updateBuffer can modify the document.

Fix bug #11292.

(cherry picked from commit 57feb0fed0)
2018-12-16 22:00:36 +01:00
Jean-Marc Lasgouttes
09d742cc7f Update boost to 1.68.
This avoid lots of warnings from gcc 8.
2018-12-16 21:45:02 +01:00
Jean-Marc Lasgouttes
0e6cb4e599 Set buffer correctly when changing math space type.
Fixes bug #7747.

(cherry picked from commit 2ec25c8eef)
2018-12-14 19:39:54 +01:00
Enrico Forestieri
3e9a1c2da7 Fix bug #9622
The backslash is the escape character used in our parser. Hence,
when used as a path separator on Windows, it has to be itself
escaped or the path enclosed in either double or single quotes.
Windows users are maybe trained to quote paths containing spaces
but not paths with backslashes. So, we automatically escape the
backslashes when they are not already enclosed in quotes.

(cherry picked from commit 4c9df62c6c)
2018-12-14 18:57:48 +01:00
Enrico Forestieri
eba2f14fa7 Fix display of single-char macro names
Essentially, all characters are allowed in single-char macro names.

Part of #11158.

(cherry picked from commit 95bc273a59)
2018-12-14 12:05:40 +01:00
Jean-Marc Lasgouttes
7950ace3d9 Fix selection of unmarked RtL text
With Qt 5.11 at least, RtL text will be drawn RtL even when the
(undocumented) flag Qt::TextForceLeftToRight is applied to the
QTextLayout object. This creates selection issues for Hebrew text
marked as English.

The solution is to do the same as in breakAt_helper, that is prepend
the string with a direction override unicode character.

Doing this requires to introduce a TEXTLAYOUT_OFFSET constant that has
to be used wisely to account for this extra character.

Fixes bug #11284.

(cherry picked from commit 1bed76e2a1)
2018-12-13 10:51:59 +01:00
Jean-Marc Lasgouttes
3a123b90af Remove old workaround that is not needed anymore
This causes a compilation error with boost 1.69.

Fixes bug #11349.

(cherry picked from commit 76e99e9a20)
2018-12-13 10:39:58 +01:00
Juergen Spitzmueller
ac351f40f1 Fix encoding problems in \input@path
As of LaTeX2e 2018, characters are made active earlier, which results
in new expansion problems.

Following a suggestion of Markus Kohm (pc) and the TL mailing list [1],
we embrace non-ASCII input paths in \detokenize. This relies on e-tex,
but I think we can assume this is nowadays available everywhere.

[1] http://tug.org/pipermail/tex-live/2018-May/041691.html

Fixes: #11146
(cherry picked from commit 8bd65041f2)
2018-12-12 08:39:20 +01:00
Richard Kimberly Heck
c26c7602e4 Copy modules into the Advanced F&R pane as well.
(cherry picked from commit 5064c09e9f)

Update the Advanced F&R document class when switching buffers.

(cherry picked from commit 944b0ae55d)
2018-12-11 18:05:53 -05:00
Richard Kimberly Heck
7bc7b8f422 Speed up convert_literalparam. Part of #11200.
(cherry picked from commit 4549f46a43)
2018-12-11 18:03:44 -05:00
Guillaume Munch
c1945d27df Make tab movement visible (#10733)
The nice hand-made solution for moving tabs has made its time. Use Qt's feature
instead from now on.

(cherry picked from commit 1979496399)
2018-12-11 17:59:27 -05:00
Richard Heck
e694199837 Fix bug 9798.
Nameref support for math references.

(cherry picked from commit 5f6332bf46)
2018-12-11 17:58:07 -05:00
Enrico Forestieri
535309929b Fix reloading of local layout file (bug #11120)
(cherry picked from commit 7822d11361)
2018-12-11 19:26:17 +01:00
Richard Kimberly Heck
ec464a8b9f Prepare for 2.3.2. 2018-12-08 11:24:40 -05:00
Juergen Spitzmueller
a7ecbba7bc sv.po: update by Jim. 2018-11-25 11:51:11 +01:00
Jean-Marc Lasgouttes
f7ebe1f70f Show cursor correctly when loading file
This is a fixup to 4ecbff00. When a file is loaded and the cursor is
set, it is required to first compute metrics to be able to scroll the
screen correctly.

Fixes bug #11377.

(cherry picked from commit 2dc84b69d5)
2018-11-23 17:05:46 +01:00
Jean-Marc Lasgouttes
c1df5fb6ef Avoid extra space in tooltips
When using QTextDocument to check the natutal size of a text, one has
to remove the text margin, which is not useful here.

Fixes bug #11353.

(cherry picked from commit 7db99672e6)
2018-11-21 14:47:04 +01:00
Juergen Spitzmueller
caa4ee6412 pt_BR.po: update by Georger 2018-11-18 18:22:08 +01:00
Juergen Spitzmueller
37599f29a4 uk.po: update by Yuri 2018-11-14 16:21:35 +01:00
Enrico Forestieri
704eede69b Fix bug #11367
The overset, underset, and stackrel insets behave like the script
rather than the fraction inset.
2018-11-12 21:17:03 +01:00
Juergen Spitzmueller
639aa35444 Dispay pre- and posttext widgets if non-empty also if unapplied
Fixes: #11352
(cherry picked from commit b8932afed5)
2018-10-30 22:18:52 +01:00
Juergen Spitzmueller
e00b11355d Merge paragraphs when pasted into an inset that forbids multipars
Fixes: #8281
(cherry picked from commit 5dde4b1b3e)
2018-10-14 09:06:38 +02:00
Juergen Spitzmueller
53a108e814 Load covington later
This solves a loading order conflict with beamer-article.

(cherry picked from commit 00ee54e694)
2018-10-13 09:49:10 +02:00
Enrico Forestieri
e323f74b78 Fix bug #11332
Add the "hyperref-driver=dvips" option to the extra flags of the
latex->dvi converter so that the breakurl package is automatically
loaded when needed.

(cherry picked from commit f5e6db7171)
2018-10-12 08:27:23 +02:00
Richard Kimberly Heck
7697bf7888 Revert "Fix bug #9348"
The fix changes behavior too much for stable. My bad.

This reverts commit e94ea46be7.
2018-10-08 16:27:47 -04:00
Juergen Spitzmueller
7a0416b374 Rework OK/Apply/Cancel UI of prefs dialog
Instead of "Save" (permanently) and "Apply" (temporarily), OK and Apply
now always save permanently, unless the new checkbox "Apply to current
session only" is checked.

Addresses: #10016
(cherry picked from commit c7bdb3b342)
2018-10-08 11:46:42 +02:00
Juergen Spitzmueller
4a8b508d40 If a master is being created at loading the child, un-hide it.
Fixes: #11162
(cherry picked from commit a368439bcc)
2018-10-08 11:43:20 +02:00
Juergen Spitzmueller
5133026b01 Fix suprious comma in book and thesis bib preview.
Fixes: #11272
(cherry picked from commit 399a4d7e71)
2018-10-08 11:40:24 +02:00
Juergen Spitzmueller
ea43f293c2 GuiCitation: don't reset filter on show
Addresses #11291

(cherry picked from commit 33d6499bbc)
2018-10-08 11:36:47 +02:00
Enrico Forestieri
e94ea46be7 Fix bug #9348
(cherry picked from commit 503f7db224)
2018-10-06 12:43:09 +02:00
Richard Kimberly Heck
00db9c44c8 Minor status updates 2018-10-05 11:46:51 -04:00
Richard Kimberly Heck
1d22d23808 Fix bug #10177.
The left margin given at class level should apply only to the main text.

(cherry picked from commit a007b65202)
2018-10-04 19:44:42 -04:00
Richard Kimberly Heck
768c7e2fa2 Fix bug #11275.
Show module name with description.

(cherry picked from commit 2553b0073f)
2018-10-04 14:12:03 -04:00
Jean-Marc Lasgouttes
ba3ff646db When ignoring an update, request one for later
If we were not ready to paint the screen, this does not mean that we
should give up on repainting, just potpone it.

I thought that it was bad to call update() in the paint event, but I
cannot find reference to this anymore and everything seems to work as
intended.

Fixes part of bug #11323.

(cherry picked from commit 38f09c177b)
(cherry picked from commit 2617a4dd50)
2018-10-04 15:07:12 +02:00
Enrico Forestieri
ea81faa911 Fix bug #11180
When a raster image with an advertised pixel density different
from 72 dpi is included in a latex file, the output image dimensions
are scaled by the ratio 72/pixel_density. Hence, if a clipping
bounding box is specified, it has to be scaled by the same ratio,
otherwise the images will be clipped differently on screen and output.
Here we use the extractbb command (present in any TeX distribution)
to ask about the output dimensions of the image as dictated by the
pixel density and compute the scaling ratio by the knowledge of the
actual dimensions. If, for whatever reason, extractbb is not found,
everything goes as before, because the clipping bounding box will
simply not be corrected.

(cherry picked from commit 380f34a114)
2018-10-04 00:40:19 -04:00
Richard Kimberly Heck
e67c119d80 Do not step equation numbers in deleted equations.
(cherry picked from commit df5805917b)
2018-10-04 00:20:19 -04:00
Richard Heck
a05da2121c Fix bug 11070.
Allows plural, caps, no prefix to be set via context menu.

(cherry picked from commit 35afcfb6dd)
2018-10-04 00:17:47 -04:00
Juergen Spitzmueller
76c15f51ea Do not store empty posttext for qualified citations
Fixes: #11308
(cherry picked from commit 90b1345203)
2018-10-02 08:11:50 +02:00
Juergen Spitzmueller
416b71883b Add bibtex inset to outliner if "add to toc" is checked.
Fixes #11309

(cherry picked from commit a89e3c344b)
2018-10-02 08:09:04 +02:00
Juergen Spitzmueller
068e3d4fe5 Amend cab46ff9d1
(cherry picked from commit f973855bde)
2018-10-02 07:47:06 +02:00
Stephan Witt
9fd0c45fa3 Add missing status entries for Mac build fixes 2018-09-29 13:48:31 +02:00
Juergen Spitzmueller
a754912e88 Use LTR environment for forceLTR content with polyglossia
Fixes: #10548
(cherry picked from commit 10c06f67c9)
2018-09-28 18:32:32 +02:00
Richard Kimberly Heck
1e26864c0a Status for last commit. 2018-09-27 22:14:44 -04:00
Enrico Forestieri
804ed1bffb Fix bug #11210
On Windows, start viewers in detached processes in order to avoid
a crash of the QProcess destructor when their thread terminates.
The opening of a console window is avoided by redirecting to the
null device all standard I/O channels.
2018-09-27 21:32:24 +02:00
Juergen Spitzmueller
ac5c2be8db Amend 2d4ac90fd2 once more
Only use local switch in RTL environment.

(cherry picked from commit e158d661b9)
2018-09-26 17:02:18 +02:00
Jean-Marc Lasgouttes
ebd4e25588 Avoid crash with cursor down in math
This can happen when the inset that contains the cursor is outside of
the screen.

THis is only a workaround. The real solution would be a
processUpdateFlags(FitCursor) call, but the code is not ready for that
yet.

Fixes bug #11296.

(cherry picked from commit 17576fb83b)
2018-09-21 18:43:53 +02:00
Jean-Marc Lasgouttes
bf3b81e46a Ignore horizontal wheel scrolling in workarea
We do not know what to do with horizontal scrolling events, so we ignore them.

Note that the code has to be different between Qt4 and Qt5.

Fixes bug #11257.

(cherry picked from commit 2cfbc5ecf6)
2018-09-21 18:42:32 +02:00
Jean-Marc Lasgouttes
97f3f18007 Avoid space before completion in mathed
This can happen if the current element has space after it (e.g. before
a relation).

Fixes bug #11283.

(cherry picked from commit 1b5ccecd65)
2018-09-21 18:41:08 +02:00
Jean-Marc Lasgouttes
f00a3e9304 Paint underline for insets too.
Fixes bug 11297.

(cherry picked from commit 328ff9df3a)
2018-09-20 17:07:10 +02:00
Juergen Spitzmueller
bebb077955 Avoid infinite loop
Fixes: #11295
(cherry picked from commit 92bfa07a62)
2018-09-20 17:01:38 +02:00
Jean-Marc Lasgouttes
b956265be3 Handle branches with space in their name
1/ Handle space in color name in set-color (with quoting)

2/ read properly branch inset which name has a space

Fixes bug #11108.

(cherry picked from commit 819cf53c22)
2018-09-19 22:39:01 +02:00
Juergen Spitzmueller
b5892e58f0 Fix copy-paste error.
(cherry picked from commit 305d449a47)
2018-09-19 08:54:09 +02:00
Jean-Marc Lasgouttes
c2ea2057fb Forgot this 2018-09-18 23:14:19 +02:00
Jean-Marc Lasgouttes
5c4c8065aa needauth is not needed for Sweave>LyX
Indeed this relies on tex2lyx and does not run R scripts.

The same holds for Knitr>LyX

(cherry picked from commit 23dbacb636)
2018-09-18 08:52:57 +02:00
Juergen Spitzmueller
734176c452 zh_CN.po: update by Winfred 2018-09-15 16:24:25 +02:00
Jean-Marc Lasgouttes
66e23c6334 Use a unicode character for menu separator on screen
Additionally, use a left pointing character in a RtL setting.

(cherry picked from commit 76512a7569)
2018-09-11 10:59:26 +02:00
Juergen Spitzmueller
a6fa2d721e tex2lyx: support for plural and capitalized refstyle
Also fix a glitch in non-refstyle import (getOpt() returns the option
with delimiter, so do not add them in ERT once more)

Candidate for stable

(cherry picked from commit faf40fb408)
2018-09-11 08:07:03 +02:00
Juergen Spitzmueller
4431ae2505 tex2lyx: support decimal alignment in tables
(cherry picked from commit 8ef2558dc2)
2018-09-11 08:03:23 +02:00
Juergen Spitzmueller
87db8ba5b8 Fix RTL tabular output with bidi package (i.e., polyglossia)
Fixes: #9686
(cherry picked from commit 21b347a2f8)
2018-09-10 19:20:24 +02:00
Juergen Spitzmueller
c5fe0751d9 tex2lyx: Fixes to the btUnit import
1. Do not attempt to mix diverging btUnits (e.g., chapters and sections).
2. use parse_text to properly parse the contents.

(cherry picked from commit 68d48b0015)
2018-09-10 17:50:30 +02:00
Juergen Spitzmueller
b1e5663333 tex2lyx: Add support for horizontal longtabular alignment 2018-09-10 16:31:46 +02:00
Enrico Forestieri
bc55ae0220 Update it.po 2018-09-10 14:48:34 +02:00
Jean-Marc Lasgouttes
93f861903d Fix disappearing blue language underline.
Make sure that the blue language underline is not below the bottom of
the row. Otherwise, it can disappear when the next row is painted.

(cherry picked from commit 8e9e050670)
2018-09-10 11:53:36 +02:00
Jean-Marc Lasgouttes
d371a43865 Draw top/bottom rules heavier for booktab
This gives a better idea of the TeX output, even though the thicknesses are
not correct. Like in LaTeX, this happens only for full top/bottom rules.

(cherry picked from commit 8651cd89f6)
(cherry picked from commit 84328c8538)
2018-09-10 11:48:37 +02:00
Juergen Spitzmueller
22e6659780 Don't add localswitch if no language changes
(cherry picked from commit 7018d3641f)
2018-09-10 10:13:29 +02:00
Juergen Spitzmueller
9b03b40731 Fix shortcuts info output on the Mac
QKeySequence returns special characters for keys on the mac rather than
textual key names (as on other OSes).

Since these symbols are not included in many fonts, we re-translate them
to textual names

Fixes: #10641
(cherry picked from commit 5f45b3ed9c)
2018-09-10 10:08:04 +02:00
Juergen Spitzmueller
4d81f210c1 Support key symbols via menukeys package
(cherry picked from commit fd7490762d)
2018-09-10 09:46:25 +02:00
Jean-Marc Lasgouttes
014227cc40 Fixes to input method handling
The goal of this patch is to make "self-insert <string>" act as a
sequence of individual self-insert calls. Once it is done, the
insertion of the commit string in GuiWorkArea can use that, which
fixes the issues described in bug 11183.

1/ in InsetMathNest, SELF_INSERT is rewritten to be a proper loop of
   interpretChar, instead of inserting the string as characters. This
   solves the issue of interpreting ^ properly.

2/ the text version does not need to be changed (the loop is rewritten
   using a range, though).

3/ Then {{{GuiWorkArea::inputMethodEvent}}} is changed to invoke
   directly self-insert. This removes the update issues.

Fixes bug 11183.

(cherry picked from commit ad5548cfe3)
2018-09-09 19:43:18 +02:00
Juergen Spitzmueller
ae8c0b2976 Amend 79cf3f5ec1
Some InfoInsets have to be LTR always.
2018-09-09 19:35:24 +02:00
Juergen Spitzmueller
b8c62838ec Covington now provides subexamples itself
Candidate for stable.

(cherry picked from commit ab16bb7eb9)
2018-09-09 19:17:46 +02:00
Juergen Spitzmueller
0bd7a6384b Allow to change multiple columns' width at once
Fixes: #11205
(cherry picked from commit 91254472e6)
2018-09-09 19:13:46 +02:00
Juergen Spitzmueller
0a89b08f68 tex2lyx: fix import of unknown commands'/environments' options
If we detect options via hasOpt(), output the brackets as ERT.

Fixes: #8685
(cherry picked from commit da62299f37)
2018-09-09 19:09:59 +02:00
Juergen Spitzmueller
93f3727b53 tex2lyx: Fix import of Arabic polyglossia environment
Part of #10111

(cherry picked from commit 920e26916e)
2018-09-09 19:05:53 +02:00
Juergen Spitzmueller
9e387aea07 tex2lyx: Add support for multirow
Fixes: #11164
(cherry picked from commit c33506555f)
2018-09-09 12:35:28 +02:00
Juergen Spitzmueller
3efd64696f Consider required modules when checking for layout definitions in modules
Fixes: #11156.
(cherry picked from commit 8b4c76fb24)
2018-09-09 12:25:57 +02:00
Juergen Spitzmueller
995aed2e6e Par alignment in floats must be swapped for all RTL langs, not only Hebrew
Fixes: #11029
(cherry picked from commit 3bacc3c6e7)
2018-09-09 12:23:16 +02:00
Juergen Spitzmueller
a41d589e85 Proper logos with RTL
Fixes #10423

(cherry picked from commit e5a9244bef)
2018-09-09 12:17:03 +02:00
Juergen Spitzmueller
2e65b8e75e Implement tri-state in GuiSetBorder
A new UNDECIDED state is used if multiple cells with differing border
settings are selected.

This prevents additional borders to be set without being asked.

Fixes: #10010
(cherry picked from commit 99aefa5fd2)
2018-09-09 11:46:37 +02:00
Juergen Spitzmueller
a359a53eb6 Disallow paragraph customization in some single-par charstyle insets
Fixes: #9192
(cherry picked from commit 7a5184fd87)
2018-09-09 11:41:52 +02:00
Juergen Spitzmueller
f6a8810d9d Wrap rotated cells with linebreaks in varwidth
Fixes: #8085
(cherry picked from commit 88e5e5fd34)
2018-09-09 11:38:38 +02:00
Juergen Spitzmueller
c41f9f7ed7 tex2lyx: extend titling support
Rather than checking for hardcoded title commands such as \maketitle,
use the titlename and titletype as defined in the layout.

This now also includes title environments.

Fixes part of #6461

(cherry picked from commit 429edc0a59)
2018-09-09 11:33:25 +02:00
Juergen Spitzmueller
00f344effa Consider EuropeanNumberTerminator property when determining text direction
Also, use EuropeanNumberSeparator information rather than relying on an
own (incomplete) list of number separators.

Fixes: #4057
(cherry picked from commit 611df441b6)
2018-09-09 11:30:43 +02:00
Enrico Forestieri
4862e00c1f Fix bug #11203
Minted does not have a language option but it is possible to enter
this option in the LyX interface for compatibility with the listings
package, and also for letting to enter a language not present in the
gui. So, this option is only used for properly specifying a language
in a listing, unless it is entered in the document settings dialog.
This case was not foreseen and thus the option was being passed to
the package as is, causing havoc. With this commit the option is
still available but is used to set a default language for a new
listing in place of the default "tex" language used so far.

(cherry picked from commit 16ca5290c0)
2018-09-09 11:25:01 +02:00
Juergen Spitzmueller
ae196dd70c Support input of non-ASCII characters in hyperlinks
We transform them to hex representation via
QByteArray::toPercentEncoding()

Fixes: #11165
(cherry picked from commit 01d8f41894)
2018-09-09 11:00:20 +02:00
Juergen Spitzmueller
29355d34d5 Use footnotehyper rather than footnote if hyperref is used
Fixes: #11212
(cherry picked from commit f8e286b823)
2018-09-09 10:55:34 +02:00
Juergen Spitzmueller
5f0c20b67e Capitalization fixes
Fixes: #11237
(cherry picked from commit b75f716b73)
2018-09-09 10:52:32 +02:00
Juergen Spitzmueller
08aef452e7 Disambiguate dialog buttons
Fixes: #11242
(cherry picked from commit 74657a14a7)
2018-09-09 10:50:01 +02:00
Juergen Spitzmueller
a0fb2f05c9 Do not start from a non-relevant parent in Buffer cloning.
(cherry picked from commit e077255aea)
2018-09-09 10:46:20 +02:00
Juergen Spitzmueller
0c05722a60 Redesign character dialog
Fixes: #2752, #3804, #3884, #4836

Backport of [fb393b450d661/lyxgit] and [f888afeb9ef7/lyxgit]
2018-09-09 10:28:25 +02:00
Richard Kimberly Heck
53bf5beae0 Prepare for 2.3.1. 2018-08-27 14:07:29 -04:00
Juergen Spitzmueller
7356f37644 Fix line break in tooltip
Fixes: #11252
(cherry picked from commit 6d71b9b69a)
2018-08-20 08:37:25 +02:00
Enrico Forestieri
103d6c6362 Fix bug #11247
async is a reserved keyword in python 3.7

(cherry picked from commit 061cd7fd9c)
2018-08-19 16:35:20 +02:00
Juergen Spitzmueller
5ef6805961 hu.po: update by Alex 2018-08-18 15:10:48 +02:00
Enrico Forestieri
48cd67ebf8 Fix LyX server on Windows
On some recent Windows versions, GetLastError() may also return
NO_ERROR instead of ERROR_IO_PENDING during an overlapped write
operation to a pipe. This was confusing the state machine in
Server.cpp so that replies to commands were scheduled but were
never actually output.

(cherry picked from commit cf5f2661dc)
2018-08-08 13:15:56 +02:00
Enrico Forestieri
e1fa3cb248 Update the server_monitor example client to Qt5
(cherry picked from commit ab72f94595)
2018-08-08 13:12:33 +02:00
Juergen Spitzmueller
9c3dbfb7ed uk.po: Update by Yuri 2018-08-04 07:12:33 +02:00
Juergen Spitzmueller
7de98f7dbc Change size policy of buffer combo in refs dialog
Fixes: #9316
(cherry picked from commit b286c6d235)
2018-08-03 19:46:27 +02:00
Juergen Spitzmueller
d762d55558 Fix problem of unwanted spaces caused by macro definitions
Patch by Gilbert J. M. Forkel

Fixes: #11216
(cherry picked from commit 372712cfd9)
2018-07-31 08:49:50 +02:00
Enrico Forestieri
9a851be4fa Fix bug #11214
The checkProg() function was separating a command from its parameters
by splitting at the first space. This was a problem if the command
was specified with a full path containing spaces. Now the checkProg()
function separates a command from the parameters by splitting at the
first non-quoted space. So, it suffices quoting a path to solve the
issue.
2018-07-28 23:27:43 +02:00
Juergen Spitzmueller
e0e998b157 Fix austrian language code
(cherry picked from commit b12ea3b731)
2018-07-25 19:44:26 +02:00
Juergen Spitzmueller
898ed85dd7 zh_CN: update from Winfred Huang 2018-07-25 15:43:20 +02:00
Juergen Spitzmueller
1d8ee1c704 (a)mend edb2d14124
(cherry picked from commit 0bf7b3211d)
2018-07-22 10:19:37 +02:00
Juergen Spitzmueller
485f070887 Fix nesting problem with numbers in RTL text
\textcolor must precede any \beginL

Fixes: #6283
(cherry picked from commit 114ebf00c4)
2018-07-22 10:16:32 +02:00
Juergen Spitzmueller
cc845ed2cf Fix bracket output in RTL languages
This is a real mess!

Fixes: #11187
(cherry picked from commit 195f62ac93)
2018-07-21 10:40:59 +02:00
Juergen Spitzmueller
a17dfeee0e Fix quotation marks in RTL script
Fixes: #11188
(cherry picked from commit aa1d9638fe)
2018-07-21 10:27:38 +02:00
Juergen Spitzmueller
bdbdd28756 Fix command line output of convertDefault.py for ImageMagick
Part of #11186

(cherry picked from commit 1e5acc5656)
2018-07-13 17:26:34 +02:00
Juergen Spitzmueller
82cade4877 Use QMessageBox for toggleWarning if possible
Qt 5.2 introduces the possibility to place a checkbox on a QMessageBox,
so we need no longer to use our own crude dialog.

(cherry picked from commit 0148ef7e6c)
2018-07-11 19:11:28 +02:00
Juergen Spitzmueller
12ca81f2ea Fix creationCode() of GuiPrintNomencl
This fixes "New Inset" in that dialog.

Candidate for stable

(cherry picked from commit d2afa67da9)
2018-07-10 17:52:50 +02:00
Jean-Marc Lasgouttes
25e0ca1860 Do not force lfun argument to be pure ascii
Fixes bug #11167.

(cherry picked from commit 8e015f3cb2)
2018-07-04 11:46:03 +02:00
Jean-Marc Lasgouttes
5eb4a15579 Do not allow completion when there is an active selection
We do it in texted only, mathed is more difficult and not so relevant IMO.

(cherry picked from commit 789acb4a95)
2018-07-04 11:22:00 +02:00
Juergen Spitzmueller
ab450346b5 Handle correctly zero table special arguments.
Fixes: #10247
2018-06-27 08:16:59 +02:00
Scott Kostyshak
03fef44b54 status: describe the CMake changes in 889d10cd 2018-06-24 18:04:54 -04:00
Enrico Forestieri
49c0021306 Fix bug #11174
Apparently, a new paragraph is started after a float even if
no blank line is actually present. So, account for this fact.

(cherry picked from commit f6922b8c88)
2018-06-17 23:37:39 +02:00
Enrico Forestieri
87b44bcc1f Fix bug #11151
(cherry picked from commit 17ea71b31c)
2018-05-21 22:01:56 +02:00
Stephan Witt
26d0fb3dd5 #11142 correct list of previous versions to check for user directory contents
LyX on Mac uses a user directory with version suffix. On change of the version suffix
the existence of the directories with previous versions is checked and the latest one
is used for a copy on first configure run.

For 2.3 the candidate list starts with 2.2 now as it should.

(cherry picked from commit 17c3617c49)
2018-05-16 07:18:38 +02:00
Juergen Spitzmueller
d35055de83 Fix InsetBox::contentAlignment()
Some cases where alignment is possible were missing.

Candidate for 2.3.x.

(cherry picked from commit de67b68b1d)
2018-05-11 18:44:17 +02:00
Jean-Marc Lasgouttes
4e981b034e Adapt caret height to context in mathed.
Compute a height from current font and current cell vertical
dimensions in MathData::metrics(), because this is where current font
is known.

Introduce BufferView::setCaretAscentDescent to remember this value.

This mechanism is not used for text because Cursor::current_font is
restored by undo, and the caret height would not be changed then. But
in principle it is doable.

(cherry picked from commit 90cfe4ec3b)
2018-05-10 12:53:30 +02:00
Scott Kostyshak
705302f6de Center longtable explicitly (#10690)
"Center" is the default of longtable, but some situations require it
to be centered explicitly, such as when using floatrow:

https://tex.stackexchange.com/questions/320592/floatrow-package-conflicting-with-centering-longtable

(cherry picked from commit bde1834f7e)
2018-05-08 17:42:43 -04:00
Scott Kostyshak
532d3600f2 Do not use needauth when only exporting code
We have a couple of converters (using Sweave and knitr to "tangle"
an intermediate file) that are used for exporting code chunks
contained in a .lyx file. Since the code is just exported to a text
file and is not executed, needauth is not necessary.

(cherry picked from commit 065e37e96f)
2018-05-06 19:50:55 -04:00
Juergen Spitzmueller
36096435e5 Fixes for nested ulem commands
1. \uuline must be on top of \sout
2. \uwave in \xout needs a hack to compile

(cherry picked from commit 9fd94a2dd0)
2018-05-05 10:09:04 +02:00
Juergen Spitzmueller
63c54434ae PassThru paragraphs have latex_language; consider this when checking
previous language

Fixes: #10793.
(cherry picked from commit 15df033bce)
2018-05-01 06:56:45 +02:00
Scott Kostyshak
6a808d285c Fix duplicate, disabled "Separated Frame Below"
This commit fixes an issue where the menu option "Insert Separated
Frame Below" would show up twice, with one instance disabled. This
occurred when there was a "Standard" environment nested in a
"Frame". With this commit, the duplicate instance is removed.

(cherry picked from commit 4f7a5f8c3e)
2018-04-29 00:05:15 -04:00
José Matos
f7b9d57a45 Update scripts to support simultaneously python 2 and 3
The fixes are simple and on line with the changes made during
the 2.3 development. It was an oversight to leave them out.

With this commit all the python scripts should be supported by
python 2 and 3.

(cherry picked from 5b160e82be)
2018-04-28 11:24:28 +01:00
Richard Kimberly Heck
636e998353 Fix bug #11127.
This also fixes an accidental commit of "NeedCProtect".

(cherry picked from commit 9f79ab99ed)
2018-04-27 20:17:15 -04:00
Jean-Marc Lasgouttes
5c6bc52b1b Update cursor position after committing IM string
(cherry picked from commit 01fea56eb6)
2018-04-26 22:45:57 +02:00
Richard Kimberly Heck
e7387fd348 Don't sort the bibfiles cache.
This causes problems with biblatex. Instead, we sort the old and
new lists and then compare them.

(cherry picked from commit 6b095e2b71)
2018-04-25 13:45:17 -04:00
Richard Kimberly Heck
13354c4a53 Improve error message.
(cherry picked from commit 04f7151684)
2018-04-25 12:06:07 -04:00
Jean-Marc Lasgouttes
d0a11cb8e2 Redo metrics after cancelling macro mode
When the cursor is inside a subscript that may become empty, metrics
issues can happen. This patch fixes the issue, although it is not
clear to see what the problem is.

Still, requesting a metrics update also in the case where the macro
mode is canceled makes sense.

Fixes bug #11125.

(cherry picked from commit 68ec34e603)
2018-04-25 17:03:50 +02:00
Richard Kimberly Heck
b3946f6d4d Add bindings for inset-settings.
Fixes #7762.

(cherry picked from commit 8da025014d)
2018-04-22 23:58:21 -04:00
Richard Heck
7d0b7e0840 Fix for #10624.
If we're in the first paragraph after a division (section, etc),
use the prefix for it.

(cherry picked from commit dd2efe8d0d)
2018-04-20 23:29:36 -04:00
Richard Heck
0662ffb98e Fix #6344.
For some reason, special code was added for LFUN_INDEX_INSERT
when it was not actually needed. So just delete it.

(cherry picked from commit 83356ab9fe)
2018-04-20 23:16:02 -04:00
Richard Heck
7dcd1a7f4e Reset counters before we re-run updateBuffer when the bibfiles change.
Fixes a bug reported by Pavel here:
  https://marc.info/?l=lyx-devel&m=152407889727665&w=2

(cherry picked from commit 64acc06b91)
2018-04-20 23:01:23 -04:00
Richard Heck
12c196755b Fix bug #11118.
Adds LFUN_MASTER_BUFFER_EXPORT.

(cherry picked from commit c4c7053d1d)
2018-04-19 00:11:48 -04:00
Juergen Spitzmueller
9e52c7693e Add support for rotated longtabulars (via [pdf]lscape)
Fixes: #9194

See #9194 for why we use an earlier file format change here.

(cherry picked from commit feab528fd1)
2018-04-18 18:10:06 +02:00
Richard Heck
33e1ead22f Reorder status. 2018-04-16 23:29:07 -04:00
Richard Kimberly Heck
b567ef36bb Fix bug #11084.
Allow unicode-insert to accept a sequence of codepoints.

(cherry picked from commits 83b1ac3b, f7d502d0, and a714f6cb)
2018-04-16 23:26:08 -04:00
Richard Heck
955199fe8c Fix bug #9847.
Spaces are, amazingly, allowed at the end of bibliography keys. So we
introduce a new parameter allowing getVectorFromString not to trim
whitespace, and then use it.

For some reason, this seems not actually to have been backported
to 2.3.x.
2018-04-16 23:19:21 -04:00
Enrico Forestieri
03b5a0800a Account for Qt 5.10
Fix regular sed expression in order to catch a second digit in the
Qt minor version number.

(cherry picked from commit 6253cc4c51)
2018-04-15 22:28:29 +02:00
Juergen Spitzmueller
930e6c14d2 de.po 2018-04-15 11:50:23 +02:00
Richard Heck
5a9bf60166 Fix bug #11055.
See also https://marc.info/?l=lyx-devel&m=151709211602688&w=2.

(cherry picked from commit d3ee87eea2)
2018-04-15 00:29:36 -04:00
Juergen Spitzmueller
4ce9e61ab1 Prevent that a full source preview of a child clears the master's bibfiles cache.
See #9158

(cherry picked from commit a9a7f38488)
2018-04-15 00:26:43 -04:00
Juergen Spitzmueller
e4a3527fa9 Consider sub-subfiles on log file parsing.
These are listed as (subfile.ext (sub-subfile.ext))

Fixes: #11112
(cherry picked from commit 1e1800a21a)
2018-04-15 00:04:40 -04:00
Richard Heck
dc2c1b943d Clean up status.23x 2018-04-15 00:01:11 -04:00
Richard Heck
bcb002039b Merge branch '2.3.2-staging' into 2.3.x 2018-04-14 23:52:31 -04:00
Richard Heck
156cfe5951 Fix bugs #10897 and #10912. 2018-04-14 23:38:32 -04:00
Scott Kostyshak
c19fd610b9 Do not show master's errors if compiling child
If a master document is compiled and has errors, and then a child is
compiled without error, the errors from the master compilation were
shown.

The setup of the relevant code is the following:

  processingThreadFinished() calls errors().  errors() makes the
  assumption that if it is called, there must have been an error
  somewhere.

The logic of the setup is the following:

  processingThreadFinished() knows whether there was an error on
  the most recent preview/export, although it doesn't know whether
  the error is from master or child (i.e. does not know whether the
  user was compiling the child, or whether master-buffer-view was
  called).  Inside error(), if there is no error in the child, it is
  assumed the error is from master.

For the above logic to work, errors() should only be called if there
was an error.

This commit fixes #11106 and preserves the fix to #7330.

(cherry picked from commit 8d2b121ef5)
2018-04-14 23:25:19 -04:00
Jean-Marc Lasgouttes
86c003001d Fix invalid octal number
(cherry picked from commit 6cffd468e0)
2018-04-14 23:23:10 -04:00
Juergen Spitzmueller
10335b93b4 Support new hunspell C++ ABI if LyX is built against hunspell >= 1.5
Fixes: #10547
2018-04-14 10:35:59 +02:00
Joel A. Kulesza
d25762da35 Changed Settings->Local Layout to FixedWidth & Nowrap
This change is made in response to Ticket 10992.

The change made is consistent with those captured in Ticket 9966.

(cherry picked from commit 869e2fe9b9)
2018-04-09 21:30:40 -04:00
Juergen Spitzmueller
1eceb1c574 Load hyperref with a suitable driver
This is mandatory for some features (such as bookmarks,pdfusetitle)
to work, and only a handful of drivers can be auto-detected by hyperref.

Fixes: #6418
(cherry picked from commit 33bfbf89c4)
2018-04-09 15:17:11 +02:00
Juergen Spitzmueller
9df09d8cba Set correct path to (biblatex) bibliography databases that are entered relative to child documents.
Fixes: #11105
(cherry picked from commit 2ecc3b09c6)
2018-04-08 13:25:17 +02:00
Uwe Stöhr
c690e8880b tex2lyx: parse \xymatrix
LyX's \xymatrix support relies on math therefore put it into math and parse its content

fixes bug #10638

(cherry picked from commit 1174279967)
2018-04-07 00:19:10 -04:00
Juergen Spitzmueller
6810a181d0 Do not use \tablefootnote in minipages
Minipages provide their own working \footnote's

Should also go to 2.3.x.

(cherry picked from commit 37404df686)
2018-04-05 11:59:05 +02:00
Richard Heck
935442aaba Fix bug #11102.
Ignore deleted material when generating a proposed label.

(cherry picked from commit d9ebf6e2c7)
2018-04-03 18:41:28 -04:00
Richard Heck
1696d26b20 Status for last two commits. 2018-04-01 22:21:31 -04:00
Stephan Witt
8ccbfd5dc7 #11094 add status entry for backported fix 2018-03-31 12:00:33 +02:00
Juergen Spitzmueller
bcd1814746 Open ExternalInset dialog on first tab for new insets
Fixes: #11081
(cherry picked from commit 126e0c3dac)
2018-03-29 09:48:00 +02:00
Juergen Spitzmueller
d549330760 Handle comments in options
Things like
pdfpagemode=UseOutlines%None,UseOutlines,UseThumbs,FullScreen

was not imported correctly (the comment was not stripped)

Fixes the rest of #5737

(cherry picked from commit 820ec38da7)
2018-03-29 09:42:00 +02:00
Richard Kimberly Heck
5f4d678a72 Whitespace only. 2018-03-28 15:46:55 -04:00
Juergen Spitzmueller
82f9688c81 typo 2018-03-26 18:35:09 +02:00
Juergen Spitzmueller
953df30894 Fix use of default biblio_style
Fixes: #11088
2018-03-26 17:59:27 +02:00
Juergen Spitzmueller
f2a3053323 add status entry 2018-03-26 13:48:40 +02:00
Jean-Marc Lasgouttes
977a0c4037 Make it possible to select (not)native file dialogs at run time
Add a new LyXRC variable use_native_filedialog (true by default) that
allows to select the kind of FileDialog we want at runtime.

(cherry picked from commit af795b80d8)
2018-03-21 10:56:57 +01:00
Richard Kimberly Heck
0209f2faff Fix problem with conversion of stmary10.lyx. 2018-03-19 18:44:29 -04:00
Juergen Spitzmueller
d9314d15dc Some improvements to the graphics dialog
* Describe the viewport/bb situation more accurate
* Use generic term "coordinates", since bb and viewport are flavor-specific
* Add some tooltips
* Increase the width of the options widget.

(cherry picked from commit c462fadff5)
2018-03-19 18:23:59 +01:00
Juergen Spitzmueller
27a871499f Change lookup order for enchant-2 vs. enchant (prefer the former)
(cherry picked from commit 1ae537c543)
2018-03-19 17:45:00 +01:00
Jean-Marc Lasgouttes
0ddb1435c9 Fix default spellchecker when only Enchant is available
This has been annoying me for ages.

(cherry picked from commit ae473b012a)
2018-03-19 16:51:45 +01:00
Joel A. Kulesza
3abfd72b27 Update to accept automake 1.16
(cherry picked from commit 61db4af82d)
2018-03-19 16:44:24 +01:00
Juergen Spitzmueller
7927d71a08 Properly fix math packages table in Document Settings
Fixes: #10777
(cherry picked from commit 3face5e119)
2018-03-18 16:47:59 +01:00
Juergen Spitzmueller
be80912d1c syntax.default: add missing *
Fixes: #10501
(cherry picked from commit 23766fdd59)
2018-03-17 15:44:05 -04:00
Juergen Spitzmueller
c52baa7d81 tex2lyx: handle whitespace in table column declaration.
Fixes: #10804
(cherry picked from commit 247e1a223d)
2018-03-17 15:44:05 -04:00
Juergen Spitzmueller
d71e3404fe Braces need to be escaped as well on LATEXIFY
part of #9563
2018-03-17 15:44:05 -04:00
Juergen Spitzmueller
db3768da89 Fix the implementation of new libertine package
Needs to go to 2.3.1-staging

(cherry picked from commit 905516fd70)
2018-03-17 15:44:05 -04:00
Juergen Spitzmueller
5fb2566572 Do not force singlebyte encoding for listings with XeTeX/LuaTeX.
Fixes: #11056
(cherry picked from commit cbf2a329c9)
2018-03-17 15:44:05 -04:00
Uwe Stöhr
880fd9aa81 status.23x: mention the updated po files in 2.3.x branch
- also sync an entry with status.22x
2018-03-17 15:44:05 -04:00
Richard Heck
96ec4d645b Use pythonic syntax, as suggested by José.
(cherry picked from commit cec9edd34b)
2018-03-17 15:44:05 -04:00
Juergen Spitzmueller
11d20e132a tex2lyx: do not force default bibliography style if none is set
Some classes provide a \bibliographystyle, so we must not output any
\bibliographystyle if none is set in the TeX file.

Fixes: #10673
(cherry picked from commit ed331bedd6)
2018-03-17 15:44:05 -04:00
Juergen Spitzmueller
b35fb98335 Fix list of viewable formats in view/update menu.
Also fix list in (currently unused) Export toolbar button.

Fixes: #11044
(cherry picked from commit ab6bd5e319)
2018-03-17 15:44:05 -04:00
Jean-Marc Lasgouttes
f599e90d92 Kill macro mode when using LFUN_ESCAPE
Add a `cancel' boolean to macroModeClose() that just removes all trace
of what has been entered instead of finalizing it.

When entering a macro in mathed, let LFUN_ESCAPE invoke
macroModeClose(true). The new semantics of LFUN_ESCAPE in mathed is
thus to abort the input of a macro name.

Fixes bug #9251.

(cherry picked from commit 9296344b9a)
2018-03-17 15:44:05 -04:00
Juergen Spitzmueller
148a053fbc escape label in included listings
Also use docstring rather than string.

Fixes part of #10544

(cherry picked from commit 0bf8865122)
2018-03-17 15:44:05 -04:00
Juergen Spitzmueller
0e08b4e4f5 Adapt to new ChkTeX return values.
As of v. 1.7.7, chktex has four exit values. Only consider the program
failed with EXIT_FAILURE (1). This is backwards compatible to chktex
up to v. 1.7.5 and later patched versions included in TeXLive, where
there was the distinction EXIT_FAILURE (program failed) and EXIT_SUCCESS
(program successfully run, with or without something to report).

Note that ChkTeX v. 1.7.5 and 1.7.6 vanilla (as included in MikTeX) also
returned EXITE_FAILURE if ChkTeX found something to report.

We do not, and never did, support this case.

Fixes: #9989 (after ChkTeX 1.7.7. is released).
(cherry picked from commit 0d806799aa)
2018-03-17 15:44:05 -04:00
Juergen Spitzmueller
8bf7e691bc Do not use English, but the context language, when pasting from math
Fixes: #2596
(cherry picked from commit 92990adc23)
2018-03-17 15:44:05 -04:00
Juergen Spitzmueller
6da7b92c36 update status 2018-03-17 15:44:05 -04:00
Richard Heck
2508e7aacc Status file for 2.3.1 2018-03-17 15:44:05 -04:00
Juergen Spitzmueller
f711e44bcf tex2lyx: complete minted support (inputminted)
Also fix some whitespace issues in minted inset import.

(cherry picked from commit f3c5bcd2be)
2018-03-17 18:16:46 +01:00
Juergen Spitzmueller
aa8d047bb3 Update status 2018-03-17 14:36:56 +01:00
Juergen Spitzmueller
d263ca0529 tex2lyx: update quote handling
* Consider new quote styles
* Consider changed quote styles
* Try to be a bit smarter with ambiguous quotation marks

(cherry picked from commit 8184f08f4a)
2018-03-12 09:19:17 +01:00
Juergen Spitzmueller
59449063df tex2lyx: support tipa \t*{} macro.
(cherry picked from commit cc6f2dae82)
2018-03-12 09:15:57 +01:00
Juergen Spitzmueller
8f69f7af01 Status updates. 2018-03-11 18:33:45 +01:00
Juergen Spitzmueller
f183686505 tex2lyx: support for URW Classico, MinionPro and the new Libertine fonts.
(cherry picked from commit a3836d9909)
2018-03-11 18:23:35 +01:00
Juergen Spitzmueller
0f33720d29 tex2lyx: support for \includeonly
(cherry picked from commit 15fd17d83f)
2018-03-10 11:09:40 +01:00
Juergen Spitzmueller
42dd5f5cfa tex2lyx: chapterbib support
(cherry picked from commit af6933c06f)
2018-03-10 10:33:10 +01:00
Uwe Stöhr
e9470e7d64 status.23x: correct sorting
tex2lyx biblatex support is an improvement not a bugfix. At least in the past we sorted new tex2lyx features this way.
2018-03-06 22:34:21 +01:00
Juergen Spitzmueller
30cb99503f tex2lyx: support alignment pseudo-environments.
Fixes: #7857
(cherry picked from commit 7a22ce7c09)
2018-03-06 18:27:13 +01:00
Juergen Spitzmueller
afeb5acb0f Fix local polyglossia switch for Arabic
We need to lowercase the language again (it's \begin{Arabic},
but \textarabic)

Fixes: #11057.
(cherry picked from commit 27584f5f70)
2018-03-06 18:24:32 +01:00
Juergen Spitzmueller
94fe126161 tex2lyx: fix subfloat import
Fixes: #10385
(cherry picked from commit 1dcb2a0976)
2018-03-06 18:22:12 +01:00
Juergen Spitzmueller
566f368885 Remove duplicate entries. 2018-03-06 17:31:19 +01:00
Uwe Stöhr
150fb89e22 status.23x: mention the new biblatex support in tex2lyx 2018-03-06 13:52:42 +01:00
Juergen Spitzmueller
50b78507b9 tex2lyx: support biblatex
(qualified citation lists and multibib not yet supported)

(cherry picked from commit f22213a04f)
2018-03-06 08:19:35 +01:00
Juergen Spitzmueller
3e6a1eecc5 tex2lyx: consider options passed via \PassOptionsToPackage
(cherry picked from commit 476401a76f)
2018-03-06 08:18:43 +01:00
Juergen Spitzmueller
84b59c90e7 tex2lyx: import straight quotation marks as ERT
This assures that they are output as straight quotations marks (e.g.,
babel shorthands).

Fixes: #75 [sic!]
(cherry picked from commit ccb9ae9670)
2018-03-06 08:17:18 +01:00
Juergen Spitzmueller
749ff439df No manual intervention needed for polyglossia (bidi) and RTL numbers.
See https://tex.stackexchange.com/a/256837/19291

(cherry picked from commit 00d4144352)
2018-02-27 08:59:02 +01:00
Juergen Spitzmueller
98e9e53882 Take actual font height (ascent, descent) into account when drawing placeholder box for graphics
Fixes: #11048
(cherry picked from commit 5ddd377a0a)
2018-02-26 08:59:11 +01:00
Richard Heck
797babd462 Fix bug #10817.
Respect 'literal' setting when calculating longest bibitem.

(cherry picked from commit 224e56c935)
2018-02-22 15:44:29 -05:00
Richard Heck
04e8526460 Respect "literal" setting when entering citation via LyX server.
This requires moving the bool that tracks this somewhere that it
is visible from BufferView. It seemed to make sense to put it as
a static member of InsetCitation.

(cherry picked from commit f8e8877f83)
2018-02-22 15:33:01 -05:00
Juergen Spitzmueller
721cc085a2 Implement IsTocCaption for normal layouts.
But use default "true" to maintain current behavior if not explicitly
stated otherwise.

Fixes: #11045
(cherry picked from commit 8a703573ea)
2018-02-22 19:12:30 +01:00
Alexander Dunlap
257f978d62 save session when we save a buffer
Implements enhancement #10712.

(cherry picked from commit cca365f26c)
2018-02-21 11:56:37 +01:00
Jean-Marc Lasgouttes
a2e1021aba Use parMetrics to access the par_metrics_ map
In cursorY, it is dangerous to access par_petrics_[0], since one does
not know whether metrics have been computed for this paragraph (which
may be off-screen).

It is safer to use parMetrics(0), that will compute the paragraph
metrics as needed.

Fixes bug #8120.

(cherry picked from commit a25b48f86c)
2018-02-20 15:02:35 +01:00
Juergen Spitzmueller
e1f7cc964b update status 2018-02-16 18:19:05 +01:00
Pavel Sanda
c17f706a1c * status file 2018-02-15 21:48:47 +01:00
Jean-Marc Lasgouttes
c8230ab0d0 Merge remote-tracking branch 'features/properpaint' into 2.3.2-staging
This makes sure that painting actually happens at paint events, making
display more fluid.
2018-02-15 14:57:53 +01:00
Pavel Sanda
abdadcceb9 * status.23x 2018-02-15 11:56:49 +01:00
Jean-Marc Lasgouttes
2e1863b704 Implement display of roots more faithfully
This is a follow-up to 758de957.

- unify the metrics and drawing of \sqrt and \root using helper
  functions mathed_root_metrics and mathed_draw_root.

- compute the vertical spacing above the nucleus of the root following
  rule 11 of the TeXbook. In particular, it is different in inline and
  display style.

- draw the root glyph without hard-coded pixel values. Make the line
  width depend on the zoom.

more work is needed to implement properly rule 11:

- Ideally, we should use sqrt glyphs from the math fonts. Note that
  then we would get rule thickness from there.

- The positioning of the root MathData is arbitrary. It should
  follow the definition of \root...\of... in The Texbook in
  Apprendix B page 360.

Fixes bug #10814.

(cherry picked from commit 16af6e7c50)
(cherry picked from commit 6cb6f78ae9)
2018-02-15 11:34:00 +01:00
Jean-Marc Lasgouttes
1dc134fb60 Improve UndoGroupHelper and use it more
Now the helper class contains logic that checks whether buffer are
known before closing them. This avoids potential crashes.

Use it in different places to siplify code. It is not clear at this
point whether it should be used everywhere.

Followup to bug #10847.

(cherry picked from commit cd9e42dc35)
2018-02-15 10:36:17 +01:00
Jean-Marc Lasgouttes
5f6c681b76 Handle properly top/bottom of inset with mac-like cursor movement
The correct behavior is to go to position 0 going up from first row,
and to end of row when going down on last row.

The targetx value of the cursor is not updated, which makes cursor
movement more natural.

Fixes bug #10701.

(cherry picked from commit 34285cc683)
2018-02-14 17:06:03 +01:00