From 63d9a810a1cb925d6a273d0d16772f4773771cb4 Mon Sep 17 00:00:00 2001 From: Ken Moore Date: Sat, 25 Apr 2015 19:02:40 -0400 Subject: Add support for system-defined default non-mime applications in the luminaDesktop.conf file. New Values: session.default.[terminal, filemanager, webbrowser, email]= --- libLumina/LuminaUtils.cpp | 12 +++++++++++- lumina-desktop/defaults/luminaDesktop.conf | 10 +++++++++- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/libLumina/LuminaUtils.cpp b/libLumina/LuminaUtils.cpp index c53edd27..8d4e0d08 100644 --- a/libLumina/LuminaUtils.cpp +++ b/libLumina/LuminaUtils.cpp @@ -246,7 +246,7 @@ void LUtils::LoadSystemDefaults(bool skipOS){ } } //Now setup the default "desktopsettings.conf" and "sessionsettings.conf" files - QStringList deskset, sesset; + QStringList deskset, sesset, lopenset; //First start with any session settings QStringList tmp = sysDefaults.filter("session."); sesset << "[General]"; //everything is in this section @@ -261,7 +261,16 @@ void LUtils::LoadSystemDefaults(bool skipOS){ if(var=="session.enablenumlock"){ sesset << "EnableNumlock="+ istrue; } else if(var=="session.playloginaudio"){ sesset << "PlayStartupAudio="+istrue; } else if(var=="session.playlogoutaudio"){ sesset << "PlayLogoutAudio="+istrue; } + else if(var=="session.default.terminal"){ sesset << "default-terminal="+val; } + else if(var=="session.default.filemanager"){ + sesset << "default-filemanager="+val; + lopenset << "directory="+val; + } + else if(var=="session.default.webbrowser"){ lopenset << "webbrowser="+val; } + else if(var=="session.default.email"){ lopenset << "email="+val; } } + if(!lopenset.isEmpty()){ lopenset.prepend("[default]"); } //the session options exist within this set + //Now do any desktop settings (only works for the primary desktop at the moment) tmp = sysDefaults.filter("desktop."); if(!tmp.isEmpty()){deskset << "[desktop-"+screen+"]"; } @@ -378,4 +387,5 @@ void LUtils::LoadSystemDefaults(bool skipOS){ if(setTheme){ LTHEME::setCurrentSettings( themesettings[0], themesettings[1], themesettings[2], themesettings[3], themesettings[4]); } LUtils::writeFile(setdir+"/sessionsettings.conf", sesset, true); LUtils::writeFile(setdir+"/desktopsettings.conf", deskset, true); + LUtils::writeFile(setdir+"/lumina-open.conf", lopenset, true); } diff --git a/lumina-desktop/defaults/luminaDesktop.conf b/lumina-desktop/defaults/luminaDesktop.conf index fe3269ac..00a12950 100644 --- a/lumina-desktop/defaults/luminaDesktop.conf +++ b/lumina-desktop/defaults/luminaDesktop.conf @@ -18,6 +18,14 @@ session.enablenumlock=false #[true/false] Enable numlock on login using "numlock session.playloginaudio=true #[true/false] Play the audio chimes on log in session.playlogoutaudio=true #[true/false] Play the audio chimes on log out +# DEFAULT UTILITIES +# Provide the full path to *.desktop file, or a binary name which exists on PATH +# *.desktop files provide better support for input formats, and are recommended +#session.default.terminal=xterm +#session.default.filemanager=lumina-fm +#session.default.webbrowser=/usr/local/share/applications/firefox.desktop +#session.default.email=/usr/local/share/applications/thunderbird.desktop + #THEME SETTINGS #theme.themefile= #Absolute path to the theme template file to use (disable for Lumina-Default) #theme.colorfile= #Absolute path to the color spec file to use for theming @@ -39,4 +47,4 @@ panel1.autohide=false #[true/false] Have the panel become visible on mouse-over panel1.plugins=userbutton, taskmanager, spacer, systemtray, clock, systemdashboard #list of plugins for the panel #MENU SETTINGS (right-click menu) -menu.plugins=terminal, filemanager, applications, line, settings #list of menu plugins to show \ No newline at end of file +menu.plugins=terminal, filemanager, applications, line, settings #list of menu plugins to show -- cgit