Commit Graph

21668 Commits

Author SHA1 Message Date
Juergen Spitzmueller
7c1fc6ea75 Include child's own authors when using BufferParams from master. 2014-03-13 06:43:38 +01:00
Georg Baum
362630fba1 Add comments about putenv() usage
Again thanks to Enrico.
2014-03-10 20:59:03 +01:00
Georg Baum
e3714947b0 Add comment (thanks Enrico) 2014-03-10 20:52:51 +01:00
Richard Heck
bdaad6e6ff This is not a recoverable error. 2014-03-10 15:39:43 -04:00
Vincent van Ravesteijn
ce26efcbd4 Revert "Fix opening files from command line"
Reverted because of
http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg181795.html.

This reverts commit d1db30a188.
2014-03-10 20:05:48 +01:00
Vincent van Ravesteijn
3dec25e5a7 Revert "Return an error if file-open is called with a non-absolute path"
Reverted because of
http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg181795.html.

This reverts commit 9c4461deea.
2014-03-10 20:05:28 +01:00
Vincent van Ravesteijn
2db3f50186 Revert "Return an error on file-open only when a filename is given"
Reverted because of
http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg181795.html.

This reverts commit a4d881c58e.
2014-03-10 20:05:18 +01:00
Vincent van Ravesteijn
0bd907b7b8 Gracefully return a value if an invalid author is requested 2014-03-10 20:02:57 +01:00
Juergen Spitzmueller
656586d9fc Unblock some more internal qt events while doing advanced f&r. This fixes #9009 and some remaining drawing problems for me. 2014-03-10 09:07:36 +01:00
Georg Baum
c9a49d2145 Arrgh, fix warning 2014-03-09 18:49:09 +01:00
Georg Baum
a6f4aa2d18 MSVC compile fix 2014-03-09 18:19:01 +01:00
Tommaso Cucinotta
eef602cc9e Prevent LyX from freezing in additional common cases where it would
try to show dialogs or ask for user input while doing advanced find
and replace. In many of these cases we should simply find a way for
avoiding lyx to show a dialog, however an extra info/warning dialog
is better than the GUI freezing and having to kill the process.
2014-03-09 15:43:58 +00:00
Georg Baum
23752e6114 Disable unicode math symbol replacement.
This seems to work only in some cases, so better display the symbol in ERT.
2014-03-09 10:57:09 +01:00
Georg Baum
1b675d3a62 Prevent the most important case of bug #9012
Currently you can easily create an uncompilable document if you insert
non-ASCII characters in a pass-through paragraph (e.g. ERT inset or verbatim
style). This commit prevents entering these characters directly, but of
course they can still be inserted via tricks, e.g. changing a standard
paragraph to verbatim. A complete fix would handle this case as well,
and also change the fixed latin1 encoding of latex_language to a dynamic one,
so that a verbatim paragraph can contain any character that is encodable in
the encoding of its environment.
2014-03-09 10:30:20 +01:00
Richard Heck
80b058cb18 Fix some shortcut conflicts (bug 9008). 2014-03-08 17:25:57 -05:00
Stephan Witt
d39eae0a88 #6902: Enable About and similar menu items without view and create a new view if needed 2014-03-08 12:51:02 +01:00
Stephan Witt
0e7eaef349 * fix bug 8925: create a temporary action to avoid a menu with any action. Otherwise it will not shown on Mac OS X 10.9 with Cocoa 2014-03-08 12:49:40 +01:00
Georg Baum
5aede95971 Remove dead code + whitespace 2014-03-08 11:59:39 +01:00
Georg Baum
be0cd47559 Work around broken math symbol display (bug 7954)
This extends the already existing math symbol fallback mechanism in two ways:
1) When considering the availability of the math font, also take broken
   code points into account. These are currently 0x0009 and 0x00ad, depending
   on the platform.
2) If the fallback symbol in the standard "Symbol" font is not given, or if
   the "Symbol" font is not available, or the fallback symbol is one of the
   broken ones, try to use a generic unicode symbol as second fallback instead.
   If this is available, we rely on Qt to find a font which has it. Only if
   this is not available, display the symbol as ERT.
This ensures that we do never get a symbol which is not displayed: Either
it can be displayed, with or without fallback, or it will be shown as ERT.
2014-03-08 11:13:39 +01:00
Georg Baum
a09ec1fe43 whitespace 2014-03-08 10:57:24 +01:00
Juergen Spitzmueller
0dc4f4636f Enable environment-split for standard classes (#9023) 2014-03-07 08:58:24 +01:00
Juergen Spitzmueller
b57eb39731 Disable invalid inset-modify (#9019). 2014-03-06 08:34:32 +01:00
Richard Heck
e86cdc4020 Fix bug #8999 by locking math macros while they are updating. 2014-03-05 18:46:38 -05:00
Richard Heck
f5a7aebdfa Add comment. 2014-03-05 18:07:01 -05:00
Richard Heck
bcf86b8477 Simplify, and delete unused routine. 2014-03-05 17:55:38 -05:00
Richard Heck
c37cacaffb Check in InsetLabel if LFUN_INSET_MODIFY is intended for us.
Every inset should do this.
2014-03-05 17:43:41 -05:00
Benjamin Piwowarski
908c92e831 Updates to AppleScript support, and documentaoin for it. 2014-03-05 15:46:27 -05:00
Juergen Spitzmueller
0c447db0ca Adjust FIXME 2014-03-05 12:16:57 +01:00
Georg Baum
07afd76b7c Fix compilation with libc++
libc++ (http://libcxx.llvm.org/) is used on OS X with newer XCode.
The patch is from Benjamin Piwowarski <benjamin.piwowarski@lip6.fr>, I only
added more comments.
The changes regarding implicit conversion to bool of std::iostream work
because both the C++98 and C++11 standards guarantee that boolean evaluation
of streams returns !fail(). See e.g.
http://stackoverflow.com/questions/1334858/why-dont-iostream-objects-overload-operator-bool
for details.
2014-03-04 23:27:57 +01:00
Jean-Marc Lasgouttes
ad56bded03 Bug #9005: various things that do not work as intended in passthru paragraphs
* disable branch-add-insert in pass thru paragraphs

* when it is not possible to input a quote inset, insert a single
  ascii quote when argument to quote-insert is "single"

* handle "mathspace" dialog in Text::getStatus

* disable insertion of newline inset in pass thru paragraphs

* handle "mathdelimiter" and "mathmatrix" dialogs in GuiView::getStatus.
2014-03-04 11:56:03 +01:00
Jean-Marc Lasgouttes
8f8e8ed43c Fix bug #8998: changed document setting is recoded twice as undo
The general trick to avoid this kind of problems is to use undo groups.
2014-03-03 18:28:23 +01:00
Jean-Marc Lasgouttes
c98ce56a03 Fix bug #8884: Crash when "navigate to next change"
The two fixes here a obviously right, although it is not clear why they are sufficient to fix the bug. Anyway I cannot reproduce any crash with it.

 * the first part just conditions a whole if/else to change_next_pos.changed(). Originally, only the if branch was concerned.

 * the second part is to avoid calling CursorSlice::backwardPos() when position is 0. Doing this leads to an assertion.
2014-03-03 11:16:56 +01:00
Juergen Spitzmueller
5c4acd6bc0 Add FIXME 2014-03-03 10:45:40 +01:00
Juergen Spitzmueller
4824f7c9db Fix crash after undo following replacement of a multicell selection (#8973). 2014-03-02 13:21:59 +01:00
Georg Baum
8097911a9f Fix crash if magic_file() returns an error
Thanks to Benjamin Piwowarski who reported the problem and provided a fix.
magic_file() returns a NULL pointer if an error occurs, and due to a bug
this happens frequently on OS X: https://trac.macports.org/ticket/38771
I did not use the original patch, since I did not want to put a platform
specific workaround in (this needs further discussion), but the crash can
occur on all platforms and needs to be fixed.
2014-02-28 22:42:38 +01:00
Georg Baum
5dedf8005d Fix dataloss for align env inside math
The math parser aborts with an error message on \begin{align} and
\begin{align*} if this is not the hull inset. This is now fixed, however
this is not complete support for these two environments (the GUI does not
respect the numbering). It is only the minimal fix that ensures that no data
loss occurs for documents imported by tex2lyx.
2014-02-27 21:25:19 +01:00
Georg Baum
7f373e8de1 Fix misparsing of alternative simple formulas
This comes from trying to run tex2lyx on the AMS math test document
testmath.tex. Both \(...\) and \begin{math}...\end{math} are defined as
inline math formulas in standard LaTeX. tex2lyx recognizes this, but the
math parser in LyX did not handle "\begin_inset Formula \(" and
"\begin_inset Formula \begin{math}" correctly.
The fix is simple and safe: If we are in undecided mode (this is only true
for the first token of a math inset), create a hull inset of the respective
kind. Otherwise, handle the commands as before.
2014-02-26 21:54:09 +01:00
Georg Baum
9130bdb5ec Add missing math delim decorations
This avoids a message "Deco was not found. Programming error?" on stderr.
The added decorations are defined by amsmath, and equivalent to \vert (single
vertical bar) and \Vert (double vertical bar), respectively. They are used to
distinguish the single and paired versions (for use with \left and \right).
These symbols should cause amsmath to be loaded, but this would be too
dangerous to implement now.
2014-02-26 21:18:31 +01:00
Georg Baum
f4dd0ba561 Load listings after babel (bug #8995)
Babel makes the character ':' active in french documents, and the listings
package cannot cope with that if it is loaded before babel. If it is loaded
after babel it works. This makes the french EmbeddedObjects manual compilable.
2014-02-26 20:43:04 +01:00
Richard Heck
6a85db2307 Table cells are insets, but not from the point of view of DocIterators
and Cursors. So just calling InsetText::addToToc for the cells causes
problems, because InsetText::addToToc then adds the cell inset itself
as part of the DocIterator. This then leads to assertions, such as bug

The solution is to refactor InsetText::addToToc so that we can call the
iterating part without adding the inset.
2014-02-25 20:54:29 -05:00
Prannoy Pilligundla
214f7ed262 Allow statusbar to be set on or off in full screen mode as a
preference.
2014-02-25 20:48:56 -05:00
Georg Baum
bd79001387 whitespace 2014-02-25 21:21:47 +01:00
Georg Baum
89c7d0eea3 Remove unsupported optional argument.
Thanks Jürgen for insisting. The \caption* command of long tables does indeed
not support optional arguments.
2014-02-25 20:05:07 +01:00
Juergen Spitzmueller
e359d8f5ca Fix caption counter in longtables (see #8993). 2014-02-25 08:00:43 +01:00
Juergen Spitzmueller
4066d3818e whitespace 2014-02-24 16:40:57 +01:00
Juergen Spitzmueller
3cba653a67 Allow to unset header/footer in caption rows (#8990). 2014-02-24 10:12:21 +01:00
Richard Heck
7b46aa8fbb Forgot in previous commit to deal with case. As I'm doing it now,
it's easy to use the existing docstring routine, so I've commented
out the string version of lowercase I had introduced. I've left the
code in case someone else needs it later.
2014-02-23 12:04:56 -05:00
Richard Heck
e5ea535952 If the selection is some sort of URL, then make it the target, not
the name, in the hyperlink. Fixes bug #8792.

This also fixes a bug discovered while working on this code: The
params passed to GuiHyperlink were never used.
2014-02-23 11:36:54 -05:00
Richard Heck
fabf507902 Whitespace. 2014-02-23 11:33:56 -05:00
Juergen Spitzmueller
5c1731b060 Fix #8657 on Linux.
On windows, there is apparently some more work to do.
2014-02-23 13:33:04 +01:00
Georg Baum
52072b9b4e Fix crash on recursive include (bug #8994)
The problem was that collectBibKeys() was called before the recursive include
check was done. Now collectBibKeys() works even for recursive includes, and
your get a proper error message if you try to change the file name to the
parent file.
2014-02-23 12:33:15 +01:00
Georg Baum
418d4c02d2 Fix bug #8992 without reintroducing #8933
At efa0f198 I introduced a more flexible caption handling for long tables.
This was needed to fix tex2lyx bug #7412. Unfortunately this created bug #8933,
since I forgot to output captions to LaTeX which are not in any header or
footer. This was fixed at 2b941da7f, but this introduced bug #8992 (duplicate
caption output).
This commit is hopefully the final fix: Captions which are in header or footer
lines are output with the header or footer line, and captions in standard
lines are output standalone.
2014-02-23 10:55:23 +01:00
Georg Baum
877e73e0a2 Fix bug #8784 (mathml export for scripts)
For displaystyle scripts we need to use munder, mover or munderover.
2014-02-22 19:01:20 +01:00
Enrico Forestieri
3c1969574f Fix bug #8889 by always issuing \protect in fragile environments. 2014-02-22 10:30:55 -05:00
Georg Baum
270201ed67 Fix bug #8891 (wrong depth of copied text)
This was an obvious thinko: When pasting a paragraph list the depth of the
pasted paragraphs need to be adjusted, so that no paragraph has a negative
depth afterwards. However, the maximum allowed depth was only adjusted after
the second and following pasted paragraphs. Since the computed value was only
used for the subsequent paragrph this meant that the second paragraph did
still use the same maximum allowed depth as the first one, which came from the
paragraph the text as pasted into. This was wrong e.g. in case the outside
paragraph was a standard paragraph (max_depth = 0), and the first pasted
paragraph was an enumeration (max_depth = 1). Therefore, max_depth needs to
be adjusted also after the first pasted paragaph. Since the adjustment is
done aftre max_depth was used for the current paragraph the condition
mentioned in the comment is still met.
2014-02-22 11:02:50 +01:00
Pavel Sanda
02bde93d2a Allow statusbar toggling in fullscreen (part of #8816). 2014-02-22 00:21:17 -08:00
Georg Baum
acb7906fb5 Fix remaining part of bug #8967
Now interactive insertion of \smash[t] and \smash[b] is possible again.
\smash with optional argument behaves now exactly as in LyX 2.0.x, and without
optional argument it is supported by InsetMathPhantom.
2014-02-21 21:31:35 +01:00
Scott Kostyshak
731b8610af Allow $$s converter substitution if 'latex' flag
A more general patch will be committed for 2.2 that
centralizes replacement of $$s in startScript().
2014-02-21 12:51:48 -05:00
Scott Kostyshak
9ca242e5bf moveColumn now also swaps column_info
For example, width and alignment are now swapped.

Same for moveRow.
2014-02-21 09:40:16 -05:00
Scott Kostyshak
f52eb9d823 Comment a minor bug not worth fixing (#8986) 2014-02-19 16:21:46 -05:00
Georg Baum
227675ee02 Fix regression of 18779013 for \smash
When adding native support for \smash in 18779013 I overlooked that amsmath
redefines \smash to take an optional argument t or b. These optional
arguments are not parsed correctly anymore (bug 8967). This change fixes
the regression, so that \smash with optional argument appears in red, as it
was before th introduction of the native smash inset.
In the future, we should have native support for \smash[t] and \smash[b]
as well, but this would be a file format change (automatic amsmath loading),
and it is too late for 2.1.0.
2014-02-19 20:50:57 +01:00
Stephan Witt
cfe9724a4c add -fobjc-exceptions for compiling linkback sources with g++ and cmake on Mac
Original patch is from Ramanathan Vishnampet
2014-02-19 16:11:03 +01:00
Richard Heck
7220f1459e Fix bug #8540 by not resetting the GUI if the request came from
the minibuffer. As the comments explain, this leaves a different
bug, but (a) it isn't a crash and (b) it probably won't affect
many users, if *any* users.
2014-02-18 10:42:52 -05:00
Richard Heck
0a5b33bcad Rename a routine. 2014-02-18 10:42:52 -05:00
Uwe Stöhr
789a6ebf2a InsetMathXArrow.cpp; code simplification 2014-02-17 02:11:57 +01:00
Uwe Stöhr
e9ce68dddc InsetMathXArrow.cpp: the cells of \xleftarrow must be centered
the cells are centered in the output so also center them in LyX
2014-02-17 01:23:16 +01:00
Uwe Stöhr
8c33f73cc7 MathSupport.cpp: fix drawing of leftrightarrow
- to see the difference use this in a formula:
\overleftrightarrow{aasasasasassdsdsdasdsdsd}
2014-02-17 01:19:31 +01:00
Juergen Spitzmueller
cc7c042dda Fix localization of captions (#8977) 2014-02-16 10:23:30 +01:00
Juergen Spitzmueller
e0e8d6a40f Simplification 2014-02-16 09:57:17 +01:00
Richard Heck
27af044a2d It's definitely not safe to continue in this case. The cursor is
invalid. So we should try to save the document before anything
really bad happens.
2014-02-15 20:56:13 -05:00
Jean-Marc Lasgouttes
d25e273abf Whitespace 2014-02-14 12:00:56 +01:00
Richard Heck
2e23f1719e This is meant to be almost UINT_MAX, but needn't really be that
big, and I don't see the point of pulling in limits.h.
2014-02-13 17:55:53 -05:00
Jean-Marc Lasgouttes
2b1791641f Fix various typos in LFUNs.lyx 2014-02-13 14:20:43 +01:00
Jean-Marc Lasgouttes
e7a1cce551 Rename some LFUN names to match their text name
Also, rename copy-label-as-reference to label-copy-as-reference and update LFUNs.lyx accordingly.
2014-02-13 13:50:33 +01:00
Richard Heck
b7a1eb68e1 Fix bug #8944 by introducing a maximum size for keys we process.
The problem is caused by the fact that Encodings::fromLaTeXCommand
is very slow. It's not clear to me if that can be fixed, or if that
is just how things are. Georg suggested another time that we might
use tex2lyx in or instead of convertLatexCommands() in BiblioInfo.cpp,
but I don't know if that would much faster. The author string in the
example file is 32K characters long. As long as some files tex2lyx
would convert.
2014-02-12 13:28:26 -05:00
Georg Baum
6b49b6b129 Fix conflicting inset font defaults (bug #8874)
This makes the defaults of Inset::inheritFont() and Inset::resetFontEdit()
compatible. There is no user visible change except for the Chunk inset which
does not produce invalid LaTeX after editing operations anymore.
This is the safe version for 2.1.0, for later there are still open questions:
- All insets with ResetsFont true should be audited: Is this really needed,
  or do they show similar editing problems as the Chunk inset?
- Does inheritFont() need to be customizable in the layout file as well?
- Is resetFontEdit() != !inheritFont() needed at all?
I did not use change tracking for the docs, since I updated all existing
translations.
2014-02-10 22:06:32 +01:00
Juergen Spitzmueller
8b1504d7ad Do not crash with empty (invalid) math environments (part of #8359) 2014-02-10 09:24:14 +01:00
Juergen Spitzmueller
d4f04513c2 Fix LFUN_MATH_AMS_MATRIX: it was possible to generate corrupt documents (part of #8359) 2014-02-10 09:23:17 +01:00
Juergen Spitzmueller
fa6b388cb3 Do not issue module warnings when just cloning a buffer (#8864) 2014-02-09 11:16:20 +01:00
Scott Kostyshak
1fd32312e9 Right border of multicol should be set if 1 column
This commit fixes a bug uncovered by the fix to #8082:
If you create a table, select all columns in a row,
and set as multicolumn, the right border used to be unset.
2014-02-08 00:13:10 -05:00
Vincent van Ravesteijn
77d532bd51 Compare: Add the authors from the 'other' document
Otherwise the resulting document may contain references to authors that are not present in the author list, which results in a crash.

Fixes-bug: #8769
2014-02-07 23:14:36 +01:00
Vincent van Ravesteijn
fc6b8c64f8 Return true to indicate we might have invalidated the cursor
If we don't do so, Cursor::notifyCursorLeavesOrEnters might continue with
an invalidated cursor.

Fixes-bug: #8329
2014-02-07 23:04:15 +01:00
Vincent van Ravesteijn
795535e44f Do not try to track_change an auto-deleted bibitem
We are not capable of handling two bibitems within one biblio paragraph.
That's why we have functions like Paragraph::brokenBiblio() and
Paragraph::fixBiblio(). So, if we fix the biblio by deleting the second
bibitem, we should not keep it as deleted.

This code caused a crash because the inset was released, but still kept as
deleted.

Fixes-bug: #8646.
2014-02-07 22:55:05 +01:00
Juergen Spitzmueller
6837345209 Fix crash 2014-02-06 13:07:00 +01:00
Juergen Spitzmueller
b13f5dee53 Fix assertion in editing math (bug #8946) 2014-02-06 11:09:02 +01:00
Vincent van Ravesteijn
ebf18a9711 Fix wrong painting of lines right of multicol
We should skip the other cells that are part of the multicolumn before we find the cell right to the current one.

Fixes-bug: #8082
2014-02-05 21:37:57 +01:00
Georg Baum
c616c7e73f Add more paste lfun doc from bug #8749. 2014-02-04 22:22:54 +01:00
Juergen Spitzmueller
5a669fa62b Style 2014-02-04 10:37:29 +01:00
Vincent van Ravesteijn
cda585baf5 CMake: Move biblio test projects into tests group 2014-02-03 20:07:09 +01:00
Richard Heck
3f62601a8f Fix bug discovered by Kornel. See
http://marc.info/?l=lyx-devel&m=138590578911716&w=2
If you look at Buffer.cpp, around line 4351, there was a comment about bug 5699. We are seeing the
same crash. The problem is that, although the master does have a GUI, that GUI is in a different window. So the structureChanged() call we do during updateBuffer() is for the TOC in that window, not the TOC in the window we are actually in. So our TocModel::toc_ has been reset and is invalid, though the widget itself has not been updated and looks fine.

This patch tests whether the master is in the same window as the buffer we are updating.

A problem remains, which is noted in a comment.
2014-01-29 11:23:03 -05:00
Kornel Benko
3369de6d7c Added test for algo2e tex2lyx conversion
Testfile from Jürgen Spitzmüller
2014-01-28 13:58:28 +01:00
Juergen Spitzmueller
f76a8c8ab1 tex2lyx: support algorithm2e (#8728) 2014-01-28 12:44:22 +01:00
Jean-Marc Lasgouttes
bab58480bc Do not skip space at start of row (fixes #8947, #8838)
TextMetrics::getColumnNearX (x -> pos translation) has special code to
ignore spaces at the beginning of a row, but neither the display code
nor TextMetrics::cursorX (pos->x translation) follow this logic. One
might argue that spaces should actually be ignored (like LaTeX does),
but this leads to UI issues and is probably too difficult to
implement.
2014-01-28 11:04:31 +01:00
Juergen Spitzmueller
ef5d702325 Harmonize naming 2014-01-27 12:04:58 +01:00
Juergen Spitzmueller
e6c5f9a17c Whitespace 2014-01-27 11:14:24 +01:00
Juergen Spitzmueller
5a3f1a731f Extend environment-split to an 'outer' split function
This fixes a major beamer UI flaw reported by several users.
2014-01-27 08:01:24 +01:00
Richard Heck
9d7f25a4ae Do not allow newlines in subfloats. Fixes #8752. 2014-01-26 14:23:40 -05:00
Juergen Spitzmueller
35e64bf951 Allow usage of algorithm2e package (#8744)
This simple module allows users to use the algorithm2e package at all. Before, it was not possible with LyX, since this package conflicts with LyX's own algorithm support (see also #8728)
2014-01-26 19:23:40 +01:00
Juergen Spitzmueller
2b941da7fc Fix longtable captions (#8933)
Don't know why this code is now needed again (or why it had to be removed in the first place).
2014-01-25 09:33:23 +01:00
Stephan Witt
01969e59fb #8932 improved spell checker debug messages 2014-01-15 21:20:05 +01:00