From b5cb2797d65f2541a4c48ea00e6c325bb375ea46 Mon Sep 17 00:00:00 2001 From: Timothy Pearson Date: Mon, 21 Sep 2015 15:39:58 -0500 Subject: Add new hardware device tray application Allow removable media action request popups to be suppressed --- .../media/libmediacommon/mediamanagersettings.kcfg | 5 +++++ tdeioslave/media/mediamanager/tdehardwarebackend.cpp | 17 +++++++++++++---- tdeioslave/media/tdecmodule/managermoduleview.ui | 12 ++++++++++++ 3 files changed, 30 insertions(+), 4 deletions(-) (limited to 'tdeioslave/media') diff --git a/tdeioslave/media/libmediacommon/mediamanagersettings.kcfg b/tdeioslave/media/libmediacommon/mediamanagersettings.kcfg index 2994680cd..32725c1bb 100644 --- a/tdeioslave/media/libmediacommon/mediamanagersettings.kcfg +++ b/tdeioslave/media/libmediacommon/mediamanagersettings.kcfg @@ -24,5 +24,10 @@ Allows TDE to autostart application after a medium mount if it contains an Autostart or an Autoopen file. true + + + Deselect this if you do not want action request popups to be generated when devices are plugged in. + true + diff --git a/tdeioslave/media/mediamanager/tdehardwarebackend.cpp b/tdeioslave/media/mediamanager/tdehardwarebackend.cpp index a7cbb2260..5846e00af 100644 --- a/tdeioslave/media/mediamanager/tdehardwarebackend.cpp +++ b/tdeioslave/media/mediamanager/tdehardwarebackend.cpp @@ -146,6 +146,14 @@ void TDEBackend::AddDevice(TDEStorageDevice * sdevice, bool allowNotification) allowNotification = false; } + // Check if user wants the full popup to be suppressed + bool allowDialogNotification = allowNotification; + TDEConfig config("mediamanagerrc"); + config.setGroup("Global"); + if (!config.readBoolEntry("NotificationPopupsEnabled", true)) { + allowDialogNotification = false; + } + // Add volume block devices if (sdevice->isDiskOfType(TDEDiskDeviceType::HDD)) { /* We only list volumes that... @@ -190,7 +198,7 @@ void TDEBackend::AddDevice(TDEStorageDevice * sdevice, bool allowNotification) } // Insert medium into list - m_mediaList.addMedium(medium, allowNotification); + m_mediaList.addMedium(medium, allowDialogNotification); kdDebug(1219) << "TDEBackend::AddDevice inserted hard medium for " << sdevice->uniqueID() << endl; @@ -233,7 +241,7 @@ void TDEBackend::AddDevice(TDEStorageDevice * sdevice, bool allowNotification) setVolumeProperties(medium); // Insert medium into list - m_mediaList.addMedium(medium, allowNotification); + m_mediaList.addMedium(medium, allowDialogNotification); kdDebug(1219) << "TDEBackend::AddDevice inserted optical medium for " << sdevice->uniqueID() << endl; @@ -248,6 +256,7 @@ void TDEBackend::AddDevice(TDEStorageDevice * sdevice, bool allowNotification) ) { if ((sdevice->checkDiskStatus(TDEDiskDeviceStatus::Removable)) && (!(sdevice->checkDiskStatus(TDEDiskDeviceStatus::Inserted)))) { allowNotification = false; + allowDialogNotification = false; } /* We only list volumes that... @@ -278,7 +287,7 @@ void TDEBackend::AddDevice(TDEStorageDevice * sdevice, bool allowNotification) } } - m_mediaList.addMedium(medium, allowNotification); + m_mediaList.addMedium(medium, allowDialogNotification); kdDebug(1219) << "TDEBackend::AddDevice inserted floppy medium for " << sdevice->uniqueID() << endl; @@ -294,7 +303,7 @@ void TDEBackend::AddDevice(TDEStorageDevice * sdevice, bool allowNotification) // Create medium Medium* medium = new Medium(sdevice->uniqueID(), driveUDIFromDeviceUID(sdevice->uniqueID()), ""); setCameraProperties(medium); - m_mediaList.addMedium(medium, allowNotification); + m_mediaList.addMedium(medium, allowDialogNotification); kdDebug(1219) << "TDEBackend::AddDevice inserted camera medium for " << sdevice->uniqueID() << endl; diff --git a/tdeioslave/media/tdecmodule/managermoduleview.ui b/tdeioslave/media/tdecmodule/managermoduleview.ui index 982da7d80..708d38c50 100644 --- a/tdeioslave/media/tdecmodule/managermoduleview.ui +++ b/tdeioslave/media/tdecmodule/managermoduleview.ui @@ -52,6 +52,17 @@ Select this if you want to enable application autostart after mounting a device. + + + kcfg_NotificationPopupsEnabled + + + Enable notification popups + + + Deselect this if you do not want action request popups to be generated when devices are plugged in. + + groupbox_mount @@ -330,6 +341,7 @@ Display the short name as is; store a long name when the short name is not all u kcfg_HalBackendEnabled kcfg_CdPollingEnabled kcfg_AutostartEnabled + kcfg_NotificationPopupsEnabled option_automount option_ro option_quiet -- cgit v1.2.3