Bug 74203

Summary: KSplash kcm refuses to reinstall a theme
Product: kcontrol Reporter: kstars
Component: kcmksplashAssignee: Ravikiran Rajagopal <ravi>
Status: RESOLVED FIXED    
Severity: normal    
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed In:

Description kstars 2004-02-05 08:12:48 UTC
Version:            (using KDE Devel)
Installed from:    Compiled sources
Compiler:          gcc version 3.2.3 20030422 
OS:          Linux

I was working on a new splashscreen and I was testing it with the ksplash kcm.  I discovered a problem: if you "Add" a theme, then "Remove" it, then attempt to "Add" a theme from the same tarball name, the kcm will refuse to Add the splashscreen, and presents no error message or other feedback.  After much frustration, I figured out a workaround: you can rename the tarball and then it will happily Add the theme a second time.  

Now, one might well say "this is a bizarre use-case, why would anyone do this in the real world?"  However, the ksplash kcm is the best way that I know of to grab a screenshot of the splashscreen for the all-important "Preview.png".  So if you want a theme tarball with a Preview, you really have to Install with the kcm at least twice.  In addition, it's entirely likely that you won't have everything quite right the first time, and the only way to debug it is by loading (and *reloading*) the splashscreen in the kcm.  So for splashscreen designers, it is a huge PITA to have to rename the tarball everytime we want to tweak something.

To reproduce:  download any 3.2-compatible splashscreen from kde-look.org (you can try my Mars theme, for example: http://www.kde-look.org/content/show.php?content=10545), saving the tarball to your hard drive.  Install the splashscreen using the KSplash kcm.  Then Remove it.  Then attempt to Add it again.  It will silently refuse to add it a second time.  Then rename the tarball.  Then you can Add it again.

Expected behavior:  It should Add a splashscreen theme, even if it has already been Added and Removed.  I suspect that there's a provision in the code against Adding a theme which already exists, and that the kcm doesn't realize that the theme has been Removed.  That's just a guess, though.

thanks a lot!
Comment 1 Ravikiran Rajagopal 2004-02-05 23:03:34 UTC
Fixed in CVS.