58 Commits

Author SHA1 Message Date
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
Juergen Spitzmueller
bdb006543b Zoom slider 2021-03-07 13:29:23 +01:00
Juergen Spitzmueller
812b6f7d69 Allow for runtime (dark/light) mode switch 2021-03-04 12:35:38 +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
Juergen Spitzmueller
109e98d945 GuiSearch: Properly delegate focus 2021-02-16 13:30:31 +01:00
Juergen Spitzmueller
c4fbd0d913 Initialize F&R dialog with selected text (#8448) 2021-02-15 16:04:17 +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
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
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
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
Juergen Spitzmueller
f661469734 Implement sane UI for switching tristate toolbars (#6364)
Also fix toolbar toggling with AllowAuto which was broken since
a long time.
2020-12-17 10:15:18 +01:00
Jean-Marc Lasgouttes
1dcb08104c Make spellchecker work in read-only document
Mistakes are visible but word replacement is disabled. Disable relevant
widgets depending on the situation.

Move updateView code to SpellcheckerWidget::Private.
2020-12-07 18:33:45 +01:00
Yuriy Skalko
78f457796c Implement proper Dialog factory instead of implicit link-time dependencies 2020-12-06 17:37:39 +02:00
Yuriy Skalko
0a8d3c9887 Fix loop variable, amend d8e8a93a58 2020-11-25 23:16:51 +02:00
Pavel Sanda
4eb791ff18 Erase white frame in fullscreen mode.
Since Qt 5.9.4 one can't set negative margins unless explicitely
allowed by a new flag. This brought back the white frame in
fullscreen mode.

https://www.mail-archive.com/lyx-devel@lists.lyx.org/msg214002.html
2020-11-21 16:02:54 +01:00
Kornel Benko
5474c3fb4b Missing '{' 2020-11-20 16:32:51 +01:00
Jean-Marc Lasgouttes
d8e8a93a58 Use range-based loops in GuiView 2020-11-20 15:14:21 +01:00
Jean-Marc Lasgouttes
222a317dd2 Store correctly the window position with Wayland
To do this, hard-coded test for xcb had to be replaced with a call to
platformName(). Since this method does not exist in Qt4, we emulate
it.

Note that Qt5 uses xcb bindings for X11 system, while Qt4 relies on
older X11 bindings. We return platorm == "qt4x11" in this case.

Fixes bug #11746.
2020-11-14 17:55:59 +01:00
Jean-Marc Lasgouttes
21422dd652 Replace QFontMetrics::width() by horizontalAdvance() in Qt>=5.11
The method horizontalAdvance() replaces width() starting with Qt 5.11.
To handle this, all direct calls to QFontMetrics::width() are replaced
by calls to GuiFontMetrics::width(), and the code for
GuiFontMetrics::width(QChar) uses horizontalAdvance on newer Qt
versions.
2020-10-24 19:52:18 +02:00
Yuriy Skalko
af29f02dd8 Reduce includes in header files (2) 2020-10-19 18:01:17 +03:00
Yuriy Skalko
d25c10ed81 Remove duplicate and unused header includes in .cpp files 2020-10-19 18:01:11 +03:00
Thibaut Cuvelier
92b9c82dea Fix compilation on Visual C++.
Without this patch, there would be errors like these (warnings turned into errors):

D:\LyX\lyx-unstable\src\frontends\qt\GuiView.cpp(2413): error C4101: 'e': unreferenced local variable
D:\LyX\lyx-unstable\src\frontends\qt\GuiView.cpp(4879): error C4101: 'ex': unreferenced local variable
2020-10-12 19:21:58 +02:00
Yuriy Skalko
238fd9ac50 Right exception rethrowing 2020-10-12 15:14:55 +02:00
Yuriy Skalko
fe85162a29 Refactoring 2020-10-05 14:55:00 +02:00
Yuriy Skalko
efc0877f8f Add override specifiers to improve code maintainability 2020-10-03 12:43:48 +02:00
Jean-Marc Lasgouttes
b96b876403 Revert "Show toolbar context menu only when clicking on the toolbar"
Something is wrong.

This reverts commit f25253f89ac121b1981fe26f0b90af9e2bbbe849.
2020-09-16 16:54:33 +02:00
Daniel Ramoeller
f25253f89a Show toolbar context menu only when clicking on the toolbar
Previsouly it was on the whole application window, except on disabled toolbar
buttons.

Fix for bug #11949
2020-09-16 11:18:57 +02:00
Juergen Spitzmueller
6f476b960e Localize format prettyName in some more places (#11954) 2020-08-29 11:50:43 +02:00
Juergen Spitzmueller
8365eabd6f Make paper search function accessible and customizable 2020-08-27 08:48:55 +02:00
Jean-Marc Lasgouttes
ee3a711316 Forgotten break in switch found by coverity scan. 2020-08-24 17:21:04 +02:00
Pavel Sanda
e648202e7e Allow LyX to find pdfs and urls of citation references and follow them from context menu.
Currently tested:
- url & doi fields for bibtex.
- all documented eprinttypes of biblatex
- absolute paths of first entry of 'file' field for jabref and kbibtex
- external script searching for author + year pdf

Additional polishing will follow.

https://www.mail-archive.com/lyx-devel@lists.lyx.org/msg212505.html
2020-08-20 09:12:54 +02:00
Stephan Witt
d0ca7a383d Amend commit 3af8ff39fc - make it work with Qt 4.x - don't activate it there 2020-08-07 12:27:27 +02:00
Stephan Witt
3af8ff39fc Force a uniform style for group boxes, on Mac non-flat works better, on Linux flat is standard 2020-08-07 10:54:12 +02:00
Stephan Witt
6dcd4ca4f1 #10571 improved handling of WM's signal when switching from or to full-screen window 2020-08-04 15:24:09 +02:00
Richard Kimberly Heck
2de99c5dd9 Fix bug #11456.
Add cancel button and take no action if we're canceled.
2020-05-18 00:28:36 -04:00
Richard Kimberly Heck
b2517d60b8 Fix bug #11405.
We don't actually prevent hidden buffers from being dirty, so we need
to save them if they are.
2020-05-18 00:07:56 -04:00
Richard Kimberly Heck
9a147255df GUI for new counter inset. 2020-04-30 23:11:59 -04:00
Enrico Forestieri
a73c2c2b93 Raise the window in single-instance mode
Other than issuing a warning on the console, now the LyX window is
raised when in single-instance mode and no files to load are specified.
In this way, the user is aware that something happened after double
clicking the program icon. To support this functionality the new lfun
window-raise has been introduced.
2020-04-21 21:55:20 +02:00
Juergen Spitzmueller
fe09ddf1b9 Implement buffer-write force 2020-03-31 08:01:17 +02:00
Scott Kostyshak
1c78b563ff Fix Qt deprecation warn for getContentsMargins()
Fixes the following warning:

  error: ‘void QWidget::getContentsMargins(int*, int*, int*, int*) const’ is deprecated: use contentsMargins() [-Werror=deprecated-declarations]

The new code also has advantages in that 'l' can be set to const and
it is more readable because it is clear that only 'l' is used.

QWidget::getContentsMargins() was deprecated in 5.14.0 [1]. and
QWidget::contentsMargins() is available since 4.6 [2].

[1] https://code.qt.io/cgit/qt/qtbase.git/tree/dist/changes-5.14.0/?h=v5.14.0
[2] https://doc.qt.io/archives/qt-4.8/qlayout.html#contentsMargins
2020-03-06 09:37:43 -05:00
Richard Kimberly Heck
37c5cae58b Send a DispatchResult object with dispatch requests to the TOC.
This allows us to request a buffer update.
2020-03-03 00:08:06 -05:00
Richard Kimberly Heck
c483565522 Fix a bunch of warnings. 2020-02-27 23:58:01 -05:00
Stephan Witt
f2f861f017 Use real path names for buffer lookup by name of temporary external files.
In case of path names for external files containing symbolic links the real path
and the logical path name may be different for the same file or directory.
LyX is using QDir::tempPath() to create the path name of the temporary directory.
The Qt implementation is free to return the logical or the real path name here and
it happens to be different for various platforms and versions.
The most stable and clean solution is to use the real path name consistently.
2020-02-22 12:11:42 +01:00
Stephan Witt
f12c4dbcd9 Remove unnecessary assertion after explicit buffer pointer check. 2020-02-17 14:35:03 +01:00
Stephan Witt
a1d68511ac Avoid potential crashes with missing document buffer in dispatch of buffer based LFUNs.
Use LASSERT with appropriate action instead of LATTEST assertions.
Debug build is unchanged and asserts, release build skips the action gracefully.
2020-02-17 13:36:37 +01:00