Bug 125210 - amaroK doesn't apply the show splashscreen setting from a kiosk config
Summary: amaroK doesn't apply the show splashscreen setting from a kiosk config
Status: RESOLVED FIXED
Alias: None
Product: amarok
Classification: Applications
Component: general (show other bugs)
Version: 1.4.0
Platform: unspecified Linux
: LO minor
Target Milestone: ---
Assignee: Amarok Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-04-09 11:43 UTC by Christian González
Modified: 2006-07-23 22:24 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Christian González 2006-04-09 11:43:21 UTC
Version:           1.4-beta2 (using KDE 3.5.2, Kubuntu Package 4:3.5.2-0ubuntu1 dapper)
Compiler:          Target: i486-linux-gnu
OS:                Linux (i686) release 2.6.15-20-k7

my splash screen is always there at startup, no matter if I check it in the options window or not.
Never had this problem with earlier versions, I think.
Its the (k)ubuntu 1.4-beta2 package.
Anyone else seeing this bug?
Comment 1 Mark Kretschmann 2006-04-09 11:52:40 UTC
It's a packaging bug; works fine when built from source. Please contact your Kubuntu packager.
Comment 2 Stephan Hermann 2006-04-16 00:01:47 UTC
it doesn't work for me, even with source from svn..
it has nothing to do with packagers fault :)

I deleted all configs from the old amarok version no change.
Comment 3 Jussi Kekkonen 2006-04-16 00:05:53 UTC
True, I've been using only svn trunk since 1.2.x and I have this little "annoyance" happening. But as long as developers can't reproduce this tit can't be fixed, so if anyone can point out what's causing this, it would be gold ;)
Comment 4 claydoh 2006-05-19 01:32:11 UTC
I fixed my splash problem in Kubuntu by editing /usr/share/kubuntu-default-settings/kde-profile/default/share/config/amarokrc
making it read Show:
Splashscreen=true

then Whatever setting I choose seems to stick, until there is an update to the kubuntu-default-settings package

I have not yet tried just deleting the amarokrc from /usr/share/kubuntu-default-settings/kde-profile/default/share/config
Comment 5 Harald Sitter 2006-05-21 23:12:34 UTC
Kubuntu uses the KDE kiosk system to provide a full preconfigured system. The settings are stored in /usr/share/kubuntu-default-settings/kde-profile/default. As amaroK is default audio player of kubuntu it also includes an amarokrc which says (for dapper):
> Show Splashscreen=false

BUT amaroK doesn't apply this setting, so if one starts amaroK it still shows the splash screen.
If the user now tries to deactivate the splash screen in configure dialog (it is even active there), then amaroK writes 
> Show Splashscreen=true
to the amarokrc in $HOME/.kde/share/config

Therefore I think amaroK is aware that the option is set to false in kiosk config, but it doesn't apply it for some strange reason. This supposition gets supported by the fact that amaroK writes the tag with an false option in the amarokrc in $HOME.

Btw: if one reactivates the option in the configure dialog it gets removed from amarokrc

|    kubuntu    |    $HOME    |     GUI     |   startup  |
----------------------------------------------------------
|    false      |      -      |    true     |    true    |
|    false      |    true     |    false    |    true    |
|    false      |    flase    |      -      | true+crash |
Comment 6 Martin Aumueller 2006-07-23 22:24:39 UTC
SVN commit 565597 by aumuell:

fix for kubuntu systems that would show the splash screen even if disabled
BUG: 125210


 M  +1 -0      ChangeLog  
 M  +24 -13    src/loader/loader.cpp  


--- trunk/extragear/multimedia/amarok/ChangeLog #565596:565597
@@ -45,6 +45,7 @@
     * ATF no longer requires a restart to enable or disable it.
 
   BUGFIXES:
+    * If disabled, don't show splash screen - even on Kubuntu. (BR 125210)
     * Correctly request last.fm similar artist information for artists
       containing non-ASCII characters. Patch by Thomas Lindroth
       <tholi945@student.liu.se>. (BR 131254)
--- trunk/extragear/multimedia/amarok/src/loader/loader.cpp #565596:565597
@@ -22,6 +22,9 @@
 #include <qmessagebox.h>
 #include <qprocess.h>
 #include <qstring.h>
+#include <kinstance.h>
+#include <kglobal.h>
+#include <kstandarddirs.h>
 #include "splash.h"
 
 extern "C"
@@ -208,21 +211,29 @@
 isSplashEnabled()
 {
     //determine whether splash-screen is enabled in amarokrc
+    KInstance instance("amarok"); // KGlobal::dirs() crashes without
+    (void)KGlobal::config(); // the kubuntu special directory is not present without this
+    QStringList dirs = KGlobal::dirs()->findAllResources( "config", "amarokrc" );
 
-    QString path( ::getenv( "KDEHOME" ) );
-    if ( path.isEmpty() )
-        path = ::getenv( "HOME" ) + QString("/.kde");
-    path += "/share/config/amarokrc";
-
-    QFile file( path );
-    if ( file.open( IO_ReadOnly ) ) {
-        QString line;
-        while( file.readLine( line, 2000 ) != -1 )
-            if ( line.contains( "Show Splashscreen" ) && line.contains( "false" ) )
-                return false;
+    for( QStringList::iterator path = dirs.begin();
+            path != dirs.end();
+            ++path )
+    {
+        QFile file( *path );
+        if ( file.open( IO_ReadOnly ) )
+        {
+            QString line;
+            while( file.readLine( line, 2000 ) != -1 )
+                if ( line.contains( "Show Splashscreen" ) )
+                {
+                    if( line.contains( "false" ) )
+                        return false;
+                    else
+                        return true;
+                }
+        }
     }
 
-    //if we fail to open it, just show the splash
-
+    //if we fail to open anything, just show the splash
     return true;
 }