summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2015-09-09 09:45:58 +0100
committerAndras Timar <andras.timar@collabora.com>2015-09-19 21:32:14 +0200
commitbd234dc5374f2589da1f4bca5c8780417b49a05e (patch)
tree3f08acadd5b208055289aea62106ce103dc7db0c
parentf9eddb62f25a54370164b56c313dbb11f0cde995 (diff)
Resolves: tdf#93887 distinguish between empty selection lost selection
Change-Id: Id0be728602b3c58b2853ff464336d68303531efe (cherry picked from commit f3f1919aa4eca2f6180649eda43bcb813b1f0450) Reviewed-on: https://gerrit.libreoffice.org/18434 Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk> Tested-by: Miklos Vajna <vmiklos@collabora.co.uk>
-rw-r--r--vcl/unx/gtk3/app/gtk3gtkinst.cxx5
1 files changed, 4 insertions, 1 deletions
diff --git a/vcl/unx/gtk3/app/gtk3gtkinst.cxx b/vcl/unx/gtk3/app/gtk3gtkinst.cxx
index d8614dffa638..f8fd6a6f537f 100644
--- a/vcl/unx/gtk3/app/gtk3gtkinst.cxx
+++ b/vcl/unx/gtk3/app/gtk3gtkinst.cxx
@@ -372,8 +372,11 @@ sal_Bool VclGtkClipboard::supportsService( const OUString& ServiceName ) throw(
Reference< css::datatransfer::XTransferable > VclGtkClipboard::getContents() throw( RuntimeException, std::exception )
{
- if (!m_aContents.is())
+ if (G_OBJECT(m_pOwner) != gtk_clipboard_get_owner(gtk_clipboard_get(m_nSelection)) &&
+ !m_aContents.is())
{
+ //tdf#93887 This is the system clipboard/selection. We fetch it when we are not
+ //the owner of the clipboard and have not already fetched it.
m_aContents = new GtkTransferable(m_nSelection);
}
return m_aContents;