[Libreoffice-commits] core.git: Changes to 'private/jmux/libreoffice-4-1+kde4+mitigate'
Jan-Marek Glogowski
glogow at fbihome.de
Tue Mar 11 04:29:28 PDT 2014
New branch 'private/jmux/libreoffice-4-1+kde4+mitigate' available with the following commits:
commit 833aa0de53c5a57d6817604fb05843e5f77f510c
Author: Jan-Marek Glogowski <glogow at fbihome.de>
Date: Tue Mar 11 12:28:09 2014 +0100
KDE4: sleep in yield for native file picker
As it seems to be the only way to poll the clipboard, reintroduce
m_pApplication->clipboard()->setProperty(
"useEventLoopWhenWaiting", true );
To prevent crashes, disable event processing in the Qt thread while
the dialog is open.
Instead this applies the same workaround as the Windows backend to
sleep a ms, which keeps the FP dialogs more usable, but feels like
a horrible workaround.
This is still slower then running processEvent in Yield but still
much better then the current situation.
(cherry picked from commit 380f3b4b6cbbe8e82b58ddf55e95c5005307b51f)
Conflicts:
vcl/unx/kde4/KDE4FilePicker.cxx
vcl/unx/kde4/KDE4FilePicker.hxx
vcl/unx/kde4/KDEXLib.cxx
vcl/unx/kde4/KDEXLib.hxx
Change-Id: I10c422f1c0d7448d4a7ad28e57a32ed2cb42f48f
commit 235d823e08c824b306bc448293b62b1c7c450d2d
Author: Jan-Marek Glogowski <glogow at fbihome.de>
Date: Thu Nov 21 12:40:57 2013 +0100
fdo#67011: Run Display::Yield through KDEXLib::Yield.
Drag'n'Drop is handled in a second thread, which tries to "yield
the display" while the main Qt thread probably is already
yielding. Both need the YieldMutex, which freezes the application
until the D'n'D thread times out.
Trying to yield the display throught the application yield
results in a recursive loop.
So this catches and breaks the recursion, but just inside the Qt
thread, so other processes can "yield on the display", instead
of simply disabling the Display::Yield.
Change-Id: Ifba91aa89fe5b0a89cc94820935dc996a065112f
Reviewed-on: https://gerrit.libreoffice.org/6750
Tested-by: Jan-Marek Glogowski <glogow at fbihome.de>
Reviewed-by: Jan-Marek Glogowski <glogow at fbihome.de>
(cherry picked from commit 95f60222e75486336b6569afa8f34d60b51c94ad)
More information about the Libreoffice-commits
mailing list