diff --git a/src/profile_settings_window.py b/src/profile_settings_window.py
index 36c8775..24381b5 100644
--- a/src/profile_settings_window.py
+++ b/src/profile_settings_window.py
@@ -399,6 +399,8 @@ class ProfileSettingsPage(QWidget, Ui_profile_settings):
self.checkBox_bypass_data_preservation.stateChanged.connect(self.set_check_box_state)
self.checkBox_delay_inotify_processing.stateChanged.connect(self.set_check_box_state)
self.checkBox_force_session_upload.stateChanged.connect(self.set_check_box_state)
+ self.checkBox_disable_websocket_support.stateChanged.connect(self.set_check_box_state)
+ self.checkBox_disable_version_check.stateChanged.connect(self.set_check_box_state)
self.lineEdit_user_agent.textChanged.connect(self.set_line_edit_value)
self.lineEdit_azure_ad_endpoint.textChanged.connect(self.set_line_edit_value)
self.lineEdit_azure_tenant_id.textChanged.connect(self.set_line_edit_value)
@@ -497,6 +499,8 @@ class ProfileSettingsPage(QWidget, Ui_profile_settings):
self.checkBox_bypass_data_preservation.setChecked(self.get_check_box_state("bypass_data_preservation"))
self.checkBox_delay_inotify_processing.setChecked(self.get_check_box_state("delay_inotify_processing"))
self.checkBox_force_session_upload.setChecked(self.get_check_box_state("force_session_upload"))
+ self.checkBox_disable_websocket_support.setChecked(self.get_check_box_state("disable_websocket_support"))
+ self.checkBox_disable_version_check.setChecked(self.get_check_box_state("disable_version_check"))
self.lineEdit_user_agent.setText(self.temp_profile_config["onedrive"]["user_agent"].strip('"'))
self.lineEdit_azure_ad_endpoint.setText(self.temp_profile_config["onedrive"]["azure_ad_endpoint"].strip('"'))
self.lineEdit_azure_tenant_id.setText(self.temp_profile_config["onedrive"]["azure_tenant_id"].strip('"'))
diff --git a/src/resources/default_config b/src/resources/default_config
index d971a54..3166a97 100644
--- a/src/resources/default_config
+++ b/src/resources/default_config
@@ -54,3 +54,5 @@ force_session_upload = "false"
delay_inotify_processing = "false"
inotify_delay = "5"
display_manager_integration = "false"
+disable_websocket_support = "false"
+disable_version_check = "false"
diff --git a/src/ui/profile_settings_page.ui b/src/ui/profile_settings_page.ui
index dd00bb1..b78420d 100644
--- a/src/ui/profile_settings_page.ui
+++ b/src/ui/profile_settings_page.ui
@@ -166,7 +166,7 @@
-
- Enable display manager integration for this profile.
+ Controls whether the client integrates the configured 'sync_dir' with the desktop's file manager (e.g. Nautilus for GNOME, Dolphin for KDE), adding it as a "special place" in the sidebar and setting a custom OneDrive folder icon where supported.
Display manager integration
@@ -722,6 +722,26 @@
+ -
+
+
+ This option disables the built-in WebSocket support that leverages RFC6455 to communicate with the Microsoft Graph API Service, providing near real-time notifications of online changes.
+
+
+ Disable WebSocket support
+
+
+
+ -
+
+
+ This option determines whether the client will check the GitHub API for the current application version and grace period of running older application versions
+
+
+ Disable version check
+
+
+
diff --git a/src/ui/ui_profile_settings_page.py b/src/ui/ui_profile_settings_page.py
index 915680b..c8f654a 100644
--- a/src/ui/ui_profile_settings_page.py
+++ b/src/ui/ui_profile_settings_page.py
@@ -462,6 +462,16 @@ class Ui_profile_settings(object):
self.gridLayout_4.addWidget(self.checkBox_delay_inotify_processing, 4, 3, 1, 1)
+ self.checkBox_disable_websocket_support = QCheckBox(self.groupBox_5)
+ self.checkBox_disable_websocket_support.setObjectName(u"checkBox_disable_websocket_support")
+
+ self.gridLayout_4.addWidget(self.checkBox_disable_websocket_support, 5, 1, 1, 1)
+
+ self.checkBox_disable_version_check = QCheckBox(self.groupBox_5)
+ self.checkBox_disable_version_check.setObjectName(u"checkBox_disable_version_check")
+
+ self.gridLayout_4.addWidget(self.checkBox_disable_version_check, 5, 2, 1, 1)
+
self.verticalLayout_15.addWidget(self.groupBox_5)
@@ -817,7 +827,7 @@ class Ui_profile_settings(object):
#endif // QT_CONFIG(tooltip)
self.checkBox_auto_sync.setText(QCoreApplication.translate("profile_settings", u"Auto-sync on GUI startup", None))
#if QT_CONFIG(tooltip)
- self.checkBox_display_manager_integration.setToolTip(QCoreApplication.translate("profile_settings", u"Enable display manager integration for this profile.", None))
+ self.checkBox_display_manager_integration.setToolTip(QCoreApplication.translate("profile_settings", u"Controls whether the client integrates the configured 'sync_dir' with the desktop's file manager (e.g. Nautilus for GNOME, Dolphin for KDE), adding it as a \"special place\" in the sidebar and setting a custom OneDrive folder icon where supported.", None))
#endif // QT_CONFIG(tooltip)
self.checkBox_display_manager_integration.setText(QCoreApplication.translate("profile_settings", u"Display manager integration", None))
#if QT_CONFIG(tooltip)
@@ -930,6 +940,14 @@ class Ui_profile_settings(object):
self.checkBox_bypass_data_preservation.setText(QCoreApplication.translate("profile_settings", u"Bypass data preservation", None))
self.checkBox_display_running_config.setText(QCoreApplication.translate("profile_settings", u"Display running config", None))
self.checkBox_delay_inotify_processing.setText(QCoreApplication.translate("profile_settings", u"Delay inotify processing", None))
+#if QT_CONFIG(tooltip)
+ self.checkBox_disable_websocket_support.setToolTip(QCoreApplication.translate("profile_settings", u"This option disables the built-in WebSocket support that leverages RFC6455 to communicate with the Microsoft Graph API Service, providing near real-time notifications of online changes.", None))
+#endif // QT_CONFIG(tooltip)
+ self.checkBox_disable_websocket_support.setText(QCoreApplication.translate("profile_settings", u"Disable WebSocket support", None))
+#if QT_CONFIG(tooltip)
+ self.checkBox_disable_version_check.setToolTip(QCoreApplication.translate("profile_settings", u"This option determines whether the client will check the GitHub API for the current application version and grace period of running older application versions", None))
+#endif // QT_CONFIG(tooltip)
+ self.checkBox_disable_version_check.setText(QCoreApplication.translate("profile_settings", u"Disable version check", None))
self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_2), QCoreApplication.translate("profile_settings", u"Sync Options", None))
#if QT_CONFIG(tooltip)
self.groupBox.setToolTip(QCoreApplication.translate("profile_settings", u"
This option is used to 'skip' certain files and supports pattern matching.
Patterns are case insensitive. * and ? wildcards characters are supported.
Use | to separate multiple patterns.
Files can be skipped in the following fashion:
-Specify a wildcard, eg: '*.txt' (skip all txt files)
-Explicitly specify the filename and it's full path relative to your sync_dir, eg: 'path/to/file/filename.ext'
-Explicitly specify the filename only and skip every instance of this filename, eg: 'filename.ext'