loleaflet/src/control/Control.DocumentNameInput.js | 7 +++---- loleaflet/src/map/handler/Map.WOPI.js | 4 ++++ wsd/DocumentBroker.cpp | 2 ++ wsd/Storage.cpp | 4 +++- wsd/Storage.hpp | 6 ++++++ 5 files changed, 18 insertions(+), 5 deletions(-)
New commits: commit be15790e24d628ccaf5dc722d432c1829d6767ba Author: Michael Meeks <michael.me...@collabora.com> AuthorDate: Tue Jun 9 17:43:58 2020 +0100 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Tue Jul 21 20:47:43 2020 +0200 Add support for BreadcrumbDocName. Change-Id: I06c56e92dd3acf9269140ecefb0c8bc731191260 Reviewed-on: https://gerrit.libreoffice.org/c/online/+/95960 Tested-by: Jenkins Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoff...@gmail.com> Reviewed-by: Michael Meeks <michael.me...@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/online/+/98193 Reviewed-by: Andras Timar <andras.ti...@collabora.com> diff --git a/loleaflet/src/control/Control.DocumentNameInput.js b/loleaflet/src/control/Control.DocumentNameInput.js index 28db57f41..cfc4e5998 100644 --- a/loleaflet/src/control/Control.DocumentNameInput.js +++ b/loleaflet/src/control/Control.DocumentNameInput.js @@ -40,7 +40,7 @@ L.Control.DocumentNameInput = L.Control.extend({ }, documentNameCancel: function() { - $('#document-name-input').val(this.map['wopi'].BaseFileName); + $('#document-name-input').val(this.map['wopi'].BreadcrumbDocName); this.map._onGotFocus(); }, @@ -97,10 +97,9 @@ L.Control.DocumentNameInput = L.Control.extend({ }, onWopiProps: function(e) { - if (e.BaseFileName !== null) { + if (e.BaseFileName !== null) // set the document name into the name field - $('#document-name-input').val(e.BaseFileName); - } + $('#document-name-input').val(e.BreadcrumbDocName !== undefined ? e.BreadcrumbDocName : e.BaseFileName); if (e.UserCanNotWriteRelative === false) { // Save As allowed diff --git a/loleaflet/src/map/handler/Map.WOPI.js b/loleaflet/src/map/handler/Map.WOPI.js index da79219e8..3e41b7fae 100644 --- a/loleaflet/src/map/handler/Map.WOPI.js +++ b/loleaflet/src/map/handler/Map.WOPI.js @@ -10,6 +10,7 @@ L.Map.WOPI = L.Handler.extend({ // wouldn't be possible otherwise. PostMessageOrigin: '*', BaseFileName: '', + BreadcrumbDocName: '', DocumentLoadedTime: false, HidePrintOption: false, HideSaveOption: false, @@ -76,6 +77,9 @@ L.Map.WOPI = L.Handler.extend({ } this.BaseFileName = wopiInfo['BaseFileName']; + this.BreadcrumbDocName = wopiInfo['BreadcrumbDocName']; + if (this.BreadcrumbDocName === undefined) + this.BreadcrumbDocName = this.BaseFileName; this.HidePrintOption = !!wopiInfo['HidePrintOption']; this.HideSaveOption = !!wopiInfo['HideSaveOption']; this.HideExportOption = !!wopiInfo['HideExportOption']; diff --git a/wsd/DocumentBroker.cpp b/wsd/DocumentBroker.cpp index 2c0ec41c2..086ad1699 100644 --- a/wsd/DocumentBroker.cpp +++ b/wsd/DocumentBroker.cpp @@ -663,6 +663,8 @@ bool DocumentBroker::load(const std::shared_ptr<ClientSession>& session, const s wopifileinfo->setHideExportOption(true); wopiInfo->set("BaseFileName", wopiStorage->getFileInfo().getFilename()); + if (wopifileinfo->getBreadcrumbDocName().size()) + wopiInfo->set("BreadcrumbDocName", wopifileinfo->getBreadcrumbDocName()); if (!wopifileinfo->getTemplateSaveAs().empty()) wopiInfo->set("TemplateSaveAs", wopifileinfo->getTemplateSaveAs()); diff --git a/wsd/Storage.cpp b/wsd/Storage.cpp index a27240bf1..3acbccbc4 100644 --- a/wsd/Storage.cpp +++ b/wsd/Storage.cpp @@ -613,6 +613,7 @@ std::unique_ptr<WopiStorage::WOPIFileInfo> WopiStorage::getWOPIFileInfo(const Au std::string watermarkText; std::string templateSaveAs; std::string templateSource; + std::string breadcrumbDocName; bool canWrite = false; bool enableOwnerTermination = false; std::string postMessageOrigin; @@ -719,6 +720,7 @@ std::unique_ptr<WopiStorage::WOPIFileInfo> WopiStorage::getWOPIFileInfo(const Au JsonUtil::findJSONValue(object, "SupportsLocks", supportsLocks); JsonUtil::findJSONValue(object, "SupportsRename", supportsRename); JsonUtil::findJSONValue(object, "UserCanRename", userCanRename); + JsonUtil::findJSONValue(object, "BreadcrumbDocName", breadcrumbDocName); bool booleanFlag = false; if (JsonUtil::findJSONValue(object, "DisableChangeTrackingRecord", booleanFlag)) disableChangeTrackingRecord = (booleanFlag ? WOPIFileInfo::TriState::True : WOPIFileInfo::TriState::False); @@ -750,7 +752,7 @@ std::unique_ptr<WopiStorage::WOPIFileInfo> WopiStorage::getWOPIFileInfo(const Au watermarkText = overrideWatermarks; return std::unique_ptr<WopiStorage::WOPIFileInfo>(new WOPIFileInfo( - {userId, obfuscatedUserId, userName, userExtraInfo, watermarkText, templateSaveAs, templateSource, + {userId, obfuscatedUserId, userName, userExtraInfo, watermarkText, templateSaveAs, templateSource, breadcrumbDocName, canWrite, postMessageOrigin, hidePrintOption, hideSaveOption, hideExportOption, enableOwnerTermination, disablePrint, disableExport, disableCopy, disableInactiveMessages, downloadAsPostMessage, userCanNotWriteRelative, enableInsertRemoteImage, enableShare, diff --git a/wsd/Storage.hpp b/wsd/Storage.hpp index e5ea41101..e8795ab85 100644 --- a/wsd/Storage.hpp +++ b/wsd/Storage.hpp @@ -381,6 +381,7 @@ public: const std::string& watermarkText, const std::string& templateSaveAs, const std::string& templateSource, + const std::string& breadcrumbDocName, const bool userCanWrite, const std::string& postMessageOrigin, const bool hidePrintOption, @@ -409,6 +410,7 @@ public: _watermarkText(watermarkText), _templateSaveAs(templateSaveAs), _templateSource(templateSource), + _breadcrumbDocName(breadcrumbDocName), _userCanWrite(userCanWrite), _postMessageOrigin(postMessageOrigin), _hidePrintOption(hidePrintOption), @@ -447,6 +449,8 @@ public: const std::string& getTemplateSource() const { return _templateSource; } + const std::string& getBreadcrumbDocName() const { return _breadcrumbDocName; } + bool getUserCanWrite() const { return _userCanWrite; } std::string& getPostMessageOrigin() { return _postMessageOrigin; } @@ -510,6 +514,8 @@ public: std::string _templateSaveAs; /// In case we want to use this file as a template. std::string _templateSource; + /// User readable string of document name to show in UI, if present. + std::string _breadcrumbDocName; /// If user accessing the file has write permission bool _userCanWrite; /// WOPI Post message property _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits