Georg Baum [Sat, 4 Jun 2016 17:22:36 +0000 (19:22 +0200)]
Force native line endings for .po files
As discussed on the list some time ago. cmake produces .po files already in
native line endings. Only autotools on mingw might produce wrong line endings
now, but I am pretty sure that nobody updates .po files using autotools on mingw.
Georg Baum [Sat, 4 Jun 2016 17:21:06 +0000 (19:21 +0200)]
Get rid of pseudo diffs when remerging strings
cmake sorts the input files for lyx_pot.py internally, but autotools use a
shell pattern like *.ui on the command line, so the order may be different
on different machines. It is more robust not to require any sorting from the
caller, so lyx_pot.py sorts now internally.
Fix horizontal scrolling in full-width collapsable insets
While a one paragraph large collapsable inset (containing for example a tabular) could be very wide and trigger horizontal scrolling, the code that makes collapsable insets wide when they contain several paragraphs would actually make them narrower in this case.
Typical example is a wide tabular and a caption in a table float, where horizontal scrolling would not trigger.
Uwe Stöhr [Thu, 2 Jun 2016 23:27:48 +0000 (01:27 +0200)]
Tutorial.lyx: don't use true small caps
this would require another font package with several MB size for only one single word -> not worth it for the Tutorial. The other language versions of the Tutorial do already not use true small caps.
It is wrong to assume that direction is left-to-right when no indication exist.
Add a new enum with values LtR, RtL and Auto to be used as argument of
the private text() methods. When direction is Auto, let Qt decide how
the string shall be layed out.
This is reimplementation of 51ee267c. A direct cherry-pick was not possible.
Stephan Witt [Sat, 16 Apr 2016 20:30:33 +0000 (22:30 +0200)]
Handle activateWindow in LFUN_BUFFER_SWITCH like in saveBufferIfNeeded() and doShowDialog() methods.
This is a requirement on Mac to get the current buffer view topmost after buffer switch.
Avoid narrow boxes when using \width as box width unit
When the box has a special width, one should not consider that as a fixed width. Otherwise, due to implementation quirks, the width will be set on screen as 1 inch.
A better solution would be to actually set the width by taking in account the contents width, height ans total height. This is not very difficult, but I do not know whether it would workout well in the work area.
Scott Kostyshak [Mon, 23 May 2016 00:39:46 +0000 (20:39 -0400)]
Fix using system theme icons with Qt 5 (#10052)
With Qt 5, our code did not correctly detect when icons were
available and thus tried to use nonexistent icons.
QIcon::hasThemeIcon(theme_icon) returns true when theme_icon is
empty. We now rely on the behavior that QIcon::isNull() returns true
if the icon is empty.
Stephan Witt [Sat, 16 Apr 2016 20:30:33 +0000 (22:30 +0200)]
Handle activateWindow in LFUN_BUFFER_SWITCH like in saveBufferIfNeeded() and doShowDialog() methods.
This is a requirement on Mac to get the current buffer view topmost after buffer switch.
Georg Baum [Sat, 21 May 2016 08:12:57 +0000 (10:12 +0200)]
Fix python release notes
The old text was incorrect and came from the 2.0 release. LyX works fine if
the default python interpreter is python 3, as long as python 2 is available
as well.
Building LyX does also work with python 3, but since I did not check all
special build steps with both cmake and autotools, I kept a note about
possible problems.
This is used when scaling graphics previews. It is also used on a rare occasion
to scale instant previews when the user's configuration mixes low-dpi and
high-dpi monitors (#10114).
Uwe Stöhr [Wed, 18 May 2016 23:46:09 +0000 (01:46 +0200)]
Tutorial.lyx: get rid of unnecessary preamble code
The aim of the tutorial is to explain how to use LyX and not special LaTeX issues with \frontmatter, non-TeX fonts etc. Therefore the preamble should kept clean.
Guillaume Munch [Mon, 16 May 2016 17:10:13 +0000 (18:10 +0100)]
Allow inset-forall to match separators (#10090)
With this change, it becomes possible to run the following commands:
inset-forall Separator:latexpar char-delete-forward
inset-forall Separator:parbreak inset-modify separator plain
The first one deletes all latexpar separators. The second one turns parbreak
separators into plain separators. This is safe, flexible, and avoids adding a
new LFUN.
Georg Baum [Tue, 10 May 2016 05:18:48 +0000 (07:18 +0200)]
Ensure that TeXFiles.py is run by python2
We ensure that configure.py is called by python2, regardless whether 'python'
is python 2 or 3. Therefore we can simply call TeXFiles.py with the currently
running interpreter. This fixes configuration on systems where 'python' is
python 3.
Lyx files converted from 2.1 to 2.2 contain parbeak and latexpar separators that
would not appear if the lyx file was written in 2.2 from scratch. The script
removes latexpar separators and transforms parbreak separators into plain
separators. Then it displays a diff of the resulting pdf files (requires
diffpdf) for manual control. All lyx files shipped with lyx should be updated in
this way. See #10068.
example usage:
cd lib/doc
../development/tools/separator-convert.sh Math.lyx
Georg Baum [Sun, 24 Apr 2016 19:06:12 +0000 (21:06 +0200)]
Update fuzzy translations without -o
This is what the polib version does already. If a translation is marked
fuzzy then it is not used, so if the other file contains a non-fuzzy
translation we do not throw away useful information if we overtake it.
Georg Baum [Sun, 24 Apr 2016 17:35:38 +0000 (19:35 +0200)]
Merge fuzzy translations correctly
If the -o option is given, we may overwrite existing translations with
translations from the other .po file. In this case, we have to delete or set
the fuzzy flag accoring to the updated translation.
Scott Kostyshak [Wed, 4 May 2016 00:34:17 +0000 (20:34 -0400)]
Move some unsigned validators to signed (#10095)
2.1.x allows some document settings to have negative values where
2.2.0rc1 does not (because of the bug fix at 9e166088). If a user of
2.2.0rc1 opens a document from 2.1.x that contains one such negative
value, it will appear as though no change to the document settings
can be saved because 2.2.0rc1 treats the document settings as
invalid immediately on opening the dialog. Further, unless the user
manually goes through each tab they will not see the red text next
to the input that is now considered invalid. This could lead to
confusion for users. One example of such confusion is [1].
The following settings now allow negative values, which is
consistent with 2.1.x. Negative values in these settings do not lead
to LaTeX errors:
- Text Layout tab: the two line edits enabled with "Custom"
- Page Margins tab: all eight line edits
The following settings are not changed by this commit, so they now
(with 2.2.0) do not allow negative values that 2.1.x allowed. This
change makes sense because negative values lead to LaTeX errors in
these cases:
- Page Layout tab: the "Height" and "Width" line edits, which are
enabled when "Custom" is selected
Clipboard: Retry on_dataChanged() after a delay on windows (#10109)
An undocumented behaviour of QClipboard::mimeData() is that it can fail on
windows due to the specificities of the windows API that allow a race condition.
In particular it seems that querying the clipboard as soon as the dataChanged()
signal is received favourises this race condition.
Thanks to Trac user bquistorff for the explanation and a proof of concept patch.