mirror of
https://invent.kde.org/graphics/okular
synced 2024-10-01 05:33:33 +00:00
Patch: Let form and sign interface to respect the OSD setting
This commit is contained in:
parent
5a58d3bb8e
commit
1855f9e4b1
|
@ -775,8 +775,9 @@ void PartTest::testeRectSelectionStartingOnLinks()
|
|||
Okular::Part part(nullptr, nullptr, dummyArgs);
|
||||
QVERIFY(openDocument(&part, QStringLiteral(KDESRCDIR "data/pdf_with_links.pdf")));
|
||||
// hide info messages as they interfere with selection area
|
||||
Okular::Settings::self()->setShowEmbeddedContentMessages(false);
|
||||
Okular::Settings::self()->setShowOSD(false);
|
||||
;
|
||||
|
||||
part.widget()->show();
|
||||
QVERIFY(QTest::qWaitForWindowExposed(part.widget()));
|
||||
|
||||
|
|
|
@ -178,6 +178,9 @@
|
|||
<default>true</default>
|
||||
</entry>
|
||||
<entry key="ShowOSD" type="Bool" >
|
||||
<default>true</default>
|
||||
</entry>
|
||||
<entry key="ShowEmbeddedContentMessages" type="Bool" >
|
||||
<default>true</default>
|
||||
</entry>
|
||||
<entry key="DisplayDocumentTitle" type="Bool" >
|
||||
|
|
|
@ -2554,6 +2554,13 @@ Context menu actions like Rename Bookmarks etc.)
|
|||
load, &etc;</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><guilabel>Notify about embedded files, forms, or signatures</guilabel></term>
|
||||
<listitem>
|
||||
<para>Whether to show informative panels about embedded files, forms
|
||||
or signatures &etc;</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><guilabel>Display document title in titlebar if available</guilabel></term>
|
||||
<listitem>
|
||||
|
|
|
@ -50,11 +50,17 @@ DlgGeneral::DlgGeneral(QWidget *parent, Okular::EmbedMode embedMode)
|
|||
layout->addRow(QString(), scrollThumbnails);
|
||||
}
|
||||
|
||||
// Checkbox: show hints and info messages
|
||||
QCheckBox *showHints = new QCheckBox(this);
|
||||
showHints->setText(i18nc("@option:check Config dialog, general page", "Show hints and info messages"));
|
||||
showHints->setObjectName(QStringLiteral("kcfg_ShowOSD"));
|
||||
layout->addRow(QString(), showHints);
|
||||
// Checkbox: Show welcoming messages (the balloons or OSD)
|
||||
QCheckBox *showOSD = new QCheckBox(this);
|
||||
showOSD->setText(i18nc("@option:check Config dialog, general page", "Show hints and info messages"));
|
||||
showOSD->setObjectName(QStringLiteral("kcfg_ShowOSD"));
|
||||
layout->addRow(QString(), showOSD);
|
||||
|
||||
// Checkbox: Notify about embedded files, forms, or signatures
|
||||
QCheckBox *showEmbeddedContentMessages = new QCheckBox(this);
|
||||
showEmbeddedContentMessages->setText(i18nc("@option:check Config dialog, general page", "Notify about embedded files, forms, or signatures"));
|
||||
showEmbeddedContentMessages->setObjectName(QStringLiteral("kcfg_ShowEmbeddedContentMessages"));
|
||||
layout->addRow(QString(), showEmbeddedContentMessages);
|
||||
|
||||
if (embedMode != Okular::ViewerWidgetMode) {
|
||||
// Checkbox: display document title in titlebar
|
||||
|
|
|
@ -1253,8 +1253,8 @@ void PageView::notifySetup(const QVector<Okular::Page *> &pageSet, int setupFlag
|
|||
// be done and the old document would still be shown
|
||||
}
|
||||
|
||||
// OSD to display pages
|
||||
if (documentChanged && pageSet.count() > 0 && Okular::Settings::showOSD())
|
||||
// OSD (Message balloons) to display pages
|
||||
if (documentChanged && pageSet.count() > 0)
|
||||
d->messageWindow->display(i18np(" Loaded a one-page document.", " Loaded a %1-page document.", pageSet.count()), QString(), PageViewMessage::Info, 4000);
|
||||
|
||||
updateActionState(haspages, hasformwidgets);
|
||||
|
|
|
@ -1531,18 +1531,18 @@ bool Part::openFile()
|
|||
bool hasEmbeddedFiles = ok && m_document->embeddedFiles() && m_document->embeddedFiles()->count() > 0;
|
||||
if (m_showEmbeddedFiles)
|
||||
m_showEmbeddedFiles->setEnabled(hasEmbeddedFiles);
|
||||
m_topMessage->setVisible(hasEmbeddedFiles && Okular::Settings::showOSD());
|
||||
m_topMessage->setVisible(hasEmbeddedFiles && Okular::Settings::showEmbeddedContentMessages());
|
||||
m_migrationMessage->setVisible(m_document->isDocdataMigrationNeeded());
|
||||
|
||||
// Warn the user that XFA forms are not supported yet (NOTE: poppler generator only)
|
||||
if (ok && m_document->metaData(QStringLiteral("HasUnsupportedXfaForm")).toBool() == true) {
|
||||
if (ok && Okular::Settings::showEmbeddedContentMessages() && m_document->metaData(QStringLiteral("HasUnsupportedXfaForm")).toBool() == true) {
|
||||
m_formsMessage->setText(i18n("This document has XFA forms, which are currently <b>unsupported</b>."));
|
||||
m_formsMessage->setIcon(QIcon::fromTheme(QStringLiteral("dialog-warning")));
|
||||
m_formsMessage->setMessageType(KMessageWidget::Warning);
|
||||
m_formsMessage->setVisible(true);
|
||||
}
|
||||
// m_pageView->toggleFormsAction() may be null on dummy mode
|
||||
else if (ok && m_pageView->toggleFormsAction() && m_pageView->toggleFormsAction()->isEnabled()) {
|
||||
else if (ok && Okular::Settings::showEmbeddedContentMessages() && m_pageView->toggleFormsAction() && m_pageView->toggleFormsAction()->isEnabled()) {
|
||||
m_formsMessage->setText(i18n("This document has forms. Click on the button to interact with them, or use View -> Show Forms."));
|
||||
m_formsMessage->setMessageType(KMessageWidget::Information);
|
||||
m_formsMessage->setVisible(true);
|
||||
|
@ -1561,7 +1561,7 @@ bool Part::openFile()
|
|||
}
|
||||
}
|
||||
|
||||
if (isDigitallySigned) {
|
||||
if (isDigitallySigned && Okular::Settings::showEmbeddedContentMessages()) {
|
||||
if (m_embedMode == PrintPreviewMode) {
|
||||
m_signatureMessage->setText(i18n("All editing and interactive features for this document are disabled. Please save a copy and reopen to edit this document."));
|
||||
} else {
|
||||
|
|
Loading…
Reference in a new issue