Bug 292637

Summary: Profile setting "Show in Menu" not saved
Product: [Applications] konsole Reporter: Christoph Feck <cfeck>
Component: generalAssignee: Konsole Developer <konsole-devel>
Status: RESOLVED FIXED    
Severity: normal CC: adaptee, francesco.cecconi
Priority: NOR    
Version: 2.8.999   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed In: 4.9.0
Sentry Crash Report:

Description Christoph Feck 2012-01-27 22:46:16 UTC
I have two profiles in apps/konsole, and since the recent settings commits, Konsole only shows the default "Shell" profile in the menu. Going into Profile Manager, I see that the other profile has checkmark "Show in Menu" not set. When I set it, it is shown in the New menu, but after exiting Konsole and restarting, the profile is missing again in the New menu.
Comment 1 Jekyll Wu 2012-01-28 02:02:22 UTC
The recent commits for global settings should not matter :) 

The related commit might be 8240973baf59036030dc60aa93bad9489f05bccb which makes konsole use the form of "<profilename>.profile" instead of absolute path for recording favorites and shortcuts information.

I guess the problematic profile is named/displayed as "xyz" while its corresponding file on disk is saved as "~/.kde4/share/apps/konsole/abc.profile". 

If so, then the real problem is konsole has always assumed profile "xyz" corresponds to "~/.kde4/share/apps/konsole/xyz.profile" but fails to guarantee that constraint in its own code/operation. A typical example is renaming a profile through "Configure Current profile" or "Manager Profiles".
Comment 2 Francesco Cecconi 2012-01-28 11:16:52 UTC
Hi,

I have created a review request #103807 for this bug.
Comment 3 Kurt Hindenburg 2012-01-28 16:52:44 UTC
Git commit 0bd1927585fe043e2a9a97adbe188f59747e5f83 by Kurt Hindenburg.
Committed on 28/01/2012 at 17:49.
Pushed by hindenburg into branch 'master'.

Select right profile name in saveFavorites()

Do not use "profile->name()" for retrieve profile name, but take it
from profile path.

When a profile name is changed (ex. test -> test2):
profile->path() (/home/xxxx/.../test.profile)
profile->name() (test2.profile)

Thanks to Francesco Cecconi (francesco.cecconi@gmail.com ) for patch
REVIEW: 103807
FIXED-IN: 4.9

M  +13   -1    src/SessionManager.cpp

http://commits.kde.org/konsole/0bd1927585fe043e2a9a97adbe188f59747e5f83
Comment 4 Kurt Hindenburg 2012-02-02 15:52:11 UTC
Git commit cebc42d11b912c656d916a68b91b3b1e3094b2b4 by Kurt Hindenburg.
Committed on 28/01/2012 at 17:49.
Pushed by hindenburg into branch 'KDE/4.8'.

Select right profile name in saveFavorites()

Do not use "profile->name()" for retrieve profile name, but take it
from profile path.

When a profile name is changed (ex. test -> test2):
profile->path() (/home/xxxx/.../test.profile)
profile->name() (test2.profile)

Thanks to Francesco Cecconi (francesco.cecconi@gmail.com ) for patch
REVIEW: 103807
FIXED-IN: 4.9
(cherry picked from commit 0bd1927585fe043e2a9a97adbe188f59747e5f83)

M  +13   -1    src/SessionManager.cpp

http://commits.kde.org/konsole/cebc42d11b912c656d916a68b91b3b1e3094b2b4