summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorMike Kaganski <mike.kaganski@collabora.com>2022-11-16 23:01:10 +0300
committerMike Kaganski <mike.kaganski@collabora.com>2022-11-17 05:25:22 +0100
commit08828d2460304baaa10a1d9d1e66d39130aba610 (patch)
tree4351959a3863fe836db344b2723e1906c8327f9d /include
parent9fdf1cd68e3cfe2ee64ed4092b75b15b2eea33dd (diff)
lok: handle mouse/keyboard events in Math embedded in Calc
And extract the identical code used in all components into static SfxLokHelper methods. Change-Id: I6556b1b996936835ecfc0d59e2c1dd1ef6380db2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/142793 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com> (cherry picked from commit a81e957f5026373f3935390c786c21416fc74fcc) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/142796 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Diffstat (limited to 'include')
-rw-r--r--include/sfx2/lokhelper.hxx11
1 files changed, 11 insertions, 0 deletions
diff --git a/include/sfx2/lokhelper.hxx b/include/sfx2/lokhelper.hxx
index 341febc7882a..7c4aefbc9be8 100644
--- a/include/sfx2/lokhelper.hxx
+++ b/include/sfx2/lokhelper.hxx
@@ -13,6 +13,8 @@
#include <vcl/IDialogRenderable.hxx>
#include <vcl/ITiledRenderable.hxx>
#include <vcl/event.hxx>
+#include <vcl/vclptr.hxx>
+#include <vcl/window.hxx>
#include <sfx2/dllapi.h>
#include <sfx2/viewsh.hxx>
#include <tools/gen.hxx>
@@ -163,6 +165,15 @@ public:
/// This could be a new insertion or property modifications to an existing one.
static void notifyMediaUpdate(boost::property_tree::ptree& json);
+ /// Process the mouse event in the currently active in-place component (if any).
+ /// Returns true if the event has been processed, and no further processing is necessary.
+ static bool testInPlaceComponentMouseEventHit(SfxViewShell* pViewShell, int nType, int nX,
+ int nY, int nCount, int nButtons, int nModifier,
+ double fScaleX, double fScaleY,
+ bool bNegativeX = false);
+
+ static VclPtr<vcl::Window> getInPlaceDocWindow(SfxViewShell* pViewShell);
+
private:
static int createView(SfxViewFrame* pViewFrame, ViewShellDocId docId);
};