sd/source/ui/func/fudraw.cxx |    6 ++++--
 sd/source/ui/func/fupoor.cxx |    2 +-
 2 files changed, 5 insertions(+), 3 deletions(-)

New commits:
commit 86c7b7c76cf5449cf4324992000b3cebaa9c920b
Author:     Mike Kaganski <mike.kagan...@collabora.com>
AuthorDate: Fri Dec 6 13:49:39 2024 +0500
Commit:     Miklos Vajna <vmik...@collabora.com>
CommitDate: Mon Dec 9 14:08:44 2024 +0100

    tdf#164213: don't activate OLE objects in read-only mode
    
    Similar to the check done in SwEditWin::MouseButtonDown.
    
    Change-Id: I1a1b8966502a6b1557d424f28cfc1c1ecdf4b65e
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177930
    Tested-by: Jenkins
    Reviewed-by: Mike Kaganski <mike.kagan...@collabora.com>
    (cherry picked from commit 5950fe86b84bb062e88034e382fc5df90bb1e98c)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178006
    Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoff...@gmail.com>
    Reviewed-by: Miklos Vajna <vmik...@collabora.com>

diff --git a/sd/source/ui/func/fudraw.cxx b/sd/source/ui/func/fudraw.cxx
index fca4f65fa54e..a55ba36f444b 100644
--- a/sd/source/ui/func/fudraw.cxx
+++ b/sd/source/ui/func/fudraw.cxx
@@ -640,7 +640,8 @@ void FuDraw::DoubleClick(const MouseEvent& rMEvt)
             SdrInventor nInv = pObj->GetObjInventor();
             SdrObjKind  nSdrObjKind = pObj->GetObjIdentifier();
 
-            if (nInv == SdrInventor::Default && nSdrObjKind == 
SdrObjKind::OLE2)
+            if (nInv == SdrInventor::Default && nSdrObjKind == SdrObjKind::OLE2
+                && !mpDocSh->IsReadOnly())
             {
                 // activate OLE-object
                 SfxInt16Item aItem(SID_OBJECT, 0);
@@ -649,7 +650,8 @@ void FuDraw::DoubleClick(const MouseEvent& rMEvt)
                                                  SfxCallMode::ASYNCHRON | 
SfxCallMode::RECORD,
                                                  { &aItem });
             }
-            else if (nInv == SdrInventor::Default &&  nSdrObjKind == 
SdrObjKind::Graphic && pObj->IsEmptyPresObj() )
+            else if (nInv == SdrInventor::Default && nSdrObjKind == 
SdrObjKind::Graphic
+                     && pObj->IsEmptyPresObj() && !mpDocSh->IsReadOnly())
             {
                 mpViewShell->GetViewFrame()->
                     GetDispatcher()->Execute( SID_INSERT_GRAPHIC,
diff --git a/sd/source/ui/func/fupoor.cxx b/sd/source/ui/func/fupoor.cxx
index e6fe25f7117d..5c7a44568d34 100644
--- a/sd/source/ui/func/fupoor.cxx
+++ b/sd/source/ui/func/fupoor.cxx
@@ -230,7 +230,7 @@ bool FuPoor::KeyInput(const KeyEvent& rKEvt)
                     bReturn = true;
                 }
             }
-            else
+            else if (!mpDocSh->IsReadOnly())
             {
                 // activate OLE object on RETURN for selected object
                 // activate text edit on RETURN for selected object

Reply via email to