Fix problem with filename encoding in python script for graphics conversion
* src/graphics/GraphicsConverter.C
(build_script): convert the input filename from utf8 to the default
locale encoding as it hopefully corresponds to the filesystem encoding.
Georg Baum [Sun, 7 Jan 2007 14:44:44 +0000 (14:44 +0000)]
Tell X the selection status also after it is changed by the keyboard, since
we got a consensus on this on the list.
Some calls of haveSelection are still missing, but we need to decide the
"persistent selection" question before those can be implemented properly.
* src/frontends/qt4/QCharacter.C:
* src/frontends/qt4/QDocumentDialog.C:
* src/frontends/qt4/QPrefsDialog.C:
- include some information on the resizing bug,
Georg Baum [Sat, 6 Jan 2007 15:33:07 +0000 (15:33 +0000)]
Fix thinko: default paste method for plain text
* src/lyxtext.h
* src/text3.C
(pasteString): Change argument to bool
* src/text3.C
(LyXText::dispatch): (LFUN_PASTE): Paste plain text as paragraphs,
not as lines
(LyXText::dispatch): Adjust to pasteString change
* lib/bind/cua.bind:
* lib/bind/sciword.bind:
* lib/bind/mac.bind: Move shortcuts from "clipboard-paste paragraph"
and "primary-selection-paste paragraph" to "primary-selection-paste"
and "clipboard-paste", since the "paragaph" versions are used in
LFUN_PASTE and middle-mouse-button paste. Now "primary-selection-paste"
has the same shortcut it always had, and "clipboard-paste" has the
shortcut that was originally assigned to
"primary-selection-paste paragraph".
Michael Schmitt [Sat, 6 Jan 2007 13:56:58 +0000 (13:56 +0000)]
* lib/bind/cua.bind:
* lib/bind/mac.bind:
* lib/bind/sciword.bind: move the shortcut C-M-v from "primary-selection-paste" to "clipboard-paste paragraph"
Michael Schmitt [Sat, 6 Jan 2007 13:42:15 +0000 (13:42 +0000)]
* lib/ui/stdmenus.inc:
* lib/ui/stdmenus.ui: rename file in order not to confuse users
* lib/ui/stdtoolbars.inc:
* lib/ui/stdtoolbars.ui: rename file in order not to confuse users
Georg Baum [Sat, 6 Jan 2007 10:08:48 +0000 (10:08 +0000)]
fix compile error:
../../../src/mathed/../ParagraphMetrics.h:76: error: extra qualification 'lyx::ParagraphMetrics::' on member 'calculateRowSignature'
This commit fixes the singlePar optimization which was disabled due to the ParagraphMetrics cleanup.
* rowpainter.C::paintPar(): don't calculate row signature here. Use ParagraphMetrics::rowChangeStatus() instead.
* RowList_fwd.h: RowSignature is now a vector.
* ParagraphMetrics
- rowChangeStatus(), updateRowChangeStatus(), calculateRowSignature(): new methods.
- row_signature_: new member
- rowSignature_: renamed to row_signature_
Georg Baum [Fri, 5 Jan 2007 14:40:49 +0000 (14:40 +0000)]
Fix and document middle mouse button paste. This is probably the last of
the status quo fixes, I'll send a proposal how to proceed soon.
* src/CutAndPaste.[Ch]
(copySelection): Split into copySelection and copySelectionToStack
* src/text3.C
(LyXText::dispatch): Use copySelectionToStack instead of LFUN_COPY
to copy the selection to the cut buffer for two reasons:
- LFUN_COPY did not work (probably because bv.cursor() was not yet set)
- If it would work it would put the selection to the system clipboard
which is clearly wrong.
Document why we put the selection to the stack.
Georg Baum [Fri, 5 Jan 2007 13:31:37 +0000 (13:31 +0000)]
The uncontroversal part of the selection fix: Always set the X selection
after selecting something with the mouse
* src/insets/insettabular.C
(InsetTabular::doDispatch): Set the X selection if there is a
selection after release of the left mouse button
* src/mathed/InsetMathNest.C
(InsetMathNest::doDispatch): Set the X selection after double and
triple click of the left mouse button
(InsetMathNest::lfunMouseRelease): Set the X selection if there is a
selection after release of the left mouse button
Georg Baum [Fri, 5 Jan 2007 10:32:07 +0000 (10:32 +0000)]
* src/frontends/qt4/GuiSelection.C
(GuiSelection::haveSelection): Add a big comment what we actually do
here, and why. It took me quite some time to figure that out.
* src/frontends/Selection.h
(haveSelection): Add more detailed documentation
Georg Baum [Fri, 5 Jan 2007 10:11:21 +0000 (10:11 +0000)]
Fix another selection bug
* src/frontends/qt4/GuiApplication.C
(GuiApplication::x11EventFilter): Only send or clear the selection
if the X event specified the primary selection. Previously this was
also done if the event specified the clipboard. We must ignore that,
because the clipboard is completele handled by qt.
* src/frontends/LyXKeySym.h:
* src/frontends/qt4/QLyXKeySym.h:
* src/frontends/qt4/QLyXKeySym.C (print): add a forgui boolean that
tells whether the string should used localized names and special
characters.
* src/frontends/qt4/QLPopupMenu.C (addBinding): use a non-localaized
binding for Qt/Mac (because it needs to be parsed back) and a
localized one for the others (so that it looks good).
* src/kbmap.C (defkey,printbindings):
* src/lyxfunc.C (processKeySym,dispatch,viewStatusMessage): adapt to
above changes.
Reorganize window resizing so that no painting occurs during a resizeEvent(). This caused the crash on MacOSX because the splash image drawing was not finished before the resizeEvent() occurred because of scrollbar hiding.
* GuiWorkArea:
- need_resize_: new private member.
- expose(): move pixmap painting code to new private updateScreen() method.
- paintEvent(): resize the backing pixmap if need be.
- resizeEvent(): move the resizing code to paintEvent().
Georg Baum [Thu, 4 Jan 2007 12:05:24 +0000 (12:05 +0000)]
Let LFUN_PASTE always paste the most recent clipboard (internal or system)
* src/insets/insettabular.C
(InsetTabular::doDispatch): Only paste the tabular clipboard if the
system clipboard is not newer, else let the current cell paste the
system clipboard
(InsetTabular::getStatus): Only decide whether to enable LFUN_PASTE
if the tabular clipboard is not empty and the system clipboard is
not newer, else let the current cell decide.
* src/mathed/InsetMathGrid.C
(InsetMathGrid::doDispatch): Use the system clipboard for LFUN_PASTE
if it is newer.
* src/mathed/InsetMathNest.C
(InsetMathNest::doDispatch): Use the system clipboard for LFUN_PASTE
if it is newer.
* src/text3.C
(doInsertInset): Add a "0" argument to LFUN_PASTE, because we always
want to use the internal clipboard here
(LyXText::dispatch): ditto (when handling mouse button 2 press)
(LyXText::dispatch): Use the system clipboard for LFUN_PASTE if it
is newer.
(LyXText::getStatus): Also enable LFUN_PASTE if the system clipboard
is owned by another application
* GuiApplication.C (GuiApplication): make sure that the Qtranslator
holding the Qt translations is not deleted. Now keyboard shortcuts and
Qt stock dialogs are properly translated.
Georg Baum [Thu, 4 Jan 2007 11:05:22 +0000 (11:05 +0000)]
* src/insets/insettabular.C
(InsetTabular::getStatus): Correctly enable LFUN_PASTE when the
special tabular clipboard is empty by removing an errornous
fall-through to LFUN_INSET_MODIFY