[Libreoffice-commits] core.git: Branch 'distro/collabora/cp-6.4' - 2 commits - svx/source

Michael Meeks (via logerrit) logerrit at kemper.freedesktop.org
Sat May 23 15:51:10 UTC 2020


 svx/source/engine3d/dragmt3d.cxx |    5 +++++
 svx/source/svdraw/svddrgmt.cxx   |    5 +++++
 svx/source/svdraw/svdmrkv.cxx    |    4 ++++
 3 files changed, 14 insertions(+)

New commits:
commit 1f458213b22f707877eaf9df7094d943ca14e4dc
Author:     Michael Meeks <michael.meeks at collabora.com>
AuthorDate: Fri Jan 24 16:42:48 2020 +0100
Commit:     Michael Meeks <michael.meeks at collabora.com>
CommitDate: Sat May 23 16:49:00 2020 +0100

    lok: create marking overlay object, but add no objects to it
    
    null mpMarkObjOverlay was used for a number of other reasons.
    
    Change-Id: I0681d9c544f0cd3f93e991eb048b97bd58f94787
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87409
    Tested-by: Jenkins
    Reviewed-by: Michael Meeks <michael.meeks at collabora.com>

diff --git a/svx/source/svdraw/svdmrkv.cxx b/svx/source/svdraw/svdmrkv.cxx
index e6e2d8934895..4b6780120045 100644
--- a/svx/source/svdraw/svdmrkv.cxx
+++ b/svx/source/svdraw/svdmrkv.cxx
@@ -100,6 +100,9 @@ ImplMarkingOverlay::ImplMarkingOverlay(const SdrPaintView& rView, const basegfx:
 :   maSecondPosition(rStartPos),
     mbUnmarking(bUnmarking)
 {
+    if (comphelper::LibreOfficeKit::isActive())
+        return; // We do client-side object manipulation with the Kit API
+
     for(sal_uInt32 a(0); a < rView.PaintWindowCount(); a++)
     {
         SdrPaintWindow* pCandidate = rView.GetPaintWindow(a);
@@ -362,12 +365,8 @@ void SdrMarkView::BegMarkObj(const Point& rPnt, bool bUnmark)
 
     DBG_ASSERT(nullptr == mpMarkObjOverlay, "SdrMarkView::BegMarkObj: There exists a mpMarkObjOverlay (!)");
 
-    // We do client-side object manipulation with the Kit API
-    if (!comphelper::LibreOfficeKit::isActive())
-    {
-        basegfx::B2DPoint aStartPos(rPnt.X(), rPnt.Y());
-        mpMarkObjOverlay = new ImplMarkingOverlay(*this, aStartPos, bUnmark);
-    }
+    basegfx::B2DPoint aStartPos(rPnt.X(), rPnt.Y());
+    mpMarkObjOverlay = new ImplMarkingOverlay(*this, aStartPos, bUnmark);
 
     maDragStat.Reset(rPnt);
     maDragStat.NextPoint();
commit c913188e677625802ba797ac58d240515baa7f19
Author:     Michael Meeks <michael.meeks at collabora.com>
AuthorDate: Wed Jan 15 14:21:13 2020 +0000
Commit:     Michael Meeks <michael.meeks at collabora.com>
CommitDate: Sat May 23 16:48:43 2020 +0100

    lok: don't render shape selection overlays in lok mode.
    
    These are rendered client-side, doing it twice is a bug;
    also rendering of dashed-lines via drawinglayer decomposition
    is extraordinarily slow, so avoid it.
    
    Change-Id: I821f14699abd6bc9e7a6759c81edded2f792677d
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86934
    Tested-by: Jenkins
    Reviewed-by: Michael Meeks <michael.meeks at collabora.com>

diff --git a/svx/source/engine3d/dragmt3d.cxx b/svx/source/engine3d/dragmt3d.cxx
index 68881166e651..231305eeae37 100644
--- a/svx/source/engine3d/dragmt3d.cxx
+++ b/svx/source/engine3d/dragmt3d.cxx
@@ -34,6 +34,7 @@
 #include <drawinglayer/geometry/viewinformation3d.hxx>
 #include <svx/e3dsceneupdater.hxx>
 #include <vcl/ptrstyle.hxx>
+#include <comphelper/lok.hxx>
 
 
 E3dDragMethod::E3dDragMethod (
@@ -214,6 +215,10 @@ void E3dDragMethod::CreateOverlayGeometry(
     sdr::overlay::OverlayManager& rOverlayManager,
     const sdr::contact::ObjectContact& rObjectContact)
 {
+    // We do client-side object manipulation with the Kit API
+    if (comphelper::LibreOfficeKit::isActive())
+        return;
+
     const sal_uInt32 nCnt(maGrp.size());
     basegfx::B2DPolyPolygon aResult;
 
diff --git a/svx/source/svdraw/svddrgmt.cxx b/svx/source/svdraw/svddrgmt.cxx
index 8bc1ef3689ce..80c421e40149 100644
--- a/svx/source/svdraw/svddrgmt.cxx
+++ b/svx/source/svdraw/svddrgmt.cxx
@@ -72,6 +72,7 @@
 #include <drawinglayer/attribute/sdrlineattribute.hxx>
 #include <drawinglayer/attribute/sdrlinestartendattribute.hxx>
 #include <svl/itempool.hxx>
+#include <comphelper/lok.hxx>
 #include <map>
 #include <vector>
 
@@ -680,6 +681,10 @@ void SdrDragMethod::CreateOverlayGeometry(
     sdr::overlay::OverlayManager& rOverlayManager,
     const sdr::contact::ObjectContact& rObjectContact)
 {
+    // We do client-side object manipulation with the Kit API
+    if (comphelper::LibreOfficeKit::isActive())
+        return;
+
     // create SdrDragEntries on demand
     if(maSdrDragEntries.empty())
     {
diff --git a/svx/source/svdraw/svdmrkv.cxx b/svx/source/svdraw/svdmrkv.cxx
index 1bbd669bab5d..e6e2d8934895 100644
--- a/svx/source/svdraw/svdmrkv.cxx
+++ b/svx/source/svdraw/svdmrkv.cxx
@@ -361,8 +361,13 @@ void SdrMarkView::BegMarkObj(const Point& rPnt, bool bUnmark)
     BrkAction();
 
     DBG_ASSERT(nullptr == mpMarkObjOverlay, "SdrMarkView::BegMarkObj: There exists a mpMarkObjOverlay (!)");
-    basegfx::B2DPoint aStartPos(rPnt.X(), rPnt.Y());
-    mpMarkObjOverlay = new ImplMarkingOverlay(*this, aStartPos, bUnmark);
+
+    // We do client-side object manipulation with the Kit API
+    if (!comphelper::LibreOfficeKit::isActive())
+    {
+        basegfx::B2DPoint aStartPos(rPnt.X(), rPnt.Y());
+        mpMarkObjOverlay = new ImplMarkingOverlay(*this, aStartPos, bUnmark);
+    }
 
     maDragStat.Reset(rPnt);
     maDragStat.NextPoint();


More information about the Libreoffice-commits mailing list