[Libreoffice-commits] core.git: include/LibreOfficeKit sfx2/source
Ashod Nakashian
ashod.nakashian at collabora.co.uk
Sat Mar 17 00:17:40 UTC 2018
include/LibreOfficeKit/LibreOfficeKitEnums.h | 11 +++++++++++
sfx2/source/view/viewsh.cxx | 16 +++++++++++-----
2 files changed, 22 insertions(+), 5 deletions(-)
New commits:
commit de774e261a59625336fe4d744d8c8e2966b570d2
Author: Ashod Nakashian <ashod.nakashian at collabora.co.uk>
Date: Sun Feb 25 14:14:40 2018 -0500
lok: notify clients of clipboard changes
Change-Id: I93d8eacc0defb1176ec5d767f49356812cf90ff6
Reviewed-on: https://gerrit.libreoffice.org/50327
Tested-by: Jenkins <ci at libreoffice.org>
Reviewed-by: Ashod Nakashian <ashnakash at gmail.com>
diff --git a/include/LibreOfficeKit/LibreOfficeKitEnums.h b/include/LibreOfficeKit/LibreOfficeKitEnums.h
index b90aa6279c41..020bbff90f20 100644
--- a/include/LibreOfficeKit/LibreOfficeKitEnums.h
+++ b/include/LibreOfficeKit/LibreOfficeKitEnums.h
@@ -568,6 +568,17 @@ typedef enum
* - "close" - window is closed
*/
LOK_CALLBACK_WINDOW = 36,
+
+ /**
+ * Notification that the clipboard contents have changed.
+ * Typically fired in response to copying to clipboard.
+ *
+ * The payload currently is empty and it's up to the
+ * client to get the contents, if necessary. However,
+ * in the future the contents might be included for
+ * convenience.
+ */
+ LOK_CALLBACK_CLIPBOARD_CHANGED = 37,
}
LibreOfficeKitCallbackType;
diff --git a/sfx2/source/view/viewsh.cxx b/sfx2/source/view/viewsh.cxx
index 41ac335237ad..3b742b0a56d6 100644
--- a/sfx2/source/view/viewsh.cxx
+++ b/sfx2/source/view/viewsh.cxx
@@ -156,12 +156,18 @@ SfxClipboardChangeListener::SfxClipboardChangeListener( SfxViewShell* pView, con
void SfxClipboardChangeListener::ChangedContents()
{
const SolarMutexGuard aGuard;
- if( m_pViewShell )
+ if (m_pViewShell)
{
SfxBindings& rBind = m_pViewShell->GetViewFrame()->GetBindings();
- rBind.Invalidate( SID_PASTE );
- rBind.Invalidate( SID_PASTE_SPECIAL );
- rBind.Invalidate( SID_CLIPBOARD_FORMAT_ITEMS );
+ rBind.Invalidate(SID_PASTE);
+ rBind.Invalidate(SID_PASTE_SPECIAL);
+ rBind.Invalidate(SID_CLIPBOARD_FORMAT_ITEMS);
+
+ if (comphelper::LibreOfficeKit::isActive())
+ {
+ // In the future we might send the payload as well.
+ SfxLokHelper::notifyAllViews(LOK_CALLBACK_CLIPBOARD_CHANGED, "");
+ }
}
}
@@ -823,7 +829,7 @@ SfxInPlaceClient* SfxViewShell::GetUIActiveClient() const
if ( !pClients )
return nullptr;
- bool bIsTiledRendering = comphelper::LibreOfficeKit::isActive();
+ const bool bIsTiledRendering = comphelper::LibreOfficeKit::isActive();
for (SfxInPlaceClient* pIPClient : *pClients)
{
More information about the Libreoffice-commits
mailing list