vcl/inc/jsdialog/enabled.hxx | 6 ++++-- vcl/jsdialog/enabled.cxx | 20 ++++++++++++++++++++ vcl/source/window/builder.cxx | 9 +++++++++ 3 files changed, 33 insertions(+), 2 deletions(-)
New commits: commit d7247716a065ef09cf795d4af23a54ce1df0f58f Author: Caolán McNamara <[email protected]> AuthorDate: Wed Jan 21 14:47:50 2026 +0000 Commit: Miklos Vajna <[email protected]> CommitDate: Fri Jan 23 16:43:21 2026 +0100 add MissingWriterSidebarCoverage result Change-Id: Ifa20e6859560c518c7722179b475c2801ff8d498 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/197862 Reviewed-by: Miklos Vajna <[email protected]> Tested-by: Jenkins CollaboraOffice <[email protected]> diff --git a/vcl/inc/jsdialog/enabled.hxx b/vcl/inc/jsdialog/enabled.hxx index 3b7b33ba9ade..76acfc6483ed 100644 --- a/vcl/inc/jsdialog/enabled.hxx +++ b/vcl/inc/jsdialog/enabled.hxx @@ -26,9 +26,11 @@ bool isBuilderEnabledForNavigator(std::u16string_view rUIFile); bool isBuilderEnabledForQuickFind(std::u16string_view rUIFile); bool isInterimBuilderEnabledForNotebookbar(std::u16string_view rUIFile); -// returns vector of writer .ui files not seen that should be seen to have complete coverage +// returns vector of writer dialog .ui files not seen that should be seen to have complete coverage std::vector<OUString> completeWriterDialogList(const o3tl::sorted_vector<OUString>& entries); -// returns vector of common/shared .ui files not seen that should be seen to have complete coverage +// returns vector of writer sidebar .ui files not seen that should be seen to have complete coverage +std::vector<OUString> completeWriterSidebarList(const o3tl::sorted_vector<OUString>& entries); +// returns vector of common/shared dialog .ui files not seen that should be seen to have complete coverage std::vector<OUString> completeCommonDialogList(const o3tl::sorted_vector<OUString>& entries); } diff --git a/vcl/jsdialog/enabled.cxx b/vcl/jsdialog/enabled.cxx index 6fb2fe43852f..60bc147f225d 100644 --- a/vcl/jsdialog/enabled.cxx +++ b/vcl/jsdialog/enabled.cxx @@ -662,6 +662,26 @@ std::vector<OUString> completeWriterDialogList(const o3tl::sorted_vector<OUStrin return missing; } +std::vector<OUString> completeWriterSidebarList(const o3tl::sorted_vector<OUString>& entries) +{ + std::vector<OUString> missing; + for (const auto& entry : SidebarList) + { + OUString sEntry(entry); + // Skip these ones, I don't think they can appear in practice + if (entry == u"modules/swriter/ui/managechangessidebar.ui" || + entry == u"modules/swriter/ui/pagefooterpanel.ui" || + entry == u"modules/swriter/ui/pageheaderpanel.ui" || + entry == u"modules/swriter/ui/pagestylespanel.ui" || + entry == u"modules/swriter/ui/sidebarstylepresets.ui" || + entry == u"modules/swriter/ui/sidebartheme.ui") + continue; + else if (sEntry.startsWith("modules/swriter/") && !entries.contains(sEntry)) + missing.push_back(sEntry); + } + return missing; +} + std::vector<OUString> completeCommonDialogList(const o3tl::sorted_vector<OUString>& entries) { std::vector<OUString> missing; diff --git a/vcl/source/window/builder.cxx b/vcl/source/window/builder.cxx index c35dda95b626..b6b2f8577f1c 100644 --- a/vcl/source/window/builder.cxx +++ b/vcl/source/window/builder.cxx @@ -213,6 +213,15 @@ void Application::UICoverageReport(tools::JsonWriter& rJson) rJson.putSimpleValue(entry); } + std::vector<OUString> missingWriterSidebarUIs = jsdialog::completeWriterSidebarList(entries); + rJson.put("CompleteWriterSidebarCoverage", missingWriterSidebarUIs.empty()); + if (!missingWriterSidebarUIs.empty()) + { + auto childrenNode = rJson.startArray("MissingWriterSidebarCoverage"); + for (const auto& entry : missingWriterSidebarUIs) + rJson.putSimpleValue(entry); + } + std::vector<OUString> missingCommonDialogUIs = jsdialog::completeCommonDialogList(entries); rJson.put("CompleteCommonDialogCoverage", missingCommonDialogUIs.empty()); if (!missingCommonDialogUIs.empty())
