diff options
-rw-r--r-- | officecfg/registry/schema/org/openoffice/Office/Common.xcs | 6 | ||||
-rw-r--r-- | uui/source/iahndl-locking.cxx | 4 | ||||
-rw-r--r-- | uui/source/openlocked.cxx | 3 |
3 files changed, 11 insertions, 2 deletions
diff --git a/officecfg/registry/schema/org/openoffice/Office/Common.xcs b/officecfg/registry/schema/org/openoffice/Office/Common.xcs index b217416756da..e7c339e2e22e 100644 --- a/officecfg/registry/schema/org/openoffice/Office/Common.xcs +++ b/officecfg/registry/schema/org/openoffice/Office/Common.xcs @@ -5499,6 +5499,12 @@ </info> <value>true</value> </prop> + <prop oor:name="AllowOverrideLocking" oor:type="xs:boolean" oor:nillable="false"> + <info> + <desc>Whether the user can open a file for editing although it has been locked by another user.</desc> + </info> + <value>true</value> + </prop> <prop oor:name="ShowLinkWarningDialog" oor:type="xs:boolean" oor:nillable="false"> <info> <desc>Determines if a warning dialog should be diff --git a/uui/source/iahndl-locking.cxx b/uui/source/iahndl-locking.cxx index f4297754d6b5..07a69699e9b8 100644 --- a/uui/source/iahndl-locking.cxx +++ b/uui/source/iahndl-locking.cxx @@ -31,6 +31,7 @@ #include <unotools/resmgr.hxx> #include <vcl/svapp.hxx> +#include <officecfg/Office/Common.hxx> #include <strings.hrc> #include "getcontinuations.hxx" @@ -84,7 +85,8 @@ handleLockedDocumentRequest_( aArguments.push_back( !aInfo.isEmpty() ? aInfo : Translate::get( STR_UNKNOWNUSER, aResLocale) ); - aArguments.push_back( xRetry.is() + bool bAllowOverride = xRetry.is() && officecfg::Office::Common::Misc::AllowOverrideLocking::get(); + aArguments.push_back( bAllowOverride ? Translate::get( STR_OPENLOCKED_ALLOWIGNORE_MSG, aResLocale ) : "" ); aMessage = Translate::get(STR_OPENLOCKED_MSG, aResLocale); diff --git a/uui/source/openlocked.cxx b/uui/source/openlocked.cxx index eb50450adc86..fa2a4616c7c1 100644 --- a/uui/source/openlocked.cxx +++ b/uui/source/openlocked.cxx @@ -19,6 +19,7 @@ #include <strings.hrc> #include "openlocked.hxx" +#include <officecfg/Office/Common.hxx> #include <unotools/resmgr.hxx> #include <vcl/stdtext.hxx> #include <vcl/svapp.hxx> @@ -29,7 +30,7 @@ OpenLockedQueryBox::OpenLockedQueryBox(weld::Window* pParent, const std::locale& m_xQueryBox->set_title(Translate::get(STR_OPENLOCKED_TITLE, rResLocale)); m_xQueryBox->add_button(Translate::get(STR_OPENLOCKED_OPENREADONLY_BTN, rResLocale), RET_YES); m_xQueryBox->add_button(Translate::get(STR_OPENLOCKED_OPENCOPY_BTN, rResLocale), RET_NO); - if (bEnableOverride) + if (bEnableOverride && officecfg::Office::Common::Misc::AllowOverrideLocking::get()) { // Present option to ignore the (stale?) lock file and open the document m_xQueryBox->add_button(Translate::get(STR_ALREADYOPEN_OPEN_BTN, rResLocale), RET_IGNORE); |