Move widgets from tray app to separate lib

So settings pages, web view and other widgets
can be used in other components such as the
Dolphin plugin and Plasmoid, too.
This commit is contained in:
Martchus 2017-04-23 18:27:31 +02:00
parent 16d62bb0c6
commit 49ff5a7b65
48 changed files with 2039 additions and 1167 deletions

View File

@ -15,10 +15,11 @@ set(META_VERSION_EXACT_SONAME ON)
project(${META_PROJECT_NAME})
# options for partial build
option(NO_CLI "specifies whether building CLI should be skipped" OFF)
option(NO_TRAY "specifies whether building the tray should be skipped" OFF)
option(NO_FILE_ITEM_ACTION_PLUGIN "specifies whether building the file item action plugin should be skipped" OFF)
option(NO_MODEL "specifies whether building models should be skipped, implies NO_TRAY" OFF)
option(NO_CLI "whether building CLI should be skipped" OFF)
option(NO_TRAY "whether building the tray should be skipped" OFF)
option(NO_FILE_ITEM_ACTION_PLUGIN "whether building the file item action plugin should be skipped" OFF)
option(NO_MODEL "whether building models should be skipped, implies NO_TRAY" OFF)
option(NO_WIDGETS "whether building widgets should be skipped, implies NO_TRAY" OFF)
# add subdirectories
enable_testing()
@ -31,8 +32,11 @@ endif()
if(NOT NO_MODEL)
add_subdirectory(model)
link_directories(${LIB_SYNCTHING_MODEL_BINARY_DIR})
if(NOT NO_TRAY)
add_subdirectory(tray)
if(NOT NO_WIDGETS)
add_subdirectory(widgets)
if(NOT NO_TRAY)
add_subdirectory(tray)
endif()
endif()
endif()
if(NOT NO_FILE_ITEM_ACTION_PLUGIN)

View File

@ -8,27 +8,27 @@
<translation type="vanished">nicht mehr verfügbar</translation>
</message>
<message>
<location filename="../syncthingfileitemaction.cpp" line="107"/>
<location filename="../syncthingfileitemaction.cpp" line="130"/>
<source>Status: not available anymore</source>
<translation>Status: nicht mehr verfügbar</translation>
</message>
<message>
<location filename="../syncthingfileitemaction.cpp" line="116"/>
<location filename="../syncthingfileitemaction.cpp" line="139"/>
<source>Directory info for %1</source>
<translation>Verzeichnisinfo für %1</translation>
</message>
<message>
<location filename="../syncthingfileitemaction.cpp" line="118"/>
<location filename="../syncthingfileitemaction.cpp" line="141"/>
<source>Status: </source>
<translation>Status: </translation>
</message>
<message>
<location filename="../syncthingfileitemaction.cpp" line="141"/>
<location filename="../syncthingfileitemaction.cpp" line="164"/>
<source>Last scan time: </source>
<translation>Letzter Scan: </translation>
</message>
<message>
<location filename="../syncthingfileitemaction.cpp" line="143"/>
<location filename="../syncthingfileitemaction.cpp" line="166"/>
<source>Rescan interval: %1 seconds</source>
<translation>Scanintervall: %1 Sekunden</translation>
</message>
@ -36,65 +36,65 @@
<context>
<name>SyncthingFileItemAction</name>
<message>
<location filename="../syncthingfileitemaction.cpp" line="303"/>
<location filename="../syncthingfileitemaction.cpp" line="326"/>
<source>Rescan %1 (in %2)</source>
<translation>&quot;%1&quot; neu scannen (in &quot;%2&quot;)</translation>
</message>
<message>
<location filename="../syncthingfileitemaction.cpp" line="304"/>
<location filename="../syncthingfileitemaction.cpp" line="327"/>
<source>Rescan selected items</source>
<translation>Auswahl neu scannen</translation>
</message>
<message>
<location filename="../syncthingfileitemaction.cpp" line="322"/>
<location filename="../syncthingfileitemaction.cpp" line="345"/>
<source>Rescan selected directories</source>
<translation>Ausgewählte Verzeichnisse neu scannen</translation>
</message>
<message>
<location filename="../syncthingfileitemaction.cpp" line="349"/>
<location filename="../syncthingfileitemaction.cpp" line="372"/>
<source>Resume selected directories</source>
<translation>Ausgewählte verzeichnisse fortsetzen</translation>
</message>
<message>
<location filename="../syncthingfileitemaction.cpp" line="321"/>
<location filename="../syncthingfileitemaction.cpp" line="372"/>
<location filename="../syncthingfileitemaction.cpp" line="344"/>
<location filename="../syncthingfileitemaction.cpp" line="395"/>
<source>Rescan %1</source>
<translation>&quot;%1&quot; neu scannen</translation>
</message>
<message>
<location filename="../syncthingfileitemaction.cpp" line="233"/>
<location filename="../syncthingfileitemaction.cpp" line="256"/>
<source>Syncthing connection error</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../syncthingfileitemaction.cpp" line="348"/>
<location filename="../syncthingfileitemaction.cpp" line="398"/>
<location filename="../syncthingfileitemaction.cpp" line="371"/>
<location filename="../syncthingfileitemaction.cpp" line="421"/>
<source>Resume %1</source>
<translation>&quot;%1&quot; fortsetzen</translation>
</message>
<message>
<location filename="../syncthingfileitemaction.cpp" line="355"/>
<location filename="../syncthingfileitemaction.cpp" line="405"/>
<location filename="../syncthingfileitemaction.cpp" line="378"/>
<location filename="../syncthingfileitemaction.cpp" line="428"/>
<source>Pause %1</source>
<translation>&quot;%1&quot; pausieren</translation>
</message>
<message>
<location filename="../syncthingfileitemaction.cpp" line="356"/>
<location filename="../syncthingfileitemaction.cpp" line="379"/>
<source>Pause selected directories</source>
<translation>Ausgewählte Verzeichnisse pausieren</translation>
</message>
<message>
<location filename="../syncthingfileitemaction.cpp" line="373"/>
<location filename="../syncthingfileitemaction.cpp" line="396"/>
<source>Rescan containing directories</source>
<translation>Beinhaltendes Verzeichnis neu scannen</translation>
</message>
<message>
<location filename="../syncthingfileitemaction.cpp" line="399"/>
<location filename="../syncthingfileitemaction.cpp" line="422"/>
<source>Resume containing directories</source>
<translation>Beinhaltendes Verzeichnis fortsetzen</translation>
</message>
<message>
<location filename="../syncthingfileitemaction.cpp" line="406"/>
<location filename="../syncthingfileitemaction.cpp" line="429"/>
<source>Pause containing directories</source>
<translation>Beinhaltendes Verzeichnis pausieren</translation>
</message>
@ -111,8 +111,8 @@
<translation type="vanished">Scanintervall: %1 Sekunden</translation>
</message>
<message>
<location filename="../syncthingfileitemaction.cpp" line="248"/>
<location filename="../syncthingfileitemaction.cpp" line="432"/>
<location filename="../syncthingfileitemaction.cpp" line="271"/>
<location filename="../syncthingfileitemaction.cpp" line="455"/>
<source>About</source>
<translation>Über</translation>
</message>
@ -120,12 +120,12 @@
<context>
<name>SyncthingMenuAction</name>
<message>
<location filename="../syncthingfileitemaction.cpp" line="69"/>
<location filename="../syncthingfileitemaction.cpp" line="71"/>
<source>Syncthing</source>
<translation></translation>
</message>
<message>
<location filename="../syncthingfileitemaction.cpp" line="83"/>
<location filename="../syncthingfileitemaction.cpp" line="85"/>
<source>Syncthing - connecting</source>
<translation>Syncthing - verbinde</translation>
</message>

View File

@ -4,27 +4,27 @@
<context>
<name>SyncthingDirActions</name>
<message>
<location filename="../syncthingfileitemaction.cpp" line="107"/>
<location filename="../syncthingfileitemaction.cpp" line="130"/>
<source>Status: not available anymore</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../syncthingfileitemaction.cpp" line="116"/>
<location filename="../syncthingfileitemaction.cpp" line="139"/>
<source>Directory info for %1</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../syncthingfileitemaction.cpp" line="118"/>
<location filename="../syncthingfileitemaction.cpp" line="141"/>
<source>Status: </source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../syncthingfileitemaction.cpp" line="141"/>
<location filename="../syncthingfileitemaction.cpp" line="164"/>
<source>Last scan time: </source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../syncthingfileitemaction.cpp" line="143"/>
<location filename="../syncthingfileitemaction.cpp" line="166"/>
<source>Rescan interval: %1 seconds</source>
<translation type="unfinished"></translation>
</message>
@ -32,71 +32,71 @@
<context>
<name>SyncthingFileItemAction</name>
<message>
<location filename="../syncthingfileitemaction.cpp" line="303"/>
<location filename="../syncthingfileitemaction.cpp" line="326"/>
<source>Rescan %1 (in %2)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../syncthingfileitemaction.cpp" line="304"/>
<location filename="../syncthingfileitemaction.cpp" line="327"/>
<source>Rescan selected items</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../syncthingfileitemaction.cpp" line="322"/>
<location filename="../syncthingfileitemaction.cpp" line="345"/>
<source>Rescan selected directories</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../syncthingfileitemaction.cpp" line="349"/>
<location filename="../syncthingfileitemaction.cpp" line="372"/>
<source>Resume selected directories</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../syncthingfileitemaction.cpp" line="321"/>
<location filename="../syncthingfileitemaction.cpp" line="372"/>
<location filename="../syncthingfileitemaction.cpp" line="344"/>
<location filename="../syncthingfileitemaction.cpp" line="395"/>
<source>Rescan %1</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../syncthingfileitemaction.cpp" line="233"/>
<location filename="../syncthingfileitemaction.cpp" line="256"/>
<source>Syncthing connection error</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../syncthingfileitemaction.cpp" line="348"/>
<location filename="../syncthingfileitemaction.cpp" line="398"/>
<location filename="../syncthingfileitemaction.cpp" line="371"/>
<location filename="../syncthingfileitemaction.cpp" line="421"/>
<source>Resume %1</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../syncthingfileitemaction.cpp" line="355"/>
<location filename="../syncthingfileitemaction.cpp" line="405"/>
<location filename="../syncthingfileitemaction.cpp" line="378"/>
<location filename="../syncthingfileitemaction.cpp" line="428"/>
<source>Pause %1</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../syncthingfileitemaction.cpp" line="356"/>
<location filename="../syncthingfileitemaction.cpp" line="379"/>
<source>Pause selected directories</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../syncthingfileitemaction.cpp" line="373"/>
<location filename="../syncthingfileitemaction.cpp" line="396"/>
<source>Rescan containing directories</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../syncthingfileitemaction.cpp" line="399"/>
<location filename="../syncthingfileitemaction.cpp" line="422"/>
<source>Resume containing directories</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../syncthingfileitemaction.cpp" line="406"/>
<location filename="../syncthingfileitemaction.cpp" line="429"/>
<source>Pause containing directories</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../syncthingfileitemaction.cpp" line="248"/>
<location filename="../syncthingfileitemaction.cpp" line="432"/>
<location filename="../syncthingfileitemaction.cpp" line="271"/>
<location filename="../syncthingfileitemaction.cpp" line="455"/>
<source>About</source>
<translation type="unfinished"></translation>
</message>
@ -104,12 +104,12 @@
<context>
<name>SyncthingMenuAction</name>
<message>
<location filename="../syncthingfileitemaction.cpp" line="69"/>
<location filename="../syncthingfileitemaction.cpp" line="71"/>
<source>Syncthing</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../syncthingfileitemaction.cpp" line="83"/>
<location filename="../syncthingfileitemaction.cpp" line="85"/>
<source>Syncthing - connecting</source>
<translation type="unfinished"></translation>
</message>

View File

@ -178,8 +178,8 @@
<location filename="../syncthingdirectorymodel.cpp" line="105"/>
<source>%1 item(s) out of sync</source>
<translation type="unfinished">
<numerusform>%1 item out of sync</numerusform>
<numerusform>%1 items out of sync</numerusform>
<numerusform></numerusform>
<numerusform></numerusform>
</translation>
</message>
<message>
@ -194,12 +194,17 @@
</message>
<message>
<location filename="../syncthingdirectorymodel.cpp" line="153"/>
<source>Click for details</source>
<source>Failed items</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../syncthingdirectorymodel.cpp" line="153"/>
<source>Failed items</source>
<source>Click for details</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../syncthingdirectorymodel.cpp" line="171"/>
<source>Paused</source>
<translation type="unfinished"></translation>
</message>
<message>
@ -208,13 +213,13 @@
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../syncthingdirectorymodel.cpp" line="176"/>
<source>Idle</source>
<location filename="../syncthingdirectorymodel.cpp" line="175"/>
<source>Unshared</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../syncthingdirectorymodel.cpp" line="175"/>
<source>Unshared</source>
<location filename="../syncthingdirectorymodel.cpp" line="176"/>
<source>Idle</source>
<translation type="unfinished"></translation>
</message>
<message>
@ -237,11 +242,6 @@
<source>Synchronizing</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../syncthingdirectorymodel.cpp" line="171"/>
<source>Paused</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../syncthingdirectorymodel.cpp" line="179"/>
<source>Out of sync</source>

View File

@ -9,52 +9,35 @@ set(META_APP_ACTION_OPEN_WEBUI "open-webui" "Open web UI" "--webui")
# add project files
set(WIDGETS_HEADER_FILES
application/settings.h
application/singleinstance.h
gui/trayicon.h
gui/traywidget.h
gui/traymenu.h
gui/settingsdialog.h
gui/webpage.h
gui/webviewdialog.h
gui/dirbuttonsitemdelegate.h
gui/devbuttonsitemdelegate.h
gui/downloaditemdelegate.h
gui/dirview.h
gui/devview.h
gui/downloadview.h
gui/textviewdialog.h
)
set(WIDGETS_SRC_FILES
application/main.cpp
application/settings.cpp
application/singleinstance.cpp
gui/trayicon.cpp
gui/traywidget.cpp
gui/traymenu.cpp
gui/settingsdialog.cpp
gui/webpage.cpp
gui/webviewdialog.cpp
gui/dirbuttonsitemdelegate.cpp
gui/devbuttonsitemdelegate.cpp
gui/downloaditemdelegate.cpp
gui/dirview.cpp
gui/devview.cpp
gui/downloadview.cpp
gui/textviewdialog.cpp
)
set(RES_FILES
resources/${META_PROJECT_NAME}icons.qrc
)
set(WIDGETS_UI_FILES
gui/traywidget.ui
gui/connectionoptionpage.ui
gui/notificationsoptionpage.ui
gui/appearanceoptionpage.ui
gui/autostartoptionpage.ui
gui/launcheroptionpage.ui
gui/systemdoptionpage.ui
gui/webviewoptionpage.ui
)
set(TS_FILES
@ -122,6 +105,8 @@ find_package(syncthingconnector ${META_APP_VERSION} REQUIRED)
use_syncthingconnector()
find_package(syncthingmodel ${META_APP_VERSION} REQUIRED)
use_syncthingmodel()
find_package(syncthingwidgets ${META_APP_VERSION} REQUIRED)
use_syncthingwidgets()
# link also explicitely against the following Qt 5 modules
list(APPEND ADDITIONAL_QT_MODULES Network)
@ -131,7 +116,6 @@ include(BasicConfig)
include(QtGuiConfig)
include(QtConfig)
include(WindowsResources)
include(WebViewProviderConfig)
include(AppTarget)
include(ShellCompletion)
include(Doxygen)

View File

@ -1,9 +1,10 @@
#include "./settings.h"
#include "./singleinstance.h"
#include "../gui/trayicon.h"
#include "../gui/traywidget.h"
#include "../../widgets/settings/settings.h"
#include "../../connector/syncthingprocess.h"
#ifdef LIB_SYNCTHING_CONNECTOR_SUPPORT_SYSTEMD
# include "../../connector/syncthingservice.h"

View File

@ -1,7 +1,7 @@
#include "./dirview.h"
#include "./dirbuttonsitemdelegate.h"
#include "./textviewdialog.h"
#include "../../widgets/misc/textviewdialog.h"
#include "../../model/syncthingdirectorymodel.h"
#include "../../connector/syncthingconnection.h"

View File

@ -1,7 +1,7 @@
#include "./trayicon.h"
#include "./traywidget.h"
#include "../application/settings.h"
#include "../../widgets/settings/settings.h"
#include "../../model/syncthingicons.h"

View File

@ -2,7 +2,7 @@
#include "./traywidget.h"
#include "./trayicon.h"
#include "../application/settings.h"
#include "../../widgets/settings/settings.h"
#include <QApplication>
#include <QHBoxLayout>

View File

@ -1,11 +1,10 @@
#include "./traywidget.h"
#include "./traymenu.h"
#include "./trayicon.h"
#include "./settingsdialog.h"
#include "./webviewdialog.h"
#include "./textviewdialog.h"
#include "../application/settings.h"
#include "../../widgets/settings/settingsdialog.h"
#include "../../widgets/webview/webviewdialog.h"
#include "../../widgets/misc/textviewdialog.h"
#ifdef LIB_SYNCTHING_CONNECTOR_SUPPORT_SYSTEMD
# include "../../connector/syncthingservice.h"
@ -57,7 +56,7 @@ TrayWidget::TrayWidget(TrayMenu *parent) :
QWidget(parent),
m_menu(parent),
m_ui(new Ui::TrayWidget),
#ifndef SYNCTHINGTRAY_NO_WEBVIEW
#ifndef SYNCTHINGWIDGETS_NO_WEBVIEW
m_webViewDlg(nullptr),
#endif
m_dirModel(m_connection),
@ -189,11 +188,11 @@ void TrayWidget::showAboutDialog()
void TrayWidget::showWebUi()
{
#ifndef SYNCTHINGTRAY_NO_WEBVIEW
#ifndef SYNCTHINGWIDGETS_NO_WEBVIEW
if(Settings::values().webView.disabled) {
#endif
QDesktopServices::openUrl(m_connection.syncthingUrl());
#ifndef SYNCTHINGTRAY_NO_WEBVIEW
#ifndef SYNCTHINGWIDGETS_NO_WEBVIEW
} else {
if(!m_webViewDlg) {
m_webViewDlg = new WebViewDialog(this);
@ -392,7 +391,7 @@ void TrayWidget::applySettings()
#endif
// web view
#ifndef SYNCTHINGTRAY_NO_WEBVIEW
#ifndef SYNCTHINGWIDGETS_NO_WEBVIEW
if(instance->m_webViewDlg) {
instance->m_webViewDlg->applySettings(*instance->m_selectedConnection);
}
@ -572,7 +571,7 @@ void TrayWidget::connectIfServiceRunning()
}
#endif
#ifndef SYNCTHINGTRAY_NO_WEBVIEW
#ifndef SYNCTHINGWIDGETS_NO_WEBVIEW
void TrayWidget::handleWebViewDeleted()
{
m_webViewDlg = nullptr;
@ -597,7 +596,7 @@ void TrayWidget::handleConnectionSelected(QAction *connectionAction)
#ifdef LIB_SYNCTHING_CONNECTOR_SUPPORT_SYSTEMD
handleSystemdStatusChanged();
#endif
#ifndef SYNCTHINGTRAY_NO_WEBVIEW
#ifndef SYNCTHINGWIDGETS_NO_WEBVIEW
if(m_webViewDlg) {
m_webViewDlg->applySettings(*m_selectedConnection);
}

View File

@ -1,15 +1,15 @@
#ifndef TRAY_WIDGET_H
#define TRAY_WIDGET_H
#include "../application/settings.h"
#include "../../connector/syncthingconnection.h"
#include "../../connector/syncthingprocess.h"
#include "../../widgets/settings/settings.h"
#include "../../model/syncthingdirectorymodel.h"
#include "../../model/syncthingdevicemodel.h"
#include "../../model/syncthingdownloadmodel.h"
#include "../../connector/syncthingconnection.h"
#include "../../connector/syncthingprocess.h"
#include <QWidget>
#include <memory>
@ -74,7 +74,7 @@ private slots:
bool handleSystemdStatusChanged();
void connectIfServiceRunning();
#endif
#ifndef SYNCTHINGTRAY_NO_WEBVIEW
#ifndef SYNCTHINGWIDGETS_NO_WEBVIEW
void handleWebViewDeleted();
#endif
void handleNewNotification(ChronoUtilities::DateTime when, const QString &msg);
@ -86,7 +86,7 @@ private:
std::unique_ptr<Ui::TrayWidget> m_ui;
static SettingsDialog *m_settingsDlg;
static Dialogs::AboutDialog *m_aboutDlg;
#ifndef SYNCTHINGTRAY_NO_WEBVIEW
#ifndef SYNCTHINGWIDGETS_NO_WEBVIEW
WebViewDialog *m_webViewDlg;
#endif
QFrame *m_cornerFrame;

View File

@ -99,7 +99,7 @@
<string>Connect</string>
</property>
<property name="icon">
<iconset theme="view-refresh" resource="../resources/syncthingtrayicons.qrc">
<iconset theme="view-refresh" resource="../../widgets/resources/syncthingwidgetsicons.qrc">
<normaloff>:/icons/hicolor/scalable/actions/view-refresh.svg</normaloff>:/icons/hicolor/scalable/actions/view-refresh.svg</iconset>
</property>
<property name="flat">
@ -113,7 +113,7 @@
<string>Start</string>
</property>
<property name="icon">
<iconset theme="system-run" resource="../resources/syncthingtrayicons.qrc">
<iconset theme="system-run" resource="../../widgets/resources/syncthingwidgetsicons.qrc">
<normaloff>:/icons/hicolor/scalable/apps/system-run.svg</normaloff>:/icons/hicolor/scalable/apps/system-run.svg</iconset>
</property>
<property name="flat">
@ -154,7 +154,7 @@
<string>Web UI</string>
</property>
<property name="icon">
<iconset theme="internet-web-browser" resource="../resources/syncthingtrayicons.qrc">
<iconset theme="internet-web-browser" resource="../../widgets/resources/syncthingwidgetsicons.qrc">
<normaloff>:/icons/hicolor/scalable/apps/internet-web-browser.svg</normaloff>:/icons/hicolor/scalable/apps/internet-web-browser.svg</iconset>
</property>
<property name="flat">
@ -499,6 +499,7 @@ For &lt;i&gt;all&lt;/i&gt; notifications, checkout the log</string>
</customwidgets>
<resources>
<include location="../../model/resources/syncthingmodelicons.qrc"/>
<include location="../../widgets/resources/syncthingwidgetsicons.qrc"/>
<include location="../resources/syncthingtrayicons.qrc"/>
</resources>
<connections/>

View File

@ -1,30 +0,0 @@
// Created via CMake from template webviewdefs.h.in
// WARNING! Any changes to this file will be overwritten by the next CMake run!
#ifndef SYNCTHINGTRAY_WEB_VIEW_DEFINES
#define SYNCTHINGTRAY_WEB_VIEW_DEFINES
#include <QtGlobal>
#if defined(SYNCTHINGTRAY_USE_WEBENGINE)
# define SYNCTHINGTRAY_WEB_VIEW QWebEngineView
# define SYNCTHINGTRAY_WEB_PAGE QWebEnginePage
#elif defined(SYNCTHINGTRAY_USE_WEBKIT)
# define SYNCTHINGTRAY_WEB_VIEW QWebView
# define SYNCTHINGTRAY_WEB_PAGE QWebPage
# define SYNCTHINGTRAY_WEB_FRAME QWebFrame
#elif !defined(SYNCTHINGTRAY_NO_WEBVIEW)
# error "No definition for web view provider present."
#endif
#ifdef SYNCTHINGTRAY_WEB_VIEW
QT_FORWARD_DECLARE_CLASS(SYNCTHINGTRAY_WEB_VIEW)
#endif
#ifdef SYNCTHINGTRAY_WEB_PAGE
QT_FORWARD_DECLARE_CLASS(SYNCTHINGTRAY_WEB_PAGE)
#endif
#ifdef SYNCTHINGTRAY_WEB_FRAME
QT_FORWARD_DECLARE_CLASS(SYNCTHINGTRAY_WEB_FRAME)
#endif
#endif // SYNCTHINGTRAY_WEB_VIEW_DEFINES

View File

@ -8,21 +8,13 @@
<file>icons/hicolor/scalable/actions/media-playback-pause.svg</file>
<file>icons/hicolor/scalable/actions/media-playback-start.svg</file>
<file>icons/hicolor/scalable/actions/view-barcode.svg</file>
<file>icons/hicolor/scalable/actions/view-refresh.svg</file>
<file>icons/hicolor/scalable/actions/window-close.svg</file>
<file>icons/hicolor/scalable/apps/help-about.svg</file>
<file>icons/hicolor/scalable/apps/internet-web-browser.svg</file>
<file>icons/hicolor/scalable/apps/preferences-other.svg</file>
<file>icons/hicolor/scalable/devices/network-card.svg</file>
<file>icons/hicolor/scalable/places/folder-open.svg</file>
<file>icons/hicolor/scalable/places/folder.svg</file>
<file>icons/hicolor/scalable/places/network-workgroup.svg</file>
<file>icons/hicolor/scalable/apps/system-run.svg</file>
<file>icons/hicolor/scalable/actions/network-connect.svg</file>
<file>icons/hicolor/scalable/places/folder-download.svg</file>
<file>icons/hicolor/scalable/actions/process-stop.svg</file>
<file>icons/hicolor/scalable/actions/list-add.svg</file>
<file>icons/hicolor/scalable/actions/list-remove.svg</file>
<file>icons/hicolor/scalable/actions/edit-paste.svg</file>
</qresource>
</RCC>

View File

@ -4,288 +4,194 @@
<context>
<name>QtGui::AppearanceOptionPage</name>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="6"/>
<source>Appearance</source>
<translation>Erscheinungsbild</translation>
<translation type="vanished">Erscheinungsbild</translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="19"/>
<source>Menu size</source>
<translation>Größe des Menüs</translation>
<translation type="vanished">Größe des Menüs</translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="26"/>
<source>Optional GUI elements</source>
<translation>Optionale Elemente</translation>
<translation type="vanished">Optionale Elemente</translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="33"/>
<source>Traffic statistics</source>
<translation>Traffic-Statistiken</translation>
<translation type="vanished">Traffic-Statistiken</translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="61"/>
<source> x </source>
<translation></translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="84"/>
<source> px</source>
<translation></translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="96"/>
<source>Frame shape</source>
<translation>Rahmenform</translation>
<translation type="vanished">Rahmenform</translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="103"/>
<source>Frame shadow</source>
<translation>Rahmenschatten</translation>
<translation type="vanished">Rahmenschatten</translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="111"/>
<source>No frame</source>
<translation>Kein Rahmen</translation>
<translation type="vanished">Kein Rahmen</translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="116"/>
<source>Box</source>
<translation></translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="121"/>
<source>Panel</source>
<translation></translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="126"/>
<source>Styled panel</source>
<translation></translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="135"/>
<source>Plain</source>
<translation>Einfach</translation>
<translation type="vanished">Einfach</translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="140"/>
<source>Raised</source>
<translation>Angehoben</translation>
<translation type="vanished">Angehoben</translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="145"/>
<source>Sunken</source>
<translation>Eingedrückt</translation>
<translation type="vanished">Eingedrückt</translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="153"/>
<source>Tab position</source>
<translation>Position der Tabs</translation>
<translation type="vanished">Position der Tabs</translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="161"/>
<source>Top</source>
<translation>Oben</translation>
<translation type="vanished">Oben</translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="166"/>
<source>Bottom</source>
<translation>Unten</translation>
<translation type="vanished">Unten</translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="171"/>
<source>Left</source>
<translation>Links</translation>
<translation type="vanished">Links</translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="176"/>
<source>Right</source>
<translation>Rechts</translation>
<translation type="vanished">Rechts</translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="184"/>
<source>Colors</source>
<translation>Farben</translation>
<translation type="vanished">Farben</translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="191"/>
<source>Bright custom text colors (use for dark color scheme)</source>
<translation>Helle benutzerdefinierte Schriftfarben (für dunkles Farbschema gedacht)</translation>
<translation type="vanished">Helle benutzerdefinierte Schriftfarben (für dunkles Farbschema gedacht)</translation>
</message>
</context>
<context>
<name>QtGui::AutostartOptionPage</name>
<message>
<location filename="../gui/autostartoptionpage.ui" line="14"/>
<source>Autostart</source>
<translation>Auto-Start</translation>
<translation type="vanished">Auto-Start</translation>
</message>
<message>
<location filename="../gui/autostartoptionpage.ui" line="26"/>
<source>Start the tray icon when the desktop environment launches</source>
<translation>Tray-Icon beim Starten der Desktopumgebung automatisch starten</translation>
<translation type="vanished">Tray-Icon beim Starten der Desktopumgebung automatisch starten</translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="368"/>
<source>This is achieved by adding a *.desktop file under &lt;i&gt;~/.config/autostart&lt;/i&gt; so the setting only affects the current user.</source>
<translation>Durch das Hinzufügen einer *.desktop-Datei unter &lt;i&gt;~/.config/autostart&lt;/i&gt; realisiert - betrifft also nur den aktuellen Benutzer.</translation>
<translation type="vanished">Durch das Hinzufügen einer *.desktop-Datei unter &lt;i&gt;~/.config/autostart&lt;/i&gt; realisiert - betrifft also nur den aktuellen Benutzer.</translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="370"/>
<source>This is achieved by adding a registry key under &lt;i&gt;HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run&lt;/i&gt; so the setting only affects the current user. Note that the startup entry is invalidated when moving &lt;i&gt;syncthingtray.exe&lt;/i&gt;.</source>
<translation>Durch das Hinzufügen eines Registry-Schlüssels unter &lt;i&gt;HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run&lt;/i&gt; realisiert - betrifft also nur den aktuellen Benutzer.</translation>
<translation type="vanished">Durch das Hinzufügen eines Registry-Schlüssels unter &lt;i&gt;HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run&lt;/i&gt; realisiert - betrifft also nur den aktuellen Benutzer.</translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="372"/>
<source>This feature has not been implemented for your platform (yet).</source>
<translation>Diese Funktion wurde für die aktuelle Plattform nicht nicht implementiert.</translation>
<translation type="vanished">Diese Funktion wurde für die aktuelle Plattform nicht nicht implementiert.</translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="459"/>
<source>unable to modify startup entry</source>
<translation>Fehler beim aktualisieren des Auto-Start-Eintrags</translation>
<translation type="vanished">Fehler beim aktualisieren des Auto-Start-Eintrags</translation>
</message>
</context>
<context>
<name>QtGui::ConnectionOptionPage</name>
<message>
<location filename="../gui/connectionoptionpage.ui" line="6"/>
<source>Connection</source>
<translation>Verbindung</translation>
<translation type="vanished">Verbindung</translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="25"/>
<source>Config label</source>
<translation>Name der Konfig.</translation>
<translation type="vanished">Name der Konfig.</translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="75"/>
<source>Add secondary instance</source>
<translation>Sekundäre Konfiguration hinzufügen</translation>
<translation type="vanished">Sekundäre Konfiguration hinzufügen</translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="92"/>
<source>Remove currently selected secondary instance</source>
<translation>Sekundäre Konfiguration löschen</translation>
<translation type="vanished">Sekundäre Konfiguration löschen</translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="122"/>
<source>It is possible to save multiple configurations. This allows switching quickly between multiple Syncthing instances using the connection button in the right corner of the tray menu. The config label is an arbitrary name to identify a configuration and does not have to match the name of the corresponding Syncthing device.</source>
<translation>Es ist möglich, mehrere Konfigurationen zu speichern. Zwischen diesen kann anschließend über das Verbindungsmenü rechts oben im Tray schnell hin- und hergewechselt werden. Der Name der Konfiguration muss nicht mit dem Namen des entsprechenden Syncthing-Gerätes übereinstimmen.</translation>
<translation type="vanished">Es ist möglich, mehrere Konfigurationen zu speichern. Zwischen diesen kann anschließend über das Verbindungsmenü rechts oben im Tray schnell hin- und hergewechselt werden. Der Name der Konfiguration muss nicht mit dem Namen des entsprechenden Syncthing-Gerätes übereinstimmen.</translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="145"/>
<source>Syncthing URL</source>
<translation></translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="155"/>
<source>Authentication</source>
<translation>Authentifizierung</translation>
<translation type="vanished">Authentifizierung</translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="168"/>
<source>User</source>
<translation>Benutzername</translation>
<translation type="vanished">Benutzername</translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="185"/>
<source>Password</source>
<translation>Passwort</translation>
<translation type="vanished">Passwort</translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="202"/>
<source>API key</source>
<translation>API-Schlüssel</translation>
<translation type="vanished">API-Schlüssel</translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="212"/>
<source>HTTPS certificate</source>
<translation>HTTPS-Zertifikat</translation>
<translation type="vanished">HTTPS-Zertifikat</translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="232"/>
<source>Insert values from local Syncthing configuration</source>
<translation>Werte aus lokaler Syncthing-Konfiguration einfügen</translation>
<translation type="vanished">Werte aus lokaler Syncthing-Konfiguration einfügen</translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="333"/>
<source>Errors</source>
<translation>Fehler</translation>
<translation type="vanished">Fehler</translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="394"/>
<source>Status</source>
<translation></translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="401"/>
<source>disconnected</source>
<translation>getrennt</translation>
<translation type="vanished">getrennt</translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="408"/>
<source>Apply connection settings and try to reconnect with the currently selected config</source>
<translation>Verbindungseinstellungen übernehmen und mit neuen Einstellungen verbinden</translation>
<translation type="vanished">Verbindungseinstellungen übernehmen und mit neuen Einstellungen verbinden</translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="256"/>
<source>Poll interval</source>
<translation>Abfrageintervall</translation>
<translation type="vanished">Abfrageintervall</translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="293"/>
<source>Traffic</source>
<translation></translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="280"/>
<location filename="../gui/connectionoptionpage.ui" line="320"/>
<location filename="../gui/connectionoptionpage.ui" line="346"/>
<location filename="../gui/connectionoptionpage.ui" line="375"/>
<source> ms</source>
<translation></translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="300"/>
<source>Device statistics</source>
<translation>Gerätestatistiken</translation>
<translation type="vanished">Gerätestatistiken</translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="359"/>
<source>Reconnect</source>
<translation>Verbindungsveruch</translation>
<translation type="vanished">Verbindungsveruch</translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="372"/>
<source>no</source>
<translation>nicht neu verbinden</translation>
<translation type="vanished">nicht neu verbinden</translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="75"/>
<source>Auto-detected for local instance</source>
<translation>Kann für lokale Instanz automatisch ermittelt werden</translation>
<translation type="vanished">Kann für lokale Instanz automatisch ermittelt werden</translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="93"/>
<source>Select Syncthing config file</source>
<translation>Wähle die Syncthing-Konfigurationsdatei</translation>
<translation type="vanished">Wähle die Syncthing-Konfigurationsdatei</translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="100"/>
<source>Unable to parse the Syncthing config file.</source>
<translation>Fehler beim Auslesen der Syncthing-Konfigurationsdatei.</translation>
<translation type="vanished">Fehler beim Auslesen der Syncthing-Konfigurationsdatei.</translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="171"/>
<source>Unable to load specified certificate &quot;%1&quot;.</source>
<translation>Fehler beim Auslesen des angegebenen Zertifikats: %1</translation>
<translation type="vanished">Fehler beim Auslesen des angegebenen Zertifikats: %1</translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="195"/>
<source>Instance %1</source>
<translation>Instanz %1</translation>
<translation type="vanished">Instanz %1</translation>
</message>
</context>
<context>
@ -345,81 +251,66 @@
<context>
<name>QtGui::LauncherOptionPage</name>
<message>
<location filename="../gui/launcheroptionpage.ui" line="14"/>
<source>Syncthing launcher</source>
<translation>Syncthing-Starter</translation>
<translation type="vanished">Syncthing-Starter</translation>
</message>
<message>
<location filename="../gui/launcheroptionpage.ui" line="26"/>
<source>Launch Syncthing when starting the tray icon</source>
<translation>Starte Syncthing beim Starten des Tray-Icons</translation>
<translation type="vanished">Starte Syncthing beim Starten des Tray-Icons</translation>
</message>
<message>
<location filename="../gui/launcheroptionpage.ui" line="51"/>
<source>Syncthing executable</source>
<translation>Ausführbare Datei von Syncthing</translation>
<translation type="vanished">Ausführbare Datei von Syncthing</translation>
</message>
<message>
<location filename="../gui/launcheroptionpage.ui" line="61"/>
<source>Arguments</source>
<translation>Argumente</translation>
<translation type="vanished">Argumente</translation>
</message>
<message>
<location filename="../gui/launcheroptionpage.ui" line="95"/>
<source>Syncthing log (interleaved stdout/stderr)</source>
<translation>Syncthing-Log (stdout/stderr)</translation>
<translation type="vanished">Syncthing-Log (stdout/stderr)</translation>
</message>
<message>
<location filename="../gui/launcheroptionpage.ui" line="111"/>
<source>Apply and launch now</source>
<translation>Jetzt starten</translation>
<translation type="vanished">Jetzt starten</translation>
</message>
<message>
<location filename="../gui/launcheroptionpage.ui" line="128"/>
<source>Stop launched instance</source>
<translation>Stoppen</translation>
<translation type="vanished">Stoppen</translation>
</message>
<message>
<location filename="../gui/launcheroptionpage.ui" line="147"/>
<source>No log messages available yet</source>
<translation>Bisher keine Log-Meldungen</translation>
<translation type="vanished">Bisher keine Log-Meldungen</translation>
</message>
<message>
<location filename="../gui/launcheroptionpage.ui" line="154"/>
<source>Ensure latest log is visible</source>
<translation>Log folgen</translation>
<translation type="vanished">Log folgen</translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="499"/>
<source>%1-launcher</source>
<translation>%1-Starter</translation>
<translation type="vanished">%1-Starter</translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="500"/>
<source>Launch %1 when starting the tray icon</source>
<translation>Starte %1 beim Starten des Tray-Icons</translation>
<translation type="vanished">Starte %1 beim Starten des Tray-Icons</translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="501"/>
<source>%1 executable</source>
<translation>Ausführbare Datei von %1</translation>
<translation type="vanished">Ausführbare Datei von %1</translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="502"/>
<source>%1 log (interleaved stdout/stderr)</source>
<translation>%1-Log (stdout/stderr)</translation>
<translation type="vanished">%1-Log (stdout/stderr)</translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="572"/>
<source>%1 exited with exit code %2
</source>
<translation>%1 wurde mit dem Statuscode %2 beendet</translation>
<translation type="vanished">%1 wurde mit dem Statuscode %2 beendet</translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="575"/>
<source>%1 crashed with exit code %2
</source>
<translation>%1 ist mit dem Statuscode %2 abgestürzt</translation>
<translation type="vanished">%1 ist mit dem Statuscode %2 abgestürzt</translation>
</message>
<message>
<source>Syncthing exited with exit code %1
@ -435,178 +326,126 @@
<context>
<name>QtGui::NotificationsOptionPage</name>
<message>
<location filename="../gui/notificationsoptionpage.ui" line="6"/>
<source>Notifications</source>
<translation>Benachrichtigungen</translation>
<translation type="vanished">Benachrichtigungen</translation>
</message>
<message>
<location filename="../gui/notificationsoptionpage.ui" line="16"/>
<source>Notify on</source>
<translation>Benachrichtigen, wenn</translation>
<translation type="vanished">Benachrichtigen, wenn</translation>
</message>
<message>
<location filename="../gui/notificationsoptionpage.ui" line="22"/>
<source>disconnect</source>
<translation>die Verbindung zu Syncthing getrennt wird</translation>
<translation type="vanished">die Verbindung zu Syncthing getrennt wird</translation>
</message>
<message>
<location filename="../gui/notificationsoptionpage.ui" line="29"/>
<source>internal errors</source>
<translation>interne Fehler auftreten</translation>
<translation type="vanished">interne Fehler auftreten</translation>
</message>
<message>
<location filename="../gui/notificationsoptionpage.ui" line="36"/>
<source>errors/notifications from Syncthing</source>
<translation>Fehler/Warnungen von Syncthing gemeldet werden</translation>
<translation type="vanished">Fehler/Warnungen von Syncthing gemeldet werden</translation>
</message>
<message>
<location filename="../gui/notificationsoptionpage.ui" line="43"/>
<source>sync complete</source>
<translation>die Synchronisierung abgeschlossen wurde</translation>
<translation type="vanished">die Synchronisierung abgeschlossen wurde</translation>
</message>
<message>
<location filename="../gui/notificationsoptionpage.ui" line="53"/>
<source>Notification API</source>
<translation>Benachrichtigungs-API</translation>
<translation type="vanished">Benachrichtigungs-API</translation>
</message>
<message>
<location filename="../gui/notificationsoptionpage.ui" line="59"/>
<source>D-Bus notifi&amp;cations (org.freedesktop.Notifications)</source>
<translation>D-Bus (org.freedesktop.Notifications)</translation>
<translation type="vanished">D-Bus (org.freedesktop.Notifications)</translation>
</message>
<message>
<location filename="../gui/notificationsoptionpage.ui" line="66"/>
<source>&amp;Method provided by Qt (might be overridden by QPA plugin)</source>
<translation>Methode die von Qt verwendet wird (kann vom QPA-Plugin überschrieben werden)</translation>
<translation type="vanished">Methode die von Qt verwendet wird (kann vom QPA-Plugin überschrieben werden)</translation>
</message>
<message>
<location filename="../gui/notificationsoptionpage.ui" line="76"/>
<source>Misc</source>
<translation>Verschiedenes</translation>
<translation type="vanished">Verschiedenes</translation>
</message>
<message>
<location filename="../gui/notificationsoptionpage.ui" line="82"/>
<source>Ignore inavailability of Syncthing the specified number of seconds after Syncthing has been started; has only effect if the Syncthing start can be determined which is currently only supported for the local instance by checking Systemd unit status</source>
<translation>Ignoriere, dass Syncthing ein paar Sekunden nach dem Start noch nicht verfügbar ist. Hat nur Auswirkungen, wenn der Syncthing-Startzeitpunkt ermittelt werden kann, was aktuell nur für die lokale Instanz via Systemd unterstützt wird.</translation>
<translation type="vanished">Ignoriere, dass Syncthing ein paar Sekunden nach dem Start noch nicht verfügbar ist. Hat nur Auswirkungen, wenn der Syncthing-Startzeitpunkt ermittelt werden kann, was aktuell nur für die lokale Instanz via Systemd unterstützt wird.</translation>
</message>
<message>
<location filename="../gui/notificationsoptionpage.ui" line="92"/>
<source>don&apos;t ignore</source>
<translation>nicht ignorieren</translation>
<translation type="vanished">nicht ignorieren</translation>
</message>
<message>
<location filename="../gui/notificationsoptionpage.ui" line="95"/>
<source> s</source>
<translation></translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="267"/>
<source>Configured to use D-Bus notifications but D-Bus notification daemon seems unavailabe.</source>
<translation>Benachrichtigungen via D-Bus wurden eingestellt, aber es scheint kein Daemon zu laufen der den Dienst bereitstellt.</translation>
<translation type="vanished">Benachrichtigungen via D-Bus wurden eingestellt, aber es scheint kein Daemon zu laufen der den Dienst bereitstellt.</translation>
</message>
</context>
<context>
<name>QtGui::SettingsDialog</name>
<message>
<location filename="../gui/settingsdialog.cpp" line="767"/>
<source>Tray</source>
<translation></translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="773"/>
<source>Web view</source>
<translation>Weboberfläche</translation>
<translation type="vanished">Weboberfläche</translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="779"/>
<source>Startup</source>
<translation>Starten</translation>
<translation type="vanished">Starten</translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="793"/>
<source>Settings</source>
<translation>Einstellungen</translation>
<translation type="vanished">Einstellungen</translation>
</message>
</context>
<context>
<name>QtGui::SystemdOptionPage</name>
<message>
<location filename="../gui/systemdoptionpage.ui" line="6"/>
<source>Systemd</source>
<translation></translation>
</message>
<message>
<location filename="../gui/systemdoptionpage.ui" line="18"/>
<source>Show start/stop button on tray for local instance when systemd is available</source>
<translation>Zeige Start/Stop-Button für die lokale Instanz wenn systemd verfügbar ist</translation>
<translation type="vanished">Zeige Start/Stop-Button für die lokale Instanz wenn systemd verfügbar ist</translation>
</message>
<message>
<location filename="../gui/systemdoptionpage.ui" line="62"/>
<source>Syncthing unit</source>
<translation></translation>
</message>
<message>
<location filename="../gui/systemdoptionpage.ui" line="78"/>
<source>Description</source>
<translation>Beschreibung</translation>
<translation type="vanished">Beschreibung</translation>
</message>
<message>
<location filename="../gui/systemdoptionpage.ui" line="114"/>
<source>Current status</source>
<translation>Aktueller Status</translation>
<translation type="vanished">Aktueller Status</translation>
</message>
<message>
<location filename="../gui/systemdoptionpage.ui" line="191"/>
<source>Unit file state</source>
<translation>Status des Unit files</translation>
<translation type="vanished">Status des Unit files</translation>
</message>
<message>
<location filename="../gui/systemdoptionpage.ui" line="99"/>
<location filename="../gui/systemdoptionpage.ui" line="154"/>
<location filename="../gui/systemdoptionpage.ui" line="231"/>
<location filename="../gui/settingsdialog.cpp" line="691"/>
<location filename="../gui/settingsdialog.cpp" line="706"/>
<source>unknown</source>
<translation>unbekannt</translation>
<translation type="vanished">unbekannt</translation>
</message>
<message>
<location filename="../gui/systemdoptionpage.ui" line="25"/>
<source>Consider systemd unit status for reconnect attempts to local instance
Don&apos;t reconnect when unit not active/running
Try to reconnect when unit becomes active/running</source>
<translation>Verwende den systemd-Status für Neuverbindungsversuche zur lokalen Instanz
<translation type="vanished">Verwende den systemd-Status für Neuverbindungsversuche zur lokalen Instanz
Nicht versuchen neu zu verbinden, wenn die Syncthing unit nicht läuft
Automatisch neu verbinden, wenn die Syncthing unit gestartet wird</translation>
</message>
<message>
<location filename="../gui/systemdoptionpage.ui" line="238"/>
<source>Enable</source>
<translation>Autom. starten</translation>
<translation type="vanished">Autom. starten</translation>
</message>
<message>
<location filename="../gui/systemdoptionpage.ui" line="249"/>
<source>Disable</source>
<translation>Nicht autom. starten</translation>
<translation type="vanished">Nicht autom. starten</translation>
</message>
<message>
<location filename="../gui/systemdoptionpage.ui" line="161"/>
<source>Start</source>
<translation>Starten</translation>
<translation type="vanished">Starten</translation>
</message>
<message>
<location filename="../gui/systemdoptionpage.ui" line="172"/>
<source>Stop</source>
<translation>Stoppen</translation>
<translation type="vanished">Stoppen</translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="664"/>
<source>specified unit is either inactive or doesn&apos;t exist</source>
<translation>angegebene Unit ist entweder nicht geladen oder existiert nicht</translation>
<translation type="vanished">angegebene Unit ist entweder nicht geladen oder existiert nicht</translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="686"/>
<source>since </source>
<translation>seit </translation>
<translation type="vanished">seit </translation>
</message>
</context>
<context>
@ -675,7 +514,7 @@
<message>
<location filename="../gui/trayicon.cpp" line="52"/>
<source>Log</source>
<translation></translation>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/trayicon.cpp" line="62"/>
@ -750,7 +589,7 @@
<message>
<location filename="../gui/traywidget.ui" line="6"/>
<source>Syncthing Tray</source>
<translation></translation>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/traywidget.ui" line="58"/>
@ -759,19 +598,19 @@
</message>
<message>
<location filename="../gui/traywidget.ui" line="72"/>
<location filename="../gui/traywidget.cpp" line="183"/>
<location filename="../gui/traywidget.cpp" line="182"/>
<source>About</source>
<translation>Über Syncthing Tray</translation>
</message>
<message>
<location filename="../gui/traywidget.ui" line="99"/>
<location filename="../gui/traywidget.cpp" line="321"/>
<location filename="../gui/traywidget.cpp" line="320"/>
<source>Connect</source>
<translation>Verbinden</translation>
</message>
<message>
<location filename="../gui/traywidget.ui" line="113"/>
<location filename="../gui/traywidget.cpp" line="534"/>
<location filename="../gui/traywidget.cpp" line="533"/>
<source>Start</source>
<translation>Starten</translation>
</message>
@ -803,7 +642,7 @@
<message>
<location filename="../gui/traywidget.ui" line="250"/>
<location filename="../gui/traywidget.ui" line="270"/>
<location filename="../gui/traywidget.cpp" line="492"/>
<location filename="../gui/traywidget.cpp" line="491"/>
<source>unknown</source>
<translation>unbekannt</translation>
</message>
@ -826,8 +665,8 @@ For &lt;i&gt;all&lt;/i&gt; notifications, checkout the log</source>
</message>
<message>
<location filename="../gui/traywidget.ui" line="311"/>
<location filename="../gui/traywidget.cpp" line="112"/>
<location filename="../gui/traywidget.cpp" line="267"/>
<location filename="../gui/traywidget.cpp" line="111"/>
<location filename="../gui/traywidget.cpp" line="266"/>
<source>New notifications</source>
<translation>Neue Benachrichtigungen</translation>
</message>
@ -844,7 +683,7 @@ For &lt;i&gt;all&lt;/i&gt; notifications, checkout the log</source>
<message>
<location filename="../gui/traywidget.ui" line="437"/>
<source>Downloads</source>
<translation></translation>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/traywidget.ui" line="469"/>
@ -857,87 +696,87 @@ For &lt;i&gt;all&lt;/i&gt; notifications, checkout the log</source>
<translation>Ignorieren</translation>
</message>
<message>
<location filename="../gui/traywidget.cpp" line="84"/>
<location filename="../gui/traywidget.cpp" line="83"/>
<source>View own device ID</source>
<translation>Eigene Geräte-ID anzeigen</translation>
</message>
<message>
<location filename="../gui/traywidget.cpp" line="89"/>
<location filename="../gui/traywidget.cpp" line="88"/>
<source>Restart Syncthing</source>
<translation>Syncthing neustarten</translation>
</message>
<message>
<location filename="../gui/traywidget.cpp" line="94"/>
<location filename="../gui/traywidget.cpp" line="93"/>
<source>Show Syncthing log</source>
<translation>Syncthing-Log zeigen</translation>
</message>
<message>
<location filename="../gui/traywidget.cpp" line="99"/>
<location filename="../gui/traywidget.cpp" line="98"/>
<source>Rescan all directories</source>
<translation>Alle Verzeichnisse neu scannen</translation>
</message>
<message>
<location filename="../gui/traywidget.cpp" line="106"/>
<location filename="../gui/traywidget.cpp" line="105"/>
<source>Connection</source>
<translation>Verbindung</translation>
</message>
<message>
<location filename="../gui/traywidget.cpp" line="213"/>
<location filename="../gui/traywidget.cpp" line="212"/>
<source>Own device ID</source>
<translation>Eigene Geräte-ID</translation>
</message>
<message>
<location filename="../gui/traywidget.cpp" line="223"/>
<location filename="../gui/traywidget.cpp" line="222"/>
<source>device ID is unknown</source>
<translation>die Geräte-ID ist unbekannt</translation>
</message>
<message>
<location filename="../gui/traywidget.cpp" line="231"/>
<location filename="../gui/traywidget.cpp" line="230"/>
<source>Copy to clipboard</source>
<translation>in Zwischenablage kopieren</translation>
</message>
<message>
<location filename="../gui/traywidget.cpp" line="248"/>
<location filename="../gui/traywidget.cpp" line="247"/>
<source>Log</source>
<translation></translation>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/traywidget.cpp" line="297"/>
<location filename="../gui/traywidget.cpp" line="296"/>
<source>Do you really want to restart Syncthing?</source>
<translation>Soll Syncthing wirklich neu gestartet werden?</translation>
</message>
<message>
<location filename="../gui/traywidget.cpp" line="322"/>
<location filename="../gui/traywidget.cpp" line="321"/>
<source>Not connected to Syncthing, click to connect</source>
<translation>Verbindung zu Syncthing getrennt, klicke um zu verbinden</translation>
</message>
<message>
<location filename="../gui/traywidget.cpp" line="333"/>
<location filename="../gui/traywidget.cpp" line="332"/>
<source>Pause</source>
<translation>Pausieren</translation>
</message>
<message>
<location filename="../gui/traywidget.cpp" line="334"/>
<location filename="../gui/traywidget.cpp" line="333"/>
<source>Syncthing is running, click to pause all devices</source>
<translation>Syncthing läuft, klicke um alle Geräte zu pausieren</translation>
</message>
<message>
<location filename="../gui/traywidget.cpp" line="339"/>
<location filename="../gui/traywidget.cpp" line="338"/>
<source>Continue</source>
<translation>Fortsetzen</translation>
</message>
<message>
<location filename="../gui/traywidget.cpp" line="340"/>
<location filename="../gui/traywidget.cpp" line="339"/>
<source>At least one device is paused, click to resume</source>
<translation>Mind. ein Gerät ist pausiert, klicke um fortzusetzen</translation>
</message>
<message>
<location filename="../gui/traywidget.cpp" line="429"/>
<location filename="../gui/traywidget.cpp" line="428"/>
<source>The directory &lt;i&gt;%1&lt;/i&gt; does not exist on the local machine.</source>
<translation>Das Verzeichnis &lt;i&gt;%1&lt;/i&gt; existiert nicht lokal.</translation>
</message>
<message>
<location filename="../gui/traywidget.cpp" line="439"/>
<location filename="../gui/traywidget.cpp" line="438"/>
<source>The containing directory &lt;i&gt;%1&lt;/i&gt; does not exist on the local machine.</source>
<translation>Das beinhaltende Verzeichnis &lt;i&gt;%1&lt;/i&gt; existiert nicht lokal.</translation>
</message>
@ -946,92 +785,75 @@ For &lt;i&gt;all&lt;/i&gt; notifications, checkout the log</source>
<translation type="vanished">Die Datei &lt;i&gt;%1&lt;/i&gt; existiert nicht (lokal).</translation>
</message>
<message>
<location filename="../gui/traywidget.cpp" line="530"/>
<location filename="../gui/traywidget.cpp" line="529"/>
<source>Stop</source>
<translation>Stoppen</translation>
</message>
</context>
<context>
<name>QtGui::WebViewDialog</name>
<message>
<location filename="../gui/webviewdialog.cpp" line="21"/>
<source>Syncthing</source>
<translation></translation>
</message>
</context>
<context>
<name>QtGui::WebViewOptionPage</name>
<message>
<location filename="../gui/webviewoptionpage.ui" line="14"/>
<location filename="../gui/settingsdialog.cpp" line="727"/>
<source>General</source>
<translation>Allgemein</translation>
<translation type="vanished">Allgemein</translation>
</message>
<message>
<location filename="../gui/webviewoptionpage.ui" line="20"/>
<source>Usage</source>
<translation>Verwendung</translation>
<translation type="vanished">Verwendung</translation>
</message>
<message>
<location filename="../gui/webviewoptionpage.ui" line="27"/>
<source>Disable web view (open regular web browser instead)</source>
<translation>Eingebaute Anzeige deaktivieren (stattdessen Standardbrowser verwenden)</translation>
<translation type="vanished">Eingebaute Anzeige deaktivieren (stattdessen Standardbrowser verwenden)</translation>
</message>
<message>
<location filename="../gui/webviewoptionpage.ui" line="34"/>
<source>Zoom factor</source>
<translation>Zoom-Faktor</translation>
<translation type="vanished">Zoom-Faktor</translation>
</message>
<message>
<location filename="../gui/webviewoptionpage.ui" line="57"/>
<source>Hiding</source>
<translation>Schließen</translation>
<translation type="vanished">Schließen</translation>
</message>
<message>
<location filename="../gui/webviewoptionpage.ui" line="64"/>
<source>Keep web view running when currently not shown</source>
<translation>Lasse Weboberfläche im Hintgergrund weiter offen, wenn Fenster nicht offen</translation>
<translation type="vanished">Lasse Weboberfläche im Hintgergrund weiter offen, wenn Fenster nicht offen</translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="729"/>
<source>Syncthing Tray has not been built with vieb view support utilizing either Qt WebKit or Qt WebEngine.
The Web UI will be opened in the default web browser instead.</source>
<translation>Syncthing Tray wurde nicht mit Unterstützung für die eingebaute Anzeige der Weboberfläche unter Verwendung von Qt WebKit oder Qt WebEngine gebaut.
<translation type="vanished">Syncthing Tray wurde nicht mit Unterstützung für die eingebaute Anzeige der Weboberfläche unter Verwendung von Qt WebKit oder Qt WebEngine gebaut.
Die Weboberfläche wird stattdessen im Standardwebrowser geöffnet.</translation>
</message>
</context>
<context>
<name>Settings::restore</name>
<message>
<location filename="../application/settings.cpp" line="140"/>
<source>Unable to load certificate &quot;%1&quot; when restoring settings.</source>
<translation>Fehler beim laden des Zertifikats &quot;%1&quot; beim wiederherstellen der Einstellungen.</translation>
<translation type="vanished">Fehler beim laden des Zertifikats &quot;%1&quot; beim wiederherstellen der Einstellungen.</translation>
</message>
</context>
<context>
<name>main</name>
<message>
<location filename="../application/main.cpp" line="42"/>
<location filename="../application/main.cpp" line="43"/>
<source>Unable to </source>
<translation>Fehler beim </translation>
</message>
<message>
<location filename="../application/main.cpp" line="70"/>
<location filename="../application/main.cpp" line="71"/>
<source>You must configure how to connect to Syncthing when using Syncthing Tray the first time.</source>
<translation>Vor der ersten Verwendung muss eingestellt werden, wie sich das Syncthing Tray mit Syncthing verbinden soll.</translation>
</message>
<message>
<location filename="../application/main.cpp" line="71"/>
<location filename="../application/main.cpp" line="72"/>
<source>Note that the settings dialog allows importing URL, credentials and API-key from the local Syncthing configuration.</source>
<translation>Der Einstellungsdialog ermöglicht es die URL, Zugangsdaten und den API-Key automatisch aus der lokalen Syncthing-Konfiguration auszulesen.</translation>
</message>
<message>
<location filename="../application/main.cpp" line="76"/>
<location filename="../application/main.cpp" line="77"/>
<source>The system tray is (currently) not available. You could open the tray menu as a regular window using the -w flag, though.</source>
<translation>Das System-Tray bzw. der Infobereich ist aktuell nicht verfügbar. Es wäre möglich, Syncthing Tray als normales Fenster zu starten (mit Option -w).</translation>
</message>
<message>
<location filename="../application/main.cpp" line="80"/>
<location filename="../application/main.cpp" line="81"/>
<source>The Qt libraries have not been built with tray icon support. You could open the tray menu as a regular window using the -w flag, though.</source>
<translation>Die verwendete Qt-Bibliothek wurde nicht mit Unterstützung für System-Tray konfiguriert. Es wäre möglich, Syncthing Tray als normales Fenster zu starten (mit Option -w).</translation>
</message>

View File

@ -1,293 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="en_US">
<context>
<name>QtGui::AppearanceOptionPage</name>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="6"/>
<source>Appearance</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="19"/>
<source>Menu size</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="26"/>
<source>Optional GUI elements</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="33"/>
<source>Traffic statistics</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="61"/>
<source> x </source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="84"/>
<source> px</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="96"/>
<source>Frame shape</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="103"/>
<source>Frame shadow</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="111"/>
<source>No frame</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="116"/>
<source>Box</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="121"/>
<source>Panel</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="126"/>
<source>Styled panel</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="135"/>
<source>Plain</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="140"/>
<source>Raised</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="145"/>
<source>Sunken</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="153"/>
<source>Tab position</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="161"/>
<source>Top</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="166"/>
<source>Bottom</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="171"/>
<source>Left</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="176"/>
<source>Right</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="184"/>
<source>Colors</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/appearanceoptionpage.ui" line="191"/>
<source>Bright custom text colors (use for dark color scheme)</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>QtGui::AutostartOptionPage</name>
<message>
<location filename="../gui/autostartoptionpage.ui" line="14"/>
<source>Autostart</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/autostartoptionpage.ui" line="26"/>
<source>Start the tray icon when the desktop environment launches</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="368"/>
<source>This is achieved by adding a *.desktop file under &lt;i&gt;~/.config/autostart&lt;/i&gt; so the setting only affects the current user.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="370"/>
<source>This is achieved by adding a registry key under &lt;i&gt;HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run&lt;/i&gt; so the setting only affects the current user. Note that the startup entry is invalidated when moving &lt;i&gt;syncthingtray.exe&lt;/i&gt;.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="372"/>
<source>This feature has not been implemented for your platform (yet).</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="459"/>
<source>unable to modify startup entry</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>QtGui::ConnectionOptionPage</name>
<message>
<location filename="../gui/connectionoptionpage.ui" line="6"/>
<source>Connection</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="25"/>
<source>Config label</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="75"/>
<source>Add secondary instance</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="92"/>
<source>Remove currently selected secondary instance</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="122"/>
<source>It is possible to save multiple configurations. This allows switching quickly between multiple Syncthing instances using the connection button in the right corner of the tray menu. The config label is an arbitrary name to identify a configuration and does not have to match the name of the corresponding Syncthing device.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="145"/>
<source>Syncthing URL</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="155"/>
<source>Authentication</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="168"/>
<source>User</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="185"/>
<source>Password</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="202"/>
<source>API key</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="212"/>
<source>HTTPS certificate</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="232"/>
<source>Insert values from local Syncthing configuration</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="256"/>
<source>Poll interval</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="280"/>
<location filename="../gui/connectionoptionpage.ui" line="320"/>
<location filename="../gui/connectionoptionpage.ui" line="346"/>
<location filename="../gui/connectionoptionpage.ui" line="375"/>
<source> ms</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="293"/>
<source>Traffic</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="300"/>
<source>Device statistics</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="333"/>
<source>Errors</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="359"/>
<source>Reconnect</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="372"/>
<source>no</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="394"/>
<source>Status</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="401"/>
<source>disconnected</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/connectionoptionpage.ui" line="408"/>
<source>Apply connection settings and try to reconnect with the currently selected config</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="75"/>
<source>Auto-detected for local instance</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="93"/>
<source>Select Syncthing config file</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="100"/>
<source>Unable to parse the Syncthing config file.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="171"/>
<source>Unable to load specified certificate &quot;%1&quot;.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="195"/>
<source>Instance %1</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>QtGui::DevView</name>
<message>
@ -342,261 +55,6 @@
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>QtGui::LauncherOptionPage</name>
<message>
<location filename="../gui/launcheroptionpage.ui" line="14"/>
<source>Syncthing launcher</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/launcheroptionpage.ui" line="26"/>
<source>Launch Syncthing when starting the tray icon</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/launcheroptionpage.ui" line="51"/>
<source>Syncthing executable</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/launcheroptionpage.ui" line="61"/>
<source>Arguments</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/launcheroptionpage.ui" line="95"/>
<source>Syncthing log (interleaved stdout/stderr)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/launcheroptionpage.ui" line="111"/>
<source>Apply and launch now</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/launcheroptionpage.ui" line="128"/>
<source>Stop launched instance</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/launcheroptionpage.ui" line="147"/>
<source>No log messages available yet</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/launcheroptionpage.ui" line="154"/>
<source>Ensure latest log is visible</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="499"/>
<source>%1-launcher</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="500"/>
<source>Launch %1 when starting the tray icon</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="501"/>
<source>%1 executable</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="502"/>
<source>%1 log (interleaved stdout/stderr)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="572"/>
<source>%1 exited with exit code %2
</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="575"/>
<source>%1 crashed with exit code %2
</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>QtGui::NotificationsOptionPage</name>
<message>
<location filename="../gui/notificationsoptionpage.ui" line="6"/>
<source>Notifications</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/notificationsoptionpage.ui" line="16"/>
<source>Notify on</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/notificationsoptionpage.ui" line="22"/>
<source>disconnect</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/notificationsoptionpage.ui" line="29"/>
<source>internal errors</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/notificationsoptionpage.ui" line="36"/>
<source>errors/notifications from Syncthing</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/notificationsoptionpage.ui" line="43"/>
<source>sync complete</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/notificationsoptionpage.ui" line="53"/>
<source>Notification API</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/notificationsoptionpage.ui" line="59"/>
<source>D-Bus notifi&amp;cations (org.freedesktop.Notifications)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/notificationsoptionpage.ui" line="66"/>
<source>&amp;Method provided by Qt (might be overridden by QPA plugin)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/notificationsoptionpage.ui" line="76"/>
<source>Misc</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/notificationsoptionpage.ui" line="82"/>
<source>Ignore inavailability of Syncthing the specified number of seconds after Syncthing has been started; has only effect if the Syncthing start can be determined which is currently only supported for the local instance by checking Systemd unit status</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/notificationsoptionpage.ui" line="92"/>
<source>don&apos;t ignore</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/notificationsoptionpage.ui" line="95"/>
<source> s</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="267"/>
<source>Configured to use D-Bus notifications but D-Bus notification daemon seems unavailabe.</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>QtGui::SettingsDialog</name>
<message>
<location filename="../gui/settingsdialog.cpp" line="767"/>
<source>Tray</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="773"/>
<source>Web view</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="779"/>
<source>Startup</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="793"/>
<source>Settings</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>QtGui::SystemdOptionPage</name>
<message>
<location filename="../gui/systemdoptionpage.ui" line="6"/>
<source>Systemd</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/systemdoptionpage.ui" line="18"/>
<source>Show start/stop button on tray for local instance when systemd is available</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/systemdoptionpage.ui" line="25"/>
<source>Consider systemd unit status for reconnect attempts to local instance
Don&apos;t reconnect when unit not active/running
Try to reconnect when unit becomes active/running</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/systemdoptionpage.ui" line="62"/>
<source>Syncthing unit</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/systemdoptionpage.ui" line="78"/>
<source>Description</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/systemdoptionpage.ui" line="99"/>
<location filename="../gui/systemdoptionpage.ui" line="154"/>
<location filename="../gui/systemdoptionpage.ui" line="231"/>
<location filename="../gui/settingsdialog.cpp" line="691"/>
<location filename="../gui/settingsdialog.cpp" line="706"/>
<source>unknown</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/systemdoptionpage.ui" line="114"/>
<source>Current status</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/systemdoptionpage.ui" line="161"/>
<source>Start</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/systemdoptionpage.ui" line="172"/>
<source>Stop</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/systemdoptionpage.ui" line="191"/>
<source>Unit file state</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/systemdoptionpage.ui" line="238"/>
<source>Enable</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/systemdoptionpage.ui" line="249"/>
<source>Disable</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="664"/>
<source>specified unit is either inactive or doesn&apos;t exist</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="686"/>
<source>since </source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>QtGui::TrayIcon</name>
<message>
@ -746,19 +204,19 @@
</message>
<message>
<location filename="../gui/traywidget.ui" line="72"/>
<location filename="../gui/traywidget.cpp" line="183"/>
<location filename="../gui/traywidget.cpp" line="182"/>
<source>About</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/traywidget.ui" line="99"/>
<location filename="../gui/traywidget.cpp" line="321"/>
<location filename="../gui/traywidget.cpp" line="320"/>
<source>Connect</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/traywidget.ui" line="113"/>
<location filename="../gui/traywidget.cpp" line="534"/>
<location filename="../gui/traywidget.cpp" line="533"/>
<source>Start</source>
<translation type="unfinished"></translation>
</message>
@ -790,7 +248,7 @@
<message>
<location filename="../gui/traywidget.ui" line="250"/>
<location filename="../gui/traywidget.ui" line="270"/>
<location filename="../gui/traywidget.cpp" line="492"/>
<location filename="../gui/traywidget.cpp" line="491"/>
<source>unknown</source>
<translation type="unfinished"></translation>
</message>
@ -812,8 +270,8 @@ For &lt;i&gt;all&lt;/i&gt; notifications, checkout the log</source>
</message>
<message>
<location filename="../gui/traywidget.ui" line="311"/>
<location filename="../gui/traywidget.cpp" line="112"/>
<location filename="../gui/traywidget.cpp" line="267"/>
<location filename="../gui/traywidget.cpp" line="111"/>
<location filename="../gui/traywidget.cpp" line="266"/>
<source>New notifications</source>
<translation type="unfinished"></translation>
</message>
@ -843,176 +301,120 @@ For &lt;i&gt;all&lt;/i&gt; notifications, checkout the log</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/traywidget.cpp" line="84"/>
<location filename="../gui/traywidget.cpp" line="83"/>
<source>View own device ID</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/traywidget.cpp" line="89"/>
<location filename="../gui/traywidget.cpp" line="88"/>
<source>Restart Syncthing</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/traywidget.cpp" line="94"/>
<location filename="../gui/traywidget.cpp" line="93"/>
<source>Show Syncthing log</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/traywidget.cpp" line="99"/>
<location filename="../gui/traywidget.cpp" line="98"/>
<source>Rescan all directories</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/traywidget.cpp" line="106"/>
<location filename="../gui/traywidget.cpp" line="105"/>
<source>Connection</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/traywidget.cpp" line="213"/>
<location filename="../gui/traywidget.cpp" line="212"/>
<source>Own device ID</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/traywidget.cpp" line="223"/>
<location filename="../gui/traywidget.cpp" line="222"/>
<source>device ID is unknown</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/traywidget.cpp" line="231"/>
<location filename="../gui/traywidget.cpp" line="230"/>
<source>Copy to clipboard</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/traywidget.cpp" line="248"/>
<location filename="../gui/traywidget.cpp" line="247"/>
<source>Log</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/traywidget.cpp" line="297"/>
<location filename="../gui/traywidget.cpp" line="296"/>
<source>Do you really want to restart Syncthing?</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/traywidget.cpp" line="322"/>
<location filename="../gui/traywidget.cpp" line="321"/>
<source>Not connected to Syncthing, click to connect</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/traywidget.cpp" line="333"/>
<location filename="../gui/traywidget.cpp" line="332"/>
<source>Pause</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/traywidget.cpp" line="334"/>
<location filename="../gui/traywidget.cpp" line="333"/>
<source>Syncthing is running, click to pause all devices</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/traywidget.cpp" line="339"/>
<location filename="../gui/traywidget.cpp" line="338"/>
<source>Continue</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/traywidget.cpp" line="340"/>
<location filename="../gui/traywidget.cpp" line="339"/>
<source>At least one device is paused, click to resume</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/traywidget.cpp" line="429"/>
<location filename="../gui/traywidget.cpp" line="428"/>
<source>The directory &lt;i&gt;%1&lt;/i&gt; does not exist on the local machine.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/traywidget.cpp" line="439"/>
<location filename="../gui/traywidget.cpp" line="438"/>
<source>The containing directory &lt;i&gt;%1&lt;/i&gt; does not exist on the local machine.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/traywidget.cpp" line="530"/>
<location filename="../gui/traywidget.cpp" line="529"/>
<source>Stop</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>QtGui::WebViewDialog</name>
<message>
<location filename="../gui/webviewdialog.cpp" line="21"/>
<source>Syncthing</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>QtGui::WebViewOptionPage</name>
<message>
<location filename="../gui/webviewoptionpage.ui" line="14"/>
<location filename="../gui/settingsdialog.cpp" line="727"/>
<source>General</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/webviewoptionpage.ui" line="20"/>
<source>Usage</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/webviewoptionpage.ui" line="27"/>
<source>Disable web view (open regular web browser instead)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/webviewoptionpage.ui" line="34"/>
<source>Zoom factor</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/webviewoptionpage.ui" line="57"/>
<source>Hiding</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/webviewoptionpage.ui" line="64"/>
<source>Keep web view running when currently not shown</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../gui/settingsdialog.cpp" line="729"/>
<source>Syncthing Tray has not been built with vieb view support utilizing either Qt WebKit or Qt WebEngine.
The Web UI will be opened in the default web browser instead.</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Settings::restore</name>
<message>
<location filename="../application/settings.cpp" line="140"/>
<source>Unable to load certificate &quot;%1&quot; when restoring settings.</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>main</name>
<message>
<location filename="../application/main.cpp" line="42"/>
<location filename="../application/main.cpp" line="43"/>
<source>Unable to </source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../application/main.cpp" line="70"/>
<location filename="../application/main.cpp" line="71"/>
<source>You must configure how to connect to Syncthing when using Syncthing Tray the first time.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../application/main.cpp" line="71"/>
<location filename="../application/main.cpp" line="72"/>
<source>Note that the settings dialog allows importing URL, credentials and API-key from the local Syncthing configuration.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../application/main.cpp" line="76"/>
<location filename="../application/main.cpp" line="77"/>
<source>The system tray is (currently) not available. You could open the tray menu as a regular window using the -w flag, though.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../application/main.cpp" line="80"/>
<location filename="../application/main.cpp" line="81"/>
<source>The Qt libraries have not been built with tray icon support. You could open the tray menu as a regular window using the -w flag, though.</source>
<translation type="unfinished"></translation>
</message>

87
widgets/CMakeLists.txt Normal file
View File

@ -0,0 +1,87 @@
cmake_minimum_required(VERSION 3.1.0 FATAL_ERROR)
# metadata
set(META_PROJECT_NAME syncthingwidgets)
set(META_PROJECT_TYPE library)
set(META_GUI_OPTIONAL false)
set(META_APP_NAME "Widgets of Syncthing Tray")
set(META_PUBLIC_QT_MODULES Gui Widgets)
set(META_WEBVIEW_SRC_DIR webview)
set(META_PUBLIC_SHARED_LIB_DEPENDS syncthingconnector syncthingmodel)
set(META_PUBLIC_STATIC_LIB_DEPENDS syncthingconnector_static syncthingmodel_static)
# add project files
set(WIDGETS_HEADER_FILES
settings/settings.h
settings/settingsdialog.h
webview/webpage.h
webview/webviewdialog.h
misc/textviewdialog.h
)
set(WIDGETS_SRC_FILES
settings/settings.cpp
settings/settingsdialog.cpp
webview/webpage.cpp
webview/webviewdialog.cpp
misc/textviewdialog.cpp
)
set(RES_FILES
resources/${META_PROJECT_NAME}icons.qrc
)
set(WIDGETS_UI_FILES
settings/connectionoptionpage.ui
settings/notificationsoptionpage.ui
settings/appearanceoptionpage.ui
settings/autostartoptionpage.ui
settings/launcheroptionpage.ui
settings/systemdoptionpage.ui
settings/webviewoptionpage.ui
)
set(TS_FILES
translations/${META_PROJECT_NAME}_de_DE.ts
translations/${META_PROJECT_NAME}_en_US.ts
)
set(REQUIRED_ICONS
preferences-other
process-stop
list-add
preferences-desktop
internet-web-browser
system-run
edit-paste
list-remove
preferences-desktop-notification
view-refresh
emblem-checked
network-connect
emblem-remove
)
# find c++utilities
find_package(c++utilities 4.6.0 REQUIRED)
use_cpp_utilities()
# find qtutilities
find_package(qtutilities 5.6.0 REQUIRED)
use_qt_utilities()
# find backend libraries
find_package(syncthingconnector ${META_APP_VERSION} REQUIRED)
use_syncthingconnector()
find_package(syncthingmodel ${META_APP_VERSION} REQUIRED)
use_syncthingmodel()
# link also explicitely against the following Qt 5 modules
list(APPEND ADDITIONAL_QT_MODULES Network)
# include modules to apply configuration
include(BasicConfig)
include(QtGuiConfig)
include(QtConfig)
include(WindowsResources)
include(WebViewProviderConfig)
include(LibraryTarget)
include(Doxygen)
include(ConfigHeader)

27
widgets/global.h Normal file
View File

@ -0,0 +1,27 @@
// Created via CMake from template global.h.in
// WARNING! Any changes to this file will be overwritten by the next CMake run!
#ifndef SYNCTHINGWIDGETS_GLOBAL
#define SYNCTHINGWIDGETS_GLOBAL
#include <c++utilities/application/global.h>
#ifdef SYNCTHINGWIDGETS_STATIC
# define SYNCTHINGWIDGETS_EXPORT
# define SYNCTHINGWIDGETS_IMPORT
#else
# define SYNCTHINGWIDGETS_EXPORT LIB_EXPORT
# define SYNCTHINGWIDGETS_IMPORT LIB_IMPORT
#endif
/*!
* \def SYNCTHINGWIDGETS_EXPORT
* \brief Marks the symbol to be exported by the syncthingwidgets library.
*/
/*!
* \def SYNCTHINGWIDGETS_IMPORT
* \brief Marks the symbol to be imported from the syncthingwidgets library.
*/
#endif // SYNCTHINGWIDGETS_GLOBAL

View File

@ -1,13 +1,15 @@
#ifndef TEXTVIEWDIALOG_H
#define TEXTVIEWDIALOG_H
#include "../global.h"
#include <QWidget>
QT_FORWARD_DECLARE_CLASS(QTextBrowser)
namespace QtGui {
class TextViewDialog : public QWidget
class SYNCTHINGWIDGETS_EXPORT TextViewDialog : public QWidget
{
Q_OBJECT
public:

View File

Before

Width:  |  Height:  |  Size: 612 B

After

Width:  |  Height:  |  Size: 612 B

View File

Before

Width:  |  Height:  |  Size: 490 B

After

Width:  |  Height:  |  Size: 490 B

View File

Before

Width:  |  Height:  |  Size: 701 B

After

Width:  |  Height:  |  Size: 701 B

View File

Before

Width:  |  Height:  |  Size: 881 B

After

Width:  |  Height:  |  Size: 881 B

View File

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

Before

Width:  |  Height:  |  Size: 2.6 KiB

After

Width:  |  Height:  |  Size: 2.6 KiB

View File

Before

Width:  |  Height:  |  Size: 3.1 KiB

After

Width:  |  Height:  |  Size: 3.1 KiB

View File

@ -0,0 +1,12 @@
<RCC>
<qresource prefix="/">
<file>icons/hicolor/scalable/actions/view-refresh.svg</file>
<file>icons/hicolor/scalable/apps/internet-web-browser.svg</file>
<file>icons/hicolor/scalable/apps/preferences-other.svg</file>
<file>icons/hicolor/scalable/apps/system-run.svg</file>
<file>icons/hicolor/scalable/actions/process-stop.svg</file>
<file>icons/hicolor/scalable/actions/list-add.svg</file>
<file>icons/hicolor/scalable/actions/list-remove.svg</file>
<file>icons/hicolor/scalable/actions/edit-paste.svg</file>
</qresource>
</RCC>

View File

@ -75,7 +75,7 @@
<string>Add secondary instance</string>
</property>
<property name="icon">
<iconset theme="list-add" resource="../resources/syncthingtrayicons.qrc">
<iconset theme="list-add" resource="../resources/syncthingwidgetsicons.qrc">
<normaloff>:/icons/hicolor/scalable/actions/list-add.svg</normaloff>:/icons/hicolor/scalable/actions/list-add.svg</iconset>
</property>
</widget>
@ -92,7 +92,7 @@
<string>Remove currently selected secondary instance</string>
</property>
<property name="icon">
<iconset theme="list-remove" resource="../resources/syncthingtrayicons.qrc">
<iconset theme="list-remove" resource="../resources/syncthingwidgetsicons.qrc">
<normaloff>:/icons/hicolor/scalable/actions/list-remove.svg</normaloff>:/icons/hicolor/scalable/actions/list-remove.svg</iconset>
</property>
</widget>
@ -232,7 +232,7 @@
<string>Insert values from local Syncthing configuration</string>
</property>
<property name="icon">
<iconset theme="edit-paste" resource="../resources/syncthingtrayicons.qrc">
<iconset theme="edit-paste" resource="../resources/syncthingwidgetsicons.qrc">
<normaloff>:/icons/hicolor/scalable/actions/edit-paste.svg</normaloff>:/icons/hicolor/scalable/actions/edit-paste.svg</iconset>
</property>
</widget>
@ -408,7 +408,7 @@
<string>Apply connection settings and try to reconnect with the currently selected config</string>
</property>
<property name="icon">
<iconset theme="view-refresh" resource="../resources/syncthingtrayicons.qrc">
<iconset theme="view-refresh" resource="../resources/syncthingwidgetsicons.qrc">
<normaloff>:/icons/hicolor/scalable/actions/view-refresh.svg</normaloff>:/icons/hicolor/scalable/actions/view-refresh.svg</iconset>
</property>
</widget>
@ -429,7 +429,7 @@
</customwidget>
</customwidgets>
<resources>
<include location="../resources/syncthingtrayicons.qrc"/>
<include location="../resources/syncthingwidgetsicons.qrc"/>
</resources>
<connections>
<connection>

View File

@ -103,7 +103,7 @@
<string>Apply and launch now</string>
</property>
<property name="icon">
<iconset theme="view-refresh" resource="../resources/syncthingtrayicons.qrc">
<iconset theme="view-refresh" resource="../resources/syncthingwidgetsicons.qrc">
<normaloff>:/icons/hicolor/scalable/actions/view-refresh.svg</normaloff>:/icons/hicolor/scalable/actions/view-refresh.svg</iconset>
</property>
</widget>
@ -120,7 +120,7 @@
<string>Stop launched instance</string>
</property>
<property name="icon">
<iconset theme="process-stop" resource="../resources/syncthingtrayicons.qrc">
<iconset theme="process-stop" resource="../resources/syncthingwidgetsicons.qrc">
<normaloff>:/icons/hicolor/scalable/actions/process-stop.svg</normaloff>:/icons/hicolor/scalable/actions/process-stop.svg</iconset>
</property>
</widget>
@ -171,7 +171,7 @@
</customwidget>
</customwidgets>
<resources>
<include location="../resources/syncthingtrayicons.qrc"/>
<include location="../resources/syncthingwidgetsicons.qrc"/>
</resources>
<connections>
<connection>

View File

@ -1,7 +1,8 @@
#include "./settings.h"
#include "../../connector/syncthingprocess.h"
#include "resources/config.h"
// use meta-data of syncthingtray application here
#include "resources/../../tray/resources/config.h"
#include <qtutilities/settingsdialog/qtsettings.h>
#ifdef QT_UTILITIES_SUPPORT_DBUS_NOTIFICATIONS
@ -189,7 +190,7 @@ void restore()
#endif
settings.endGroup();
#if defined(SYNCTHINGTRAY_USE_WEBENGINE) || defined(SYNCTHINGTRAY_USE_WEBKIT)
#if defined(SYNCTHINGWIDGETS_USE_WEBENGINE) || defined(SYNCTHINGWIDGETS_USE_WEBKIT)
settings.beginGroup(QStringLiteral("webview"));
auto &webView = v.webView;
webView.disabled = settings.value(QStringLiteral("disabled"), webView.disabled).toBool();
@ -270,7 +271,7 @@ void save()
#endif
settings.endGroup();
#if defined(SYNCTHINGTRAY_USE_WEBENGINE) || defined(SYNCTHINGTRAY_USE_WEBKIT)
#if defined(SYNCTHINGWIDGETS_USE_WEBENGINE) || defined(SYNCTHINGWIDGETS_USE_WEBKIT)
settings.beginGroup(QStringLiteral("webview"));
const auto &webView = v.webView;
settings.setValue(QStringLiteral("disabled"), webView.disabled);

View File

@ -1,6 +1,7 @@
#ifndef SETTINGS_H
#define SETTINGS_H
#include "../global.h"
#include "../../connector/syncthingconnectionsettings.h"
#include <qtutilities/settingsdialog/qtsettings.h>
@ -16,11 +17,6 @@
#include <vector>
namespace Media {
enum class TagUsage;
enum class ElementPosition;
}
namespace Dialogs {
class QtSettings;
}
@ -31,13 +27,13 @@ class SyncthingProcess;
namespace Settings {
struct Connection
struct SYNCTHINGWIDGETS_EXPORT Connection
{
Data::SyncthingConnectionSettings primary;
std::vector<Data::SyncthingConnectionSettings> secondary;
};
struct NotifyOn
struct SYNCTHINGWIDGETS_EXPORT NotifyOn
{
bool disconnect = true;
bool internalErrors = true;
@ -45,7 +41,7 @@ struct NotifyOn
bool syncthingErrors = true;
};
struct Appearance
struct SYNCTHINGWIDGETS_EXPORT Appearance
{
bool showTraffic = true;
QSize trayMenuSize = QSize(450, 400);
@ -54,14 +50,14 @@ struct Appearance
bool brightTextColors = false;
};
struct ToolParameter
struct SYNCTHINGWIDGETS_EXPORT ToolParameter
{
QString path;
QString args;
bool autostart = false;
};
struct Launcher
struct SYNCTHINGWIDGETS_EXPORT Launcher
{
bool enabled = false;
QString syncthingPath =
@ -80,7 +76,7 @@ struct Launcher
};
#ifdef LIB_SYNCTHING_CONNECTOR_SUPPORT_SYSTEMD
struct Systemd
struct SYNCTHINGWIDGETS_EXPORT Systemd
{
QString syncthingUnit = QStringLiteral("syncthing.service");
bool showButton = false;
@ -88,8 +84,8 @@ struct Systemd
};
#endif
#if defined(SYNCTHINGTRAY_USE_WEBENGINE) || defined(SYNCTHINGTRAY_USE_WEBKIT)
struct WebView
#if defined(SYNCTHINGWIDGETS_USE_WEBENGINE) || defined(SYNCTHINGWIDGETS_USE_WEBKIT)
struct SYNCTHINGWIDGETS_EXPORT WebView
{
bool disabled = false;
double zoomFactor = 1.0;
@ -98,7 +94,7 @@ struct WebView
};
#endif
struct Settings
struct SYNCTHINGWIDGETS_EXPORT Settings
{
bool firstLaunch = false;
Connection connection;
@ -112,15 +108,15 @@ struct Settings
#ifdef LIB_SYNCTHING_CONNECTOR_SUPPORT_SYSTEMD
Systemd systemd;
#endif
#if defined(SYNCTHINGTRAY_USE_WEBENGINE) || defined(SYNCTHINGTRAY_USE_WEBKIT)
#if defined(SYNCTHINGWIDGETS_USE_WEBENGINE) || defined(SYNCTHINGWIDGETS_USE_WEBKIT)
WebView webView;
#endif
Dialogs::QtSettings qt;
};
Settings &values();
void restore();
void save();
Settings SYNCTHINGWIDGETS_EXPORT &values();
void SYNCTHINGWIDGETS_EXPORT restore();
void SYNCTHINGWIDGETS_EXPORT save();
}

View File

@ -18,7 +18,8 @@
#endif
#include "ui_webviewoptionpage.h"
#include "resources/config.h"
// use meta-data of syncthingtray application here
#include "resources/../../tray/resources/config.h"
#include <qtutilities/settingsdialog/optioncategory.h>
#include <qtutilities/settingsdialog/optioncategorymodel.h>
@ -720,7 +721,7 @@ WebViewOptionPage::WebViewOptionPage(QWidget *parentWidget) :
WebViewOptionPage::~WebViewOptionPage()
{}
#ifdef SYNCTHINGTRAY_NO_WEBVIEW
#ifdef SYNCTHINGWIDGETS_NO_WEBVIEW
QWidget *WebViewOptionPage::setupWidget()
{
auto *label = new QLabel;
@ -733,7 +734,7 @@ QWidget *WebViewOptionPage::setupWidget()
bool WebViewOptionPage::apply()
{
#ifndef SYNCTHINGTRAY_NO_WEBVIEW
#ifndef SYNCTHINGWIDGETS_NO_WEBVIEW
if(hasBeenShown()) {
auto &webView = values().webView;
webView.disabled = ui()->disableCheckBox->isChecked();
@ -746,7 +747,7 @@ bool WebViewOptionPage::apply()
void WebViewOptionPage::reset()
{
#ifndef SYNCTHINGTRAY_NO_WEBVIEW
#ifndef SYNCTHINGWIDGETS_NO_WEBVIEW
if(hasBeenShown()) {
const auto &webView = values().webView;
ui()->disableCheckBox->setChecked(webView.disabled);
@ -810,6 +811,6 @@ INSTANTIATE_UI_FILE_BASED_OPTION_PAGE_NS(QtGui, LauncherOptionPage)
#ifdef LIB_SYNCTHING_CONNECTOR_SUPPORT_SYSTEMD
INSTANTIATE_UI_FILE_BASED_OPTION_PAGE_NS(QtGui, SystemdOptionPage)
#endif
#ifndef SYNCTHINGTRAY_NO_WEBVIEW
#ifndef SYNCTHINGWIDGETS_NO_WEBVIEW
INSTANTIATE_UI_FILE_BASED_OPTION_PAGE_NS(QtGui, WebViewOptionPage)
#endif

View File

@ -1,7 +1,7 @@
#ifndef SETTINGS_DIALOG_H
#define SETTINGS_DIALOG_H
#include "../application/settings.h"
#include "./settings.h"
#include <qtutilities/settingsdialog/settingsdialog.h>
#include <qtutilities/settingsdialog/optionpage.h>
@ -74,13 +74,13 @@ private:
END_DECLARE_OPTION_PAGE
#endif
#ifndef SYNCTHINGTRAY_NO_WEBVIEW
#ifndef SYNCTHINGWIDGETS_NO_WEBVIEW
DECLARE_UI_FILE_BASED_OPTION_PAGE(WebViewOptionPage)
#else
DECLARE_OPTION_PAGE(WebViewOptionPage)
#endif
class SettingsDialog : public Dialogs::SettingsDialog
class SYNCTHINGWIDGETS_EXPORT SettingsDialog : public Dialogs::SettingsDialog
{
Q_OBJECT
public:
@ -98,7 +98,7 @@ DECLARE_EXTERN_UI_FILE_BASED_OPTION_PAGE_NS(QtGui, LauncherOptionPage)
#ifdef LIB_SYNCTHING_CONNECTOR_SUPPORT_SYSTEMD
DECLARE_EXTERN_UI_FILE_BASED_OPTION_PAGE_NS(QtGui, SystemdOptionPage)
#endif
#ifndef SYNCTHINGTRAY_NO_WEBVIEW
#ifndef SYNCTHINGWIDGETS_NO_WEBVIEW
DECLARE_EXTERN_UI_FILE_BASED_OPTION_PAGE_NS(QtGui, WebViewOptionPage)
#endif

View File

@ -0,0 +1,937 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="de_DE">
<context>
<name>QtGui::AppearanceOptionPage</name>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="6"/>
<source>Appearance</source>
<translation>Erscheinungsbild</translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="19"/>
<source>Menu size</source>
<translation>Größe des Menüs</translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="26"/>
<source>Optional GUI elements</source>
<translation>Optionale Elemente</translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="33"/>
<source>Traffic statistics</source>
<translation>Traffic-Statistiken</translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="61"/>
<source> x </source>
<translation></translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="84"/>
<source> px</source>
<translation></translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="96"/>
<source>Frame shape</source>
<translation>Rahmenform</translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="103"/>
<source>Frame shadow</source>
<translation>Rahmenschatten</translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="111"/>
<source>No frame</source>
<translation>Kein Rahmen</translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="116"/>
<source>Box</source>
<translation></translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="121"/>
<source>Panel</source>
<translation></translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="126"/>
<source>Styled panel</source>
<translation></translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="135"/>
<source>Plain</source>
<translation>Einfach</translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="140"/>
<source>Raised</source>
<translation>Angehoben</translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="145"/>
<source>Sunken</source>
<translation>Eingedrückt</translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="153"/>
<source>Tab position</source>
<translation>Position der Tabs</translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="161"/>
<source>Top</source>
<translation>Oben</translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="166"/>
<source>Bottom</source>
<translation>Unten</translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="171"/>
<source>Left</source>
<translation>Links</translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="176"/>
<source>Right</source>
<translation>Rechts</translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="184"/>
<source>Colors</source>
<translation>Farben</translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="191"/>
<source>Bright custom text colors (use for dark color scheme)</source>
<translation>Helle benutzerdefinierte Schriftfarben (für dunkles Farbschema gedacht)</translation>
</message>
</context>
<context>
<name>QtGui::AutostartOptionPage</name>
<message>
<location filename="../settings/autostartoptionpage.ui" line="6"/>
<source>Autostart</source>
<translation>Auto-Start</translation>
</message>
<message>
<location filename="../settings/autostartoptionpage.ui" line="18"/>
<source>Start the tray icon when the desktop environment launches</source>
<translation>Tray-Icon beim Starten der Desktopumgebung automatisch starten</translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="369"/>
<source>This is achieved by adding a *.desktop file under &lt;i&gt;~/.config/autostart&lt;/i&gt; so the setting only affects the current user.</source>
<translation>Durch das Hinzufügen einer *.desktop-Datei unter &lt;i&gt;~/.config/autostart&lt;/i&gt; realisiert - betrifft also nur den aktuellen Benutzer.</translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="371"/>
<source>This is achieved by adding a registry key under &lt;i&gt;HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run&lt;/i&gt; so the setting only affects the current user. Note that the startup entry is invalidated when moving &lt;i&gt;syncthingtray.exe&lt;/i&gt;.</source>
<translation>Durch das Hinzufügen eines Registry-Schlüssels unter &lt;i&gt;HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run&lt;/i&gt; realisiert - betrifft also nur den aktuellen Benutzer.</translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="373"/>
<source>This feature has not been implemented for your platform (yet).</source>
<translation>Diese Funktion wurde für die aktuelle Plattform nicht nicht implementiert.</translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="460"/>
<source>unable to modify startup entry</source>
<translation>Fehler beim aktualisieren des Auto-Start-Eintrags</translation>
</message>
</context>
<context>
<name>QtGui::ConnectionOptionPage</name>
<message>
<location filename="../settings/connectionoptionpage.ui" line="6"/>
<source>Connection</source>
<translation>Verbindung</translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="25"/>
<source>Config label</source>
<translation>Name der Konfig.</translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="75"/>
<source>Add secondary instance</source>
<translation>Sekundäre Konfiguration hinzufügen</translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="92"/>
<source>Remove currently selected secondary instance</source>
<translation>Sekundäre Konfiguration löschen</translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="122"/>
<source>It is possible to save multiple configurations. This allows switching quickly between multiple Syncthing instances using the connection button in the right corner of the tray menu. The config label is an arbitrary name to identify a configuration and does not have to match the name of the corresponding Syncthing device.</source>
<translation>Es ist möglich, mehrere Konfigurationen zu speichern. Zwischen diesen kann anschließend über das Verbindungsmenü rechts oben im Tray schnell hin- und hergewechselt werden. Der Name der Konfiguration muss nicht mit dem Namen des entsprechenden Syncthing-Gerätes übereinstimmen.</translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="145"/>
<source>Syncthing URL</source>
<translation></translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="155"/>
<source>Authentication</source>
<translation>Authentifizierung</translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="168"/>
<source>User</source>
<translation>Benutzername</translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="185"/>
<source>Password</source>
<translation>Passwort</translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="202"/>
<source>API key</source>
<translation>API-Schlüssel</translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="212"/>
<source>HTTPS certificate</source>
<translation>HTTPS-Zertifikat</translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="232"/>
<source>Insert values from local Syncthing configuration</source>
<translation>Werte aus lokaler Syncthing-Konfiguration einfügen</translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="333"/>
<source>Errors</source>
<translation>Fehler</translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="394"/>
<source>Status</source>
<translation></translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="401"/>
<source>disconnected</source>
<translation>getrennt</translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="408"/>
<source>Apply connection settings and try to reconnect with the currently selected config</source>
<translation>Verbindungseinstellungen übernehmen und mit neuen Einstellungen verbinden</translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="256"/>
<source>Poll interval</source>
<translation>Abfrageintervall</translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="293"/>
<source>Traffic</source>
<translation></translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="280"/>
<location filename="../settings/connectionoptionpage.ui" line="320"/>
<location filename="../settings/connectionoptionpage.ui" line="346"/>
<location filename="../settings/connectionoptionpage.ui" line="375"/>
<source> ms</source>
<translation></translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="300"/>
<source>Device statistics</source>
<translation>Gerätestatistiken</translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="359"/>
<source>Reconnect</source>
<translation>Verbindungsveruch</translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="372"/>
<source>no</source>
<translation>nicht neu verbinden</translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="76"/>
<source>Auto-detected for local instance</source>
<translation>Kann für lokale Instanz automatisch ermittelt werden</translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="94"/>
<source>Select Syncthing config file</source>
<translation>Wähle die Syncthing-Konfigurationsdatei</translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="101"/>
<source>Unable to parse the Syncthing config file.</source>
<translation>Fehler beim Auslesen der Syncthing-Konfigurationsdatei.</translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="172"/>
<source>Unable to load specified certificate &quot;%1&quot;.</source>
<translation>Fehler beim Auslesen des angegebenen Zertifikats: %1</translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="196"/>
<source>Instance %1</source>
<translation>Instanz %1</translation>
</message>
</context>
<context>
<name>QtGui::DevView</name>
<message>
<source>Copy value</source>
<translation type="vanished">Wert kopieren</translation>
</message>
<message>
<source>Copy name</source>
<translation type="vanished">Namen kopieren</translation>
</message>
<message>
<source>Copy ID</source>
<translation type="vanished">ID kopieren</translation>
</message>
</context>
<context>
<name>QtGui::DirView</name>
<message>
<source>Errors of %1</source>
<translation type="vanished">Fehler von %1</translation>
</message>
<message>
<source>Copy value</source>
<translation type="vanished">Wert kopieren</translation>
</message>
<message>
<source>Copy label/ID</source>
<translation type="vanished">Namen/ID kopieren</translation>
</message>
<message>
<source>Copy path</source>
<translation type="vanished">Pfad kopieren</translation>
</message>
</context>
<context>
<name>QtGui::DownloadView</name>
<message>
<source>Copy value</source>
<translation type="vanished">Wert kopieren</translation>
</message>
<message>
<source>Copy label/ID</source>
<translation type="vanished">Namen/ID kopieren</translation>
</message>
</context>
<context>
<name>QtGui::LauncherOptionPage</name>
<message>
<location filename="../settings/launcheroptionpage.ui" line="6"/>
<source>Syncthing launcher</source>
<translation>Syncthing-Starter</translation>
</message>
<message>
<location filename="../settings/launcheroptionpage.ui" line="18"/>
<source>Launch Syncthing when starting the tray icon</source>
<translation>Starte Syncthing beim Starten des Tray-Icons</translation>
</message>
<message>
<location filename="../settings/launcheroptionpage.ui" line="43"/>
<source>Syncthing executable</source>
<translation>Ausführbare Datei von Syncthing</translation>
</message>
<message>
<location filename="../settings/launcheroptionpage.ui" line="53"/>
<source>Arguments</source>
<translation>Argumente</translation>
</message>
<message>
<location filename="../settings/launcheroptionpage.ui" line="87"/>
<source>Syncthing log (interleaved stdout/stderr)</source>
<translation>Syncthing-Log (stdout/stderr)</translation>
</message>
<message>
<location filename="../settings/launcheroptionpage.ui" line="103"/>
<source>Apply and launch now</source>
<translation>Jetzt starten</translation>
</message>
<message>
<location filename="../settings/launcheroptionpage.ui" line="120"/>
<source>Stop launched instance</source>
<translation>Stoppen</translation>
</message>
<message>
<location filename="../settings/launcheroptionpage.ui" line="139"/>
<source>No log messages available yet</source>
<translation>Bisher keine Log-Meldungen</translation>
</message>
<message>
<location filename="../settings/launcheroptionpage.ui" line="146"/>
<source>Ensure latest log is visible</source>
<translation>Log folgen</translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="500"/>
<source>%1-launcher</source>
<translation>%1-Starter</translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="501"/>
<source>Launch %1 when starting the tray icon</source>
<translation>Starte %1 beim Starten des Tray-Icons</translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="502"/>
<source>%1 executable</source>
<translation>Ausführbare Datei von %1</translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="503"/>
<source>%1 log (interleaved stdout/stderr)</source>
<translation>%1-Log (stdout/stderr)</translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="573"/>
<source>%1 exited with exit code %2
</source>
<translation>%1 wurde mit dem Statuscode %2 beendet</translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="576"/>
<source>%1 crashed with exit code %2
</source>
<translation>%1 ist mit dem Statuscode %2 abgestürzt</translation>
</message>
<message>
<source>Syncthing exited with exit code %1
</source>
<translation type="vanished">Syncthing wurde mit dem Statuscode %1 beendet</translation>
</message>
<message>
<source>Syncthing crashed with exit code %1
</source>
<translation type="vanished">Syncthing ist mit dem Statuscode %1 abgestürzt</translation>
</message>
</context>
<context>
<name>QtGui::NotificationsOptionPage</name>
<message>
<location filename="../settings/notificationsoptionpage.ui" line="6"/>
<source>Notifications</source>
<translation>Benachrichtigungen</translation>
</message>
<message>
<location filename="../settings/notificationsoptionpage.ui" line="16"/>
<source>Notify on</source>
<translation>Benachrichtigen, wenn</translation>
</message>
<message>
<location filename="../settings/notificationsoptionpage.ui" line="22"/>
<source>disconnect</source>
<translation>die Verbindung zu Syncthing getrennt wird</translation>
</message>
<message>
<location filename="../settings/notificationsoptionpage.ui" line="29"/>
<source>internal errors</source>
<translation>interne Fehler auftreten</translation>
</message>
<message>
<location filename="../settings/notificationsoptionpage.ui" line="36"/>
<source>errors/notifications from Syncthing</source>
<translation>Fehler/Warnungen von Syncthing gemeldet werden</translation>
</message>
<message>
<location filename="../settings/notificationsoptionpage.ui" line="43"/>
<source>sync complete</source>
<translation>die Synchronisierung abgeschlossen wurde</translation>
</message>
<message>
<location filename="../settings/notificationsoptionpage.ui" line="53"/>
<source>Notification API</source>
<translation>Benachrichtigungs-API</translation>
</message>
<message>
<location filename="../settings/notificationsoptionpage.ui" line="59"/>
<source>D-Bus notifi&amp;cations (org.freedesktop.Notifications)</source>
<translation>D-Bus (org.freedesktop.Notifications)</translation>
</message>
<message>
<location filename="../settings/notificationsoptionpage.ui" line="66"/>
<source>&amp;Method provided by Qt (might be overridden by QPA plugin)</source>
<translation>Methode die von Qt verwendet wird (kann vom QPA-Plugin überschrieben werden)</translation>
</message>
<message>
<location filename="../settings/notificationsoptionpage.ui" line="76"/>
<source>Misc</source>
<translation>Verschiedenes</translation>
</message>
<message>
<location filename="../settings/notificationsoptionpage.ui" line="82"/>
<source>Ignore inavailability of Syncthing the specified number of seconds after Syncthing has been started; has only effect if the Syncthing start can be determined which is currently only supported for the local instance by checking Systemd unit status</source>
<translation>Ignoriere, dass Syncthing ein paar Sekunden nach dem Start noch nicht verfügbar ist. Hat nur Auswirkungen, wenn der Syncthing-Startzeitpunkt ermittelt werden kann, was aktuell nur für die lokale Instanz via Systemd unterstützt wird.</translation>
</message>
<message>
<location filename="../settings/notificationsoptionpage.ui" line="92"/>
<source>don&apos;t ignore</source>
<translation>nicht ignorieren</translation>
</message>
<message>
<location filename="../settings/notificationsoptionpage.ui" line="95"/>
<source> s</source>
<translation></translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="268"/>
<source>Configured to use D-Bus notifications but D-Bus notification daemon seems unavailabe.</source>
<translation>Benachrichtigungen via D-Bus wurden eingestellt, aber es scheint kein Daemon zu laufen der den Dienst bereitstellt.</translation>
</message>
</context>
<context>
<name>QtGui::SettingsDialog</name>
<message>
<location filename="../settings/settingsdialog.cpp" line="768"/>
<source>Tray</source>
<translation></translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="774"/>
<source>Web view</source>
<translation>Weboberfläche</translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="780"/>
<source>Startup</source>
<translation>Starten</translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="794"/>
<source>Settings</source>
<translation>Einstellungen</translation>
</message>
</context>
<context>
<name>QtGui::SystemdOptionPage</name>
<message>
<location filename="../settings/systemdoptionpage.ui" line="6"/>
<source>Systemd</source>
<translation></translation>
</message>
<message>
<location filename="../settings/systemdoptionpage.ui" line="18"/>
<source>Show start/stop button on tray for local instance when systemd is available</source>
<translation>Zeige Start/Stop-Button für die lokale Instanz wenn systemd verfügbar ist</translation>
</message>
<message>
<location filename="../settings/systemdoptionpage.ui" line="62"/>
<source>Syncthing unit</source>
<translation></translation>
</message>
<message>
<location filename="../settings/systemdoptionpage.ui" line="78"/>
<source>Description</source>
<translation>Beschreibung</translation>
</message>
<message>
<location filename="../settings/systemdoptionpage.ui" line="114"/>
<source>Current status</source>
<translation>Aktueller Status</translation>
</message>
<message>
<location filename="../settings/systemdoptionpage.ui" line="191"/>
<source>Unit file state</source>
<translation>Status des Unit files</translation>
</message>
<message>
<location filename="../settings/systemdoptionpage.ui" line="99"/>
<location filename="../settings/systemdoptionpage.ui" line="154"/>
<location filename="../settings/systemdoptionpage.ui" line="231"/>
<location filename="../settings/settingsdialog.cpp" line="692"/>
<location filename="../settings/settingsdialog.cpp" line="707"/>
<source>unknown</source>
<translation>unbekannt</translation>
</message>
<message>
<location filename="../settings/systemdoptionpage.ui" line="25"/>
<source>Consider systemd unit status for reconnect attempts to local instance
Don&apos;t reconnect when unit not active/running
Try to reconnect when unit becomes active/running</source>
<translation>Verwende den systemd-Status für Neuverbindungsversuche zur lokalen Instanz
Nicht versuchen neu zu verbinden, wenn die Syncthing unit nicht läuft
Automatisch neu verbinden, wenn die Syncthing unit gestartet wird</translation>
</message>
<message>
<location filename="../settings/systemdoptionpage.ui" line="238"/>
<source>Enable</source>
<translation>Autom. starten</translation>
</message>
<message>
<location filename="../settings/systemdoptionpage.ui" line="249"/>
<source>Disable</source>
<translation>Nicht autom. starten</translation>
</message>
<message>
<location filename="../settings/systemdoptionpage.ui" line="161"/>
<source>Start</source>
<translation>Starten</translation>
</message>
<message>
<location filename="../settings/systemdoptionpage.ui" line="172"/>
<source>Stop</source>
<translation>Stoppen</translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="665"/>
<source>specified unit is either inactive or doesn&apos;t exist</source>
<translation>angegebene Unit ist entweder nicht geladen oder existiert nicht</translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="687"/>
<source>since </source>
<translation>seit </translation>
</message>
</context>
<context>
<name>QtGui::TrayIcon</name>
<message>
<source> - internal error</source>
<translation type="vanished"> - interner Fehler</translation>
</message>
<message>
<source>Syncthing notification</source>
<translation type="vanished">Syncthing-Benachrichtigung</translation>
</message>
<message>
<source>Web UI</source>
<translation type="vanished">Weboberfäche</translation>
</message>
<message>
<source>Settings</source>
<translation type="vanished">Einstellungen</translation>
</message>
<message>
<source>Rescan all</source>
<translation type="vanished">Alle neu scannen</translation>
</message>
<message>
<source>About</source>
<translation type="vanished">Über Syncthing Tray</translation>
</message>
<message>
<source>Close</source>
<translation type="vanished">Beenden</translation>
</message>
<message>
<source>Error</source>
<translation type="vanished">Fehler</translation>
</message>
<message>
<source>Syncthing notification - click to dismiss</source>
<translation type="vanished">Neue Syncthing-Benachrichtigung</translation>
</message>
<message>
<source>Not connected to Syncthing - trying to reconnect every %1 ms</source>
<translation type="vanished">Nicht mit Syncthing verbunden - versuche alle %1 ms zu verbinden</translation>
</message>
<message>
<source>Not connected to Syncthing</source>
<translation type="vanished">Nicht mit Syncthing verbunden</translation>
</message>
<message>
<source>Disconnected from Syncthing</source>
<translation type="vanished">Verbindung zu Syncthing getrennt</translation>
</message>
<message>
<source>Try to reconnect</source>
<translation type="vanished">Versuche Verbindung wieder herzustellen</translation>
</message>
<message>
<source>Dismiss</source>
<translation type="vanished">Ignorieren</translation>
</message>
<message>
<source>Show</source>
<translation type="vanished">Zeigen</translation>
</message>
<message>
<source>Reconnecting ...</source>
<translation type="vanished">Neu verbinden ...</translation>
</message>
<message>
<source>Synchronization is ongoing but at least one directory is out of sync</source>
<translation type="vanished">Synchronisiert, aber mind. ein Verzeichnis hat Fehler</translation>
</message>
<message>
<source>At least one directory is out of sync</source>
<translation type="vanished">Mind. ein Verzeichnis hat Fehler</translation>
</message>
<message>
<source>Notifications available</source>
<translation type="vanished">Es gibt neue Benachrichtigungen</translation>
</message>
<message>
<source>Syncthing is idling</source>
<translation type="vanished">Syncthing ist im Leerlauf</translation>
</message>
<message>
<source>Syncthing is scanning</source>
<translation type="vanished">Syncthing scannt</translation>
</message>
<message>
<source>At least one device is paused</source>
<translation type="vanished">Mind. ein Gerät ist pausiert</translation>
</message>
<message>
<source>Synchronization is ongoing</source>
<translation type="vanished">Syncthing synchronisiert</translation>
</message>
<message>
<source>Synchronization of %1 complete</source>
<translation type="vanished">%1 wurde synchronisiert</translation>
</message>
<message>
<source>Synchronization of the following devices complete:
</source>
<translation type="vanished">Folgende Verzeichnisse wurden synchronisiert:
</translation>
</message>
</context>
<context>
<name>QtGui::TrayWidget</name>
<message>
<source>Close</source>
<translation type="vanished">Beenden</translation>
</message>
<message>
<source>About</source>
<translation type="vanished">Über Syncthing Tray</translation>
</message>
<message>
<source>Connect</source>
<translation type="vanished">Verbinden</translation>
</message>
<message>
<source>Start</source>
<translation type="vanished">Starten</translation>
</message>
<message>
<source>Settings</source>
<translation type="vanished">Einstellungen</translation>
</message>
<message>
<source>Web UI</source>
<translation type="vanished">Weboberfläche</translation>
</message>
<message>
<source>Traffic</source>
<translation type="vanished">Eingehender und ausgehender Datenverkehr</translation>
</message>
<message>
<source>In</source>
<translation type="vanished">eing.</translation>
</message>
<message>
<source>Incoming traffic</source>
<translation type="vanished">Eingehender Datenverkehr</translation>
</message>
<message>
<source>unknown</source>
<translation type="vanished">unbekannt</translation>
</message>
<message>
<source>Out</source>
<translation type="vanished">ausg.</translation>
</message>
<message>
<source>Outgoing traffic</source>
<translation type="vanished">Ausgehender Datenverkehr</translation>
</message>
<message>
<source>Click to show &lt;i&gt;new&lt;/i&gt; notifications&lt;br&gt;
For &lt;i&gt;all&lt;/i&gt; notifications, checkout the log</source>
<translation type="vanished">Klicke um &lt;i&gt;neue&lt;/i&gt; Benachrichtigungen zu zeigen&lt;br&gt;
(für &lt;i&gt;alle&lt;/i&gt; Benachrichtigungen, in den Log schauen)</translation>
</message>
<message>
<source>New notifications</source>
<translation type="vanished">Neue Benachrichtigungen</translation>
</message>
<message>
<source>Directories</source>
<translation type="vanished">Verzeichnisse</translation>
</message>
<message>
<source>Devices</source>
<translation type="vanished">Geräte</translation>
</message>
<message>
<source>Show</source>
<translation type="vanished">Zeigen</translation>
</message>
<message>
<source>Dismiss</source>
<translation type="vanished">Ignorieren</translation>
</message>
<message>
<source>View own device ID</source>
<translation type="vanished">Eigene Geräte-ID anzeigen</translation>
</message>
<message>
<source>Restart Syncthing</source>
<translation type="vanished">Syncthing neustarten</translation>
</message>
<message>
<source>Show Syncthing log</source>
<translation type="vanished">Syncthing-Log zeigen</translation>
</message>
<message>
<source>Rescan all directories</source>
<translation type="vanished">Alle Verzeichnisse neu scannen</translation>
</message>
<message>
<source>Connection</source>
<translation type="vanished">Verbindung</translation>
</message>
<message>
<source>Own device ID</source>
<translation type="vanished">Eigene Geräte-ID</translation>
</message>
<message>
<source>device ID is unknown</source>
<translation type="vanished">die Geräte-ID ist unbekannt</translation>
</message>
<message>
<source>Copy to clipboard</source>
<translation type="vanished">in Zwischenablage kopieren</translation>
</message>
<message>
<source>Do you really want to restart Syncthing?</source>
<translation type="vanished">Soll Syncthing wirklich neu gestartet werden?</translation>
</message>
<message>
<source>Not connected to Syncthing, click to connect</source>
<translation type="vanished">Verbindung zu Syncthing getrennt, klicke um zu verbinden</translation>
</message>
<message>
<source>Pause</source>
<translation type="vanished">Pausieren</translation>
</message>
<message>
<source>Syncthing is running, click to pause all devices</source>
<translation type="vanished">Syncthing läuft, klicke um alle Geräte zu pausieren</translation>
</message>
<message>
<source>Continue</source>
<translation type="vanished">Fortsetzen</translation>
</message>
<message>
<source>At least one device is paused, click to resume</source>
<translation type="vanished">Mind. ein Gerät ist pausiert, klicke um fortzusetzen</translation>
</message>
<message>
<source>The directory &lt;i&gt;%1&lt;/i&gt; does not exist on the local machine.</source>
<translation type="vanished">Das Verzeichnis &lt;i&gt;%1&lt;/i&gt; existiert nicht lokal.</translation>
</message>
<message>
<source>The containing directory &lt;i&gt;%1&lt;/i&gt; does not exist on the local machine.</source>
<translation type="vanished">Das beinhaltende Verzeichnis &lt;i&gt;%1&lt;/i&gt; existiert nicht lokal.</translation>
</message>
<message>
<source>The file &lt;i&gt;%1&lt;/i&gt; does not exist on the local machine.</source>
<translation type="vanished">Die Datei &lt;i&gt;%1&lt;/i&gt; existiert nicht (lokal).</translation>
</message>
<message>
<source>Stop</source>
<translation type="vanished">Stoppen</translation>
</message>
</context>
<context>
<name>QtGui::WebViewDialog</name>
<message>
<location filename="../webview/webviewdialog.cpp" line="21"/>
<source>Syncthing</source>
<translation></translation>
</message>
</context>
<context>
<name>QtGui::WebViewOptionPage</name>
<message>
<location filename="../settings/webviewoptionpage.ui" line="6"/>
<location filename="../settings/settingsdialog.cpp" line="728"/>
<source>General</source>
<translation>Allgemein</translation>
</message>
<message>
<location filename="../settings/webviewoptionpage.ui" line="12"/>
<source>Usage</source>
<translation>Verwendung</translation>
</message>
<message>
<location filename="../settings/webviewoptionpage.ui" line="19"/>
<source>Disable web view (open regular web browser instead)</source>
<translation>Eingebaute Anzeige deaktivieren (stattdessen Standardbrowser verwenden)</translation>
</message>
<message>
<location filename="../settings/webviewoptionpage.ui" line="26"/>
<source>Zoom factor</source>
<translation>Zoom-Faktor</translation>
</message>
<message>
<location filename="../settings/webviewoptionpage.ui" line="49"/>
<source>Hiding</source>
<translation>Schließen</translation>
</message>
<message>
<location filename="../settings/webviewoptionpage.ui" line="56"/>
<source>Keep web view running when currently not shown</source>
<translation>Lasse Weboberfläche im Hintgergrund weiter offen, wenn Fenster nicht offen</translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="730"/>
<source>Syncthing Tray has not been built with vieb view support utilizing either Qt WebKit or Qt WebEngine.
The Web UI will be opened in the default web browser instead.</source>
<translation>Syncthing Tray wurde nicht mit Unterstützung für die eingebaute Anzeige der Weboberfläche unter Verwendung von Qt WebKit oder Qt WebEngine gebaut.
Die Weboberfläche wird stattdessen im Standardwebrowser geöffnet.</translation>
</message>
</context>
<context>
<name>Settings::restore</name>
<message>
<location filename="../settings/settings.cpp" line="141"/>
<source>Unable to load certificate &quot;%1&quot; when restoring settings.</source>
<translation>Fehler beim laden des Zertifikats &quot;%1&quot; beim wiederherstellen der Einstellungen.</translation>
</message>
</context>
<context>
<name>main</name>
<message>
<source>Unable to </source>
<translation type="vanished">Fehler beim </translation>
</message>
<message>
<source>You must configure how to connect to Syncthing when using Syncthing Tray the first time.</source>
<translation type="vanished">Vor der ersten Verwendung muss eingestellt werden, wie sich das Syncthing Tray mit Syncthing verbinden soll.</translation>
</message>
<message>
<source>Note that the settings dialog allows importing URL, credentials and API-key from the local Syncthing configuration.</source>
<translation type="vanished">Der Einstellungsdialog ermöglicht es die URL, Zugangsdaten und den API-Key automatisch aus der lokalen Syncthing-Konfiguration auszulesen.</translation>
</message>
<message>
<source>The system tray is (currently) not available. You could open the tray menu as a regular window using the -w flag, though.</source>
<translation type="vanished">Das System-Tray bzw. der Infobereich ist aktuell nicht verfügbar. Es wäre möglich, Syncthing Tray als normales Fenster zu starten (mit Option -w).</translation>
</message>
<message>
<source>The Qt libraries have not been built with tray icon support. You could open the tray menu as a regular window using the -w flag, though.</source>
<translation type="vanished">Die verwendete Qt-Bibliothek wurde nicht mit Unterstützung für System-Tray konfiguriert. Es wäre möglich, Syncthing Tray als normales Fenster zu starten (mit Option -w).</translation>
</message>
</context>
</TS>

View File

@ -0,0 +1,602 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="en_US">
<context>
<name>QtGui::AppearanceOptionPage</name>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="6"/>
<source>Appearance</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="19"/>
<source>Menu size</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="26"/>
<source>Optional GUI elements</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="33"/>
<source>Traffic statistics</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="61"/>
<source> x </source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="84"/>
<source> px</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="96"/>
<source>Frame shape</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="103"/>
<source>Frame shadow</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="111"/>
<source>No frame</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="116"/>
<source>Box</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="121"/>
<source>Panel</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="126"/>
<source>Styled panel</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="135"/>
<source>Plain</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="140"/>
<source>Raised</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="145"/>
<source>Sunken</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="153"/>
<source>Tab position</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="161"/>
<source>Top</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="166"/>
<source>Bottom</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="171"/>
<source>Left</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="176"/>
<source>Right</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="184"/>
<source>Colors</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/appearanceoptionpage.ui" line="191"/>
<source>Bright custom text colors (use for dark color scheme)</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>QtGui::AutostartOptionPage</name>
<message>
<location filename="../settings/autostartoptionpage.ui" line="6"/>
<source>Autostart</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/autostartoptionpage.ui" line="18"/>
<source>Start the tray icon when the desktop environment launches</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="369"/>
<source>This is achieved by adding a *.desktop file under &lt;i&gt;~/.config/autostart&lt;/i&gt; so the setting only affects the current user.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="371"/>
<source>This is achieved by adding a registry key under &lt;i&gt;HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run&lt;/i&gt; so the setting only affects the current user. Note that the startup entry is invalidated when moving &lt;i&gt;syncthingtray.exe&lt;/i&gt;.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="373"/>
<source>This feature has not been implemented for your platform (yet).</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="460"/>
<source>unable to modify startup entry</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>QtGui::ConnectionOptionPage</name>
<message>
<location filename="../settings/connectionoptionpage.ui" line="6"/>
<source>Connection</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="25"/>
<source>Config label</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="75"/>
<source>Add secondary instance</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="92"/>
<source>Remove currently selected secondary instance</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="122"/>
<source>It is possible to save multiple configurations. This allows switching quickly between multiple Syncthing instances using the connection button in the right corner of the tray menu. The config label is an arbitrary name to identify a configuration and does not have to match the name of the corresponding Syncthing device.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="145"/>
<source>Syncthing URL</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="155"/>
<source>Authentication</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="168"/>
<source>User</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="185"/>
<source>Password</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="202"/>
<source>API key</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="212"/>
<source>HTTPS certificate</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="232"/>
<source>Insert values from local Syncthing configuration</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="256"/>
<source>Poll interval</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="280"/>
<location filename="../settings/connectionoptionpage.ui" line="320"/>
<location filename="../settings/connectionoptionpage.ui" line="346"/>
<location filename="../settings/connectionoptionpage.ui" line="375"/>
<source> ms</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="293"/>
<source>Traffic</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="300"/>
<source>Device statistics</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="333"/>
<source>Errors</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="359"/>
<source>Reconnect</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="372"/>
<source>no</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="394"/>
<source>Status</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="401"/>
<source>disconnected</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/connectionoptionpage.ui" line="408"/>
<source>Apply connection settings and try to reconnect with the currently selected config</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="76"/>
<source>Auto-detected for local instance</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="94"/>
<source>Select Syncthing config file</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="101"/>
<source>Unable to parse the Syncthing config file.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="172"/>
<source>Unable to load specified certificate &quot;%1&quot;.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="196"/>
<source>Instance %1</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>QtGui::LauncherOptionPage</name>
<message>
<location filename="../settings/launcheroptionpage.ui" line="6"/>
<source>Syncthing launcher</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/launcheroptionpage.ui" line="18"/>
<source>Launch Syncthing when starting the tray icon</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/launcheroptionpage.ui" line="43"/>
<source>Syncthing executable</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/launcheroptionpage.ui" line="53"/>
<source>Arguments</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/launcheroptionpage.ui" line="87"/>
<source>Syncthing log (interleaved stdout/stderr)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/launcheroptionpage.ui" line="103"/>
<source>Apply and launch now</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/launcheroptionpage.ui" line="120"/>
<source>Stop launched instance</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/launcheroptionpage.ui" line="139"/>
<source>No log messages available yet</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/launcheroptionpage.ui" line="146"/>
<source>Ensure latest log is visible</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="500"/>
<source>%1-launcher</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="501"/>
<source>Launch %1 when starting the tray icon</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="502"/>
<source>%1 executable</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="503"/>
<source>%1 log (interleaved stdout/stderr)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="573"/>
<source>%1 exited with exit code %2
</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="576"/>
<source>%1 crashed with exit code %2
</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>QtGui::NotificationsOptionPage</name>
<message>
<location filename="../settings/notificationsoptionpage.ui" line="6"/>
<source>Notifications</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/notificationsoptionpage.ui" line="16"/>
<source>Notify on</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/notificationsoptionpage.ui" line="22"/>
<source>disconnect</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/notificationsoptionpage.ui" line="29"/>
<source>internal errors</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/notificationsoptionpage.ui" line="36"/>
<source>errors/notifications from Syncthing</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/notificationsoptionpage.ui" line="43"/>
<source>sync complete</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/notificationsoptionpage.ui" line="53"/>
<source>Notification API</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/notificationsoptionpage.ui" line="59"/>
<source>D-Bus notifi&amp;cations (org.freedesktop.Notifications)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/notificationsoptionpage.ui" line="66"/>
<source>&amp;Method provided by Qt (might be overridden by QPA plugin)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/notificationsoptionpage.ui" line="76"/>
<source>Misc</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/notificationsoptionpage.ui" line="82"/>
<source>Ignore inavailability of Syncthing the specified number of seconds after Syncthing has been started; has only effect if the Syncthing start can be determined which is currently only supported for the local instance by checking Systemd unit status</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/notificationsoptionpage.ui" line="92"/>
<source>don&apos;t ignore</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/notificationsoptionpage.ui" line="95"/>
<source> s</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="268"/>
<source>Configured to use D-Bus notifications but D-Bus notification daemon seems unavailabe.</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>QtGui::SettingsDialog</name>
<message>
<location filename="../settings/settingsdialog.cpp" line="768"/>
<source>Tray</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="774"/>
<source>Web view</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="780"/>
<source>Startup</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="794"/>
<source>Settings</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>QtGui::SystemdOptionPage</name>
<message>
<location filename="../settings/systemdoptionpage.ui" line="6"/>
<source>Systemd</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/systemdoptionpage.ui" line="18"/>
<source>Show start/stop button on tray for local instance when systemd is available</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/systemdoptionpage.ui" line="25"/>
<source>Consider systemd unit status for reconnect attempts to local instance
Don&apos;t reconnect when unit not active/running
Try to reconnect when unit becomes active/running</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/systemdoptionpage.ui" line="62"/>
<source>Syncthing unit</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/systemdoptionpage.ui" line="78"/>
<source>Description</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/systemdoptionpage.ui" line="99"/>
<location filename="../settings/systemdoptionpage.ui" line="154"/>
<location filename="../settings/systemdoptionpage.ui" line="231"/>
<location filename="../settings/settingsdialog.cpp" line="692"/>
<location filename="../settings/settingsdialog.cpp" line="707"/>
<source>unknown</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/systemdoptionpage.ui" line="114"/>
<source>Current status</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/systemdoptionpage.ui" line="161"/>
<source>Start</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/systemdoptionpage.ui" line="172"/>
<source>Stop</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/systemdoptionpage.ui" line="191"/>
<source>Unit file state</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/systemdoptionpage.ui" line="238"/>
<source>Enable</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/systemdoptionpage.ui" line="249"/>
<source>Disable</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="665"/>
<source>specified unit is either inactive or doesn&apos;t exist</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="687"/>
<source>since </source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>QtGui::WebViewDialog</name>
<message>
<location filename="../webview/webviewdialog.cpp" line="21"/>
<source>Syncthing</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>QtGui::WebViewOptionPage</name>
<message>
<location filename="../settings/webviewoptionpage.ui" line="6"/>
<location filename="../settings/settingsdialog.cpp" line="728"/>
<source>General</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/webviewoptionpage.ui" line="12"/>
<source>Usage</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/webviewoptionpage.ui" line="19"/>
<source>Disable web view (open regular web browser instead)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/webviewoptionpage.ui" line="26"/>
<source>Zoom factor</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/webviewoptionpage.ui" line="49"/>
<source>Hiding</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/webviewoptionpage.ui" line="56"/>
<source>Keep web view running when currently not shown</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settings/settingsdialog.cpp" line="730"/>
<source>Syncthing Tray has not been built with vieb view support utilizing either Qt WebKit or Qt WebEngine.
The Web UI will be opened in the default web browser instead.</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Settings::restore</name>
<message>
<location filename="../settings/settings.cpp" line="141"/>
<source>Unable to load certificate &quot;%1&quot; when restoring settings.</source>
<translation type="unfinished"></translation>
</message>
</context>
</TS>

View File

@ -1,8 +1,8 @@
#ifndef SYNCTHINGTRAY_NO_WEBVIEW
#ifndef SYNCTHINGWIDGETS_NO_WEBVIEW
#include "./webpage.h"
#include "./webviewdialog.h"
#include "../application/settings.h"
#include "../settings/settings.h"
#include "../../connector/syncthingconnection.h"
@ -12,11 +12,11 @@
#include <QAuthenticator>
#include <QNetworkAccessManager>
#include <QNetworkReply>
#if defined(SYNCTHINGTRAY_USE_WEBENGINE)
#if defined(SYNCTHINGWIDGETS_USE_WEBENGINE)
# include <QWebEngineSettings>
# include <QWebEngineView>
# include <QWebEngineCertificateError>
#elif defined(SYNCTHINGTRAY_USE_WEBKIT)
#elif defined(SYNCTHINGWIDGETS_USE_WEBKIT)
# include <QWebSettings>
# include <QWebView>
# include <QWebFrame>
@ -28,12 +28,12 @@ using namespace Data;
namespace QtGui {
WebPage::WebPage(WebViewDialog *dlg, SYNCTHINGTRAY_WEB_VIEW *view) :
SYNCTHINGTRAY_WEB_PAGE(view),
WebPage::WebPage(WebViewDialog *dlg, SYNCTHINGWIDGETS_WEB_VIEW *view) :
SYNCTHINGWIDGETS_WEB_PAGE(view),
m_dlg(dlg),
m_view(view)
{
#ifdef SYNCTHINGTRAY_USE_WEBENGINE
#ifdef SYNCTHINGWIDGETS_USE_WEBENGINE
settings()->setAttribute(QWebEngineSettings::JavascriptCanOpenWindows, true);
connect(this, &WebPage::authenticationRequired, this, static_cast<void(WebPage::*)(const QUrl &, QAuthenticator *)>(&WebPage::supplyCredentials));
#else
@ -46,13 +46,13 @@ WebPage::WebPage(WebViewDialog *dlg, SYNCTHINGTRAY_WEB_VIEW *view) :
if(!m_view) {
// initialization for new window
// -> delegate to external browser if no view is assigned
#ifdef SYNCTHINGTRAY_USE_WEBENGINE
#ifdef SYNCTHINGWIDGETS_USE_WEBENGINE
connect(this, &WebPage::urlChanged, this, &WebPage::delegateNewWindowToExternalBrowser);
#else
connect(this->mainFrame(), &QWebFrame::urlChanged, this, &WebPage::delegateNewWindowToExternalBrowser);
#endif
// -> there need to be a view, though
m_view = new SYNCTHINGTRAY_WEB_VIEW;
m_view = new SYNCTHINGWIDGETS_WEB_VIEW;
m_view->setPage(this);
}
}
@ -77,13 +77,13 @@ bool WebPage::isSamePage(const QUrl &url1, const QUrl &url2)
return false;
}
SYNCTHINGTRAY_WEB_PAGE *WebPage::createWindow(SYNCTHINGTRAY_WEB_PAGE::WebWindowType type)
SYNCTHINGWIDGETS_WEB_PAGE *WebPage::createWindow(SYNCTHINGWIDGETS_WEB_PAGE::WebWindowType type)
{
Q_UNUSED(type)
return new WebPage;
}
#ifdef SYNCTHINGTRAY_USE_WEBENGINE
#ifdef SYNCTHINGWIDGETS_USE_WEBENGINE
bool WebPage::certificateError(const QWebEngineCertificateError &certificateError)
{
switch(certificateError.error()) {
@ -97,15 +97,15 @@ bool WebPage::certificateError(const QWebEngineCertificateError &certificateErro
}
}
bool WebPage::acceptNavigationRequest(const QUrl &url, SYNCTHINGTRAY_WEB_PAGE::NavigationType type, bool isMainFrame)
bool WebPage::acceptNavigationRequest(const QUrl &url, SYNCTHINGWIDGETS_WEB_PAGE::NavigationType type, bool isMainFrame)
{
Q_UNUSED(isMainFrame)
Q_UNUSED(type)
return handleNavigationRequest(this->url(), url);
}
#else // SYNCTHINGTRAY_USE_WEBKIT
bool WebPage::acceptNavigationRequest(QWebFrame *frame, const QNetworkRequest &request, SYNCTHINGTRAY_WEB_PAGE::NavigationType type)
#else // SYNCTHINGWIDGETS_USE_WEBKIT
bool WebPage::acceptNavigationRequest(QWebFrame *frame, const QNetworkRequest &request, SYNCTHINGWIDGETS_WEB_PAGE::NavigationType type)
{
Q_UNUSED(frame)
Q_UNUSED(type)
@ -156,7 +156,7 @@ bool WebPage::handleNavigationRequest(const QUrl &currentUrl, const QUrl &target
return false;
}
#ifdef SYNCTHINGTRAY_USE_WEBKIT
#ifdef SYNCTHINGWIDGETS_USE_WEBKIT
void WebPage::handleSslErrors(QNetworkReply *reply, const QList<QSslError> &errors)
{
Q_UNUSED(errors)
@ -168,4 +168,4 @@ void WebPage::handleSslErrors(QNetworkReply *reply, const QList<QSslError> &erro
}
#endif // SYNCTHINGTRAY_NO_WEBVIEW
#endif // SYNCTHINGWIDGETS_NO_WEBVIEW

View File

@ -1,10 +1,12 @@
#ifndef WEBPAGE_H
#define WEBPAGE_H
#ifndef SYNCTHINGTRAY_NO_WEBVIEW
#ifndef SYNCTHINGWIDGETS_NO_WEBVIEW
#include "./webviewdefs.h"
#include "./webviewincludes.h"
#include "../global.h"
QT_FORWARD_DECLARE_CLASS(QAuthenticator)
QT_FORWARD_DECLARE_CLASS(QNetworkReply)
QT_FORWARD_DECLARE_CLASS(QNetworkRequest)
@ -14,17 +16,17 @@ namespace QtGui {
class WebViewDialog;
class WebPage : public SYNCTHINGTRAY_WEB_PAGE
class SYNCTHINGWIDGETS_EXPORT WebPage : public SYNCTHINGWIDGETS_WEB_PAGE
{
Q_OBJECT
public:
WebPage(WebViewDialog *dlg = nullptr, SYNCTHINGTRAY_WEB_VIEW *view = nullptr);
WebPage(WebViewDialog *dlg = nullptr, SYNCTHINGWIDGETS_WEB_VIEW *view = nullptr);
static bool isSamePage(const QUrl &url1, const QUrl &url2);
protected:
SYNCTHINGTRAY_WEB_PAGE *createWindow(WebWindowType type);
#ifdef SYNCTHINGTRAY_USE_WEBENGINE
SYNCTHINGWIDGETS_WEB_PAGE *createWindow(WebWindowType type);
#ifdef SYNCTHINGWIDGETS_USE_WEBENGINE
bool certificateError(const QWebEngineCertificateError &certificateError);
bool acceptNavigationRequest(const QUrl &url, NavigationType type, bool isMainFrame);
#else
@ -36,7 +38,7 @@ private slots:
void supplyCredentials(const QUrl &requestUrl, QAuthenticator *authenticator);
void supplyCredentials(QNetworkReply *reply, QAuthenticator *authenticator);
void supplyCredentials(QAuthenticator *authenticator);
#ifdef SYNCTHINGTRAY_USE_WEBKIT
#ifdef SYNCTHINGWIDGETS_USE_WEBKIT
void handleSslErrors(QNetworkReply *, const QList<QSslError> &errors);
#endif
@ -44,10 +46,10 @@ private:
static bool handleNavigationRequest(const QUrl &currentUrl, const QUrl &url);
WebViewDialog *m_dlg;
SYNCTHINGTRAY_WEB_VIEW *m_view;
SYNCTHINGWIDGETS_WEB_VIEW *m_view;
};
}
#endif // SYNCTHINGTRAY_NO_WEBVIEW
#endif // SYNCTHINGWIDGETS_NO_WEBVIEW
#endif // WEBPAGE_H

View File

@ -0,0 +1,30 @@
// Created via CMake from template webviewdefs.h.in
// WARNING! Any changes to this file will be overwritten by the next CMake run!
#ifndef SYNCTHINGWIDGETS_WEB_VIEW_DEFINES
#define SYNCTHINGWIDGETS_WEB_VIEW_DEFINES
#include <QtGlobal>
#if defined(SYNCTHINGWIDGETS_USE_WEBENGINE)
# define SYNCTHINGWIDGETS_WEB_VIEW QWebEngineView
# define SYNCTHINGWIDGETS_WEB_PAGE QWebEnginePage
#elif defined(SYNCTHINGWIDGETS_USE_WEBKIT)
# define SYNCTHINGWIDGETS_WEB_VIEW QWebView
# define SYNCTHINGWIDGETS_WEB_PAGE QWebPage
# define SYNCTHINGWIDGETS_WEB_FRAME QWebFrame
#elif !defined(SYNCTHINGWIDGETS_NO_WEBVIEW)
# error "No definition for web view provider present."
#endif
#ifdef SYNCTHINGWIDGETS_WEB_VIEW
QT_FORWARD_DECLARE_CLASS(SYNCTHINGWIDGETS_WEB_VIEW)
#endif
#ifdef SYNCTHINGWIDGETS_WEB_PAGE
QT_FORWARD_DECLARE_CLASS(SYNCTHINGWIDGETS_WEB_PAGE)
#endif
#ifdef SYNCTHINGWIDGETS_WEB_FRAME
QT_FORWARD_DECLARE_CLASS(SYNCTHINGWIDGETS_WEB_FRAME)
#endif
#endif // SYNCTHINGWIDGETS_WEB_VIEW_DEFINES

View File

@ -1,8 +1,8 @@
#ifndef SYNCTHINGTRAY_NO_WEBVIEW
#ifndef SYNCTHINGWIDGETS_NO_WEBVIEW
#include "./webviewdialog.h"
#include "./webpage.h"
#include "../application/settings.h"
#include "../settings/settings.h"
#include <qtutilities/misc/dialogutils.h>
@ -16,16 +16,16 @@ namespace QtGui {
WebViewDialog::WebViewDialog(QWidget *parent) :
QMainWindow(parent),
m_view(new SYNCTHINGTRAY_WEB_VIEW(this))
m_view(new SYNCTHINGWIDGETS_WEB_VIEW(this))
{
setWindowTitle(tr("Syncthing"));
setWindowIcon(QIcon(QStringLiteral(":/icons/hicolor/scalable/app/syncthingtray.svg")));
setCentralWidget(m_view);
m_view->setPage(new WebPage(this, m_view));
connect(m_view, &SYNCTHINGTRAY_WEB_VIEW::titleChanged, this, &WebViewDialog::setWindowTitle);
connect(m_view, &SYNCTHINGWIDGETS_WEB_VIEW::titleChanged, this, &WebViewDialog::setWindowTitle);
#if defined(SYNCTHINGTRAY_USE_WEBENGINE)
#if defined(SYNCTHINGWIDGETS_USE_WEBENGINE)
m_view->installEventFilter(this);
if(m_view->focusProxy()) {
m_view->focusProxy()->installEventFilter(this);
@ -54,7 +54,7 @@ void QtGui::WebViewDialog::applySettings(const Data::SyncthingConnectionSettings
m_view->setZoomFactor(Settings::values().webView.zoomFactor);
}
#if defined(SYNCTHINGTRAY_USE_WEBKIT)
#if defined(SYNCTHINGWIDGETS_USE_WEBKIT)
bool WebViewDialog::isModalVisible() const
{
if(m_view->page()->mainFrame()) {
@ -66,11 +66,11 @@ bool WebViewDialog::isModalVisible() const
void WebViewDialog::closeUnlessModalVisible()
{
#if defined(SYNCTHINGTRAY_USE_WEBKIT)
#if defined(SYNCTHINGWIDGETS_USE_WEBKIT)
if(!isModalVisible()) {
close();
}
#elif defined(SYNCTHINGTRAY_USE_WEBENGINE)
#elif defined(SYNCTHINGWIDGETS_USE_WEBENGINE)
m_view->page()->runJavaScript(QStringLiteral("$('.modal-dialog').is(':visible')"), [this] (const QVariant &modalVisible) {
if(!modalVisible.toBool()) {
close();
@ -105,7 +105,7 @@ void WebViewDialog::keyPressEvent(QKeyEvent *event)
}
}
#if defined(SYNCTHINGTRAY_USE_WEBENGINE)
#if defined(SYNCTHINGWIDGETS_USE_WEBENGINE)
bool WebViewDialog::eventFilter(QObject *watched, QEvent *event)
{
switch(event->type()) {
@ -126,4 +126,4 @@ bool WebViewDialog::eventFilter(QObject *watched, QEvent *event)
}
#endif // SYNCTHINGTRAY_NO_WEBVIEW
#endif // SYNCTHINGWIDGETS_NO_WEBVIEW

View File

@ -1,10 +1,10 @@
#ifndef WEBVIEW_DIALOG_H
#define WEBVIEW_DIALOG_H
#ifndef SYNCTHINGTRAY_NO_WEBVIEW
#ifndef SYNCTHINGWIDGETS_NO_WEBVIEW
#include "./webviewdefs.h"
#include "../application/settings.h"
#include "../settings/settings.h"
#include <QMainWindow>
@ -16,7 +16,7 @@ struct ConnectionSettings;
namespace QtGui {
class WebViewDialog : public QMainWindow
class SYNCTHINGWIDGETS_EXPORT WebViewDialog : public QMainWindow
{
Q_OBJECT
public:
@ -26,7 +26,7 @@ public:
public slots:
void applySettings(const Data::SyncthingConnectionSettings &connectionSettings);
const Data::SyncthingConnectionSettings &settings() const;
#if defined(SYNCTHINGTRAY_USE_WEBKIT)
#if defined(SYNCTHINGWIDGETS_USE_WEBKIT)
bool isModalVisible() const;
#endif
void closeUnlessModalVisible();
@ -34,12 +34,12 @@ public slots:
protected:
void closeEvent(QCloseEvent *event);
void keyPressEvent(QKeyEvent *event);
#if defined(SYNCTHINGTRAY_USE_WEBENGINE)
#if defined(SYNCTHINGWIDGETS_USE_WEBENGINE)
bool eventFilter(QObject *watched, QEvent *event);
#endif
private:
SYNCTHINGTRAY_WEB_VIEW *m_view;
SYNCTHINGWIDGETS_WEB_VIEW *m_view;
Data::SyncthingConnectionSettings m_settings;
};
@ -50,5 +50,5 @@ inline const Data::SyncthingConnectionSettings &WebViewDialog::settings() const
}
#endif // SYNCTHINGTRAY_NO_WEBVIEW
#endif // SYNCTHINGWIDGETS_NO_WEBVIEW
#endif // WEBVIEW_DIALOG_H

View File

@ -1,20 +1,20 @@
// Created via CMake from template webviewincludes.h.in
// WARNING! Any changes to this file will be overwritten by the next CMake run!
#ifndef SYNCTHINGTRAY_WEB_VIEW_INCLUDES
#define SYNCTHINGTRAY_WEB_VIEW_INCLUDES
#ifndef SYNCTHINGWIDGETS_WEB_VIEW_INCLUDES
#define SYNCTHINGWIDGETS_WEB_VIEW_INCLUDES
#include <QtGlobal>
#if defined(SYNCTHINGTRAY_USE_WEBENGINE)
#if defined(SYNCTHINGWIDGETS_USE_WEBENGINE)
# include <QWebEngineView>
# include <QWebEnginePage>
#elif defined(SYNCTHINGTRAY_USE_WEBKIT)
#elif defined(SYNCTHINGWIDGETS_USE_WEBKIT)
# include <QWebView>
# include <QWebPage>
# include <QWebFrame>
#elif !defined(SYNCTHINGTRAY_NO_WEBVIEW)
#elif !defined(SYNCTHINGWIDGETS_NO_WEBVIEW)
# error "No definition for web view provider present."
#endif
#endif // SYNCTHINGTRAY_WEB_VIEW_INCLUDES
#endif // SYNCTHINGWIDGETS_WEB_VIEW_INCLUDES