Commit Graph

26680 Commits

Author SHA1 Message Date
Juergen Spitzmueller
a68b0389bc Add support for medspace and thickspace (in text) (#11893)
File format change.
2020-06-26 11:12:35 +02:00
Jean-Marc Lasgouttes
8ceb4f6b58 Run codespell on src/frontends
Command was:
codespell -w -i 3  -S Makefile.in -L mathed,afe,tthe,ue,fro,uint,larg,alph,te,thes,alle,Claus,pres,pass-thru  src/frontends/
2020-06-26 00:21:47 +02:00
Pavel Sanda
7a132f4f8c typo left by codespell 2020-06-26 00:07:03 +02:00
Jean-Marc Lasgouttes
110f8f67ac Run codespell on tex2lyx/, client/, convert/ and graphics/
Command was
codespell -w -i 3  -S Makefile.in -L mathed,afe,tthe,ue,fro,uint,larg,alph,te,thes,alle,Claus,pres,pass-thru  src/xxx
2020-06-25 23:50:52 +02:00
Jean-Marc Lasgouttes
5d4e6dfb68 Run codespell on src/insets
Command was
codespell -w -i 3  -S Makefile.in -L mathed,afe,tthe,ue,fro,uint,larg,alph,te,thes,alle,Claus,pres,pass-thru  src/insets/
2020-06-25 23:46:16 +02:00
Jean-Marc Lasgouttes
3c4e567d44 Run codespell on src/mathed
codespell -w -i 3 -S Makefile.in -L mathed,afe,tthe,ue,fro,uint,larg,alph,te,thes,alle,Claus,wit,nd,numer  src/mathed/
2020-06-25 23:31:42 +02:00
Jean-Marc Lasgouttes
9fe1ed4d68 Run codespell on src/support
Codespell is run with command line
codespell -w -S Makefile.in -L mathed,afe,tthe,ue,fro,uint,larg,alph,te,thes,alle,Claus -i 3 src/support/
2020-06-25 23:17:18 +02:00
Juergen Spitzmueller
9f13bb73f8 Consider nesting level when autonesting 2020-06-25 10:37:04 +02:00
Jean-Marc Lasgouttes
3fea3b0096 Allow row-breaking after some insets
Add new RowFlags value CanBreakAfter, which says that the row can be
broken after the inset if needed. There is no CanBreakBefore yet,
because I do not know of an inset that needs it.

This makes screen closer to the actual behavior of insets.

Currently, only unprotected spaces and some special characters are
concerned. There may be more that need this handling.

Fixes bug #11621.
2020-06-23 23:34:49 +02:00
Jean-Marc Lasgouttes
49e1466f93 Make all unbreakable spaces of the same Color_latex color
Of course, this means that negative spaces cannot be recognized anymore.
2020-06-23 23:33:37 +02:00
Jean-Marc Lasgouttes
8535efafde Fix comment 2020-06-23 23:32:05 +02:00
Jean-Marc Lasgouttes
f96e2f3a6a The hard-coding of word_wrap has been fixed at bf88ad49. 2020-06-23 00:10:41 +02:00
Jean-Marc Lasgouttes
ba738d0167 Use new rowFlags() values to remove some inset hardcoding.
The enum DisplayType is replaced with the flags RowFlags that can be
combined. Here is the correspondence between the old DisplayType and
the new Inset::RowFlags:

DisplayType   RowFLags             Meaning
 Inline        Inline               plain inline inset
  --           BreakBefore          row ends before this inset
  --           BreakAfter           the row ends after this inset
 AlignCenter   Display	            the inset is centered on its own row
 AlignLeft     Display | AlignLeft  the inset is left-aligned on its row
 AlignRight    Display | AlignRight the inset is right-aligned on its row
  --           RowAfter             an extra row is needed after this inset

Display is just a shortcut for BreakBefore | BreakAfter.

The flags for the newline inset will be BreakAfter | RowAfter,
while the separator inset will just use BreakAfter.

This groundwork does not introduce any new feature at this point. It
aims to remve the numerous isNewLine and isSeparator all over the
code, and to eventually optional break after some insets like spaces
(see #11621).

Most display() methods are renamed to rowFlags(). Some are removed
because they returned Inline.

Now display() is only a helper function for hull insets.
2020-06-22 23:11:40 +02:00
Eugene Chornyi
4dc33e52f8 Amend e501f2c4
put icons in cmake bin dir so that tex2lyx can also see them
2020-06-21 19:50:21 +02:00
Juergen Spitzmueller
bde95c1876 Fix swapped logic (#11889) 2020-06-19 16:40:07 +02:00
Thibaut Cuvelier
8f89768211 Fix in symbols handling: parse the XML entity with \def. 2020-06-19 08:22:56 +02:00
Thibaut Cuvelier
718eede94b MathML: Convert HTML entities to XML entities. 2020-06-18 19:37:08 +02:00
Thibaut Cuvelier
054bdc5d18 MathML stream allows for name spaces. 2020-06-18 19:32:51 +02:00
Richard Kimberly Heck
ef65414d25 Focus keyword filed in Thesaurus dialog 2020-06-18 10:51:21 -04:00
Pavel Sanda
ebcaa5b1db Rename-XHTMLStream-to-XMLStream #3.
Fix paragraph id in xHTML output to the pre-refactoring status.
Tested on math manual (plus minus nonessential newlines).

Slightly modified patch from Thibaut Cuvelier.
2020-06-18 16:05:15 +02:00
Eugene Chornyi
e501f2c473 Assure that LyX and tex2lyx use src/lyxwinres.rc 2020-06-18 14:31:25 +02:00
Jean-Marc Lasgouttes
c42776868d Do not dereference getFormat() if it is null
Return early when format is unknown. I am not sure whether this is
supposed to happen and whether we should assert on this condition.

Spotted by coverity.
2020-06-18 11:39:45 +02:00
Jean-Marc Lasgouttes
48d164ddef Initialize properly Counter::saved_value_ member
Spotted by coverity.
2020-06-18 11:23:26 +02:00
Jean-Marc Lasgouttes
5aadf0879f Pass BufferParams by address
Spotted by coverity.

Note that this probably fixes a bug in getTokenValue(), where an author
was added to the BufferParams copy.
2020-06-18 11:17:32 +02:00
Enrico Forestieri
70ccf9f243 Use the same icon as in the cmake build 2020-06-17 19:52:27 +02:00
Enrico Forestieri
ddcbfb77bf Update copyright notice 2020-06-16 21:22:42 +02:00
Pavel Sanda
86387120bc Rename-XHTMLStream-to-XMLStream #2.
Refactor font-related stuff to come closer to the previous xHTML output.
Patch from Thibaut Cuvelier.
2020-06-15 23:37:27 +02:00
Pavel Sanda
8e2b18ada9 Amend a6b07608d8, took older patch. 2020-06-15 13:13:00 +02:00
Thibaut Cuvelier
a6b07608d8 Rename XHTMLStream to XMLStream, move it to another file, and prepare for DocBook adoption.
xml.cpp/h also merges functionalities from sgml.cpp/h.
2020-06-15 13:01:56 +02:00
Enrico Forestieri
85ac309eed Amend 5a80f7bb
Was missing these.
2020-06-12 11:50:58 +02:00
Thibaut Cuvelier
c8d0492194 MathML: generate only a mathvariant for double-struck font, no redundant class 2020-06-11 23:22:48 +02:00
Enrico Forestieri
5a80f7bb6a 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-11 16:42:31 +02:00
Juergen Spitzmueller
64edb7a196 UI improvement to math matrix dialog, suggested by magistere (#11888) 2020-06-11 11:29:11 +02:00
Thibaut Cuvelier
716e3dc1a8 Output double-struck fonts as such in MathML, not in bold 2020-06-11 10:30:48 +02:00
Juergen Spitzmueller
134cb3b265 Consider parbreakIsNewline in plaintext output
Fixes #11886
2020-06-11 10:20:27 +02:00
Juergen Spitzmueller
76f19c6c6e Fix some typos in comments, by Thibaut Cuvelier 2020-06-08 06:56:25 +02:00
Juergen Spitzmueller
cbe75042c0 Do not track row/column deletion in paste_tabular
Fixes #11884.
2020-06-07 19:18:00 +02:00
Kornel Benko
ed665a0333 Amend 2d48072e: Get rid of Qt resources
Remove the cmake handling too
2020-06-07 12:07:58 +02:00
Jean-Marc Lasgouttes
2d48072e66 Get rid of Qt resources
It turns out that the resources were mostly not used anyway. Removing
them shrinks LyX binary by ~6MB.

Only autotools have been adapted. cmake will require the same
simplification.
2020-06-07 01:15:28 +02:00
Jean-Marc Lasgouttes
6b221751c1 Move BulletsModule to frontend namespace 2020-06-07 01:15:28 +02:00
Richard Kimberly Heck
da362a6a59 Need this for std::endl now, according to Eugene 2020-06-06 13:06:06 -04:00
Jean-Marc Lasgouttes
12a9753fb5 Allow to provide explicit icons for things like command-alternative
The automatic icons for "command-alternative", "math-insert",
"math-(big)delim" and "command" can be overriden by an explicit icon
name.

Besides that, the iconName function is refactored, and now returns an
additional bool that indicates whether the icon should be flipped.

The code that uses resources is still useless. This will be the
subject of further work.
2020-06-06 01:21:02 +02:00
Jean-Marc Lasgouttes
a71b96ac42 Fixup 74540c98: handle selection for label background
74540c98 was a fixup of d207e85c, which avoided using inset background
as inset label background.

d207e85c introduced a background under inset labels to avoid fake bold
effect.

Hopefully, this last variation will be the right one !
2020-06-05 22:32:58 +02:00
Richard Kimberly Heck
acc3f2cef8 Forgot this part. 2020-06-01 12:27:32 -04:00
Richard Kimberly Heck
9f5491baf9 Internal buffers are valid 2020-06-01 12:23:20 -04:00
Kornel Benko
38ec7471e7 Amend 44816adce6: Be careful before using buffer parameters in colAlign
The LASSERT(isBufferValid()..) leads to crash in find-adv dialog
2020-06-01 10:20:38 +02:00
Juergen Spitzmueller
1bf18368cf Add support for the xindex index processor
This is a modern alternative for makeindex that is fully unicode-aware
and written in lua.

As opposed to xindy, it is more lightweight and actively maintained.

The program is still in a rather early stage of development, so we do
not propose this as default.

This relies on xindex 0.22 (about to be released) to function properly.
2020-05-30 12:54:20 +02:00
Juergen Spitzmueller
79df18e4d4 update tex2lyx tests after 5b2479176b 2020-05-30 09:27:37 +02:00
Kornel Benko
9da4390a9b FindAdv: Correct next test (keytest/findadv-16)
Provided that the LASSERT in src/mathed/InsetMathGrid.cpp:1824
is removed.
2020-05-29 20:04:57 +02:00
Kornel Benko
8028dce129 FindAdv: Correct some testcases 2020-05-29 14:22:34 +02:00
Kornel Benko
03ad03320e Findadv: Convert some messages from LYXERR0(...) to LYXERR(Debug::INFO, ...)
Due to a hint from Scott:
> I don't think it should be printed to LYXERR0. That goes to the terminal
> for the user. Even our lyx2lyx tests fail if they detect any information
> printed to the terminal (although we escape some warnings). If "find" is
> not a good debug level for it, maybe we can put it in "info" (the first
> debug level)?
2020-05-29 08:44:56 +02:00
Jean-Marc Lasgouttes
e06e2e24e7 Revert part of 56e012be: hardcode again "too small" preview size
It seems that the use of zoom in determining the size of the minimal
value was a bad idea.

It still think that the situation is not very satisfying, we need a new idea.
2020-05-28 20:43:01 +02:00
Kornel Benko
b7cac34d96 Findadv: 2 more possible out of range access cases corrected 2020-05-26 18:49:50 +02:00
Kornel Benko
8dd2ac7171 Findadv: Do not use out of range index into a string
Thanks Scott. Crashing if using _GLIBCXX_DEBUG preprocessor setting
2020-05-26 15:58:23 +02:00
Juergen Spitzmueller
5b2479176b tex2lyx: reset language after polyglossia lang environment has been closed
Fixes #11878
2020-05-26 10:15:52 +02:00
Jean-Marc Lasgouttes
8d51b3e7bb Simplify code by using initializer lists for vectors.
{ REFERENCE_NEXT, NOTE_NEXT } can be used as a value for a
vector<FuncCode> since C++11.
2020-05-23 17:10:17 +02:00
Jean-Marc Lasgouttes
7761e1317e 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.
2020-05-23 16:50:04 +02:00
Richard Kimberly Heck
44dc38e120 Revert part of 47973dc2b, which was causing bug #11873. 2020-05-22 23:43:44 -04:00
Richard Kimberly Heck
a2b21e3cd4 Fix more warnings and simplify a tiny bit. 2020-05-19 18:06:20 -04:00
Richard Kimberly Heck
6942dc9fb4 Fix warnings 2020-05-19 17:08:38 -04:00
Richard Kimberly Heck
ca417d2c87 Fix warnings 2020-05-18 01:15:50 -04:00
Richard Kimberly Heck
d7dde0c723 Fix warnings. 2020-05-18 00:46:58 -04:00
Richard Kimberly Heck
2de99c5dd9 Fix bug #11456.
Add cancel button and take no action if we're canceled.
2020-05-18 00:28:36 -04:00
Richard Kimberly Heck
b2517d60b8 Fix bug #11405.
We don't actually prevent hidden buffers from being dirty, so we need
to save them if they are.
2020-05-18 00:07:56 -04:00
Richard Kimberly Heck
a96ec2db45 Remove debugging code. Thanks Scott! 2020-05-17 20:59:34 -04:00
Richard Kimberly Heck
e1615f4107 Const-ness, and a missing Class declaration. I do not understand
why this ever worked.
2020-05-17 20:52:58 -04:00
Richard Kimberly Heck
5d9e175256 Fix copy-paste error.
See bug #11869.
2020-05-17 20:52:18 -04:00
Richard Kimberly Heck
c6b3f35c8c Properly check return values so TIMEOUT is recognized. 2020-05-17 14:58:15 -04:00
Enrico Forestieri
49098aa318 Fix bug #11854
The code was checking only for particular vertical alignment requests
in order to decide to nest a standard array into a 1x1 ams matrix.
However, also vertical lines are not possible in ams matrices.
2020-05-17 18:15:00 +02:00
Juergen Spitzmueller
6057fba90a Fix indentation 2020-05-17 15:18:38 +02:00
Juergen Spitzmueller
0328ecd019 Properly close and reopen lyxdeleted macro at font change
Fixes #11867, amends [28da0f4360a/lyxgit]
2020-05-17 14:54:59 +02:00
Juergen Spitzmueller
602ac1401e return from switch
we don't break in this switch
2020-05-17 13:57:31 +02:00
Juergen Spitzmueller
f2243a3bc7 Disable bookmarksopenlevel SL when bookmarksopen is false
Fixes #11289
2020-05-16 10:31:48 +02:00
Juergen Spitzmueller
92ba05c53b Assign InsetBibtex to appropriate toc level
Fixes #11863
2020-05-15 10:14:22 +02:00
Juergen Spitzmueller
11dc817e9d Check class options for uncodable glyphs
Fixes #11865
2020-05-15 09:50:25 +02:00
Jean-Marc Lasgouttes
fc5b22a2f1 Get rid of lyx::next uses for RandomAccessList
These uses are inefficient (a loop really) and require that pit_type
is ptrdiff_t.

Instead, RandomAccesslist::constIterator is renamed to iterator_at and
a version adding a non-const iterator is added. Additionally, the
method retirns end() when position is equal to the size of the
container (see #11861).

lyx::next and lyx::prev are removed, and std::prev is used in the few
places where the code requires it (for no good reason IMO).
2020-05-14 10:35:49 +02:00
Richard Kimberly Heck
97bbcf2b9b Remove include no longer needed 2020-05-13 14:54:16 -04:00
Richard Kimberly Heck
b0def618f8 Simplify. 2020-05-13 14:49:01 -04:00
Richard Kimberly Heck
5353cf90c0 Replace functors in ExternalTemplate.cpp. 2020-05-13 14:42:52 -04:00
Richard Kimberly Heck
ce33715d2b Don't make copies! 2020-05-13 14:23:27 -04:00
Richard Kimberly Heck
47973dc2b4 Remove a couple more functors from PrevewLoader. 2020-05-13 13:33:27 -04:00
Richard Kimberly Heck
1e904625b2 Remove functors in PreviewLoader.cpp.
Also fix some warnings.
2020-05-13 13:33:27 -04:00
Jean-Marc Lasgouttes
c756749991 Revert "Get rid of lyx::next uses for RandomAccessList"
This is not ready (see #11861).

This reverts commit 6d97e39934.
2020-05-13 10:45:25 +02:00
Juergen Spitzmueller
2663e3845e Move \PassOptionsToPackage before the first package loaded
Fixes #11862
2020-05-13 08:48:08 +02:00
Jean-Marc Lasgouttes
e52af39864 Avoid a warning 2020-05-12 17:42:50 +02:00
Jean-Marc Lasgouttes
6d97e39934 Get rid of lyx::next uses for RandomAccessList
These uses are inefficient (a loop really) and require that pit_type
is ptrdiff_t.

Instead, RandomAccesslist::constIterator is renamed to iterator_at and
a version adding a non-const iterator is added.

lyx::next and lyx::prev are removed, and std::prev is used in the few
places where the code requires it (for no good reason IMO).
2020-05-12 17:29:21 +02:00
Richard Kimberly Heck
b1a0f7ac54 Fix typo (from Thibaut) 2020-05-08 13:32:08 -04:00
Richard Kimberly Heck
195c0bfbad Rename some routines 2020-05-05 11:19:21 -04:00
Richard Kimberly Heck
5989160154 Remove functors in IndicesList.cpp. 2020-05-05 11:19:21 -04:00
Richard Kimberly Heck
958958453f Replace functors in Format.cpp. 2020-05-05 11:16:28 -04:00
Richard Kimberly Heck
7f875d7dac Replace functor in BranchList 2020-05-05 11:16:24 -04:00
Richard Kimberly Heck
c506f304bc Fix a number of issues that were stopping compilation with MSVC 19.
Patch from Thibaut Cuvelier, modified slightly by me (mostly for style).
2020-05-04 19:45:58 -04:00
Richard Kimberly Heck
91265c1f46 Missing include according to VC19 2020-05-04 14:19:29 -04:00
Richard Kimberly Heck
d6a7ec506e s/requires_/required_/ for code consistency 2020-05-04 14:05:44 -04:00
Richard Kimberly Heck
3b09ef61a6 Fix remaining (I think) requires keyword issues. 2020-05-04 13:46:01 -04:00
Scott Kostyshak
23abb5aaa3 Fix commented out code
Since the if condition changed at af4ee1a4, the "else" in the
comment needed correction.
2020-05-04 09:27:35 -04:00
Scott Kostyshak
af4ee1a487 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.
2020-05-04 08:58:56 -04:00
Juergen Spitzmueller
210c4aa9a2 Use translated GUI name of counter in button label 2020-05-04 09:28:07 +02:00
Juergen Spitzmueller
5171b7ea6c Keep sort order of counter actions 2020-05-04 09:22:35 +02:00
Richard Kimberly Heck
5f5cb7eea7 Fix warnings by using size_t as the loop variable. 2020-05-03 15:02:40 -04:00
Richard Kimberly Heck
e8800373e6 is_utf8 is always passed a char. 2020-05-03 15:02:25 -04:00
Juergen Spitzmueller
eebc0d8cf5 Add missing l7n flag 2020-05-03 13:36:34 +02:00
Juergen Spitzmueller
fba67710d8 Make counter items translatable and sort properly 2020-05-03 09:44:55 +02:00
Juergen Spitzmueller
6e5f90f72f Fix capitalization
We use sentence casing in combo boxes.
2020-05-03 09:13:41 +02:00
Juergen Spitzmueller
cd2c0dcc81 Re-fix layout
Also improve some strings, and fix capitalization
2020-05-03 09:13:13 +02:00
Richard Kimberly Heck
9e4709e4de Avoid a copy 2020-05-03 02:52:56 -04:00
Richard Kimberly Heck
3b2bcef455 Fix some warnings. 2020-05-03 02:46:11 -04:00
Richard Kimberly Heck
99948beff8 Remove unused files. 2020-05-03 02:32:29 -04:00
Richard Kimberly Heck
16e7f26cec requires is a keyword in C++2a 2020-05-03 02:18:17 -04:00
Richard Kimberly Heck
a38408419c Remove obsolete comment.
We assert (or worse) if pos < 0.
2020-05-03 00:51:01 -04:00
Richard Kimberly Heck
0f4b60c642 GuiNames for float counters. 2020-05-02 23:17:17 -04:00
Richard Kimberly Heck
9bcb243ec6 Increment layout format. 2020-05-02 23:17:16 -04:00
Richard Kimberly Heck
666f90cdbb Use GuiNames for counters. 2020-05-02 23:17:16 -04:00
Richard Kimberly Heck
c37500050d More polishing of counter dialog. Thanks to Jürgen for help.
Also, remove the 'display value' option. We will move this to InsetInfo
at some point.
2020-05-02 20:33:03 -04:00
Juergen Spitzmueller
3d630f49c4 Fix broken mark with multiple citations
Patch by Patrick De Visschere (modified by me)
2020-05-02 08:55:58 +02:00
Richard Kimberly Heck
8a4bb40c7e Fix typo. 2020-05-01 19:47:50 -04:00
Richard Kimberly Heck
bc4ca12ab5 Polish the counter UI a bit and add some to the documentation. 2020-05-01 19:03:54 -04:00
Juergen Spitzmueller
4d3a08bf86 Fix build with qt4 2020-05-01 10:17:04 +02:00
Juergen Spitzmueller
a05b3228bc Fix Ui layouts. 2020-05-01 10:10:27 +02:00
Richard Kimberly Heck
de40b09474 Fix thinkos for counter value type 2020-04-30 23:46:18 -04:00
Richard Kimberly Heck
cb9102f986 Update tex2lyx references. 2020-04-30 23:21:34 -04:00
Richard Kimberly Heck
9a147255df GUI for new counter inset. 2020-04-30 23:11:59 -04:00
Richard Kimberly Heck
9a1b26a156 Format and reversion code for new counter inset. 2020-04-30 23:11:59 -04:00
Richard Kimberly Heck
684d27c0fb New counter manipulation inset.
This inset allows counters to be set, reset, saved, restored, etc,
both in the LyX GUI and in the output; optionally, the effect can be
limited to the GUI. Of course, LaTeX provides means for doing all of
these things, so they could previously be done with ERT, as far as
the output is concerned. But there was no mechanism for manipulating
counters in the GUI and none for other output formats.
2020-04-30 23:09:36 -04:00
Jean-Marc Lasgouttes
7035e230ca Avoid some more copies in range-based for loops
This triggers warnings with clang++ 10.
2020-04-28 15:28:51 +02:00
Jean-Marc Lasgouttes
a85c48de5a Do not for copies in range-based for loops.
Spotted by clang++ 10.
2020-04-28 13:27:50 +02:00
Richard Kimberly Heck
1344caa67a Fix problem with c67b6be77 noted by JMarc. 2020-04-26 16:10:50 -04:00
Richard Kimberly Heck
c94a97e36c Fix declaration 2020-04-26 03:37:20 -04:00
Richard Kimberly Heck
491c966436 Remove unnecessary friendship. Thanks Scott! 2020-04-26 03:16:44 -04:00
Richard Kimberly Heck
7b9dc7bc9e Revert last three commits.
There are other issues here. The big one is in TextMetrics::getPitNearY,
where -1 is used as a 'special' return value for pit.
2020-04-26 03:09:27 -04:00
Richard Kimberly Heck
c92b4f27ec Fix compilation problem 2020-04-26 03:04:06 -04:00
Richard Kimberly Heck
57065afb45 Whitespace 2020-04-25 22:57:09 -04:00
Richard Kimberly Heck
b9e2941847 Make pit_type unsigned (in particular, size_t).
This involves not just changing the type but checking that downward
loops and similar tricks don't break.
2020-04-25 22:50:48 -04:00
Richard Kimberly Heck
7d36b9e4fa Remove method that is now unneeded. 2020-04-25 22:27:09 -04:00
Richard Kimberly Heck
e4da314522 Try to fix bug #6505.
Keep track of nested includes and just refuse to re-enter a file
we're already in the process of handling.

There's a question whether we should do this in updateBuffer and
validate, or whether we should do it separately. For now, this seems
to work.
2020-04-25 22:22:58 -04:00
Richard Kimberly Heck
9319144703 Buffer methods for dealing with recursive includes. 2020-04-25 22:17:46 -04:00
Richard Kimberly Heck
aa794a8806 Return early from the short path. 2020-04-25 17:33:49 -04:00
Richard Kimberly Heck
f1d5926a5d Fix warnings. 2020-04-25 01:26:37 -04:00
Richard Kimberly Heck
c67b6be77e Refactor code to avoid the problem fixed at the last commit. 2020-04-25 01:11:30 -04:00
Richard Kimberly Heck
b5a5a529a3 Fix bug #11850.
When we copy the paragraphs, the Buffer members for the insets are
not set. As a result, we crash when attempting to access them.
2020-04-25 01:05:15 -04:00
Jean-Marc Lasgouttes
b9538b10d4 Ignore some more files when building in source tree 2020-04-23 19:17:15 +02:00
Juergen Spitzmueller
3e1702b1bd Hint at (new) filter function in tooltip. 2020-04-23 14:24:32 +02:00
Juergen Spitzmueller
532e3b8952 Use CategorizedCombo for font selection
We do not have categories, but this gives as a nice filter functionality
for long (non-TeX) font lists for free.

See #11849
2020-04-23 12:43:38 +02:00
Juergen Spitzmueller
631d6b9b2e Categorized Combo: Do not draw category line if the combo has zero categories 2020-04-23 08:31:50 +02:00
Enrico Forestieri
a73c2c2b93 Raise the window in single-instance mode
Other than issuing a warning on the console, now the LyX window is
raised when in single-instance mode and no files to load are specified.
In this way, the user is aware that something happened after double
clicking the program icon. To support this functionality the new lfun
window-raise has been introduced.
2020-04-21 21:55:20 +02:00
Richard Kimberly Heck
986a55fd7e Comment. 2020-04-19 13:31:57 -04:00
Richard Kimberly Heck
d509d85c68 Fix warning 2020-04-19 11:10:56 -04:00
Scott Kostyshak
721d39ddc7 Fix debug message 2020-04-19 10:04:12 -04:00
Juergen Spitzmueller
05c7c65d93 Improve reporting of undefined control sequences in preamble
Fixes #11844
2020-04-19 10:56:58 +02:00
Kornel Benko
478a303f4a Use c++11 to remove last char from a string
Thanks Scott.
2020-04-19 08:59:54 +02:00
Kornel Benko
333e023e82 Amend(4) 689f26d2: Add default path to server pipe (cmake build)
Rename the placeholde $$User to $$UserDir

Make it more readable. Suggestion from Stephan Witt.
2020-04-18 22:26:56 +02:00
Richard Kimberly Heck
3aae85edf1 Fix some warnings 2020-04-18 14:52:08 -04:00
Richard Kimberly Heck
d550774772 Tell the user that LyX is already running when we do not start
because of 'use single instance'.
2020-04-18 14:41:26 -04:00
Kornel Benko
237378477f Amend(3) 689f26d2: Add default path to server pipe (cmake build)
Omit duplicated separators if replacing string '$$User' with actual userdir
2020-04-18 16:32:24 +02:00
Juergen Spitzmueller
ca28c9866a Remap typographical apostrophe from Hunspell to plain apostrophe (#11832) 2020-04-18 11:25:18 +02:00
Juergen Spitzmueller
9e71bdfd32 fix comment 2020-04-18 08:01:39 +02:00
Kornel Benko
689f26d247 Add default path to server pipe (cmake build + unix)
Actually the change is affecting only builds if
1.) Using cmake build
2.) on unix

To use it on
  cygwin: one has to patch development/cygwin/lyxrc.dist.in
  MacOSX:     -//-         development/MacOSX/lyxrc.dist.in

We need also a Windows-version

Also the compilation with automake lacks the handling of development/unix/lyxrc.dist.in
2020-04-17 18:38:51 +02:00
Juergen Spitzmueller
d9b884341c Reset failedtoload_ bool when include inset params are changed (#11842) 2020-04-17 10:19:46 +02:00
Juergen Spitzmueller
5bc66b5f45 Fix tablefootnote loading order (#11841) 2020-04-17 09:12:51 +02:00
Richard Kimberly Heck
86a4c79dc4 Make it nicer, thanks to JMarc 2020-04-16 21:05:38 -04:00
Richard Kimberly Heck
46f1f6f1cb Fix bug #11635 2020-04-16 17:16:26 -04:00
Jean-Marc Lasgouttes
bb0117d182 Simplify code for bidi icons
Most of the RtL icons that we provide are simply mirrors of the LtR ones.
Therefore let the code do that by default if no +rtl icon is found.

The only RtL icon left for now is for "layout Enumerate" (notice the
numbers in it).

Also remove useless getPixmap wrapper and several old bidi_xxx icons
that were forgotten in previous patch.
2020-04-16 20:54:53 +02:00
Jean-Marc Lasgouttes
43eda5ad73 Reimplement properly bidi icons
When the cursor in RTL text, icons for "depth-increment" or
"layout-toggle Enumerate" look wrong.

Instead of relying on the clumsy "bidi" lfun of 2898c335, this new
version relies on a new Toobar tag BidiItem that inserts an action
which can have two icons, depending on the direction of the paragraph
containing the caret (or of the direction of the UI when no file is
open).

The alternative icon has the same name as the original one, with a
"+rtl" string appended to the lfun string. The alternative icon is
only active if the file is found. The icon themes `default', `oxygen'
and `classic' have been updated accordingly.

Fixes bug #4451.
2020-04-14 22:47:56 +02:00
Jean-Marc Lasgouttes
ce0538e372 Revert "Add mechanism to change icons in RTL mode"
This is really too clumsy. Revert in preparation for a better
mechanism.

This reverts commit 2898c335be.
2020-04-14 22:47:50 +02:00
Jean-Marc Lasgouttes
543038e64e Fixup 294969c6: do not forget to update metrics 2020-04-14 17:57:49 +02:00
Kornel Benko
4b052dec77 Amend ef42541d26: Missed to commit these 2020-04-13 13:39:33 +02:00
Kornel Benko
ef42541d26 Prepend dir containing created dtl executables to PATH
This should work on Windows, but needs test.
The changes (namely the installation directory for the dtl executables)
for automake are not yet done. (JMarc?)

It may fix bug #11325 if cmake configured with '-DLYX_EXTERNAL_DTL=OFF'
2020-04-13 12:51:04 +02:00
Jean-Marc Lasgouttes
b5d6caac41 Fix embarassing crash caused by debug message
After commit 6a936d63, the helpful debug message tries to display
non-existing elements and crashes the program :(

Fix by radical simplification of the message.

Part of bug #11777.
2020-04-13 12:02:26 +02:00
Richard Kimberly Heck
eea4ef9b6e Debug output for paragraph params. 2020-04-08 17:21:43 -04:00
Richard Kimberly Heck
f7065fa22e Fix bug #11817.
Preserve line spacing when breaking a paragraph at the beginning.
2020-04-08 17:21:43 -04:00
Kornel Benko
80cd116805 Fix indentation 2020-04-07 11:47:08 +02:00
Juergen Spitzmueller
2748e33be5 Fix indentation 2020-04-06 16:29:34 +02:00
Juergen Spitzmueller
c0adb03a7a Fix quotation marks in PDF TOC 2020-04-06 08:53:29 +02:00
Juergen Spitzmueller
f9999039ac Strip polyglossia options from pdf string
Fixes #11813
2020-04-05 15:23:22 +02:00
Jean-Marc Lasgouttes
5202d44ef5 Do not compute caret geometry when we are not ready to do so.
This avoid crashes with invalid cache.

Fixes bug #11763.
2020-04-04 18:11:07 +02:00
Juergen Spitzmueller
ed137ee435 Disable append-column with gathered
Fixes #11812
2020-04-04 09:27:24 +02:00
Juergen Spitzmueller
fe09ddf1b9 Implement buffer-write force 2020-03-31 08:01:17 +02:00
Juergen Spitzmueller
1e34871d38 Prevent wrong reference to duplicated (but deleted) label
Fixes #11803
2020-03-29 17:47:59 +02:00
Richard Kimberly Heck
2d0ad7d308 Remove code disabled since 2005.
No one knew then what it was supposed to do.
2020-03-28 23:52:55 -04:00
Richard Kimberly Heck
38c2cde0d8 Remove obsolete (and false) comment. 2020-03-28 23:23:52 -04:00
Scott Kostyshak
b67ff925e5 PreviewLoader: start fake pids after PID_MAX_LIMIT 2020-03-28 19:18:21 -04:00
Scott Kostyshak
8f3c95f757 Use << for raising 2 to power instead of ^
The ^ is interpretted as bitwise XOR, so 2^(20) evaluated to 22.

Thanks to Riki for the << trick. This way, we do not have to use
pow() and include the <cmath> header for this one expression.
2020-03-28 19:18:21 -04:00
Richard Kimberly Heck
104fdcc9be Fix crash after 24926b2e23.
The matched element may not have a parent. I guess the old version of
setExpanded too care of that. Now we have to do so.
2020-03-28 15:23:13 -04:00
Richard Kimberly Heck
c5c1683024 Remove newlines from shortcut LFUNs. 2020-03-28 15:15:36 -04:00
Scott Kostyshak
a1169188c7 Fix assertion from setCursor() in outline-down/up
The function outline() itself can change the cursor position in some
cases so we need to store the old position before calling outline().

Spotted by Kornel. For an example file that triggered the assertion,
see:

  https://www.mail-archive.com/search?l=mid&q=20200326183314.09ad4c7c%40admin1-desktop

This commit amends adb7283b.
2020-03-26 19:00:37 -04:00
Juergen Spitzmueller
5db8b65e46 Fix typo. 2020-03-26 16:32:13 +01:00
Pavel Sanda
426ca3a5d6 Let hyperlink insets to be longer if name is given.
Thanks to Oystein Senneset Haaland.
https://www.mail-archive.com/lyx-devel@lists.lyx.org/msg210882.html
2020-03-25 07:40:27 +01:00
Jean-Marc Lasgouttes
eb92f74d1f Avoid bleeding of inset background outside of inset
As a consequence of fix e64ea357 to ticket #10797, we draw a bit too
much of the inset background outside of the inset (visible for insets
with colored background). #10797 is a ticket that triggers when the
cursor has a width larger than 1.

This patch limits the problems in two respects

* nothing is done on the left, since the cursor width only expands on
  the right.

* on the right, the extra width is limited to cursor width.

Fixes bug #11786.
2020-03-24 12:13:36 +01:00
Juergen Spitzmueller
52cd43dfdc Paste some special chars as insets
See #11790
2020-03-23 12:07:47 +01:00
Juergen Spitzmueller
7b3404fcab Don't omit ZERO WIDTH NON-JOINER on clipboard paste
Fixes #11790
2020-03-22 11:07:57 +01:00
Juergen Spitzmueller
3f364864d4 Fix indentation 2020-03-22 10:10:36 +01:00
Juergen Spitzmueller
1e409a1a75 Properly resolve tracked changes when pasting multiple tabular cells
Fixes #11791
2020-03-21 15:54:37 +01:00
Scott Kostyshak
0d2773ff5e Restore XLFD code for Qt 4
There is a chance that this code is still useful for Qt 4. We keep
it around just in case.

For the case of Qt 4, this commit restores the code changed in
f8e40f8a, d255339a, and d4ff3a29.
2020-03-20 20:51:44 -04:00
Richard Kimberly Heck
9d36f720a5 Revert "Fix bug reported by Kornel."
This reverts commit 438f15da21.

Revert "Track whether we have warned about mixing layouts across e.g. branches."

This reverts commit 861c6167ca.

Revert "Track whether title has been issued via OutputParams."

This reverts commit b536759c07.

There are massive complications here, and I don't have time to fix them all
right now.
2020-03-20 17:19:19 -04:00
Richard Kimberly Heck
438f15da21 Fix bug reported by Kornel.
The old code was actually wrong. Obviously, this should be set only
if we actually do issue the title command.
2020-03-20 15:25:47 -04:00
Scott Kostyshak
35bb9cb4a6 Change a couple instances of QFontMetrics::width()
Use QFontMetrics::boundingRect() instead. QFontMetrics::width() does
not actually calculate the width of the bounding box and is mostly
useful for knowing where to draw text after a string, taking into
account bearings. Indeed, it has been renamed to
QFontMetrics::horizontalAdvance().

For the code touched in this commit, we want to center a string.
Either method would likely be fine, but it is more easy to
understand exactly what QFontMetrics::boundingRect() does.

This commit does change functionality, although it should not be
noticeable.
2020-03-20 10:53:30 -04:00
Scott Kostyshak
f8e40f8ab8 Remove redundant font loader code
Setting the family to "family" is already attempted above. A
different case was adapted to be this duplicate case at d4ff3a29,
but it should have just been removed.

Spotted by Enrico.
2020-03-20 09:18:09 -04:00
Scott Kostyshak
d255339a4c Remove remnants regarding old XLFD font handling
These fonts are no longer supported by Qt 5 and our code no longer
uses the "xlfd" member of the struct modified in this commit. See
d4ff3a2959.
2020-03-19 12:39:16 -04:00
Scott Kostyshak
d4ff3a2959 Fix Qt dep warn and remove XLFD font workaround
This commit fixes a few warnings from Qt 5.14 regarding
QFont::setRawName() and QFont::rawName() like the following one:

  error: ‘void QFont::setRawName(const QString&)’ is deprecated [-Werror=deprecated-declarations]

These methods were deprecated in Qt 5.3. [1]

This commit removes code from 2002 (539ce478) that worked around a
problem in Qt's handling of XLFD fonts that no longer seems relevant
since XLFD is no longer supported in Qt 5 [2]. Even if the problem
were relevant, setRawName() would not fix anything since it is now
an empty method. [3]

I tested that compilation with Qt 4.8.7 works without error.

[1] https://code.qt.io/cgit/qt/qtbase.git/tree/dist/changes-5.3.0/?h=v5.14.0
[2] https://code.qt.io/cgit/qt/qtbase.git/commit/?id=3a8d7b0b9a4db91415b7bda2582a59a76b3754dc
[3] https://codereview.qt-project.org/c/qt/qtbase/+/100292/
2020-03-19 12:30:27 -04:00
Scott Kostyshak
8583410617 Fix Qt deprecation warns for setTextColor()
This commit fixes the following warning from Qt 5.14:

  error: ‘void QTreeWidgetItem::setTextColor(int, const QColor&)’ is deprecated: Use QTreeWidgetItem::setForeground() instead [-Werror=deprecated-declarations]

setForeground was introduced in Qt 4.2 [1].

We have a couple of commented out uses of a setTextColor() method in
GuiDocument.cpp, but the QTextEdit::setTextColor() is not deprecated so no
change is needed.

[1] https://doc.qt.io/archives/qt-4.8/qtreewidgetitem.html#setForeground
2020-03-19 10:16:47 -04:00