Commit Graph

28215 Commits

Author SHA1 Message Date
Juergen Spitzmueller
9586c51c3f GuiSearch: prevent Tab key to switch to work area (part of #12170)
QWidget::focusNextPrevChild() passes over to the parent (which is the
work area here) if the current window is not a dialog (isWindow()) or
a sub-window (window flag Qt::SubWindow).

We set the latter here to prevent this unwanted behavior.

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

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

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

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

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

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

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

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

Three possible values:

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

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

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

Mostly fixes bug #2496.
2021-04-07 16:19:20 +02:00
Enrico Forestieri
8ec32dc3f9 Do not dereference null pointer
Part of #12226
2021-04-07 00:15:12 +02:00
Jean-Marc Lasgouttes
557d33b7e5 Fix compilation for clang 3.7 with libc++ 2021-04-06 12:07:42 +02:00
Jean-Marc Lasgouttes
b2912339d0 Fix drawing of indicators for tracked changes and horizontal scrolling.
1/ fix horizontal position of the insets

   This is adapted from parts of racoon's patch for bug #12131.

2/ fix height of the indicators when at the top or bottom of document,
   by using the row's contents_dim() to measure is height.

3/ fix partial blinking of horizontl scrolling marks when editing table.

Fixes bug #12171.
2021-04-05 19:24:59 +02:00
Richard Kimberly Heck
eb2e8e1579 Polish 2021-04-03 17:58:46 -04:00
Enrico Forestieri
7a6ad48495 Use font metrics for computing the size of math decorations
It was an error using an absolute size instead of one relative to the
size of the used font. It was requiring using the physical dpi of the
screen and caused #12222. Now everything is computed with respect to
the metrics of the font and should be automatically correct.

Fixes #12222.
2021-04-03 18:37:10 +02:00
Pavel Sanda
9d1031771e Fix #4658: showing diff between original and emergency files.
https://www.mail-archive.com/lyx-devel@lists.lyx.org/msg215796.html
2021-04-03 13:19:53 +02:00
Enrico Forestieri
472953dbe1 Replace obsoleted signal QComboBox::activated(QString)
Since Qt 5.14 this signal is named textActivated.
2021-04-01 21:17:41 +02:00
Enrico Forestieri
570cd84ddc Replace obsoleted signal
Since Qt 5.14 this signal is named textHighlighted.
2021-04-01 20:31:11 +02:00
Enrico Forestieri
eeb36e808c Change cursor shape for clickable math insets
Currently, only InsetMathRef and InsetMathSpace are clickable.
2021-04-01 16:59:55 +02:00
Richard Kimberly Heck
fb5cb3ed03 Show the label for a cross-reference in the TOC. 2021-03-28 11:05:31 -04:00
Richard Kimberly Heck
65d0c96855 Revert "By default, use an argument's menu string as its label string."
Committed by accident.

This reverts commit affd6101bd.
2021-03-26 13:58:28 -04:00
Richard Kimberly Heck
942d3cab32 Change "Local Layout" button to "Local Class".
This is for choosing a local document class/layout file. The tooltip
uses the 'class' language already, and "Local Layout" conflicts with
the way that term is used elsewhere in the dialog.
2021-03-26 13:37:14 -04:00
Richard Kimberly Heck
affd6101bd By default, use an argument's menu string as its label string.
If one wants different label strings, then provide those first.
2021-03-26 13:37:14 -04:00
Jean-Marc Lasgouttes
9ff27f8ce0 Produce an error on bad debug level values
Add new funciton Debug::badValue, that returns the first bad value in a debug
setting string.

Use it to parse the -dbg comand line option and to control the
execution of the debug-level-set lfun.

Use range-based loops in a few places.
2021-03-26 17:55:54 +01:00
Jean-Marc Lasgouttes
0429b580e6 Fixup 4671214f: add comment 2021-03-26 14:26:15 +01:00
Kornel Benko
a9b0f5faae Cmake build with qt6 on MAC
Patch from P. De Visschere
Citing:
I also must exclude the QMacPasteboardMimeGraphics class in
GuiApplication.cpp since QMacPasteboard is not available anymore with qt6.

and add an #include <QStandardPaths> in support/Package.cpp (I suppose
this will pose no problem for qt5 but have not checked it, it's only
needed with USE_MACOSX_PACKAGING)
2021-03-26 13:11:44 +01:00
Daniel Ramoeller
4671214f3d Keep caret visible when small
Fix for ticket #12190.
2021-03-26 12:43:11 +01:00
Jean-Marc Lasgouttes
efbc37926f Set explicitly outer font when inserting text inset.
Now it is possible to set this font directly instead of relying on
metrics() side effects. Do that to avoid crashes due to bad
interactions.

This implements the new scheme that was mentionned in 5a58ca65.

Fixes bug #12204.
2021-03-25 11:26:44 +01:00
Jean-Marc Lasgouttes
06a7731274 Move code responsible to set TextMetrics outer font to InsetText
This code was previously in InsetCollapsible for no good reason.

Move it to a new function InsetText::setOuterFont, which can now be
called for other purposes.

Part of investigation of bug #12204.
2021-03-24 20:28:19 +01:00
Jean-Marc Lasgouttes
56bd50ea6c Move getFont and getLabelFont from InsetCollapsible to Inset
Also move around getLayout and isPassThru.

Part of investigation of bug #12204.
2021-03-24 20:04:27 +01:00
Scott Kostyshak
b2b68c3ee7 Update tex2lyx tests 2021-03-24 13:08:28 -04:00
Jean-Marc Lasgouttes
d03435bc77 Remove tweaks of [pm]i.base.font in InsetCaption
Captions do not reset font settings (try to insert caption in emph context).

Part of investigation of bug #12204.
2021-03-24 16:27:05 +01:00
Jean-Marc Lasgouttes
b37929fdb3 Remove unneeded InsetFootlike::metrics/draw() methods
The font is already set to the buffer font when called from
TextMetrics::redoParagraph and RowPainter::paintInset, because
inheritFont() is false.

Part of investigation of bug #12204.
2021-03-24 16:25:43 +01:00
Kornel Benko
92a50fa273 Cmake build Qt6: Remove some redundant statements. 2021-03-24 11:42:39 +01:00
Thibaut Cuvelier
6102327d3b Improve tool tip for the new DocBook MathML-prefix option. 2021-03-23 22:32:16 +01:00
Thibaut Cuvelier
7a1e048f44 Amend 0f782b0d: add the required changes to lyx2lyx. 2021-03-23 21:12:45 +01:00
Thibaut Cuvelier
6a5288e31e DocBook: add the MathML-namespace prefix in the GUI. 2021-03-23 00:32:45 +01:00
Thibaut Cuvelier
0f782b0ded DocBook: add a parameter to change the namespace prefix for MathML. 2021-03-23 00:32:45 +01:00
Kornel Benko
02a3705496 Amend 635a7d77: Allow compiling with Qt6 with cmake
Thanks Scott for checking.
TODO: Check compilation on Windows and Mac.
2021-03-22 16:19:10 +01:00
Enrico Forestieri
6fa973b377 Fix Qt6 deprecation warning about QString::fromUcs4 2021-03-21 17:15:08 +01:00
Juergen Spitzmueller
4a5ae39e8b Revert "Fix Qt6 deprecation warning (QString::fromUcs4(uint))"
This reverts commit 52dff70641.
2021-03-21 16:59:25 +01:00
Juergen Spitzmueller
2c553df178 Replace obsoleted signal
This has been obsoleted in Qt5 and dropped in Qt6
2021-03-21 12:51:38 +01:00
Juergen Spitzmueller
52dff70641 Fix Qt6 deprecation warning (QString::fromUcs4(uint)) 2021-03-21 12:38:47 +01:00
Juergen Spitzmueller
15c6d4c6b3 Fix Qt6 deprecation warning (QMouseEvent::x() ::y()) 2021-03-21 12:38:05 +01:00
Juergen Spitzmueller
cbc55548a3 Fix Qt6 deprecation warning (QEvent::globalPos()) 2021-03-21 12:37:17 +01:00
Juergen Spitzmueller
b7f983bc47 Address Qt6 deprecation warning (QLibraryInfo::location()) 2021-03-21 12:30:34 +01:00
Juergen Spitzmueller
9ccbc11bf3 Fix unused variable warning with Qt6 2021-03-21 12:30:01 +01:00
Eugene Chornyi
4421b721e4 Make all a synonym of any in cmd debug mode 2021-03-21 09:59:23 +01:00
Enrico Forestieri
34ffa80c4c Fix latex syntax highlighting with Qt6 2021-03-17 10:17:10 +01:00
Enrico Forestieri
968be3f209 Fix copy&paste error 2021-03-17 08:59:04 +01:00
Pavel Sanda
4e2f8dbbeb Qt4 compil fix 2021-03-16 09:39:05 +01:00
Enrico Forestieri
7cb2a10eb8 Amend 635a7d77
With a multiscreen setup and Qt6, make sure to get the geometry
of the screen containing the widget.
2021-03-15 18:35:58 +01:00
Enrico Forestieri
635a7d77dd Allow compiling with Qt6
This commit allows compiling LyX with Qt6 when using autotools.
For a successful compilation the following 2 conditions must be met.

1) The Qt6 qmake has to come first in PATH, so that the command
   "qmake -v | grep -o 'Qt version .'" returns "Qt version 6".
2) The --enable-qt6 switch has to be passed to the configure command.

If --enable-qt6 is used but Qt6 is not found, Qt5 is tried as a fallback.
If also Qt5 is not found, configuring for Qt4 is attempted.
If --enable-qt6 is not used, then things go as usual. This means that Qt5
is tried first and then Qt4, unless --disable-qt5 is used, in which case
Qt4 is directly attempted. This means that existing scripts should
continue working unmodified.

LyX should compile with Qt6 on windows and linux, and possibly also on
mac, but I could not test that. However, it is not guaranteed that it
works as it should. In particular I am not sure that I got right the
conversion from QRegExp to QRegularExpression. For sure, the syntax
highlighting seems to not work right. Someone in the know should take
a look at that. I am able to load documents and compile them but some
thourough testing is needed. However, when compiling for Qt5 or Qt4,
I tried to make sure that the functionality is preserved.
2021-03-15 17:09:09 +01:00
Juergen Spitzmueller
d5263f857e Amend [1bf53d47a5b8/lyxgit] 2021-03-14 16:48:04 +01:00
Juergen Spitzmueller
1bf53d47a5 Use customizable zoom context menu
Based on a proposal by Daniel (#12187)
2021-03-14 16:41:44 +01:00
Juergen Spitzmueller
d29d2f48fd Toom value: back to QLabel, this time with custom context menu 2021-03-14 12:04:12 +01:00
Juergen Spitzmueller
663f198001 Properly set minimum width with QToolButton 2021-03-14 09:42:28 +01:00
Juergen Spitzmueller
ac1b3f0ba2 Fix indentation 2021-03-13 12:17:31 +01:00
Juergen Spitzmueller
b272e4bfb0 Fix ct in table cell pasting 2021-03-12 17:44:33 +01:00
Juergen Spitzmueller
ae892bff98 Fix copy of multi-cells in table (#12196) 2021-03-12 17:44:33 +01:00
Jean-Marc Lasgouttes
ac8948b8e0 Fixup 86bfa10a: add checks before updating bookmarks
When doing cut and paste, it can happen that inset_owner_ is null, or
that the inset is not related to a buffer.
2021-03-12 17:42:02 +01:00
Yuriy Skalko
4ec5d33551 Set correct Windows console code page since all LyX output is in UTF-8 2021-03-12 18:15:33 +02:00
Juergen Spitzmueller
71268e859d Set zoom value after menu
Fixes initial size with styles that show a menu indicator
2021-03-12 16:30:50 +01:00
Juergen Spitzmueller
9f92fc92bd Yet another deprecation fix (this is the last one I am aware of) 2021-03-12 12:14:42 +01:00
Juergen Spitzmueller
934c6480c0 Add forgotten parent 2021-03-12 10:54:46 +01:00
Juergen Spitzmueller
10f4f2113a Fix deprecation warning (from|toTime_t) 2021-03-12 10:32:03 +01:00
Juergen Spitzmueller
26459a2cf5 Address another deprecation warning.
One left to go.
2021-03-12 10:10:33 +01:00
Juergen Spitzmueller
1a35afbe8f Fix deprecation warning 2021-03-11 19:06:03 +01:00
Juergen Spitzmueller
8a605ca8ad Add option to toggle zoom slider to zoom statusbar menu 2021-03-11 18:41:52 +01:00
Daniel Ramoeller
2710ec0840 Option to hide the zoom slider
Fix for bug #12187.
2021-03-11 18:41:52 +01:00
Juergen Spitzmueller
f525bded59 Add menu to statusbar zoom value 2021-03-11 18:14:46 +01:00
Juergen Spitzmueller
7a000652c0 Do not scale statusbar icons
This leads to stretched icons.
2021-03-11 17:24:19 +01:00
Juergen Spitzmueller
a49abd7383 Remove zoom slider ticks
This doesn't align well
2021-03-11 17:24:19 +01:00
Jean-Marc Lasgouttes
447a1056b4 Fix bookmarks-goto inside insets.
A stupid oversight, as far as I can see.
2021-03-11 16:16:11 +01:00
Jean-Marc Lasgouttes
86bfa10abb Adjust bookmark position when inserting/deleting from paragraph
Without this, bookmarks positions drift when editing.
2021-03-11 16:00:32 +01:00
Jean-Marc Lasgouttes
b87a81c394 Fixup fbf22bb3: really avoid screen-jumping with mouse click.
It turns out that the commit from gadmm's lyx-unstable has been
cherry-picked at the wrong place! However I believe that both changes
are necessary.

With this second patch, I do see that some screen jumping is avoided.

Fixes bug #7457.
2021-03-10 10:43:45 +01:00
Jean-Marc Lasgouttes
776807a536 Constification 2021-03-10 10:43:45 +01:00
Jean-Marc Lasgouttes
9a2b8c87cd Code reformatting. 2021-03-10 10:43:45 +01:00
Jean-Marc Lasgouttes
87e59caebe Constify some Paragraph::Private methods 2021-03-09 16:46:05 +01:00
Jean-Marc Lasgouttes
5d8f3a9307 Fix debug output of FunCode
Outputing the FuncCode enum to a stream using the << operator does not
work well. Actually I am not sure whether the << operator in LyXAction
is supposed to work (don't we need an enum class for that?).
2021-03-09 16:26:44 +01:00
Juergen Spitzmueller
dee329a21f Revert "Attempt to align slider and buttons in a widget"
This reverts commit ad44f4f448.
2021-03-09 14:50:23 +01:00
Juergen Spitzmueller
ad44f4f448 Attempt to align slider and buttons in a widget 2021-03-09 14:23:13 +01:00
Juergen Spitzmueller
f07a588b25 Fix cut and paste error 2021-03-09 13:03:33 +01:00
Pavel Sanda
f298072012 Revert 7e5c42593e.
https://www.mail-archive.com/lyx-devel@lists.lyx.org/msg215733.html

Main issue is git log does not return >0 when file does not exists.
Other possible issues to check - cvs might want to connect to server
with cvs log. In large git archives reaching the proper record might take
longer time than ls-files.
2021-03-09 12:46:23 +01:00
Juergen Spitzmueller
f2e33b8c3e Use real minus char 2021-03-09 10:10:48 +01:00
Juergen Spitzmueller
ebb7ee7d5f Add +/- buttons to zoom slider 2021-03-09 08:42:27 +01:00
Daniel Ramoeller
3c43a01ba2 Smaller zoom slider on macOS
Fix for #12189.
2021-03-09 07:34:33 +01:00
Stephan Witt
6273c1f66d Amend change 07122f066b - correct string access. 2021-03-08 21:26:58 +01:00
Eugene Chornyi
167dfbc92c Fix bug 11998
If started from console, the console is the parent process, which can be attached. If started not from console, parent process does not exist and the block is skipped.
2021-03-08 19:35:18 +01:00
Juergen Spitzmueller
b9fb2a236e Keep zoom label width constant (#12186) 2021-03-08 07:33:37 +01:00
Juergen Spitzmueller
cf75003119 Disable zoom slider when there is no buffer open (#12185) 2021-03-07 19:15:57 +01:00
Juergen Spitzmueller
0a3f856bc1 Update zoom display after zoom has been set 2021-03-07 18:35:40 +01:00
Juergen Spitzmueller
c8feef2e23 Add way to remove items from document dictionary 2021-03-07 18:23:07 +01:00
Stephan Witt
07122f066b Refactoring: move check for match in spellignore() to buffer params. 2021-03-07 17:46:01 +01:00
Juergen Spitzmueller
430327152a Fix per-document dictionary with Mac 2021-03-07 17:25:31 +01:00
Juergen Spitzmueller
be6dc7dd5d Show zoom value in statusbar 2021-03-07 17:21:52 +01:00
Juergen Spitzmueller
bc300585f7 Properly set initial zoom value
This depends on settings
2021-03-07 17:09:03 +01:00
Juergen Spitzmueller
128346d03d Fix zoom slider with mouse wheel 2021-03-07 15:18:28 +01:00
Juergen Spitzmueller
9aad98836d Fix for Qt < 5.11 2021-03-07 14:33:13 +01:00
Juergen Spitzmueller
b07084df2d Add ticks to zoom slider 2021-03-07 14:29:55 +01:00
Jean-Marc Lasgouttes
610ea7f4f5 Fix display of emphasize in slanted text
Fixes bug #12175.
2021-03-07 13:32:34 +01:00
Juergen Spitzmueller
bdb006543b Zoom slider 2021-03-07 13:29:23 +01:00
Stephan Witt
2cf86771ed Amend 07396ab244 - fix compilation error for Apple spell checker. 2021-03-07 10:46:31 +01:00
Stephan Witt
3f75fb7a48 Amend 07396ab244 - fix white space. 2021-03-07 10:46:00 +01:00
Juergen Spitzmueller
a0a7ba7cce Update tex2lyx tests 2021-03-07 08:24:01 +01:00
Juergen Spitzmueller
0b42f77551 \\spellchecker_ignore: use LyX language name rather than langcode 2021-03-07 08:21:23 +01:00
Enrico Forestieri
7545698380 Fix bug #12181
The context menu for InsetMathRef is now usable.
InsetMathRef still misses support for RefStyle and thus the
corresponding entries are omitted from the menu. But this would
be a different bug.
2021-03-06 23:36:58 +01:00
Daniel Ramoeller
5d269df606 Do not toggle on (all) layouts in force plain
Fix for #12179.
2021-03-06 20:25:52 +01:00
Jean-Marc Lasgouttes
4210f4c9cc Compilation fix 2021-03-06 19:58:18 +01:00
Juergen Spitzmueller
31dc0acbb8 Layout fix 2021-03-06 17:45:06 +01:00
Juergen Spitzmueller
07396ab244 Meet per-document spelling dictionaries (fixes #86 [sic!])
Now who can beat that? ;-)
2021-03-06 16:53:33 +01:00
Juergen Spitzmueller
92c6c3b950 fix indendation 2021-03-06 16:15:10 +01:00
Enrico Forestieri
5a43b86141 Allow context menus in mathed
It is now possible to get a context menu for math insets.
InsetMathSpace was already providing a specific context menu,
but it was never triggered because the math hull inset is not
descendable. It is still so, but now when a context menu is
requested all the insets inside the math hull are examined.
If the inset under the cursor provides a context menu, it
is shown instead of the general math one.

Fixes #12100.
2021-03-05 21:21:41 +01:00
Juergen Spitzmueller
f1f475e1d3 Add LFUN_FONT_NO_SPELLCHECK 2021-03-05 18:23:38 +01:00
Jean-Marc Lasgouttes
4828dfb441 Indicate that we do not use a return value
Please Coverity.
2021-03-05 13:12:58 +01:00
Jean-Marc Lasgouttes
f5340fd6d9 Fix missing initialization
Spotted by Coverity.
2021-03-05 13:06:10 +01:00
Jean-Marc Lasgouttes
e6a7da3b22 Fix warning when not using Qt regexps 2021-03-05 11:54:11 +01:00
Juergen Spitzmueller
23fc1b270d Remove redundant call (amend 2b7fae04f3) 2021-03-05 07:54:17 +01:00
Juergen Spitzmueller
2b7fae04f3 Fix limiting of absurdly large input to thesaurus (#10528) 2021-03-05 07:51:49 +01:00
Juergen Spitzmueller
64095a0af2 Fix wrap with Spellchecker after ignore (#10383) 2021-03-04 18:02:04 +01:00
Juergen Spitzmueller
a57cdd0d30 Remove confusing and unusual "Find Next" button from spellchecker dialog (#8931) 2021-03-04 16:54:01 +01:00
Juergen Spitzmueller
8718d01770 Style 2021-03-04 14:52:39 +01:00
Juergen Spitzmueller
5920591b52 refillToolbars() does not need to be public 2021-03-04 14:51:58 +01:00
Juergen Spitzmueller
812b6f7d69 Allow for runtime (dark/light) mode switch 2021-03-04 12:35:38 +01:00
Enrico Forestieri
be2c12ba40 Fix bug #9601
Make sure emphasized text in mathed has correct shape and color.
2021-03-04 11:58:44 +01:00
Jean-Marc Lasgouttes
009efa195b Avoid pointless 'undefined flex inset' errors
When switching class, it does not make sense to flag flex insets that
are undefined if they were already undefined before.

Part of bug #12163.
2021-03-04 10:08:46 +01:00
Daniel Ramoeller
fde432493d Fix Disable Editing "Lock" icon protrudes into tab title on macOS
On macOS the Disable Editing "Lock" icon protrudes into tab title

Also, since the close button is on the left, the lock is better positioned on the right.

The detour via QIcon is to avoid a pixelated pixmap (because in LyX pixmaps don't adjust by default to the device's pixel ratio correctly).

Also

Fix for bug #12160.
2021-03-02 18:38:14 +01:00
Jean-Marc Lasgouttes
fbf22bb3f3 Fix random scrolling inside nested insets
Happened when the BufferView was resized (e.g. math toolbars were
displayed/hidden).

Backported from gadmm's lyx-unstable tree
https://gitlab.com/gadmm/lyx-unstable/-/commit/a868bc034cea4c

Possible fix to bug #7457.
2021-03-02 18:10:12 +01:00
Juergen Spitzmueller
e2f3dd5f6a Consider selection scope when DEPM after CT acceptance/rejection (#2166)
This fixes a crash and DEPM overshooting.
2021-03-02 09:15:33 +01:00
Juergen Spitzmueller
d49c4abb43 Merge branch 'master' of git.lyx.org:lyx 2021-03-02 08:36:42 +01:00
Jean-Marc Lasgouttes
f92f2f95ff Cleanup High DPI support
Disable for Qt >= 6 (this is the default now).

Disable for macOS (does it in its own way).
2021-03-02 08:22:02 +01:00
Juergen Spitzmueller
f28affd421 Merge branch 'master' of git.lyx.org:lyx 2021-03-02 07:04:03 +01:00
Jean-Marc Lasgouttes
234886f6eb Add Qt platform name in About dialog 2021-03-01 19:15:49 +01:00
Enrico Forestieri
bb2c1c3485 Amend c2facb8c
Make sure the base of a script is not empty before accessing it.
2021-03-01 10:08:08 +01:00
Enrico Forestieri
52ce0ff49a Fix bug #11007
The math color inset inherits the mode of the containing inset.
This mode is inferred by the kind of font in effect. Setting the
right mode allows to insert spaces where these should be allowed.
Another small glitch was that the selection was always parsed in
math mode, so that any space was swallowed, even if the inset would
allow them.
2021-02-28 22:32:11 +01:00
Juergen Spitzmueller
0e54e01756 grammar 2021-02-28 17:38:01 +01:00
Juergen Spitzmueller
939dc4076f Prevent infinite loop with instant search on Mac (#12161)
The search dialog was repeatedly feeded with the same string, and a
new search was triggered.
2021-02-28 17:36:06 +01:00
Enrico Forestieri
61db164302 Fix bug #11444 2021-02-28 14:56:42 +01:00
Juergen Spitzmueller
1205018286 Use a proper filter bar in the outliner 2021-02-28 13:57:24 +01:00
Daniel Ramoeller
2a8cac75f4 Adjust adv. find & replace pane spacing
Partial fix of bug #12152.
2021-02-28 13:13:30 +01:00
Daniel Ramoeller
11548c523a Adjust code preview spacing
Partial fix of bug #12152.
2021-02-28 13:10:03 +01:00
Daniel Ramoeller
55f2445278 Adjust outliner spacing
Partial fix for #12152.
2021-02-28 13:06:14 +01:00
Juergen Spitzmueller
5573825202 HiDPI support for search indicators (#12162)
Requires Qt5
2021-02-28 12:35:29 +01:00
Richard Kimberly Heck
170f06089d Add a bit of debugging code 2021-02-27 20:34:29 -05:00
Enrico Forestieri
7b526d6461 Fix bug #3751
We lack the necessary font (cmb10) for drawing bold uppercase greek
letters. It would be overkill adding it for this sole purpose, so
adopt the same poor man's bold strategy used with \boldsymbol.
2021-02-27 21:40:28 +01:00
Richard Kimberly Heck
0895b76f1e Fix bug #12169
Patch from Daniel.
2021-02-27 13:27:05 -05:00
Enrico Forestieri
195b928f92 Fix bug #3294 2021-02-27 14:49:55 +01:00
Kornel Benko
a3e10cd067 FindAdv: Added handling of some chars found in unnicodesymbols 2021-02-27 14:14:28 +01:00
Enrico Forestieri
c2facb8c56 Fix cursor navigation in \overbrace and \underbrace
Due to the way these decorations are implemented, entering
them with the cursor (either form right or left) required
pressing two times cursor left or right.

Fixes #2264
2021-02-26 20:30:41 +01:00
Daniel Ramoeller
d74367a96e Use document mode on work area and docks on macOS
- More fittingly (plain) looking tabs for documents and docks.
- Also macOS fix for bug #9391.
2021-02-26 20:01:43 +01:00
Jean-Marc Lasgouttes
42b23f3fb2 Display bookmarks in the workarea (take 2).
The bookmarks are shown with circled numbers in the right margin (or
the left margin in RTL mode). A new color "bookmarks" has been added.
Currently bookmark 0 (the return position) is not displayed because it
is very disturbing in practice.

To make this work, a new method BookmarksSection::bookmarksInPar
retuns the list of bookmarks in a paragraph along with their position.

Force redraw when using bookmark-save and bookmark-clear.

Caveats:

- this solution does not show the precise position of the bookmark
  (this is supposedly not a problem).

- if several bookmarks are on the same row, they will currently be
  garbled. It would be easy to make sure that only one is shown ; what
  would be more difficult would be to move the second bookmark lower.

- it is possible to make sure that the markers are correctly centered
  in the margin, and that the margin size is large enough to hold the
  marker (I did not try all fonts).

Fixes bug #2496.
2021-02-26 19:09:25 +01:00
Jean-Marc Lasgouttes
e4ab91d802 Revert "Display bookmarks in the workarea."
This will be replaced by a different version.

This reverts commit 99e636ae7b.
2021-02-26 18:07:39 +01:00
Richard Kimberly Heck
946d112ee6 Allow to call cap::switchBetweenClasses without an ErrorList.
It turns out that we usually don't care about the errors and so
were creating dummy ErrorList objects in several places.
2021-02-25 21:49:50 -05:00
Jean-Marc Lasgouttes
3e3ad2937c Remove assertion that is not necessary.
It may happen that there are errors when doing undo, crashing does not
help in this case.

Fixes bug #12163.
2021-02-25 20:00:41 +01:00
Jean-Marc Lasgouttes
d7a4f47e7d Improve HiDpi handling
Add code stolen from QBitTorrent that enables properly HiDpi handling.

HighDpi support is set by default starting with Qt 5.6.

Support for fractional scaling is added for Qt >= 5.14.

Hopefully fixes bug #12060.
2021-02-25 19:24:22 +01:00
Enrico Forestieri
3cf5a064db Amend 368e983a 2021-02-23 21:48:54 +01:00
Enrico Forestieri
368e983abb Fix bug #12165 2021-02-23 20:00:50 +01:00
Jean-Marc Lasgouttes
f59dafe898 Fix cursor position when undoing inset-dissolve.
When invoking inset-dissolve with the cursor in front of the inset,
add recordUndo call to make sure that the cursor is at the right
class.

Fixes bug #12164.
2021-02-23 19:24:54 +01:00
Enrico Forestieri
2629bd6dfb Improve fix for #12153
Use a WYSIWYM approach instead of a WYSIWYG one.
2021-02-23 17:34:19 +01:00
Juergen Spitzmueller
55da675efa FancyLineEdit: use QLineEdit's own clear button with Qt >= 5.2 2021-02-23 16:53:15 +01:00
Jean-Marc Lasgouttes
a5fd5d3cd2 "12 pixels ought to be enough for anyone"
Fixes bug #12153.
2021-02-22 19:35:08 +01:00
Daniel Ramoeller
e050435314 Adjust label size to directory names in About
Fix for bug #11946.
2021-02-22 07:19:28 +01:00
Jean-Marc Lasgouttes
41d29ce387 Reduce the value of (above|below)displayskip
The value of 10pt is too large, use a 'mean' value of 8.5pt.

Tentative fix to bug #12153.
2021-02-21 20:40:09 +01:00
Pavel Sanda
9e734339e9 Compile with gcc 4.9 again. 2021-02-21 20:05:06 +01:00
Thibaut Cuvelier
5b9929c9d7 Amend 61657bd610
Restore indentation to be more consistent.
2021-02-21 13:15:10 +01:00
Enrico Forestieri
4e0d7f753b Draw real dots
A new method for drawing ellipses has been added to the painter
and used for drawing real dots for math decorations and the various
\cdots, \ddots, \vdots, etc., latex commands.
2021-02-21 00:39:12 +01:00
Thibaut Cuvelier
61657bd610 DocBook: convert a first ERT. 2021-02-20 20:29:34 +01:00
Juergen Spitzmueller
269c583967 ProgressView: fix initial tab. 2021-02-20 08:10:01 +01:00
Richard Kimberly Heck
9c5f743575 Fix bug #12152.
Patch from Daniel.
2021-02-19 17:31:36 -05:00
Thibaut Cuvelier
358e4ace56 DocBook: implement prepended/appended arguments for all kinds of elements.
Previously, it was just in InsetText.
2021-02-19 17:38:38 +01:00
Kornel Benko
77e8037f84 FindAdv: Do not distinguish between different math constructs
This means that searching math-mode will find instances also in
math-environments like align*, multline, ...
2021-02-19 17:12:38 +01:00
Yuriy Skalko
110862b09f Fix setting of math matrix size with mouse 2021-02-19 18:06:04 +02:00
Enrico Forestieri
7114de5175 Fix bug #12148 2021-02-19 02:19:06 +01:00
Juergen Spitzmueller
ed2f3dae5c Select search string after inserting from find buffer 2021-02-18 15:56:32 +01:00
Jean-Marc Lasgouttes
65b674ba4e Fix a crash when closing tabs
Although I do not know how to reproduce the crash, the change makes sense.

This is backported from gadmm's lyx-unstable tree
261ce4ea98
2021-02-18 15:54:29 +01:00
Juergen Spitzmueller
9ee73dbb30 GuiSearch: properly display indicators in dark mode 2021-02-18 15:44:27 +01:00
Daniel Ramoeller
672ff09634 Fix Undo with search-string-set
Makes it possible to use the find combobox's internal undo feature to undo a set search string.
2021-02-18 13:09:30 +01:00
Juergen Spitzmueller
b6945764a4 Do not report false find with empty string in instant search 2021-02-18 13:00:41 +01:00
Juergen Spitzmueller
a7e6dcc31d GuiSearch: make search options visible/accessible in minimal mode 2021-02-18 07:33:26 +01:00
Scott Kostyshak
6e8b3906df Fix an instance of -Werror=misleading-indentation
Full GCC output is:

/home/scott/lyxbuilds/master/repo/src/insets/InsetText.cpp: In member function ‘void lyx::InsetText::docbook(lyx::XMLStream&, const lyx::OutputParams&, lyx::InsetText::XHTMLOptions) const’:
/home/scott/lyxbuilds/master/repo/src/insets/InsetText.cpp:713:5: error: this ‘for’ clause does not guard... [-Werror=misleading-indentation]
  713 |     for (auto const & arg : appendedArguments)
      |     ^~~
/home/scott/lyxbuilds/master/repo/src/insets/InsetText.cpp:717:2: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘for’
  717 |  if (writeOuterTag) {
      |  ^~
2021-02-17 23:01:54 -05:00
Thibaut Cuvelier
6df4597e02 DocBook: force paragraphs in HTML cells to allow for nested tables.
CALS still invalid because it forbids nested tables.
2021-02-17 23:32:23 +01:00
Thibaut Cuvelier
da92c9a950 DocBook: spurious spaces in table attributes. 2021-02-17 23:25:41 +01:00
Thibaut Cuvelier
bfa67b1f88 DocBook: TODO is outdated, table type is checked within docbookRow. 2021-02-17 22:55:37 +01:00
Thibaut Cuvelier
adc7820d45 DocBook: add support for DocBookArgumentAfterMainTag. 2021-02-17 21:09:21 +01:00
Enrico Forestieri
2fdee24959 Correctly show deleted url with change tracking
This fixes the issue reported here:
https://www.mail-archive.com/lyx-devel@lists.lyx.org/msg202545.html

I could not find an open ticket about it.
2021-02-17 19:51:01 +01:00
Juergen Spitzmueller
80cb0650e4 Clean up previous selections with empty searchstr on instant 2021-02-17 16:55:55 +01:00
Juergen Spitzmueller
ab1cc8e1c2 Consider case (in)sensitivity when querying special char insets 2021-02-17 15:50:54 +01:00
Juergen Spitzmueller
ca160da07d GuiSearch: separate findClicked() slot from more general function
the latter one is also accessed by different paths than clicking
2021-02-17 14:48:31 +01:00
Juergen Spitzmueller
180fca2fcd Fix Find button with search as you type 2021-02-17 14:32:26 +01:00
Juergen Spitzmueller
05004e138f FancyLineEdit: reformat using our indentation style
No change in function
2021-02-17 12:46:37 +01:00
Juergen Spitzmueller
50783d94a8 Advanced F&R: Improve code on Return key 2021-02-17 09:51:09 +01:00
Juergen Spitzmueller
a2a5656d07 Adv F&R: indicate search direction 2021-02-17 09:50:57 +01:00
Juergen Spitzmueller
5ed0dddcf2 Adv F&R: Fix accelerator conflicts 2021-02-17 09:49:25 +01:00
Juergen Spitzmueller
7ad70c908b Add accelerator 2021-02-17 09:08:26 +01:00
Jean-Marc Lasgouttes
3f093dd103 Fixup 824d1c99: do not change the semantics of leftMargin(pit_type)
In the row painter, when painting a centered label, one wants to get
the left/right margin of the non-first rows (without indent). It was a
bad idea to change leftMargin(pit) to do that, because its semantics
are unclear and the the code depends on the fact that this function does
strange things when the paragraph is empty...

Fixes bug #12118.
2021-02-16 20:27:48 +01:00
Juergen Spitzmueller
fe44b3c0fa GuiSpellchecker: resolve accelerator conflicts 2021-02-16 19:13:13 +01:00
Juergen Spitzmueller
76db3c3f85 GuiThesaurus: complement lyxfind options 2021-02-16 16:33:30 +01:00
Juergen Spitzmueller
109e98d945 GuiSearch: Properly delegate focus 2021-02-16 13:30:31 +01:00
Jean-Marc Lasgouttes
a7c1a39b5b Make selections vertically tighter.
Introduce a new Row::contents_dim(), which height is restricted to the
row contents and does not contain any extra vertical spacing.

Rely on this for painting selections: if the selection starts on row,
for example, the ascent of the contents dim is considered. If ot was
started above, then the full dim is used.

Fixes bug #3899.
2021-02-16 12:29:40 +01:00
Jean-Marc Lasgouttes
090e9a6c36 Keep the useful parts of reverted commits
Keep from 907f0207 the introduction of BufferView::top/bottomMargin()
and the setting of the top/bottom margin of the document. The
difference is that the extra height is still added to the relevant
rows, and not only to the paragraph metrics.

Keep from f41ca959 the reduction of top/bottom margin for Adv F&R
workareas.
2021-02-16 12:29:40 +01:00
Jean-Marc Lasgouttes
a40ca1430e Revert "Improve handling of top and bottom margin"
This reverts commit 907f020724.
2021-02-16 12:29:40 +01:00
Jean-Marc Lasgouttes
810b86560a Revert "Reduce top/bottom margin for Adv F&R workareas"
This reverts commit f41ca959fd.
2021-02-16 12:29:40 +01:00
Jean-Marc Lasgouttes
2c2ae5ecd8 Revert "Fix correction of row in getPitAndRowNearY"
This reverts commit 08a3405181.
2021-02-16 12:29:40 +01:00
Jean-Marc Lasgouttes
f6c87c63c1 Revert "Make sure that top/bottom margins are visible when needed"
This reverts commit a78eb4471f.
2021-02-16 12:29:40 +01:00
Juergen Spitzmueller
213a3bc557 Add/fix some tooltips 2021-02-16 10:02:47 +01:00
Juergen Spitzmueller
119e8c08d4 Fix replace all in selection with change tracking 2021-02-16 09:42:17 +01:00
Pavel Sanda
1ba3307226 GuiSearch did not work with num. keypad enter 2021-02-16 08:52:21 +01:00
Juergen Spitzmueller
5980afaee0 Add support for search/replace within selection (#2548) 2021-02-16 08:11:09 +01:00
Juergen Spitzmueller
df4da34836 GuiCitation: Add missing connection 2021-02-16 07:32:01 +01:00
Enrico Forestieri
a0a0119b48 Account for true dpi
We have to account for the physical rather than logical dpi.

See #12132.
2021-02-15 22:43:36 +01:00
Richard Kimberly Heck
01dc665a25 Make continuous spellcheck the default.
Convert old preferences to preserve previous setting, as well.
2021-02-15 11:03:43 -05:00
Richard Kimberly Heck
93e7ab1f3e Do not write \default_view_format if it is empty. 2021-02-15 10:55:37 -05:00
Juergen Spitzmueller
c4fbd0d913 Initialize F&R dialog with selected text (#8448) 2021-02-15 16:04:17 +01:00
Richard Kimberly Heck
bdd7e26b3e Fix warning 2021-02-15 09:48:37 -05:00
Juergen Spitzmueller
e5958e3ca8 GuiSearch: catch Esc 2021-02-15 15:37:58 +01:00
Juergen Spitzmueller
958213ee52 Improve instant search 2021-02-15 14:12:07 +01:00
Juergen Spitzmueller
f4a91f6e9e Correct tooltip 2021-02-15 11:32:42 +01:00
Juergen Spitzmueller
f59b8cb657 GuiSearch: Add auto-wrap option 2021-02-15 11:30:03 +01:00
Juergen Spitzmueller
22542700a7 Attempt at "search as you type" 2021-02-15 10:53:23 +01:00
Stephan Witt
3841304f80 Use explicit initialization for plain pointer to buffer view. 2021-02-15 10:03:39 +01:00
Juergen Spitzmueller
b2a317c037 Sett forward to true by default in search string parsing 2021-02-15 09:44:27 +01:00
Juergen Spitzmueller
d85c09ae14 GuiSearch: Replace icons on buttons by characters 2021-02-15 08:57:13 +01:00
Juergen Spitzmueller
7869437691 Forgot l7n flag 2021-02-15 08:42:15 +01:00
Pavel Sanda
b497baeea3 Guisearch Qt4 compatibility 2021-02-14 22:44:33 +01:00
Stephan Witt
d65e7a8c87 Additional check for clipboards find buffer support - otherwise Qt complains with unsupported clipboard mode 2021-02-14 22:18:07 +01:00
Jean-Marc Lasgouttes
5a58ca6576 Fix caret height when inserting new inset
For now, the simplest thing to do it to compute metrics in all cases
before calling setCurrentFont().

In 2.5, a better approach will be to add a new virtual function
InsetText::setFont that will set correctly TextMetrics::font_ (a cache
of the reference font).

Fixes bug #12126.
2021-02-14 21:39:15 +01:00
Jean-Marc Lasgouttes
8117172d8a Fixup 051b6ce6: fix drawing of EndLabelString
Fixes bug #12122.
2021-02-14 20:09:35 +01:00
Stephan Witt
3d616bfc79 #11925 Remove the gap between button frame and button background (by Daniel Ramoeller) 2021-02-14 19:04:52 +01:00
Juergen Spitzmueller
c4c62f7185 Remove duplicate header 2021-02-14 19:03:31 +01:00
Stephan Witt
a476cc4839 #8055 add support for system-wide find buffer on Mac
Command-E is standard for paste to find buffer on Mac. That's why the key binding is changed appropriately.
2021-02-14 18:56:25 +01:00
Stephan Witt
0bd9a8be3d Proper initialization of private member bv_ of GuiSearchWidget 2021-02-14 18:48:42 +01:00
Juergen Spitzmueller
4db1a08450 Let replace combo enabled if replace buttons are disabled. 2021-02-14 18:23:54 +01:00
Juergen Spitzmueller
1cc615fa95 Remove empty layout 2021-02-14 18:20:27 +01:00
Juergen Spitzmueller
234c6b5c8b Remove resolved FIXME 2021-02-14 18:15:33 +01:00
Juergen Spitzmueller
28239bf996 Frame takes less space than GroupBox 2021-02-14 18:12:38 +01:00
Richard Kimberly Heck
7c9eaa248d nullptr 2021-02-14 12:05:45 -05:00
Richard Kimberly Heck
fe38f02cde Update release notes for bookmark shortcuts 2021-02-14 11:46:27 -05:00
Richard Kimberly Heck
98f3ef0924 Amend 2baa3a46a6. 2021-02-14 11:41:25 -05:00
Juergen Spitzmueller
2baa3a46a6 Transform simple search dialog to dock widget (#2625)
Also solves #8054
2021-02-14 17:18:00 +01:00
Kornel Benko
48528d0ff0 FindAdv: Use global declaration for findOne() to be usefull for unit tests
cherry-pick from unit-test-adoption/dff4779b06b, author: Yuriy Skalko <yuriy.skalko@gmail.com>
2021-02-14 09:08:23 +01:00
Thibaut Cuvelier
25d3d16360 Amend ac98f21f 2021-02-14 05:36:37 +01:00
Thibaut Cuvelier
ac98f21f8c DocBook: for books only, create a preface around the first few elements so that the result is valid.
Books can only contain parts and chapters, not single sections or text after the abstract.
2021-02-14 05:20:36 +01:00
Enrico Forestieri
11392b7b33 Fix arrows at ends of math decorations
For math decorations with arrows at both ends the code was simply
stretching a prototype symbol, thus distorting the arrows.

Another drawing mode is introduced allowing to draw an element by
maintaining its aspect ratio also when it has to be drawn at the
other end of a decoration. An element drawn using this mode is simply
shifted to the other side by adding either the width or the height,
and a finer adjustment can be obtained by specifying an additional
horizontal or vertical shift.
2021-02-14 01:25:07 +01:00
Thibaut Cuvelier
d8c6bc7c1f Stop using a GCC extension for an unprintable character in regex. 2021-02-13 18:23:20 +01:00
Richard Kimberly Heck
c6dfc70367 Show python info in About LyX 2021-02-13 11:53:14 -05:00
Kornel Benko
fe792d7efe FindAdv: Tweak language settings
Language settings will be ignored if

a.) User selects if with setIgnoreFormat("language", true, true)
or
b.) The pattern does not contain lang-specs other than the default language of document
or
c.) The pattern contains math parts
2021-02-13 16:20:23 +01:00
Juergen Spitzmueller
f8021672ad Address some deprecation warnings 2021-02-13 15:23:45 +01:00
Juergen Spitzmueller
9089839055 Resolve accelerator conflicts 2021-02-13 07:57:10 +01:00
Thibaut Cuvelier
d18dff22b5 DocBook: add the DocBookNoFontInside layout configuration. 2021-02-13 05:09:59 +01:00
Stephan Witt
46bb8f22c9 #8055 correct processing of LFUN_WORD_FIND option flags for repeated search operations 2021-02-13 04:47:44 +01:00
Enrico Forestieri
400cb1b80f Fix small glitch with \underXXXarrow and \overXXXarrow
When the argument is long enough, the arrow in the on-screen representation
was not covering the first or the last glyphs. For example, using
\overrightarrow{abcdefghijklmnopqrstuvwxyz}
the 'a' was drawn outside the covering arrow.
2021-02-12 23:56:27 +01:00
Enrico Forestieri
2ba8ebab67 Slightly increase size of math decorations
Correspondingly tweak some shapes for better results.

Part of #12132.
2021-02-12 23:16:03 +01:00
Jean-Marc Lasgouttes
1cbbe5c3aa Do not redraw cursor twice with Page Up/Down
Just recompute metrics instead of triggering a full redraw. The old
behavior was that, when the document was less that one page long, the
cursor would blink to the top of the document before going to its
correct position.
2021-02-12 18:35:07 +01:00
Jean-Marc Lasgouttes
a78eb4471f Make sure that top/bottom margins are visible when needed
When the cursor is at the top, it is important to make sure that, not
only its row is visible, but also the extra margin at the beginning of
the document, that was added at 907f0207.

Fixes part of bug #12123.
2021-02-12 18:35:07 +01:00
Jean-Marc Lasgouttes
08a3405181 Fix correction of row in getPitAndRowNearY
Now that the ascent of the paragraph metrics is not necessarily the
ascent of the first row (see 907f0207), the test is too strict. Now it
is more symmetrical wrt the !up case.

Note that changing this part of code is associated with a
non-negligible risk of creating a bug elsewhere.

Fixes part of bug #12123.
2021-02-12 18:35:06 +01:00
Juergen Spitzmueller
b75fc70561 Adapt comment 2021-02-12 14:43:56 +01:00
Juergen Spitzmueller
7f90e3b7d2 Introduce search-string-set (#8055)
This stores its argument, the currently selected text or the word under
cursor in the search cache that is used by word-find[-backward|-forward]
if no argument is given to those.

Prerequisite for a feature apparently expected on the Mac.
2021-02-12 14:30:50 +01:00
Juergen Spitzmueller
fbef5e687a Use dialog-show in icon names
(and search for them also with dialog-toggle counterpart lfuns)

Fixes #12137
2021-02-12 12:18:51 +01:00
Juergen Spitzmueller
d1ea8a40af GuiSearch: catch global shortcuts to find forwards/backwards (#11170) 2021-02-12 10:50:47 +01:00
Juergen Spitzmueller
c24c82d986 Correctly handle internal clipboard in cell paste 2021-02-11 16:45:27 +01:00
Juergen Spitzmueller
59bead6dfa Properly fix broken cursor (part of #12134) 2021-02-11 14:53:02 +01:00
Kornel Benko
4cd80de69e FindAdv: Ignore math hull if searching for normal text
Helps to find strings inside math also if the pattern does not use math hull.
Needed due to the algorithm-change of searching text.
2021-02-11 14:03:46 +01:00
Juergen Spitzmueller
9721a5cc6b Set GUI name for local greyedouttext color (#12130) 2021-02-11 09:05:42 +01:00
Juergen Spitzmueller
456b2b0e8b Fix indentation 2021-02-11 08:08:37 +01:00
Juergen Spitzmueller
2175899f17 Re-initiate module filter after dialog re-opening (#12128) 2021-02-11 08:07:55 +01:00
Juergen Spitzmueller
ad1e7da1fb Assure filtered module items are not editable (#12127) 2021-02-11 07:57:09 +01:00
Richard Kimberly Heck
2874384414 Fix bug #10646. 2021-02-10 16:04:25 -05:00
Juergen Spitzmueller
65f96abfec Make delimiter icons a bit smaller 2021-02-10 11:40:56 +01:00
Jean-Marc Lasgouttes
939d25561d DEPM: do not fix cursor pit if it was in a different cell
This bug has been here forever.

Fixes bug #12117.
2021-02-10 10:22:36 +01:00
Jean-Marc Lasgouttes
d2f23c303c Remove left/right spacing around top/left buttons
This makes collapsible insets look better.

Fixes #10323.
2021-02-10 10:22:36 +01:00
Juergen Spitzmueller
c2822d684b Add LFUN_LYXFILES_OPEN
This opens the new templates/examples dialog and creates a view if
necessary (#12106).
2021-02-10 09:36:32 +01:00
Juergen Spitzmueller
e35574b3ce Store the AuthorList in the cut stack
Otherwise we crash when we paste text with markup into a different buffer
that has change tracking disabled (in this case, markup is now kept).
2021-02-09 16:54:21 +01:00
Juergen Spitzmueller
7cccfe5515 BulletsModule: disable size widget with custom bullet (#12011) 2021-02-09 11:01:45 +01:00
Juergen Spitzmueller
11b7714fc1 Use SVG icons in itemize bullet selector
This scales much better than the current png solution, is HiDPI- and
darkmode-ready
2021-02-09 10:32:16 +01:00
Richard Kimberly Heck
080b5107c7 Do not show completion cursor if completion is inactive 2021-02-08 18:48:06 -05:00
Jean-Marc Lasgouttes
c311451518 Fix math class code in InsetMathColor
The current code is too naïve and asserts on MC_UNKNOWN class.

See discussion here:
https://marc.info/?l=lyx-devel&m=161267112524889&w=2
2021-02-08 13:13:21 +01:00
Stephan Witt
80e20e86be #11682 amend change 4d4dc96b06 - check Qt version for all Qt::ApplicationState occurances 2021-02-08 09:04:18 +01:00
Stephan Witt
4d4dc96b06 #11682 open new window on Mac if there is none and LyX is activated via dock 2021-02-07 18:53:40 +01:00
Juergen Spitzmueller
233cfed333 GuiDelimiter: properly calculate widget width 2021-02-07 17:24:59 +01:00
Juergen Spitzmueller
0afae1f97d GuiDelimiter: fix tabstop access
DialogButtonBox not yet included, though.
2021-02-07 17:00:20 +01:00
Juergen Spitzmueller
fa56a5eb98 Adjust selection color of delimiter icons 2021-02-07 12:32:11 +01:00
Enrico Forestieri
3cf5a71463 Amend [5ed01cd6/lyxgit]
This commit takes into account also the case in which a prime follows
a superscript, a case not explicitly mentioned in bug 1633.
This case has to be accounted for in a different way. We cannot look
ahead when exporting, so we simply tell TeXMathStream to output an
empty group if we just output a superscript and a prime comes next.
2021-02-06 20:07:31 +01:00
Juergen Spitzmueller
5c1a6468ac GuiDelimiter: use highlight text color if icon is selected 2021-02-06 16:25:55 +01:00
Juergen Spitzmueller
7c33e2fc08 GuiDelimiter: store delimiter name in UserRole 2021-02-06 15:33:13 +01:00
Juergen Spitzmueller
1fe75ae72c GuiDelimiter: cleanup and fix crash 2021-02-06 15:09:54 +01:00
Juergen Spitzmueller
fcc832ebeb GuiDelimiter: use SVG icons rather than relying on font (#12085) 2021-02-06 14:05:46 +01:00
Jean-Marc Lasgouttes
720f439868 Fix default limits value for (under|over)brace
Fixes bug #12107.
2021-02-05 14:37:26 +01:00
Enrico Forestieri
5ed01cd616 Avoid double superscript errors
Fixes #1633
2021-02-05 01:03:09 +01:00
Enrico Forestieri
8202e4e571 Disable direct insertion of multiple spaces in mathed text
Fixes #1311
2021-02-04 21:20:45 +01:00
Thibaut Cuvelier
2720ac5dda The menu Options has been renamed Tools. 2021-02-04 20:30:43 +01:00
Pavel Sanda
ded8c873f4 Attempt on #12066.
Some lfuns are handled directly in GuiApplication while handling
of menu hiding in fullscreen was done on the level of GuiView.

We'll see if this code movement breaks in different scenarios,
but quick grep suggested that the only other way to guiview
dispatch is through drag&drop when menu isn't involved.
2021-02-03 22:06:14 +01:00
Jean-Marc Lasgouttes
9f899a17fa Force redraw of all bufferviews after zoom in/out
Add a new ForceAll update flag that forces to update metrics and
redraw all buffer views.

The situation in multi windows setting is very fragile and will need
to be adressed properly in the 2.5 cycle.
2021-02-03 15:42:11 +01:00
Kornel Benko
8d17594a33 FindAdv: Ignore '\ensuremath{' while searching
but keep contents
e.g. '\ensuremath{abc}' ==> 'abc'
2021-02-03 12:21:16 +01:00
Enrico Forestieri
b475cf8707 Amend [bc806084/lyxgit]
Rise a bit \dot, \ddots & co., as with some fonts they might
be drawn too close to the symbol they decorate.
2021-02-03 11:45:52 +01:00
Juergen Spitzmueller
8d5da386c4 Amend [b6c089afa4/lyxgit]. 2021-02-03 10:23:17 +01:00
Richard Kimberly Heck
bd0044f9d5 Fix bug #11351.
Patch from Daniel.
2021-02-02 17:34:25 -05:00
Richard Kimberly Heck
7b6db55f28 Use a static map so we don't have to reinitialize every time. 2021-02-02 17:30:57 -05:00
Richard Kimberly Heck
b6c089afa4 Fix #12104 2021-02-02 17:23:00 -05:00
Enrico Forestieri
d999d8e8d9 Improve alignment of math decorations
This patch takes into account the skewness of a character for properly
align a decoration. Unfortunately, the required amount of shift depends
on single chars, so that the recently introduced FontMetrics::italicSlope()
method cannot be used with all characters. A heuristics that produces
satisfactory results is using the italic slope only with characters whose
italic correction (kerning) is zero.

Part of #11491
2021-02-02 19:39:52 +01:00
Enrico Forestieri
bc806084cd Improve appearance of dots at higher zoom levels
Make \dot, \ddot and friends more round when increasing zoom

Part of #11491
2021-02-01 20:02:37 +01:00
Enrico Forestieri
9f3920447e Make math decorations scalable with zoom level
Fixes #11491
2021-02-01 02:53:00 +01:00
Juergen Spitzmueller
1bc7e73c74 Fix highlighting of cursor context in View Source (#12099)
This also considers dark mode,
2021-01-31 17:54:54 +01:00
Enrico Forestieri
04c0cce43e Fix make check
We have to explicitly link zlib after [197ea636/lyxgit].
2021-01-31 15:21:23 +01:00
Kornel Benko
3a1b19c5c3 FindAdv: Optimization
Using unordered_map instead of map.
Reasons:
1.) The relevant maps contain 166(Keys) and 649(Accents) entries.
  This mean that average access with 'map' needs 8 to 10 compares to find the value.
2.) Since we are using at least c++11, the unordered_map is available
2.) increasing the maps (in future) needs not to be considered anymore, because
  the access-time will not increase.
2021-01-31 09:53:06 +01:00
Enrico Forestieri
c79ec4114e Change backspace behavior in align type equations
When hitting backspace in the first position of a cell in mathed,
if the cell is part of an array, the whole array is dissolved
and the sole cell content pasted in the containing environment.

But if the cell is part of an eqnarray or align math hull type, the
cursor is simply (and unexpectedly) taken out of the whole equation,
which is left unchanged.

This patch makes backspace equivalent to the cursor left key in those
cases, while leaving the behavior unchanged in all other ones.

Fixes #11678
2021-01-31 00:51:15 +01:00
Daniel Ramoeller
d008ca2539 Preserve multirow/-column content on deletion of subrows/columns (#11380) 2021-01-30 17:03:33 +01:00
Juergen Spitzmueller
c567c78e90 Add ProvideInsetLayout and ModifyInsetLayout (#12098)
This complements ProvideStyle and ModifyStyle.
2021-01-30 15:56:31 +01:00
Juergen Spitzmueller
897ee2ed88 Do not overwrite InsetLayout font/color 2021-01-30 15:16:12 +01:00
Juergen Spitzmueller
c8e04eb2f4 Whitespace 2021-01-30 15:11:18 +01:00
Juergen Spitzmueller
be14b73787 Fix a null pointer dereference spotted by coverity 2021-01-30 13:46:47 +01:00
Juergen Spitzmueller
c83526c3ca Revert "No need to set background color of a newly created branch."
This breaks color initialization with new branches in dark mode.

This reverts commit 5145694cd0.
2021-01-30 09:16:15 +01:00
Juergen Spitzmueller
9dd71b9e4a Recent multirow finally allows multiple paragraphs 2021-01-30 09:15:14 +01:00
Enrico Forestieri
22ee249c3e Allow pasting references to mathed
A reference can be directly inserted into mathed but cannot be pasted
because the pasted material is returned in plain text format. This patch
allows getting a string from the cut stack in a suitable format allowing
the math parser to actually create an InsetRef.

Fixes #11539
2021-01-30 01:32:40 +01:00
Jean-Marc Lasgouttes
b1efc5a48e Initialize properly IconInfo struct
Spotted by coverity.
2021-01-29 18:57:13 +01:00
Jean-Marc Lasgouttes
5366666c83 Copy/paste error in BranchList::setColors
Spotted by coverity.
2021-01-29 18:51:19 +01:00
Jean-Marc Lasgouttes
ef091ca0ea ChangesMonitor: beware of exceptions in destructor
There may be an exception is the paragraph does not have an owner. In
this case, there is nothing to do anyway.

Spotted by coverity.
2021-01-29 18:45:50 +01:00
Jean-Marc Lasgouttes
bbae2c8c2a FindAndReplaceOptions: initialize properly matchAtStart
Spotted by coverity.
2021-01-29 18:35:38 +01:00
Jean-Marc Lasgouttes
5145694cd0 No need to set background color of a newly created branch.
Fixes a null pointer dereference spotted by coverity.
2021-01-29 18:29:55 +01:00
Jean-Marc Lasgouttes
dca5646163 LengthValidator: initialize properly positive_
Spotted by coverity.
2021-01-29 18:17:16 +01:00
Jean-Marc Lasgouttes
90bceb65d3 Initialise correctly branch_list_id_
Reported by coverity.
2021-01-29 18:07:37 +01:00
Juergen Spitzmueller
fd8b3c148f Cosmetics 2021-01-29 15:46:46 +01:00
Juergen Spitzmueller
6d05e78168 Do not output \maketitle in table cells if the table is in the title 2021-01-29 15:45:54 +01:00
Jean-Marc Lasgouttes
911b01a3ca Fixup f3a0e8ff: Reset needUpdate after buffer update 2021-01-29 14:31:10 +01:00
Enrico Forestieri
070270fdc7 Avoid deprecation warnings
In Qt 5.15 many deprecation warnings are issued, presumably for
helping the port to Qt 6. They are really a load but can be
shuten up by using -DQT_NO_DEPRECATED_WARNINGS, except for the ones
about MidButton, AdjustToMinimumContentsLength, and DefaultLocaleLongDate.

This change should not affect compilation with Qt 4, as all changes are
backward compatible (only Qt versions prior 4.5 could be affected).
2021-01-29 13:12:29 +01:00
Juergen Spitzmueller
52196d6c48 Set proper multirow size in X table columns 2021-01-29 10:15:36 +01:00
Jean-Marc Lasgouttes
f3a0e8ff9a Run updateBuffer when adding/merging changes
Following 4a4ded22, the enabling of some change-related functions is
handled in updateBuffer. However, this method is not ran at every
document change for performance reasons.

This patch adds code to every place that modifies
Paragraph::Private::changes_ that checks whether the `changedness' of
the paragraph, err... changes.

To this end, a new helper struct is introduced that remembers
paragraph state at contruction time, and compares it to new state in
the destructor.

New forceUpdate/needUpdate methods are added to Buffer class, since
the cursor is in general not available in the places where these
changes are made.

Fixes bug #12074.
2021-01-28 11:30:05 +01:00
Juergen Spitzmueller
aa781a4891 Update tex2lyx tests 2021-01-28 10:28:57 +01:00
Juergen Spitzmueller
b42c5dd7d6 Add frontispiece layout to KOMA classes 2021-01-28 10:24:28 +01:00
Jean-Marc Lasgouttes
48e7b1d01e Make InsetCaption label localizable
Part of bug #10531.
2021-01-27 10:32:18 +01:00
Jean-Marc Lasgouttes
bb8278e6ce Fix InsetCaption in RTL environment.
This requires to add a new mutable member, rtl_, to remember this context.

Part of bug #10531.
2021-01-26 17:58:11 +01:00
Juergen Spitzmueller
c5e5dda0ef Some minor polishment 2021-01-26 14:50:14 +01:00
Juergen Spitzmueller
27e7eb4b14 Fix copy-paste error (#12092) 2021-01-26 14:48:12 +01:00
Jean-Marc Lasgouttes
cb3db8b4cf InsetCaption: move intialization to declaration 2021-01-26 10:18:31 +01:00
Juergen Spitzmueller
76eae4572e Introduce InputGlobal (#12087)
This is a variant of Input for layout files that only searches build
and system directories and thus allows "InputGlobal name.inc" in a user
file name.inc that attempts to modify its global counterpart.
2021-01-26 08:42:39 +01:00
Richard Kimberly Heck
10c7954ffb Const 2021-01-25 14:35:37 -05:00
Juergen Spitzmueller
82a8ed4d55 Allow to move multiple (selected) columns/rows (#9045) 2021-01-25 19:00:50 +01:00
Jean-Marc Lasgouttes
6bf8a0ade8 Disable respectOSkbd checkbox
This is not ready yet. See discussion in #6450.
2021-01-25 18:35:41 +01:00
Jean-Marc Lasgouttes
ea0049aec8 Do not disable DEPM paragraph deleting when FreeSpacing is true.
This is an old issue that never got fixed.

Fixes bug #10413.
2021-01-25 17:41:20 +01:00
Juergen Spitzmueller
b90c3fdfa1 GuiTabular: only apply changed features (#10450) 2021-01-25 11:00:06 +01:00
Kornel Benko
5d8cacf3ec FindAdv: Select search for language-format depending on document language.
In case of search with format:
If the pattern contains language spec different to the document language
then do not ignore language setting.

Also renamed 'matchstart' in FindAndReplaceOptions to 'matchAtStart'
2021-01-25 10:52:14 +01:00
Juergen Spitzmueller
a05c7b3555 Fix alignment missetting with multirows (#10826) 2021-01-25 09:09:07 +01:00
Juergen Spitzmueller
4029680413 Fix on-screen vertical alignment in some table cells (#7757) 2021-01-24 15:28:37 +01:00
Juergen Spitzmueller
e2a66df3b8 LFUN_FILE_OPEN: Strip quotes from argument (#12091) 2021-01-24 14:48:55 +01:00
Juergen Spitzmueller
f84007bd53 Fixup tex2lyx parse_cell_content method 2021-01-23 15:50:39 +01:00
Juergen Spitzmueller
7f78050957 Fix metrics of varwidth cells (#12089) 2021-01-23 15:22:09 +01:00
Juergen Spitzmueller
8d09fb5bf0 Support non-default styles in multirow 2021-01-23 14:53:51 +01:00
Juergen Spitzmueller
5979a01b1d Allow paragraph and line breaks in multirow (#12083) 2021-01-23 14:24:54 +01:00
Juergen Spitzmueller
526d2841df tex2lyx: support extended varwidth table cells 2021-01-23 09:33:52 +01:00
Juergen Spitzmueller
af550b4589 update tex2lyx tests 2021-01-23 08:19:21 +01:00
Juergen Spitzmueller
7bd072e750 Fix status of tabular function 2021-01-23 08:10:55 +01:00
Kornel Benko
961e393b95 FindAdv: Make search for text in deleted regions configurable.
The function call 'search-ignore deleted false'
makes findadv to search also deleted parts,
while 'search-ignore deleted true' will omit these parts.
2021-01-22 21:11:28 +01:00
Juergen Spitzmueller
0b0757916e Format incremented to 605: Extended variable table cell support
- Multicolumn now supports multiple paragraphs in non-fixed-width context.
- Multicolumn now supports valign in non-fixed-width context.
- varwidth columns now properly align horizontally and vertically.
2021-01-22 19:16:43 +01:00
Kornel Benko
469b43c791 FindAdv: Do not search in deleted text. 2021-01-22 17:03:54 +01:00
Juergen Spitzmueller
6775d7c3a2 Prevent more local colors from leaking (#6626) 2021-01-22 10:34:41 +01:00
Kornel Benko
d81673ecf0 FindAdv: Fix backward search and search for special char '{' and '}'
Change effects mostly searches with ignored format search.
Backwards search is much slower, but at least more or less working.
2021-01-21 13:39:25 +01:00
Juergen Spitzmueller
0fa0ba455f Do not paint change mark for individual table cell insets (#12077) 2021-01-21 09:04:29 +01:00
Juergen Spitzmueller
514cd87970 Prevent branch background color from leaking out of the document
This is assured by a unique branchlist ID that is now part of the branch
color name
2021-01-21 08:09:41 +01:00
Kornel Benko
5f6027281d Amend c041bb66: Unintended debug output slipped in 2021-01-20 17:10:39 +01:00
Juergen Spitzmueller
06605a587f Account for spaces in paths to templates (#12082) 2021-01-20 17:05:10 +01:00
Juergen Spitzmueller
ee475b62fa Do not rely on hardcoded color when determining boxbgcolor 2021-01-20 14:15:48 +01:00
Juergen Spitzmueller
024980cf43 Do not rely on hardcoded color when determining notefontcolor 2021-01-20 13:58:24 +01:00
Juergen Spitzmueller
3375dccef6 Set LaTeX color for notefontcolor (#9283) 2021-01-20 13:57:44 +01:00
Juergen Spitzmueller
77c8a2df0f Ass method to add a latexname to a local color (needed for #9283) 2021-01-20 13:55:48 +01:00
Kornel Benko
c041bb667a FindAdv: Fix interpretation of match-results
Since commit c600906d92 all matches are match-results of examined strings starting
with a character of the same cursor depth, we can be sure to match the same string again if:
1.) the number of characters to the end of the examined strings match.
2.) the match-lengths are identical
2021-01-20 12:41:37 +01:00
Juergen Spitzmueller
b1afdf1c19 Correct disabled graphics scale string (#9443) 2021-01-20 12:06:22 +01:00
Juergen Spitzmueller
65af4e44bb Final touch on lyxgreyedout 2021-01-20 11:14:24 +01:00
Juergen Spitzmueller
e3e8b600eb Further simplification of lyxgreyedout definition
Also fix an issue in RTL/LuaTeX
2021-01-20 11:04:16 +01:00
Juergen Spitzmueller
f2a204a82d Centralize lyxgreyedout definition with RTL and polish LaTeX output 2021-01-20 10:28:33 +01:00
Juergen Spitzmueller
0b31fcd083 Use different color for change-tracked greyedout text (#12025)
We use a blended version of the normal lyxadded and lyxdeleted colors
2021-01-20 08:59:52 +01:00
Juergen Spitzmueller
59869417b8 Comment 2021-01-20 08:05:17 +01:00
Juergen Spitzmueller
1d613827c6 Do not output tracked deleted paragraph break in listings (#10418) 2021-01-20 07:38:33 +01:00
Jean-Marc Lasgouttes
566b4de5cd Fix off-by-one condition when right clicking over selection
Fixes bug #10429.
2021-01-19 19:24:10 +01:00
Jean-Marc Lasgouttes
5908bb3ea6 Cleanup button handling in InsetInclude
The include inset has its own button_ object, that hides the button_
object of the InsetCommand parent. Remove that.

Remove the hand-made caching that uses the set_label_ boolean.

Let metrics() and draw() use the inherited methods. This requires to
use setBroken as needed and to implement inheritFont.

The use of InsetCommand::draw is what restores the hover effect.

Fixes bug #10415.
2021-01-19 19:24:10 +01:00
Juergen Spitzmueller
64b22a6d80 update tex2lyx tests 2021-01-19 18:33:22 +01:00
Kornel Benko
052cad8b17 FindAdv: Reduce the count of debug messages 2021-01-19 17:54:17 +01:00
Juergen Spitzmueller
7b762ee950 Branch: Implement separate static colors in dark mode
Set colors now apply to the active mode only. Matching reversed colors
are produced for the other mode if no color is assigned yet.

File format change.
2021-01-19 17:04:04 +01:00
Juergen Spitzmueller
81c19502c1 Consider darkmode when inserting new branch 2021-01-19 13:28:21 +01:00
Jean-Marc Lasgouttes
4062cbd278 Remove RenderButton::button_box_, which is unused. 2021-01-19 11:27:54 +01:00
Juergen Spitzmueller
8cf6b34738 Update color table in branch list 2021-01-19 09:22:07 +01:00
Juergen Spitzmueller
3f1799b2c8 Add method to check whether LyX runs in dark mode 2021-01-19 09:21:36 +01:00
Juergen Spitzmueller
29f98ab245 Use isDarkMode() method 2021-01-19 08:37:05 +01:00
Kornel Benko
3259f3c73e FindAdv: Remove dead code
+ correct detection of backspaced '{' and '}' in regex with format search enabled
2021-01-18 17:06:05 +01:00
Kornel Benko
96f9c8fb19 FindAdv: Amend2 dacd2c45: Handle search for '{' and '}'
Allow for using 'a{2,7}' to find 2 to 7 consecutive chars 'a'
2021-01-18 16:06:40 +01:00
Kornel Benko
dacd2c45b7 FindAdv: Amend ec387b6d: Handle search for '{' and '}'
1) Take care of different input if changed the search-mode (with/without format)
	This amends ec387b6d
2) Make the braces used in text to be treated as single characters
	e.g. transform '\braceleft' to some unicode value
3) Try to use '$' as 'end of sequence' in regex
	We have to remove '}' and '\n' chars from the examined string
2021-01-18 12:17:57 +01:00
Juergen Spitzmueller
2225f0ed61 Update tex2lyx tests 2021-01-18 10:49:42 +01:00
Juergen Spitzmueller
9a6f7ece97 Add option to revert graphics colors in dark mode (#12076)
This amends [5d47a7ee57506/lyxgit]
2021-01-18 10:46:16 +01:00
Juergen Spitzmueller
6766ca2c99 Update tex2lyx tests 2021-01-18 10:01:09 +01:00
Juergen Spitzmueller
057753dc75 Allow semantic colors in branches and use semantic background color by default
Addresses most crucial part of #12075

File format change
2021-01-18 09:56:53 +01:00
Kornel Benko
ec387b6d65 FindAdv: Handle search for '{' and '}'
In format-search the chars '{' and '}' are understood as latex parentheses, which normally are not
part of text and are discarded.
Instead we fake them as if they were a char like \backslash or \guilemotright or such.
2021-01-18 01:10:07 +01:00
Juergen Spitzmueller
a4e6f0dead Add some more hints to empty margin widgets (#11424) 2021-01-17 17:49:45 +01:00
Kornel Benko
c600906d92 FindAdv: Optimizing forward search
Still not as fast as quick search

Also started to remove some unused code.
2021-01-17 13:35:07 +01:00
Juergen Spitzmueller
5d47a7ee57 Try to automatically handle transparent pictures in darkmode (#12076)
We'll see how this plays in practice.
2021-01-17 11:03:21 +01:00
Juergen Spitzmueller
606a404632 Extend non-default margins tooltip (#11424) 2021-01-17 10:18:45 +01:00
Kornel Benko
7b8e26e3ad FindAdv: Search for innermost depth needed if matched string not inside some other inset. 2021-01-15 17:12:41 +01:00
Richard Kimberly Heck
fd74bddffc Keep dialog connected to cross-ref inset after Apply.
This does not actually have any effect yet, due to the fact that
disconnectAfterApply returns true (and this is a GuiDialog).
2021-01-15 11:12:25 -05:00
Richard Kimberly Heck
a9bb062fc3 Keep dialog connected to External inset after Apply 2021-01-15 11:12:25 -05:00
Richard Kimberly Heck
bd555eebe2 Keep dialog connected to BibTeX inset after Apply 2021-01-15 11:12:25 -05:00
Richard Kimberly Heck
997bf3ecb7 Revert unintended commit from before 2021-01-15 11:12:25 -05:00
Kornel Benko
ea5e16d075 Replace calls from make_unique to lyx::make_unique
After advice from Yuriy Skalko to satisfy compilation with clang8
2021-01-15 11:36:14 +01:00
Kornel Benko
dff9438a36 FindAdv: Discard the optional arguments of \part, \chapter, ...
Not easy selectable anyway, and hard to use while searching.
2021-01-14 23:25:58 +01:00
Richard Kimberly Heck
be19fdee3a Try to catch some other cases of inappropriate TOC updating in internal bufers. 2021-01-14 14:20:55 -05:00
Richard Kimberly Heck
e7b9aa672f Fix crash reported by Kornel.
See https://marc.info/?l=lyx-devel&m=161058233016780&w=2.

Internal Buffers do not have TOCs associated with them, so we should
not try to update them. This fixes Kornel's crash, but there may be
other instances of the problem.
2021-01-14 14:17:51 -05:00
Juergen Spitzmueller
f24fa552de Fix crash (missing Buffer update) 2021-01-14 17:17:58 +01:00
Kornel Benko
a7590d33e3 FindAdv: Add handling of regex char '^' at start also for search with disabled format
lyxfind.cpp:
	handle \mathcircumflex inside regex
output_latex.cpp:
	don't mark extra end of parameters if no options involved
2021-01-14 14:44:21 +01:00
Kornel Benko
9bdd0b31db Fix #12069: Broken search
Do not count ignored characters as matching
2021-01-14 14:36:07 +01:00
Richard Kimberly Heck
fcea6c471c Revert "Add move constructor and move assignment operator for FileName class"
For now, since it's causing problems on OSX particularly.

This reverts commit 854c9de8fa.
2021-01-14 03:08:12 -05:00
Juergen Spitzmueller
81af5ac742 Fix comment 2021-01-14 08:57:15 +01:00
Juergen Spitzmueller
c5b7d871e0 Strip % characters from nomenclWidest()
This character now (oddly) serves as escape char in newer nomencl versions
but it still comments out in all other contexts.

See #10634
2021-01-14 08:55:15 +01:00
Richard Kimberly Heck
0903d26f50 Whitespace 2021-01-14 01:28:42 -05:00
Richard Kimberly Heck
1582a2afe1 Fix bug #12068 2021-01-14 01:15:19 -05:00
Richard Kimberly Heck
9504ec84c5 Simplify and polish 2021-01-13 14:42:26 -05:00
Richard Kimberly Heck
d41ec3368d Fix bug #10635 2021-01-13 14:38:48 -05:00
Jean-Marc Lasgouttes
86191314cb Record undo properly when inserting math script
The current code did not always record undo at the right level.

Fixes bug #10843.
2021-01-13 11:41:29 +01:00
Juergen Spitzmueller
22efd5a5ef Simple Search: find isChar() insets (#11462) 2021-01-13 08:19:54 +01:00
Kornel Benko
8ca508d004 FindAdv: Refactoring some routines which was hard to understand
Most of the previous code is only commented out, will remove them completely later.
(Debugging this code was extremely exhausting)
2021-01-12 19:33:29 +01:00
Juergen Spitzmueller
c049527941 Consider inset strings in simple find/replaceAll (#12049) 2021-01-12 16:45:32 +01:00
Juergen Spitzmueller
1b2a56e2d2 Ignore tracked deletions in simple replace (#11194) 2021-01-12 16:13:47 +01:00
Juergen Spitzmueller
d87511308b Ignore tracked deletions in simple find (#11051) 2021-01-12 16:11:58 +01:00
Kornel Benko
2318baec7b FindAdv: Allow regex searches at start of paragraph
For example regex '^\w+' finds now only the first word in any paragraph
even if searching without 'ignore format' is set.
2021-01-11 14:50:03 +01:00
Kornel Benko
29b9dd8b2f FindAdv: Search for 'whole words' with help of modified regex. 2021-01-10 23:02:55 +01:00
Stephan Witt
2844a4ec06 drop unintented static declaration from local temporary variable (formerly a global static constant) 2021-01-10 22:03:19 +01:00
Kornel Benko
31c3bddd6e FindAdv: Converting patterns without regex to use regex instead
Makes the code with less exceptions
  (no need to differentiate beteen use_regex and !use_regex)

Move the creation of regexes to own subroutine (Handles '#if QTSEARCH ... #endif')
Use cursor position differences instead of length of matched string. This is important for putSelectionAt()
2021-01-10 17:17:37 +01:00
Juergen Spitzmueller
c77ab339c1 Avoid \@ifundefined after user preamble
Users might have used \makeatother (#11163).

\ifdefined (of e-tex) can be considered available nowadays.
2021-01-10 09:55:45 +01:00
Richard Kimberly Heck
98bfbe9ddf Fix bug #6128. 2021-01-10 02:40:12 -05:00
Richard Kimberly Heck
2fcc764728 Fix problem with display of include insets with non-existent files. 2021-01-10 02:08:18 -05:00
Richard Kimberly Heck
3f3d769107 Count words in hyperlink 2021-01-10 01:54:40 -05:00
Richard Kimberly Heck
12bb380941 Fix bug #5972: Count words in citations (approximately). 2021-01-10 01:43:34 -05:00
Richard Kimberly Heck
50b99f810f Fix bug #3205.
Allows external edit of non-existent files.
2021-01-10 00:43:01 -05:00
Richard Kimberly Heck
ed2d3e199f Fix bug #4241: Addition to Intro 2021-01-09 22:17:52 -05:00
Richard Kimberly Heck
9446aa3640 Fix bug #11030.
Factor out the code that connects to a newly created dialog and then
use that also in GuiGraphics.

There must be many other dialogs that need this same treatment....
2021-01-09 20:33:23 -05:00
Richard Kimberly Heck
e438c0f90b Fix bug #11010.
Handle LFUN_PHANTOM_INSERT in math.
2021-01-09 19:17:47 -05:00
Richard Kimberly Heck
d908263908 nullptr 2021-01-09 19:02:19 -05:00
Richard Kimberly Heck
725bee17b1 Show plural and caps status for formatted references. Rest of #11073.
Patch from Daniel, more or less.
2021-01-09 18:06:50 -05:00
Richard Kimberly Heck
b564fd01ef Update buffer after changing reference options. Part of #11073. 2021-01-09 17:59:07 -05:00
Kornel Benko
60980b0eda FindAdv: Amend 474cb42e, implement sub-match replace. 2021-01-09 17:03:30 +01:00
Yuriy Skalko
854c9de8fa Add move constructor and move assignment operator for FileName class 2021-01-09 11:23:33 +02:00
Juergen Spitzmueller
73df32bec4 Disambiguate homographic inflections
These are not homographic in other languages
(e.g. German "Öffnen" vs. "Geöffnet")
2021-01-09 09:44:38 +01:00
Juergen Spitzmueller
b5f83881ab Amend aaaae562db 2021-01-09 09:17:41 +01:00
Jean-Marc Lasgouttes
9e1db65932 Move handling of LFUN_COPY to BufferView
It turns out that the code is the same in texted ans mathed and that
whatever is done in InsetTabular is not useful.

This means that we do not need to deal Text::dispatch idiosyncrasies
(in particular forcing the cursor to be visible).

Fix bug #11225.
2021-01-08 19:31:42 +01:00
Kornel Benko
c3cda5ffd4 FindAdv: Save sub-matches in MatchStringAdv class
Prepare for use while replacing:
(backslashed numbers in the replace buffer should be replaced with the relevant
sub-matched strings.)
2021-01-08 12:05:51 +01:00
Juergen Spitzmueller
79ef5694d1 Use nomath font also if other font package is selected (#11733) 2021-01-08 11:18:18 +01:00
Richard Kimberly Heck
81413e77ee Amend cf07d4825 2021-01-07 15:56:55 -05:00
Kornel Benko
f2e49938f3 FindAdv: Save found matches (e.g. \0, \1, \2, ...)
Only while debugging for now. Later we may use the saved values in replace string
2021-01-07 17:04:27 +01:00
Juergen Spitzmueller
e947cdab3e Properly disable Apply/OK in InsetParamsDialog (#11440) 2021-01-07 13:28:10 +01:00
Juergen Spitzmueller
7a992bb699 GuiParagraph: apply pending changes when setting "immediate apply" (#11592) 2021-01-07 13:06:15 +01:00
Jean-Marc Lasgouttes
c10aa3064f typo 2021-01-07 12:36:36 +01:00
Juergen Spitzmueller
6430931e27 Hint to deleted included file in ct output (#11809) 2021-01-07 12:08:59 +01:00
Juergen Spitzmueller
aaaae562db Fix nesting issue in environment-split (#11971) 2021-01-07 11:53:35 +01:00
Enrico Forestieri
fece5d4f37 Correctly terminate a user math macro in certain circumstances
If a macro has only optionals and none is specified and a [ immediately
follows, we have to terminate the macro with {}, otherwise what follows
is taken to be an optional argument.

Fixes #11665.
2021-01-07 00:57:36 +01:00
Jean-Marc Lasgouttes
99e636ae7b Display bookmarks in the workarea.
The bookmarks are added as virtual elements in display Rows. Bookmarks
are shown with circled numbers. A new color "bookmarks" has been
added. Currently bookmark 0 (the return position) is not displayed
because it is very disturbing in practice.

To make this work, a new method BookmarksSection::bookmarksInPar
retuns the list of bookmarks in a paragraph along with their position.

Force redraw when using bookmark-save and bookmark-clear.

Fixes bug #2496.
2021-01-06 20:20:03 +01:00
Jean-Marc Lasgouttes
b64b1aa85e Fix use of BookmarkSection::size()
The value was 9 instead of 10, which forced its users to use unusual code.
2021-01-06 19:33:20 +01:00
Jean-Marc Lasgouttes
e1261817d2 fix Row::findElement when there is a Virtual element 2021-01-06 18:49:41 +01:00
Jean-Marc Lasgouttes
51b37cd4d8 Remove some useless Row:: prefixes 2021-01-06 18:15:19 +01:00
Jean-Marc Lasgouttes
9c37cb4759 Style cleanup to bookmark code 2021-01-06 18:15:19 +01:00
Kornel Benko
54a0b95a2b Amend 6211469b: FindAdv: Fine tuning
Handle gracefully multiple '\\'
2021-01-06 14:22:26 +01:00
Thibaut Cuvelier
3fdd05a7fa When previewing a document, use the right kind of comment.
This avoids generating % for HTML or DocBook: % indicates a comment in TeX, but not in XML, it's just a character. The snippet that is shown is therefore not valid.
2021-01-06 14:08:00 +01:00
Thibaut Cuvelier
e3c1fc2ad5 Implement \case for AASTeX. 2021-01-06 14:08:00 +01:00
Jean-Marc Lasgouttes
28bca59dec Fix unused paramaters warnings 2021-01-06 11:57:22 +01:00
Jean-Marc Lasgouttes
baae41bd05 Remove extra spaces 2021-01-06 11:10:11 +01:00
Richard Kimberly Heck
40603a7552 Fix bug #3964.
As suggested there, we attach ourselves to the newly created inset,
if we in fact just created an inset. (This will only matter if Apply
was clicked, so the dialog is still open, but I did the calcuation
anyway, as it seems cheap enough.)  This allows the user to modify
that inset (e.g., change the format) and also prevents another click
on Apply, or OK, from creating another dialog.

I've also removed the override of disconnectOnApply(). It does not
work, anyway, I think because it only works with GuiDialog, not with
DialogView-based dialogs.
2021-01-06 03:50:47 -05:00
Richard Kimberly Heck
be34206b0c Update tex2lyx tests 2021-01-06 01:58:30 -05:00
Kornel Benko
6211469b5f FindAdv: A try to handle backslashes in text
Otherwise we are unable to distinguish text from latex commands.
For instance '\color{blue}' in text-part is normal text, while othervise
it defines following characters as being blue colored)
2021-01-06 02:20:15 +01:00
Enrico Forestieri
d85710d32e Make paste in ensuremath work as in simple math hulls
The ensuremath math inset derives from InsetMathNest, so that only the
first cell of a grid gets pasted. This patch makes it a fixed 1x1 grid
inset so that pasting works as in normal simple math hulls, i.e., all
cells are pasted, one after the other.

Fixes #11617.
2021-01-06 02:07:25 +01:00
Richard Kimberly Heck
59096c9265 Move assignment where needed 2021-01-05 18:22:09 -05:00
Richard Kimberly Heck
cf07d4825f Fix bug #11104. Activate refstyle support for InsetMathRef.
At the moment, there is no support for plurals and capitalization.
A long comment explains why. Support could be added for that without
a format change.
2021-01-05 18:17:53 -05:00
Richard Kimberly Heck
79a21be5c3 Micro optimization and constness 2021-01-05 17:45:50 -05:00
Richard Kimberly Heck
14c2f5d954 Fix comment 2021-01-05 17:45:50 -05:00
Jean-Marc Lasgouttes
bea482877e Re-implement display of MARGIN_RIGHT_ADDRESS_BOX
The correct way of implementing this is at paragraph level. Once this
is clear, the implementation is straightforward.

Note that RtL is not handled correctly by the \lyxrightaddress macro.

Fixes bug #11918 and #8152.
2021-01-05 17:58:21 +01:00
Jean-Marc Lasgouttes
824d1c993a Fixup 294e4884: center correctly Abstract label when paragraph is empty
When a paragraph is empty, it was not possible to query what the left
margin would be for an hypothetical second row.

Modify TextMetrics::leftMargin so that it does not test
whether position is after the last position of the paragraph.

Cosmetics: set the size of label to "small" for Abstract layout in
standard classes and reduce the spacing between label and text.

Fixes remainder of #11939.
2021-01-05 15:21:04 +01:00
Jean-Marc Lasgouttes
b8188e54dd Revert "Center correctly centered top labels (e.g. abstract)"
This reverts commit 6c1855313c.
2021-01-05 15:14:41 +01:00
Jean-Marc Lasgouttes
6c1855313c Center correctly centered top labels (e.g. abstract)
Since the first row may be indented, it is necessary to find out what
the left margin would be on the next row (even if this next row does
not exst.

To this end, modify TextMetrics::leftMargin so that it does not test
whether position is after the last position of the paragraph.

Cosmetics: set the size of label to "small" for Abstract layout in
standard classes and reduce the spacing between label and text.

Fixes remainder of #11939.
2021-01-05 14:53:15 +01:00
Enrico Forestieri
2099dca5d3 Do not replace nonexistent environment variables
References to environment variables embedded in a filename are expanded
and replaced by their value. However, if a variable does not exist, its
reference is simply erased from the filename, causing havoc (see #7801).

This has been like that since ever and cannot be changed, both for
backward compatibility and because this feature is currently used in
the Windows installer.

A possible backward compatible strategy is leaving as is the reference
to the environment variable (introduced by a $ sign) in the filename
if it does not exist. This is done in this patch, which also assumes
that an escape character is never used in a filename (inserting a $ in
the filename is easy, but I don't think one is able to easily insert
an escape character).
2021-01-04 23:00:42 +01:00
Richard Kimberly Heck
bbffbf92ac Remove elipses from "Open" buttons in About LyX dialog. Fixes #12019. 2021-01-04 14:53:41 -05:00
Richard Kimberly Heck
9ffba4b72d nullptr 2021-01-04 13:47:17 -05:00
Kornel Benko
ac6b27040a FindAdv: Small refactoring 2021-01-04 16:57:56 +01:00
Yuriy Skalko
e8099942c7 Show caught exception message in findAdv 2021-01-04 15:45:26 +02:00
Yuriy Skalko
a0b65e9bf8 Define keyboard codes for Cyrillic letters, enable shortcuts using them 2021-01-04 12:00:50 +02:00
Richard Kimberly Heck
84e8ce4ce5 Simplify 2021-01-04 01:40:22 -05:00
Kornel Benko
6750724717 Amend(2) 8c67cb8c: (FindAdv: Try to make regex search with format enabled somehow faster)
Use innermost nesting to start searches.
Some fine tuning to determine correct match.
(If the regex contains '(\S)\1' at the end, then this regex would match '}}',
but this is often the case at and of examined string. We have to disable this invalid match.
)
2021-01-04 07:25:29 +01:00
Richard Kimberly Heck
db36ec1ccf Pop a message if the search fails. Fixes #11441 2021-01-04 01:06:33 -05:00
Richard Kimberly Heck
fc80eba370 https
Fixes the last of #10945.
2021-01-03 23:22:31 -05:00
Richard Kimberly Heck
d4757eace0 Fix bug #11568.
We can't rely on allow_async to tell us whether to put_in_tmpdir.
2021-01-03 22:56:05 -05:00
Richard Kimberly Heck
4cee3478f7 nullptr 2021-01-03 22:36:04 -05:00
Richard Kimberly Heck
e31eadfd37 We don't need to reload a dirty file. Fixes #11788. 2021-01-03 19:58:19 -05:00
Richard Kimberly Heck
0786b80828 Fix MathML delimiters again.
Patch from lynx.
2021-01-03 19:29:04 -05:00
Richard Kimberly Heck
68d9ea4930 Fix #11992: Disable modification of captions in subfloats.
Patch from Daniel.
2021-01-03 14:41:38 -05:00
Richard Kimberly Heck
33f9cfb796 Capitalize labels of floats, etc. Fixes #11993.
Patch from Daniel.
2021-01-03 14:38:52 -05:00
Thibaut Cuvelier
649755f481 Rename WriteStream to TeXMathStream. 2021-01-02 19:52:23 +01:00
Thibaut Cuvelier
ecafea8227 Rename MathStream to MathMLStream. 2021-01-02 19:52:23 +01:00
Kornel Benko
8c67cb8c3a Amend f500a287 (FindAdv: Try to make regex search with format enabled somehow faster)
Remove 1 out of range access,
Estimate the search result of regular expression for further processing
2021-01-02 18:44:40 +01:00