summaryrefslogtreecommitdiff
path: root/vcl/unx/gtk3
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2015-08-27 11:06:57 +0100
committerCaolán McNamara <caolanm@redhat.com>2015-08-27 11:08:40 +0100
commit26786ae2e98cbe041766872e9aacce6d07e6a5c4 (patch)
tree989d95f72d10633215c87187397ed68930a9e2dd /vcl/unx/gtk3
parentc80bd6fc7c066b7b8da1e1135852155d867f559b (diff)
gtk3: paste special empty
the paste special listener listens to owner changed, but expects the owner changed event to contain the new contents, while the original code expected getContents to be explicitly called to get the new contents. So on owner changed always return the up to date contents Change-Id: Iaa7df2c01d360c3c5831b2258b4c2d41740fdffc
Diffstat (limited to 'vcl/unx/gtk3')
-rw-r--r--vcl/unx/gtk3/app/gtk3gtkinst.cxx3
1 files changed, 2 insertions, 1 deletions
diff --git a/vcl/unx/gtk3/app/gtk3gtkinst.cxx b/vcl/unx/gtk3/app/gtk3gtkinst.cxx
index d8c278f62f8c..823d741de564 100644
--- a/vcl/unx/gtk3/app/gtk3gtkinst.cxx
+++ b/vcl/unx/gtk3/app/gtk3gtkinst.cxx
@@ -529,7 +529,6 @@ void VclGtkClipboard::setContents(
std::list< Reference< datatransfer::clipboard::XClipboardListener > > xListeners( m_aListeners );
datatransfer::clipboard::ClipboardEvent aEv;
- aEv.Contents = m_aContents;
if (m_aContents.is())
{
@@ -579,6 +578,8 @@ void VclGtkClipboard::setContents(
m_aGtkTargets = aGtkTargets;
}
+ aEv.Contents = getContents();
+
aGuard.clear();
if( xOldOwner.is() && xOldOwner != xClipboardOwner )