Add links to docs in the Help menu (#3274)

* Fix #3266 and Fix #3197 
* Add documentation links to Help menu
* Added offline documentation (PDF) for Getting Started Guide and User Guide
This commit is contained in:
Soham Gumaste 2019-06-19 06:16:46 +05:30 committed by Jonathan White
parent 05c11d1b7c
commit 9728df2a48
7 changed files with 66 additions and 6 deletions

View File

@ -39,6 +39,8 @@ if(APPLE)
install(FILES macosx/keepassxc.icns DESTINATION ${DATA_INSTALL_DIR})
endif()
install(DIRECTORY docs/ DESTINATION ${DATA_INSTALL_DIR}/docs FILES_MATCHING PATTERN "*.pdf")
install(DIRECTORY wizard/ DESTINATION ${DATA_INSTALL_DIR}/wizard FILES_MATCHING PATTERN "*.png")
install(DIRECTORY icons/application/ DESTINATION ${DATA_INSTALL_DIR}/icons/application

Binary file not shown.

Binary file not shown.

View File

@ -59,6 +59,13 @@
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label">
<property name="text">
<string>Browsers installed as snaps are currently not supported.</string>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="extensionLabel"/>
</item>

View File

@ -397,6 +397,10 @@ MainWindow::MainWindow()
connect(m_ui->actionAbout, SIGNAL(triggered()), SLOT(showAboutDialog()));
connect(m_ui->actionDonate, SIGNAL(triggered()), SLOT(openDonateUrl()));
connect(m_ui->actionBugReport, SIGNAL(triggered()), SLOT(openBugReportUrl()));
connect(m_ui->actionGettingStarted, SIGNAL(triggered()), SLOT(openGettingStartedGuide()));
connect(m_ui->actionUserGuide, SIGNAL(triggered()), SLOT(openUserGuide()));
connect(m_ui->actionOnlineHelp, SIGNAL(triggered()), SLOT(openOnlineHelp()));
#ifdef Q_OS_MACOS
setUnifiedTitleAndToolBarOnMac(true);
@ -758,16 +762,35 @@ void MainWindow::showUpdateCheckDialog()
#endif
}
void MainWindow::customOpenUrl(QString url)
{
QDesktopServices::openUrl(QUrl(url));
}
void MainWindow::openDonateUrl()
{
QDesktopServices::openUrl(QUrl("https://keepassxc.org/donate"));
customOpenUrl("https://keepassxc.org/donate");
}
void MainWindow::openBugReportUrl()
{
QDesktopServices::openUrl(QUrl("https://github.com/keepassxreboot/keepassxc/issues"));
customOpenUrl("https://github.com/keepassxreboot/keepassxc/issues");
}
void MainWindow::openGettingStartedGuide()
{
customOpenUrl(filePath()->dataPath("docs/KeePassXC_GettingStarted.pdf"));
}
void MainWindow::openUserGuide()
{
customOpenUrl(filePath()->dataPath("docs/KeePassXC_UserGuide.pdf"));
}
void MainWindow::openOnlineHelp()
{
customOpenUrl("https://keepassxc.org/docs/");
}
void MainWindow::switchToDatabases()
{
if (m_ui->tabWidget->currentIndex() == -1) {

View File

@ -91,6 +91,9 @@ private slots:
void hasUpdateAvailable(bool hasUpdate, const QString& version, bool isManuallyRequested);
void openDonateUrl();
void openBugReportUrl();
void openGettingStartedGuide();
void openUserGuide();
void openOnlineHelp();
void switchToDatabases();
void switchToSettings(bool enabled);
void switchToPasswordGen(bool enabled);
@ -132,6 +135,7 @@ private:
bool saveLastDatabases();
void updateTrayIcon();
bool isTrayIconEnabled() const;
void customOpenUrl(QString url);
static QStringList kdbxFilesFromUrls(const QList<QUrl>& urls);
void dragEnterEvent(QDragEnterEvent* event) override;

View File

@ -224,6 +224,11 @@
<string>&amp;Help</string>
</property>
<addaction name="actionAbout"/>
<addaction name="separator"/>
<addaction name="actionGettingStarted"/>
<addaction name="actionUserGuide"/>
<addaction name="actionOnlineHelp"/>
<addaction name="separator"/>
<addaction name="actionCheckForUpdates"/>
<addaction name="actionDonate"/>
<addaction name="actionBugReport"/>
@ -355,7 +360,7 @@
</action>
<action name="actionCheckForUpdates">
<property name="text">
<string>Check for Updates...</string>
<string>&amp;Check for Updates...</string>
</property>
<property name="menuRole">
<enum>QAction::ApplicationSpecificRole</enum>
@ -547,7 +552,7 @@
<bool>true</bool>
</property>
<property name="text">
<string>Password Generator</string>
<string>&amp;Password Generator</string>
</property>
</action>
<action name="actionEntryAutoType">
@ -677,9 +682,28 @@
<string>Report a &amp;bug</string>
</property>
</action>
<action name="actionShare_entry">
<action name="actionGettingStarted">
<property name="text">
<string>Share entry</string>
<string>&amp;Getting Started</string>
</property>
<property name="toolTip">
<string>Open Getting Started Guide PDF</string>
</property>
</action>
<action name="actionOnlineHelp">
<property name="text">
<string>&amp;Online Help...</string>
</property>
<property name="toolTip">
<string>Go to online documentation (opens browser)</string>
</property>
</action>
<action name="actionUserGuide">
<property name="text">
<string>&amp;User Guide</string>
</property>
<property name="toolTip">
<string>Open User Guide PDF</string>
</property>
</action>
</widget>