diff --git a/qt/OpenRGBSettingsPage/OpenRGBSettingsPage.cpp b/qt/OpenRGBSettingsPage/OpenRGBSettingsPage.cpp
index b89dbada..c34fc45b 100644
--- a/qt/OpenRGBSettingsPage/OpenRGBSettingsPage.cpp
+++ b/qt/OpenRGBSettingsPage/OpenRGBSettingsPage.cpp
@@ -239,24 +239,28 @@ OpenRGBSettingsPage::OpenRGBSettingsPage(QWidget *parent) :
ui->TextDetectionDelay->setValue(0);
}
+#if defined(_MACOSX_X86_X64)
/*---------------------------------------------------------*\
- | Load drivers settings (Windows only or Mac) |
+ | Load drivers settings (MacOS only) |
\*---------------------------------------------------------*/
-#if defined(WIN32) || defined(_MACOSX_X86_X64)
json drivers_settings = ResourceManager::get()->GetSettingsManager()->GetSettings("Drivers");
+ ui->CheckboxSharedSMBusAccess->hide();
+ ui->LabelSMBusSleepMode->hide();
+ ui->ComboBoxSMBusSleepMode->hide();
+
if(drivers_settings.contains("amd_smbus_reduce_cpu"))
{
ui->CheckboxAMDSMBusReduceCPU->setChecked(drivers_settings["amd_smbus_reduce_cpu"]);
}
-#else
- ui->DriversSettingsLabel->hide();
- ui->CheckboxAMDSMBusReduceCPU->hide();
-#endif
+#elif defined(_WIN32)
/*---------------------------------------------------------*\
| Load drivers settings (Windows only) |
\*---------------------------------------------------------*/
-#ifdef _WIN32
+ json drivers_settings = ResourceManager::get()->GetSettingsManager()->GetSettings("Drivers");
+
+ ui->CheckboxAMDSMBusReduceCPU->hide();
+
if(drivers_settings.contains("shared_smbus_access"))
{
ui->CheckboxSharedSMBusAccess->setChecked(drivers_settings["shared_smbus_access"]);
@@ -265,10 +269,29 @@ OpenRGBSettingsPage::OpenRGBSettingsPage(QWidget *parent) :
{
ui->CheckboxSharedSMBusAccess->setChecked(true);
}
+
+ ui->ComboBoxSMBusSleepMode->addItem("Always Busy");
+ ui->ComboBoxSMBusSleepMode->addItem("Short Busy");
+ ui->ComboBoxSMBusSleepMode->addItem("Always Sleep");
+
+ if(drivers_settings.contains("smbus_sleep_mode") && (drivers_settings["smbus_sleep_mode"] <= 2))
+ {
+ ui->ComboBoxSMBusSleepMode->setCurrentIndex(drivers_settings["smbus_sleep_mode"]);
+ }
+ else
+ {
+ ui->ComboBoxSMBusSleepMode->setCurrentIndex(2);
+ }
#else
+ /*---------------------------------------------------------*\
+ | Hide all drivers settings otherwise |
+ \*---------------------------------------------------------*/
+ ui->DriversSettingsLabel->hide();
+ ui->CheckboxAMDSMBusReduceCPU->hide();
ui->CheckboxSharedSMBusAccess->hide();
+ ui->LabelSMBusSleepMode->hide();
+ ui->ComboBoxSMBusSleepMode->hide();
#endif
-
UpdateProfiles();
/*---------------------------------------------------------*\
@@ -1072,6 +1095,14 @@ void OpenRGBSettingsPage::on_CheckboxSharedSMBusAccess_clicked()
SaveSettings();
}
+void OpenRGBSettingsPage::on_ComboBoxSMBusSleepMode_currentIndexChanged(int index)
+{
+ json drivers_settings = ResourceManager::get()->GetSettingsManager()->GetSettings("Drivers");
+ drivers_settings["smbus_sleep_mode"] = index;
+ ResourceManager::get()->GetSettingsManager()->SetSettings("Drivers", drivers_settings);
+ SaveSettings();
+}
+
void OpenRGBSettingsPage::on_CheckboxDisableKeyExpansion_clicked()
{
json ui_settings = ResourceManager::get()->GetSettingsManager()->GetSettings("UserInterface");
diff --git a/qt/OpenRGBSettingsPage/OpenRGBSettingsPage.h b/qt/OpenRGBSettingsPage/OpenRGBSettingsPage.h
index 1e6fe400..4502affd 100644
--- a/qt/OpenRGBSettingsPage/OpenRGBSettingsPage.h
+++ b/qt/OpenRGBSettingsPage/OpenRGBSettingsPage.h
@@ -82,6 +82,7 @@ private slots:
void on_TextDetectionDelay_valueChanged(int);
void on_CheckboxAMDSMBusReduceCPU_clicked();
void on_CheckboxSharedSMBusAccess_clicked();
+ void on_ComboBoxSMBusSleepMode_currentIndexChanged(int index);
void on_CheckboxSetOnExit_clicked(bool checked);
void on_ComboBoxExitProfile_currentTextChanged(const QString exit_profile_name);
diff --git a/qt/OpenRGBSettingsPage/OpenRGBSettingsPage.ui b/qt/OpenRGBSettingsPage/OpenRGBSettingsPage.ui
index 8acfe859..1836a74c 100644
--- a/qt/OpenRGBSettingsPage/OpenRGBSettingsPage.ui
+++ b/qt/OpenRGBSettingsPage/OpenRGBSettingsPage.ui
@@ -30,47 +30,60 @@
0
- -328
+ -321
508
- 1105
+ 1137
- -
-
+
-
+
- Enable Log Console (restart required)
+ Detection Settings:
- -
-
+
-
+
- Load Profile
+ Set Server Host
- -
-
-
- Disable Key Expansion in Device View
+
-
+
+
+ 1
+
+
+ 65535
+
+
+ 6742
- -
-
+
-
+
- Shared SMBus Access (restart required)
+ User Interface Settings:
- -
-
+
-
+
- -
-
+
-
+
- Start at Login Status
+ Theme (restart required)
+
+
+
+ -
+
+
+ Set Profile on Suspend
@@ -81,133 +94,154 @@
- -
-
+
-
+
+
+ -
+
- Hex Format
+ Server Settings:
- -
-
+
-
+
- Show LED View by Default
+ Enable Log File (restart required)
- -
-
+
-
+
- Legacy Workaround
+ Drivers Settings:
- -
-
+
-
+
+
+ Language
+
+
- -
-
+
-
+
- Theme (restart required)
+ Legacy Workaround
- -
-
+
-
+
+
+ 2147483647
+
+
- -
-
+
-
+
- Detection Settings:
+ Start at Login Status
- -
-
+
-
+
- Serve All Devices (Including those from client connections)
+ Minimize on Close
- -
-
+
-
+
- -
-
+
-
+
- AMD SMBus: Reduce CPU Usage (restart required)
+ Shared SMBus Access (restart required)
- -
-
-
- -
-
+
-
+
- Start at Login Settings:
+ Greyscale Tray Icon
- -
-
+
-
+
- Set Server Host
+ Enable Log Console (restart required)
- -
-
+
-
+
- Greyscale Tray Icon
+ Set Server Port
- -
-
+
-
+
- -
-
+
-
+
- Start Minimized
+ Start at Login Settings:
- -
+
-
+
+
+ Start Client
+
+
+
+ -
- -
-
+
-
+
- Start at Login
+ Load Profile
- -
-
+
-
+
- -
-
+
-
+
- HID Safe Mode
+ Set Profile on Exit
- -
-
+
-
+
+
+ -
+
- Start Client
+ Hex Format
- -
-
+
-
+
- User Interface Settings:
+ Start at Login
- -
+
-
+
+
+ -
Qt::Orientation::Vertical
@@ -223,136 +257,112 @@
- -
-
-
- -
-
-
- Minimize on Close
-
-
-
- -
-
+
-
+
- Server Settings:
+ Save Geometry on Close
- -
-
+
-
+
- Save Geometry on Close
+ AMD SMBus: Reduce CPU Usage (restart required)
- -
+
-
Start Server
- -
-
+
-
+
- Set Server Port
+ HID Safe Mode
- -
-
+
-
+
- Set Profile on Suspend
+ Initial Detection Delay (milliseconds, 0 to disable)
- -
-
+
-
+
- Run Zone Checks on Rescan
+ Disable Key Expansion in Device View
- -
-
+
-
+
- Log Manager Settings:
+ Serve All Devices (Including those from client connections)
- -
-
+
-
+
+
+ -
+
- Enable Log File (restart required)
+ Start Minimized
- -
-
-
- 1
-
-
- 65535
-
-
- 6742
+
-
+
+
+ Show LED View by Default
- -
-
+
-
+
+
+ -
+
- Set Profile on Resume
+ Log Manager Settings:
- -
-
+
-
+
- Language
+ Set Profile on Resume
- -
-
+
-
+
- Drivers Settings:
+ Run Zone Checks on Rescan
- -
+
-
Custom Arguments
- -
-
-
- -
-
-
- Set Profile on Exit
-
-
-
- -
-
+
-
+
- Initial Detection Delay (milliseconds, 0 to disable)
+ SMBus Sleep Mode (restart required)
- -
-
-
- 2147483647
-
-
+
-
+