diff options
-rw-r--r-- | framework/source/interaction/quietinteraction.cxx | 15 | ||||
-rw-r--r-- | offapi/UnoApi_offapi.mk | 1 | ||||
-rw-r--r-- | offapi/com/sun/star/document/ReadOnlyOpenRequest.idl | 51 | ||||
-rw-r--r-- | offapi/type_reference/offapi.idl | 3 | ||||
-rw-r--r-- | sfx2/source/doc/docfile.cxx | 43 | ||||
-rw-r--r-- | uui/Library_uui.mk | 1 | ||||
-rw-r--r-- | uui/inc/strings.hrc | 5 | ||||
-rw-r--r-- | uui/source/iahndl-locking.cxx | 49 | ||||
-rw-r--r-- | uui/source/iahndl.cxx | 3 | ||||
-rw-r--r-- | uui/source/iahndl.hxx | 3 | ||||
-rw-r--r-- | uui/source/readonlyopen.cxx | 38 | ||||
-rw-r--r-- | uui/source/readonlyopen.hxx | 35 |
12 files changed, 1 insertions, 246 deletions
diff --git a/framework/source/interaction/quietinteraction.cxx b/framework/source/interaction/quietinteraction.cxx index feeecf7c6568..e9dc218576e0 100644 --- a/framework/source/interaction/quietinteraction.cxx +++ b/framework/source/interaction/quietinteraction.cxx @@ -24,7 +24,6 @@ #include <com/sun/star/document/XInteractionFilterSelect.hpp> #include <com/sun/star/document/XInteractionFilterOptions.hpp> #include <com/sun/star/document/FilterOptionsRequest.hpp> -#include <com/sun/star/document/ReadOnlyOpenRequest.hpp> #include <com/sun/star/task/ErrorCodeRequest.hpp> #include <com/sun/star/document/LockedDocumentRequest.hpp> @@ -77,7 +76,6 @@ void SAL_CALL QuietInteraction::handle( const css::uno::Reference< css::task::XI css::task::ErrorCodeRequest aErrorCodeRequest; css::document::LockedDocumentRequest aLockedDocumentRequest; css::document::FilterOptionsRequest aFilterOptionsRequest; - css::document::ReadOnlyOpenRequest aReadOnlyOpenRequest; if( aRequest >>= aErrorCodeRequest ) { @@ -110,19 +108,6 @@ void SAL_CALL QuietInteraction::handle( const css::uno::Reference< css::task::XI } } else - if (aRequest >>= aReadOnlyOpenRequest) - { - // allow unit tests to run on read-only SRCDIR - if (xApprove.is()) - { - xApprove->select(); - } - else if (xAbort.is()) - { - xAbort->select(); - } - } - else if (xAbort.is()) xAbort->select(); } diff --git a/offapi/UnoApi_offapi.mk b/offapi/UnoApi_offapi.mk index 6f1dc604a8e3..3eb002520e42 100644 --- a/offapi/UnoApi_offapi.mk +++ b/offapi/UnoApi_offapi.mk @@ -2214,7 +2214,6 @@ $(eval $(call gb_UnoApi_add_idlfiles,offapi,com/sun/star/document,\ NoSuchFilterRequest \ OwnLockOnDocumentRequest \ PrinterIndependentLayout \ - ReadOnlyOpenRequest \ RedlineDisplayType \ ReloadEditableRequest \ UndoContextNotClosedException \ diff --git a/offapi/com/sun/star/document/ReadOnlyOpenRequest.idl b/offapi/com/sun/star/document/ReadOnlyOpenRequest.idl deleted file mode 100644 index 49a82b7016f9..000000000000 --- a/offapi/com/sun/star/document/ReadOnlyOpenRequest.idl +++ /dev/null @@ -1,51 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; fill-column: 100 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ -#ifndef __com_sun_star_document_ReadOnlyOpenRequest_idl__ -#define __com_sun_star_document_ReadOnlyOpenRequest_idl__ - -#include <com/sun/star/uno/Exception.idl> - -module com -{ - module sun - { - module star - { - module document - { - /** Is used for interaction handle to query user decision regarding whether to open - a document read-only and whether to notify the user when the document becomes - editable. - - @since LibreOffice 7.2 - */ - published exception ReadOnlyOpenRequest : ::com::sun::star::uno::Exception - { - /** The URL of the document that is open but was made editable. - */ - string DocumentURL; - }; - }; - }; - }; -}; - -#endif - -/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */ diff --git a/offapi/type_reference/offapi.idl b/offapi/type_reference/offapi.idl index 6c4b9ddb1c68..b6fe108e88bf 100644 --- a/offapi/type_reference/offapi.idl +++ b/offapi/type_reference/offapi.idl @@ -4782,9 +4782,6 @@ module com { const short HIGH_RESOLUTION = 3; const short LOW_RESOLUTION = 2; }; - published exception ReadOnlyOpenRequest: ::com::sun::star::uno::Exception { - string DocumentURL; - }; published constants RedlineDisplayType { const short INSERTED = 1; const short INSERTED_AND_REMOVED = 2; diff --git a/sfx2/source/doc/docfile.cxx b/sfx2/source/doc/docfile.cxx index 4c6770255e46..588e349a2e5b 100644 --- a/sfx2/source/doc/docfile.cxx +++ b/sfx2/source/doc/docfile.cxx @@ -38,7 +38,6 @@ #include <com/sun/star/document/LockFileIgnoreRequest.hpp> #include <com/sun/star/document/LockFileCorruptRequest.hpp> #include <com/sun/star/document/ChangedByOthersRequest.hpp> -#include <com/sun/star/document/ReadOnlyOpenRequest.hpp> #include <com/sun/star/document/ReloadEditableRequest.hpp> #include <com/sun/star/embed/XTransactedObject.hpp> #include <com/sun/star/embed/ElementModes.hpp> @@ -1178,42 +1177,6 @@ SfxMedium::ShowLockResult SfxMedium::ShowLockedDocumentDialog(const LockFileEntr return nResult; } -bool SfxMedium::ShowReadOnlyOpenDialog() -{ - uno::Reference<task::XInteractionHandler> xHandler = GetInteractionHandler(); - if (xHandler.is()) - { - OUString aDocumentURL - = GetURLObject().GetLastName(INetURLObject::DecodeMechanism::WithCharset); - ::rtl::Reference<::ucbhelper::InteractionRequest> xInteractionRequestImpl - = new ::ucbhelper::InteractionRequest(uno::makeAny(document::ReadOnlyOpenRequest( - OUString(), uno::Reference<uno::XInterface>(), aDocumentURL))); - if (xInteractionRequestImpl != nullptr) - { - uno::Sequence<uno::Reference<task::XInteractionContinuation>> aContinuations{ - new ::ucbhelper::InteractionAbort(xInteractionRequestImpl.get()), - new ::ucbhelper::InteractionApprove(xInteractionRequestImpl.get()) - }; - xInteractionRequestImpl->setContinuations(aContinuations); - xHandler->handle(xInteractionRequestImpl); - ::rtl::Reference<::ucbhelper::InteractionContinuation> xSelected - = xInteractionRequestImpl->getSelection(); - if (uno::Reference<task::XInteractionAbort>(xSelected.get(), uno::UNO_QUERY).is()) - { - SetError(ERRCODE_ABORT); - return false; - } - else if (!uno::Reference<task::XInteractionApprove>(xSelected.get(), uno::UNO_QUERY) - .is()) - // user selected "Notify" - pImpl->m_bNotifyWhenEditable = true; - - return true; - } - } - return false; -} - bool SfxMedium::ShowLockFileProblemDialog(MessageDlg nWhichDlg) { // system file locking is not active, ask user whether he wants to open the document without any locking @@ -3019,11 +2982,7 @@ void SfxMedium::Init_Impl() if (item.getFileStatus(stat) == osl::FileBase::E_None && stat.isValid(osl_FileStatus_Mask_Attributes)) { - if ((stat.getAttributes() & osl_File_Attribute_ReadOnly) != 0 -#if HAVE_FEATURE_MULTIUSER_ENVIRONMENT - && ShowReadOnlyOpenDialog() -#endif - ) + if ((stat.getAttributes() & osl_File_Attribute_ReadOnly) != 0) { pImpl->m_bOriginallyReadOnly = true; } diff --git a/uui/Library_uui.mk b/uui/Library_uui.mk index 4f664ac20dba..105c32d889e4 100644 --- a/uui/Library_uui.mk +++ b/uui/Library_uui.mk @@ -62,7 +62,6 @@ $(eval $(call gb_Library_add_exception_objects,uui,\ uui/source/openlocked \ uui/source/passwordcontainer \ uui/source/passworddlg \ - uui/source/readonlyopen \ uui/source/reloadeditable \ uui/source/requeststringresolver \ uui/source/secmacrowarnings \ diff --git a/uui/inc/strings.hrc b/uui/inc/strings.hrc index 8eaa68cb23f6..e5af3465b557 100644 --- a/uui/inc/strings.hrc +++ b/uui/inc/strings.hrc @@ -84,9 +84,4 @@ #define STR_RELOADEDITABLE_MSG NC_("STR_RELOADEDITABLE_MSG", "Document file '$(ARG1)' is now editable \n\nReload this document for editing?") #define STR_RELOADEDITABLE_BTN NC_("STR_RELOADEDITABLE_BTN", "~Reload") -#define STR_READONLYOPEN_TITLE NC_("STR_READONLYOPEN_TITLE", "Document is read-only") -#define STR_READONLYOPEN_MSG NC_("STR_READONLYOPEN_MSG", "Document file '$(ARG1)' is read-only.\n\nOpen read-only or select Notify to open read-only and get notified when the document becomes editable.") -#define STR_READONLYOPEN_BTN NC_("STR_READONLYOPEN_BTN", "Open ~Read-Only") -#define STR_READONLYOPEN_NOTIFY_BTN NC_("STR_READONLYOPEN_NOTIFY_BTN", "~Notify") - /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/uui/source/iahndl-locking.cxx b/uui/source/iahndl-locking.cxx index 47b15dc5e9da..64af0961d48a 100644 --- a/uui/source/iahndl-locking.cxx +++ b/uui/source/iahndl-locking.cxx @@ -23,7 +23,6 @@ #include <com/sun/star/document/LockFileIgnoreRequest.hpp> #include <com/sun/star/document/LockFileCorruptRequest.hpp> #include <com/sun/star/document/OwnLockOnDocumentRequest.hpp> -#include <com/sun/star/document/ReadOnlyOpenRequest.hpp> #include <com/sun/star/document/ReloadEditableRequest.hpp> #include <com/sun/star/task/XInteractionApprove.hpp> #include <com/sun/star/task/XInteractionDisapprove.hpp> @@ -43,7 +42,6 @@ #include "filechanged.hxx" #include "lockfailed.hxx" #include "lockcorrupt.hxx" -#include "readonlyopen.hxx" #include "reloadeditable.hxx" #include "iahndl.hxx" @@ -57,35 +55,6 @@ using namespace com::sun::star; namespace { -void handleReadOnlyOpenRequest_( - weld::Window* pParent, const OUString& aDocumentURL, - uno::Sequence<uno::Reference<task::XInteractionContinuation>> const& rContinuations) -{ - uno::Reference<task::XInteractionApprove> xApprove; - uno::Reference<task::XInteractionAbort> xAbort; - getContinuations(rContinuations, &xApprove, &xAbort); - - if (!xApprove.is() || !xAbort.is()) - return; - - SolarMutexGuard aGuard; - std::locale aResLocale = Translate::Create("uui"); - - OUString aMessage; - std::vector<OUString> aArguments { aDocumentURL }; - - aMessage = Translate::get(STR_READONLYOPEN_MSG, aResLocale); - aMessage = UUIInteractionHelper::replaceMessageWithArguments(aMessage, aArguments); - - ReadOnlyOpenQueryBox aDialog(pParent, aResLocale, aMessage); - int nResult = aDialog.run(); - - if (nResult == RET_YES) - xApprove->select(); - else if (nResult != RET_RETRY) - xAbort->select(); -} - void handleReloadEditableRequest_( weld::Window* pParent, const OUString& aDocumentURL, uno::Sequence<uno::Reference<task::XInteractionContinuation>> const& rContinuations) @@ -354,24 +323,6 @@ UUIInteractionHelper::handleLockFileProblemRequest( return false; } -bool UUIInteractionHelper::handleReadOnlyOpenRequest( - uno::Reference<task::XInteractionRequest> const& rRequest) -{ - uno::Any aAnyRequest(rRequest->getRequest()); - - document::ReadOnlyOpenRequest aReadOnlyOpenRequest; - if (aAnyRequest >>= aReadOnlyOpenRequest) - { - uno::Reference<awt::XWindow> xParent = getParentXWindow(); - handleReadOnlyOpenRequest_(Application::GetFrameWeld(xParent), - aReadOnlyOpenRequest.DocumentURL, - rRequest->getContinuations()); - return true; - } - - return false; -} - bool UUIInteractionHelper::handleReloadEditableRequest( uno::Reference<task::XInteractionRequest> const& rRequest) { diff --git a/uui/source/iahndl.cxx b/uui/source/iahndl.cxx index e36598605b8f..251a642e509f 100644 --- a/uui/source/iahndl.cxx +++ b/uui/source/iahndl.cxx @@ -810,9 +810,6 @@ UUIInteractionHelper::handleRequest_impl( if ( handleReloadEditableRequest( rRequest ) ) return true; - if ( handleReadOnlyOpenRequest( rRequest ) ) - return true; - task::DocumentMacroConfirmationRequest aMacroConfirmRequest; if (aAnyRequest >>= aMacroConfirmRequest) { diff --git a/uui/source/iahndl.hxx b/uui/source/iahndl.hxx index 790686432cef..df2bdd054b47 100644 --- a/uui/source/iahndl.hxx +++ b/uui/source/iahndl.hxx @@ -233,9 +233,6 @@ private: bool handleReloadEditableRequest( css::uno::Reference<css::task::XInteractionRequest> const& rRequest); - bool - handleReadOnlyOpenRequest(css::uno::Reference<css::task::XInteractionRequest> const& rRequest); - bool handleCustomRequest( const css::uno::Reference< css::task::XInteractionRequest >& i_rRequest, const OUString& i_rServiceName diff --git a/uui/source/readonlyopen.cxx b/uui/source/readonlyopen.cxx deleted file mode 100644 index 72a3b989e079..000000000000 --- a/uui/source/readonlyopen.cxx +++ /dev/null @@ -1,38 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; fill-column: 100 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ - -#include <strings.hrc> -#include "readonlyopen.hxx" -#include <officecfg/Office/Common.hxx> -#include <unotools/resmgr.hxx> -#include <vcl/stdtext.hxx> -#include <vcl/svapp.hxx> - -ReadOnlyOpenQueryBox::ReadOnlyOpenQueryBox(weld::Window* pParent, const std::locale& rResLocale, - const OUString& rMessage) - : m_xQueryBox(Application::CreateMessageDialog(pParent, VclMessageType::Question, - VclButtonsType::NONE, rMessage)) -{ - m_xQueryBox->set_title(Translate::get(STR_READONLYOPEN_TITLE, rResLocale)); - m_xQueryBox->add_button(Translate::get(STR_READONLYOPEN_BTN, rResLocale), RET_YES); - m_xQueryBox->add_button(Translate::get(STR_READONLYOPEN_NOTIFY_BTN, rResLocale), RET_RETRY); - m_xQueryBox->add_button(GetStandardText(StandardButtonType::Cancel), RET_CANCEL); -} - -/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */ diff --git a/uui/source/readonlyopen.hxx b/uui/source/readonlyopen.hxx deleted file mode 100644 index 08063d10be0e..000000000000 --- a/uui/source/readonlyopen.hxx +++ /dev/null @@ -1,35 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; fill-column: 100 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ - -#pragma once - -#include <vcl/weld.hxx> - -class ReadOnlyOpenQueryBox -{ -private: - std::unique_ptr<weld::MessageDialog> m_xQueryBox; - -public: - ReadOnlyOpenQueryBox(weld::Window* pParent, const std::locale& rResLocale, - const OUString& rMessage); - int run() { return m_xQueryBox->run(); } -}; - -/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */ |