Commit Graph

46576 Commits

Author SHA1 Message Date
jpc
e38b429418 French UserGuide: check spelling and remove no more exiting article classes 2024-04-19 18:54:55 +02:00
Stephan Witt
5554fe9aeb #13049 add window activation for preferences to avoid it be hidden by main window on mac after alert prompts
(cherry picked from commit 4c1db7cad8)
2024-04-19 14:01:41 +02:00
jpc
217315be0f Typos in Additional.lyx, seen while translating in French 2024-04-19 11:41:53 +02:00
jpc
2867cc397d Typo in fr.po 2024-04-19 11:22:45 +02:00
jpc
556e75d3ad Typos iun Franch Additional manual 2024-04-19 11:21:08 +02:00
jpc
70089a8f40 Update translation of the French Additional manual, section 4.12 missing 2024-04-19 10:57:29 +02:00
Pavel Sanda
ebbbfca213 * another update fo zh_CN.po 2024-04-19 00:15:38 +02:00
Jean-Marc Lasgouttes
c9f5f34fd7 Always repaint the gray area below main inset
Now that SingleParUpdate does not always lead to a full screen update
when the height of the paragraph changes (see new behavior of
updateMatrics(bool)), it is necessary to make sure that the grey area
below the main page is always repainted.

(cherry picked from commit 1a11abe439)
2024-04-18 16:46:38 +02:00
Jean-Marc Lasgouttes
15eef6a2c7 Do not compute metrics at each preview when loading file
With the branch-test.lyx file from #12297, loading takes forever when
previews are activated. This is because each preview element causes a
full screen metrics recomputation.

This commit just skips these calls and only does one when all previews
have been obtained. As a result, computing the previews takes 1 second
instead of 25 seconds on branch-test.lyx.

Part of bug #12297.

(cherry picked from commit 2449693301)
2024-04-18 16:45:58 +02:00
Jean-Marc Lasgouttes
e5aaa64b63 Improve the code that limits scrolling at top/bottom
The most visible part of this commit is the move of part of
BufferView::updateMetrics to a new TextMetrics::updateMetrics. This
new method makes sure that metrics are known for all visible paragraphs
(starting from anchor), and that the positions of the paragraphs have
been recorded.

This method is called up to 3 times in BufferView::updateMetrics:
* unconditionally, to update all visible metrics,
* then, if the bottom of the document is visible and too high, after
  updating the anchor ypos,
* and similarly if the top of the document is visible and too low.

This fixes for example the case where one jumps to Section 5.3 at the
end of Tutorial and 'scroll_below_document' is false.

Some now redundant code is removed from BufferView::scrollToCursor.

The anchor-setting code in BufferView::draw is not clearly useful, but
left here just in case. It generates a debug warning, though.

Part of bug #12297.

(cherry picked from commit f15d2ebf38)
2024-04-18 16:45:58 +02:00
Jean-Marc Lasgouttes
2434a3a288 Implement quick scroll
Replace flag parameter for updateMetrics() by a `force' boolean. When
it is false, the method keeps the metrics of paragraphs that are still
visible in WorkArea instead of computing everything afresh. All it has
to do is update their positions.

Add code to updateMetrics() to update the value of the anchor pit/ypos
(similar to the one in draw()).

Update processUpdateFlags() to use this when update flag is ForceDraw.

Modify scrollDocView() to just change the anchor paragraph position
when the scrolling operation would re-use some of the existing
paragraphs.

The time needed to update the metrics when scrolling with mouse in the
branch-test.lyx document is now divided by 20!

Part of bug #12297.

(cherry picked from commit 08010c6a5e)
2024-04-18 16:45:58 +02:00
Jean-Marc Lasgouttes
b1a0983570 Introduce new helpers ParagraphMetrics::top/bottom
This avoids code with position/ascent/descent that is difficult to follow.

No change in function intended.

(cherry picked from commit 0b6105b924)
2024-04-18 16:45:58 +02:00
Jean-Marc Lasgouttes
5e1c414a21 In the no-draw phase, do not cache the positions of not visible insets
This can make a big difference for a very large branch that contains
lots of equations.

This is complementary to the previous patch, since instead of reducing
the number of calls to updatePosCache, we make it faster.

In the same test of scrolling with mouse wheel through the
branch-test.lyx document, one finds a 23% improvement for
BufferView::updateMetrics().

Part of bug #12297.

(cherry picked from commit 7f85024f80)
2024-04-18 16:45:58 +02:00
Jean-Marc Lasgouttes
e51f9d9f88 Remove some redundant calls to updatePosCache
The setting of insets positions was done twice in updateMetrics.
When one of the paragraph is a huge branch, this can be very expensive.

This leads to a 17% improvement on updateMetrics time on a scrolling test.

Part of bug #12297

(cherry picked from commit d19ade9a61)
2024-04-18 16:45:58 +02:00
Jean-Marc Lasgouttes
13c7fd78c6 Enable Update::SinglePar in nested insets too
The idea of single par update is to try to re-break only the paragraph
containing the cursor (if this paragraph contains insets etc.,
re-breaking will recursively descend).

The existing single paragraph update mechanism was tailored to work
only at top level. Indeed changing a paragraph nested into an inset may
lead to larger changes.

This commit tries a rather naive approach that seems to work well: we
need a full redraw if either

1/ the height has changed
or
2/ the width has changed and it was equal to the text metrics width;
   the goal is to catch the case of a one-row inset that grows with
   its contents, but optimize the case of typing in a short paragraph
   part of a larger inset.

NOTE: if only the height has changed, then it should be
  possible to update all metrics at minimal cost. However,
  since this is risky, we do not try that right now.

Part of bug #12297.

(cherry picked from commit 9a96726bcd)
2024-04-18 16:45:58 +02:00
Richard Kimberly Heck
365ff71e23 Defer construction of temporary cursor.
We were doing this on every mouse movement. I.e., for every single
pixel the mouse traverses. It can be expensive if there are a lot
of math insets.

(cherry picked from commit 4e8aa89eb9)
2024-04-16 12:20:51 -04:00
Juergen Spitzmueller
d29baf59a4 Disable language package choice if the class preloads a package
(cherry picked from commit 5477451e36)
2024-04-14 08:13:55 +02:00
Juergen Spitzmueller
d21042299f Set cursor font after pasting to PassThru inset (#12592)
(cherry picked from commit 09c72d7c8d)
2024-04-14 08:09:56 +02:00
Stephan Witt
5cc72815cc Improved copy operation for user directory contents of previous major releases
- avoid copying of configure.log
- avoid copying of chkconfig.ltx
  There is a report of a hang on first start of LyX with new major release.
  The removal of the chkconfig.ltx (leftover from early LyX versions) fixed the issue.

(cherry picked from commit 945a02e2e1)
2024-04-13 21:26:44 +02:00
Juergen Spitzmueller
276a80fccb Document 76dbb9dc4 2024-04-13 07:16:21 +02:00
Juergen Spitzmueller
8c0e81db9a Clarify release note. 2024-04-13 07:12:34 +02:00
Pavel Sanda
f49c52a5b6 * pt_BR.po from Georger 2024-04-13 03:07:17 +02:00
Koji Yokota
76dbb9dc40 Fix wrong position of conversion windows of the input method #11723, #13054 2024-04-12 21:17:04 +09:00
Juergen Spitzmueller
8810e9418f Update Qt bug documentation (#12641) 2024-04-12 11:13:15 +02:00
Pavel Sanda
1e7f4476db * CREDITS regenerate 2024-04-11 09:45:38 +02:00
Pavel Sanda
437f0822f7 Update credits 2024-04-11 09:44:14 +02:00
Pavel Sanda
da9cab6c18 * zh_CN.po - update credits 2024-04-11 09:38:23 +02:00
Jiaxu Zi
1bd5fb97fa update zh_CN translation 2024-04-11 09:38:14 +02:00
Pavel Sanda
65398c1b77 Update Win installer for new dictionary links. Untested. 2024-04-10 21:14:58 +02:00
Pavel Sanda
644b8c8750 Docs - update URL for dictionaries after recent infra movements 2024-04-10 21:14:32 +02:00
jpc
2c5a92d053 Update fr.po: a couple of typos and shortcut conflicts resolution 2024-04-10 18:57:58 +02:00
jpc
cd4e8d04b3 French Additional manual, translation of chapter 4 up to sec. 4.9 2024-04-10 18:51:28 +02:00
Jean-Marc Lasgouttes
25f1174203 Fix compilation with msvc 2019
'uint' is not defined, 'unsigned int' is better.

(cherry picked from commit c7f53afd31)
2024-04-08 10:43:05 +02:00
Jean-Marc Lasgouttes
89afdb050f Do not include <QDate> in InsetInfo.h
This is used by getDate/getTime, which actually should not be
InsetInfoParams methods, but functions in anonymous namespace.

(cherry picked from commit 51562ff377)
2024-04-08 10:42:46 +02:00
Pavel Sanda
3540350d33 * layouttranslations.review, ack from Yitzhak. 2024-04-07 22:02:33 +02:00
Juergen Spitzmueller
87b3bea823 Fix assertion when pasting paragraph with insets in lyxrc.ct_markup_copied
This has to be done after the inset buffers have been initialized.

(cherry picked from commit 9198ed5965)
2024-04-07 06:31:26 +02:00
jpc
36f8cd0a8e French Additional manual, translation of chapter 4 up to sec. 4.3 2024-04-06 18:43:35 +02:00
Kornel Benko
c971974f33 Cmake build: Make QT5-compilation be default 2024-04-06 12:36:47 +02:00
Juergen Spitzmueller
0ecfb01a79 Document 0d3d91c055
(cherry picked from commit 012c739668)
2024-04-06 10:00:24 +02:00
Pavel Sanda
6dc68a632e * status.24x 2024-04-05 23:15:53 +02:00
Pavel Sanda
7e2c1dca36 Improve stats update times for buffer switches and toolbar toggles. 2024-04-05 23:14:25 +02:00
Pavel Sanda
cc4256e3bc * LFUNs.lyx - regenerate 2024-04-05 20:01:19 +02:00
Pavel Sanda
167534f6cf * quote-insert lfun description 2024-04-05 19:50:05 +02:00
Pavel Sanda
a11a4db8b2 * status.24x 2024-04-05 19:45:09 +02:00
Pavel Sanda
ae07763abf Allow relative statistics values in statusbar.
https://www.mail-archive.com/lyx-devel@lists.lyx.org/msg221311.html
2024-04-05 19:44:25 +02:00
jpc
4690de2bca Revert "Update sk.po"
This reverts commit 148001f6fe.
2024-04-05 17:51:02 +02:00
Juergen Spitzmueller
d35288f4cd Couple of corrections in RELEASE-NOTES (mainly typos) 2024-04-05 13:44:19 +02:00
Richard Kimberly Heck
37641cb08b Update update-po.sh script
(cherry picked from commit b360b9ebf7)
(cherry picked from commit eb57c93aab)
2024-04-04 17:18:24 -04:00
Jean-Marc Lasgouttes
0cd169d6ba Compilation fix with Qt < 5.7
Qt::ImAnchorRectangle has only been introduced in Qt 5.7. Since it is
used to answer a query from the IM machinery, there is no need for
it with older Qt versions.

(cherry picked from commit 6260689fd5)
2024-04-04 18:20:33 +02:00
Pavel Sanda
0ac87a2beb * ANNOUNCE 2024-04-03 21:49:05 +02:00