Fix bug 3255

* src/frontends/Clipboard.h
	(empty): Clarify documentation

	* src/frontends/qt4/GuiClipboard.C
	(GuiClipboard::empty): Consider also the LyX version, since the text
	version is empty if there is only one inset in the clipboard.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@17297 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
Georg Baum 2007-02-21 21:47:44 +00:00
parent 6287c95854
commit 33a9bb161e
2 changed files with 9 additions and 1 deletions

View File

@ -56,6 +56,8 @@ public:
/// (document contents, dialogs count as external here).
virtual bool isInternal() const = 0;
/// Is the clipboard empty?
/// \returns true if both the LyX and the plaintext versions of the
/// clipboard are empty.
virtual bool empty() const = 0;
};

View File

@ -116,7 +116,13 @@ bool GuiClipboard::isInternal() const
bool GuiClipboard::empty() const
{
return qApp->clipboard()->text(QClipboard::Clipboard).isEmpty();
// We need to check both the plaintext and the LyX version of the
// clipboard. The plaintext version is empty if the LyX version
// contains only one inset, and the LyX version is empry if the
// clipboard does not come from LyX.
if (!qApp->clipboard()->text(QClipboard::Clipboard).isEmpty())
return false;
return !hasLyXContents();
}
} // namespace frontend