GuiSelection: make sure the initial check is done

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25965 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
Abdelrazak Younes 2008-07-29 10:25:35 +00:00
parent ce9c690503
commit 4ba5452012
2 changed files with 8 additions and 7 deletions

View File

@ -32,7 +32,8 @@ using support::externalLineEnding;
GuiSelection::GuiSelection()
: selection_supported_(qApp->clipboard()->supportsSelection())
: selection_supported_(qApp->clipboard()->supportsSelection()),
schedule_check_(true)
{
connect(qApp->clipboard(), SIGNAL(selectionChanged()),
this, SLOT(on_dataChanged()));
@ -101,14 +102,17 @@ bool GuiSelection::empty() const
if (!selection_supported_)
return true;
// Cache which is to speed up selection-status read
// (4 calls when openi Edit menu).
static bool text_selection_empty;
if (schedule_check_) {
text_selection_empty_ = qApp->clipboard()->
text_selection_empty = qApp->clipboard()->
text(QClipboard::Selection).isEmpty();
schedule_check_ = false;
}
LYXERR(Debug::SELECTION, "GuiSelection::filled: " << !text_selection_empty_);
return text_selection_empty_;
LYXERR(Debug::SELECTION, "GuiSelection::filled: " << !text_selection_empty);
return text_selection_empty;
}
} // namespace frontend

View File

@ -44,9 +44,6 @@ private Q_SLOTS:
void on_dataChanged();
private:
// Cache which is to speed up selection-status read
// (4 calls when openi Edit menu).
mutable bool text_selection_empty_;
// Direct call clipboard()->text(QClipboard::Selection) inside onDataChanged causes
// selection to be obtained. Now imagine the some LyX instance A, when making selection -
// each change triggers onDataChange in all others instances for each mouse