X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Ffrontends%2Fqt4%2FGuiSelection.h;h=1567b3e697f5f4734e6bcae98fa30542270686d2;hb=425d092204118ea6c24c28e85fdf03fcf2bb51a4;hp=c7f2096aa82ae93f3ece9864adca99b3021776cb;hpb=0ee7c6e283bb6a592f6f86a2c45d34c60ba4026e;p=lyx.git diff --git a/src/frontends/qt4/GuiSelection.h b/src/frontends/qt4/GuiSelection.h index c7f2096aa8..1567b3e697 100644 --- a/src/frontends/qt4/GuiSelection.h +++ b/src/frontends/qt4/GuiSelection.h @@ -44,7 +44,14 @@ private Q_SLOTS: void on_dataChanged(); private: - 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 + // or keyboard move. This in turn causes many calls of requestSelection in A + // which interferes with the selecting itself. As a result middle button pasting + // for more instances don't work and debugging is a hell. So we just schedule + // obtaining of selection on the time empty() is actually called. + mutable bool schedule_check_; bool const selection_supported_; };