Bug 63483 - UI: FILESAVE with 'Open file read-only' not offered in Draw and Impress
Summary: UI: FILESAVE with 'Open file read-only' not offered in Draw and Impress
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Draw (show other bugs)
(earliest affected)
Inherited From OOo
Hardware: Other All
: highest enhancement
Assignee: Katarina Behrens
Whiteboard: target:4.4.0
Depends on:
Blocks: mab4.2
  Show dependency treegraph
Reported: 2013-04-12 17:26 UTC by Rainer Bielefeld Retired
Modified: 2014-12-20 22:30 UTC (History)
4 users (show)

See Also:
Crash report or crash signature:

edit password in Calc and Writer (31.14 KB, image/png)
2014-06-12 10:55 UTC, Marina Latini (SUSE)
password in Draw and Impress (19.35 KB, image/png)
2014-06-12 10:57 UTC, Marina Latini (SUSE)

Note You need to log in before you can comment on or make changes to this bug.
Description Rainer Bielefeld Retired 2013-04-12 17:26:23 UTC
For Writer and Calc menu 'File -> Save -> Save with Password -> More Options -> Open file read-only' we have an option to save the document in a way that it will be opened read-only. That is very useful for documents what are allowed to be edited, but should be protected against accidental edits. 

For unknown reasons this option is missing for Draw and Presentation, this option never existed.

I, for example, leave lots of documents for Technical Documentation as "open read-only" so that my customers can edit them if they want, but have them protected against accidental edits, and it's annoying for me that I can't proceed so for Drawings.
Comment 1 tommy27 2013-07-16 05:49:24 UTC
I confirm issue on LibO 4.0.4.

Draw and Impress have no "more options" button in the "save with password" dialog.
Comment 2 retired 2013-07-16 09:58:36 UTC
Also valid for (RC2)
Comment 3 Marina Latini (SUSE) 2014-06-12 10:53:17 UTC
Confirmed on LibreOffice:

* Version:
* Build ID: a06aa316117a6ff0f05c697c82831c227812d810
* OS: Ubuntu 14.04 x86_64

While Writer and Calc have the "more options" button, with Draw or Impress the users can't configure a modify password for their documents but only an open password. The unique workaround to ensure a permanent read-only presentation is to export in other formats. This sounds bad :(

For further informations see the attached screenshots.
Comment 4 Marina Latini (SUSE) 2014-06-12 10:55:51 UTC
Created attachment 100914 [details]
edit password in Calc and Writer

Writer and Calc have the edit password
Comment 5 Marina Latini (SUSE) 2014-06-12 10:57:15 UTC
Created attachment 100915 [details]
password in Draw and Impress

Draw and Impress have only an open password
Comment 6 Marina Latini (SUSE) 2014-06-12 13:14:13 UTC
Added MAB.

Enhancement - is a missing feature in Draw and Impress already implemented in Writer and Calc.
Highest - MAB so highest is appropriate
Comment 7 Katarina Behrens 2014-09-11 21:39:09 UTC
While I understand the reasons why would anyone want to have a read-only drawing (basically what Rainer says in his original post), I can't see much point in having that for presentations, which are read-only in its nature for everyone but the presenter ... but if this is what annoys the users so much, I'm taking this one.
Comment 8 Commit Notification 2014-09-25 13:18:39 UTC
Katarina Behrens committed a patch related to this issue.
It has been pushed to "master":


fdo#63483: support for modify passwd in Impress and Draw

The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
Affected users are encouraged to test the fix and report feedback.
Comment 9 Jean-Baptiste Faure 2014-10-02 10:33:57 UTC
The backport (https://gerrit.libreoffice.org/gitweb?p=core.git;a=commit;h=e5222cf76a94c4ec20664b3e6f5a48e00ee9669f) of this fix to branch 4.3 fails to build for me under Ubuntu 14.04 x86-64:

[build CXX] sd/source/ui/unoidl/UnoDocumentSettings.cxx
[...]/LibO/lo43/sd/source/ui/unoidl/UnoDocumentSettings.cxx: In member function ‘virtual void sd::DocumentSettings::_setPropertyValues(const comphelper::PropertyMapEntry**, const com::sun::star::uno::Any*)’:
[...]/LibO/lo43/sd/source/ui/unoidl/UnoDocumentSettings.cxx:914:70: error: no matching function for call to ‘com::sun::star::beans::PropertyVetoException::PropertyVetoException(const char [43])’
                         "The hash is not allowed to be changed now!" );
[...]/LibO/lo43/sd/source/ui/unoidl/UnoDocumentSettings.cxx:914:70: note: candidates are:
In file included from [...]/LibO/lo43/workdir/UnoApiHeadersTarget/udkapi/normal/com/sun/star/beans/XPropertySet.hpp:10:0,
                 from [...]/LibO/lo43/sd/source/ui/unoidl/UnoDocumentSettings.cxx:26:
[...]/LibO/lo43/workdir/UnoApiHeadersTarget/udkapi/normal/com/sun/star/beans/PropertyVetoException.hpp:24:1: note: com::sun::star::beans::PropertyVetoException::PropertyVetoException(const com::sun::star::beans::PropertyVetoException&)
 PropertyVetoException::PropertyVetoException(PropertyVetoException const & the_other): ::css::uno::Exception(the_other) {}
[...]/LibO/lo43/workdir/UnoApiHeadersTarget/udkapi/normal/com/sun/star/beans/PropertyVetoException.hpp:24:1: note:   no known conversion for argument 1 from ‘const char [43]’ to ‘const com::sun::star::beans::PropertyVetoException&’
In file included from [...]/LibO/lo43/workdir/UnoApiHeadersTarget/udkapi/normal/com/sun/star/beans/XPropertySet.hpp:10:0,
                 from [...]/LibO/lo43/sd/source/ui/unoidl/UnoDocumentSettings.cxx:26:
[...]/LibO/lo43/workdir/UnoApiHeadersTarget/udkapi/normal/com/sun/star/beans/PropertyVetoException.hpp:20:8: note: com::sun::star::beans::PropertyVetoException::PropertyVetoException(const rtl::OUString&, const com::sun::star::uno::Reference<com::sun::star::uno::XInterface>&)
 inline PropertyVetoException::PropertyVetoException(const ::rtl::OUString& Message_, const ::css::uno::Reference< ::css::uno::XInterface >& Context_) SAL_THROW(())
[...]/LibO/lo43/workdir/UnoApiHeadersTarget/udkapi/normal/com/sun/star/beans/PropertyVetoException.hpp:20:8: note:   candidate expects 2 arguments, 1 provided
[...]/LibO/lo43/workdir/UnoApiHeadersTarget/udkapi/normal/com/sun/star/beans/PropertyVetoException.hpp:16:8: note: com::sun::star::beans::PropertyVetoException::PropertyVetoException()
 inline PropertyVetoException::PropertyVetoException() SAL_THROW(())
[...]/LibO/lo43/workdir/UnoApiHeadersTarget/udkapi/normal/com/sun/star/beans/PropertyVetoException.hpp:16:8: note:   candidate expects 0 arguments, 1 provided
make[1]: *** [[...]/LibO/lo43/workdir/CxxObject/sd/source/ui/unoidl/UnoDocumentSettings.o] Erreur 1
make[1]: *** Attente des tâches non terminées....
make: *** [build] Erreur 2

I did an incremental build and will try a complete rebuild.

Best regards. JBF
Comment 10 Marina Latini (SUSE) 2014-10-02 10:56:58 UTC
(In reply to Commit Notification from comment #8)

> Affected users are encouraged to test the fix and report feedback.

Works fine on LibO:
Build ID: 65277f994ae25d930c15aebba0ed19f8de0abba1
TinderBox: Linux-rpm_deb-x86_64@46-TDF, Branch:master, Time: 2014-09-29_19:47:20

with fresh user profile on Ubuntu 14.04 x86_64

Thank you! :)
Can I set the status to resolved (and then, verified-fixed)?
Comment 11 Jean-Baptiste Faure 2014-10-02 13:53:09 UTC
Same build failure on branch 4.3 if I make a complete rebuild.

Best regards. JBF
Comment 12 Jean-Baptiste Faure 2014-10-02 17:46:29 UTC
(In reply to Jean-Baptiste Faure from comment #11)
> Same build failure on branch 4.3 if I make a complete rebuild.

Problem fixed by commit https://gerrit.libreoffice.org/gitweb?p=core.git;a=commitdiff;h=ccb32f41b9bd9cdd6d8eca72c4d173bccb8a7e73 from Michael Stahl. 

Thank you very much. :-)

Best regards. JBF
Comment 13 tommy27 2014-11-20 03:01:32 UTC
I confirm the bug has been fixed in 4.3.x and 4.4.x 
Comment 14 Mike §chinagl 2014-12-20 22:30:21 UTC
This bug fix comes with LibreOffice 4.4 (release notes https://wiki.documentfoundation.org/ReleaseNotes/4.4) 

It is now possible to save an Impress/Draw file read-only and require a password to modify it.