filter/source/pdf/impdialog.cxx | 2 -- filter/source/pdf/impdialog.hxx | 1 - filter/uiconfig/ui/pdfgeneralpage.ui | 7 +------ vcl/qt5/QtInstanceBuilder.cxx | 7 +++++++ 4 files changed, 8 insertions(+), 9 deletions(-)
New commits: commit b0bdada577a3748b2aa659b333ccd3917053e8aa Author: Michael Weghorn <[email protected]> AuthorDate: Wed Oct 1 16:50:28 2025 +0200 Commit: Michael Weghorn <[email protected]> CommitDate: Wed Oct 1 21:37:43 2025 +0200 tdf#130857 a11y: Set mnemonic widget in PDF export dialog Set the mnemonic widget instead of manually setting the accessible labelled-for and labelled-by relations. For the case of native Qt widgets (qt6 VCL plugin with SAL_VCL_QT_USE_WELDED_WIDGETS=1), this also means that the label is correctly displayed now, instead of as a literal "PDF& Version" when the accelerator wasn't used as such. Change-Id: Iee2bbaa0f7cc9e98ae3c5333657c44a01a0a3687 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/191745 Tested-by: Jenkins Reviewed-by: Michael Weghorn <[email protected]> diff --git a/filter/uiconfig/ui/pdfgeneralpage.ui b/filter/uiconfig/ui/pdfgeneralpage.ui index 5dea05536721..87218ec9f3fc 100644 --- a/filter/uiconfig/ui/pdfgeneralpage.ui +++ b/filter/uiconfig/ui/pdfgeneralpage.ui @@ -591,9 +591,6 @@ <item id="3" translatable="yes" context="pdfgeneralpage|pdf_version">PDF/A-3b (PDF 1.7 base)</item> <item id="4" translatable="yes" context="pdfgeneralpage|pdf_version">PDF/A-4 (PDF 2.0 base)</item> </items> - <accessibility> - <relation type="labelled-by" target="pdf_version_label"/> - </accessibility> <child internal-child="accessible"> <object class="AtkObject" id="pdf_version-atkobject"> <property name="AtkObject::accessible-description" translatable="yes" context="pdfgeneralpage|extended_tip|pdf_version">Versions can be either the "classic" PDF (i.e. PDF 1.7, PDF 2.0) or PDF/A conformant. PDF/A is defined as an electronic document file format for long term preservation and archiving. It allows only a subset of PDF features that are compatible with that use case. For example: All fonts that were used in the source document will be embedded into the generated PDF file. PDF tags will be written.</property> @@ -619,9 +616,7 @@ <property name="vexpand">True</property> <property name="label" translatable="yes" context="pdfgeneralpage|pdf_version">PDF_ Version:</property> <property name="use-underline">True</property> - <accessibility> - <relation type="label-for" target="pdf_version"/> - </accessibility> + <property name="mnemonic-widget">pdf_version</property> </object> <packing> <property name="expand">False</property> commit 737fce67e8804ec9b03dcc40a8bcb273fab0ba3d Author: Michael Weghorn <[email protected]> AuthorDate: Wed Oct 1 16:16:13 2025 +0200 Commit: Michael Weghorn <[email protected]> CommitDate: Wed Oct 1 21:37:36 2025 +0200 tdf#130857 qt weld: Support PDF export dialog This means that native Qt widgets are used for that dialog now when using the qt5 or qt6 VCL plugin and starting LO with environment variable SAL_VCL_QT_USE_WELDED_WIDGETS=1 set. The dialog can be triggered using "File" -> "Export As" -> "Export as PDF" in Writer. Change-Id: If7c0b9fba1110d6d891d6cce1d4d252a4cf00717 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/191744 Reviewed-by: Michael Weghorn <[email protected]> Tested-by: Jenkins diff --git a/vcl/qt5/QtInstanceBuilder.cxx b/vcl/qt5/QtInstanceBuilder.cxx index a770290f8d1c..481428a57a46 100644 --- a/vcl/qt5/QtInstanceBuilder.cxx +++ b/vcl/qt5/QtInstanceBuilder.cxx @@ -119,6 +119,7 @@ bool QtInstanceBuilder::IsUIFileSupported(const OUString& rUIFile, const weld::W u"dbaccess/ui/tabledesignsavemodifieddialog.ui"_ustr, u"desktop/ui/installforalldialog.ui"_ustr, u"desktop/ui/licensedialog.ui"_ustr, + u"filter/ui/pdfoptionsdialog.ui"_ustr, u"filter/ui/testxmlfilter.ui"_ustr, u"filter/ui/xmlfiltertabpagegeneral.ui"_ustr, u"filter/ui/xmlfiltertabpagetransformation.ui"_ustr, @@ -235,6 +236,12 @@ bool QtInstanceBuilder::IsUIFileSupported(const OUString& rUIFile, const weld::W u"cui/ui/textattrtabpage.ui"_ustr, u"cui/ui/textanimtabpage.ui"_ustr, u"cui/ui/textcolumnstabpage.ui"_ustr, + u"filter/ui/pdfgeneralpage.ui"_ustr, + u"filter/ui/pdflinkspage.ui"_ustr, + u"filter/ui/pdfsecuritypage.ui"_ustr, + u"filter/ui/pdfsignpage.ui"_ustr, + u"filter/ui/pdfuserinterfacepage.ui"_ustr, + u"filter/ui/pdfviewpage.ui"_ustr, u"modules/scalc/ui/statisticsinfopage.ui"_ustr, u"modules/simpress/ui/annotationtagmenu.ui"_ustr, u"modules/swriter/ui/printoptionspage.ui"_ustr, commit 5c762b43c493170890cdeac96e62bae3aa6c4c72 Author: Michael Weghorn <[email protected]> AuthorDate: Wed Oct 1 16:34:28 2025 +0200 Commit: Michael Weghorn <[email protected]> CommitDate: Wed Oct 1 21:37:27 2025 +0200 tdf#130857 pdf export dialog: Don't disable frame label Don't disable the File "Encryption and Permission" frame label in the "Security" page of the PDF export dialog. A part of its content (the labels saying why no encryption happens, when one of the PDF/A versions was selected in the "General" tab) is not disabled either, so the frame label itself shouldn't either, as the frame itself isn't disabled altogether. This also prepares for supporting the dialog with native Qt widgets, where there is no separate label widget for the frame, but the QGroupBox widget used in QtInstanceFrame handles the title itself. Change-Id: Ic8cf0bd09deae69f8830b972014e68d6126248d8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/191743 Tested-by: Jenkins Reviewed-by: Michael Weghorn <[email protected]> diff --git a/filter/source/pdf/impdialog.cxx b/filter/source/pdf/impdialog.cxx index e319530fb53c..108291f21ddd 100644 --- a/filter/source/pdf/impdialog.cxx +++ b/filter/source/pdf/impdialog.cxx @@ -1372,7 +1372,6 @@ ImpPDFTabSecurityPage::ImpPDFTabSecurityPage(weld::Container* pPage, weld::Dialo , mxCbEnableCopy(m_xBuilder->weld_check_button(u"enablecopy"_ustr)) , mxCbEnableAccessibility(m_xBuilder->weld_check_button(u"enablea11y"_ustr)) , mxPasswordTitle(m_xBuilder->weld_label(u"setpasswordstitle"_ustr)) - , mxPermissionTitle(m_xBuilder->weld_label(u"label2"_ustr)) { msStrSetPwd = mxPasswordTitle->get_label(); mxPbSetPwd->connect_clicked(LINK(this, ImpPDFTabSecurityPage, ClickmaPbSetPwdHdl)); @@ -1537,7 +1536,6 @@ void ImpPDFTabSecurityPage::enablePermissionControls() { mxCbEnableAccessibility->set_active(true); } - mxPermissionTitle->set_sensitive(!bIsPDFASel); mxPbSetPwd->set_sensitive(!bIsPDFASel); mxCbEnableAccessibility->set_sensitive(!bIsPDFUASel); if (bIsPDFASel) diff --git a/filter/source/pdf/impdialog.hxx b/filter/source/pdf/impdialog.hxx index 6d3bc4a3b695..625b662ef8e8 100644 --- a/filter/source/pdf/impdialog.hxx +++ b/filter/source/pdf/impdialog.hxx @@ -362,7 +362,6 @@ class ImpPDFTabSecurityPage : public SfxTabPage std::unique_ptr<weld::CheckButton> mxCbEnableCopy; std::unique_ptr<weld::CheckButton> mxCbEnableAccessibility; std::unique_ptr<weld::Label> mxPasswordTitle; - std::unique_ptr<weld::Label> mxPermissionTitle; std::shared_ptr< SfxPasswordDialog > mpPasswordDialog; std::shared_ptr< weld::MessageDialog > mpUnsupportedMsgDialog;
