Version: trunk (KDE4) (using KDE KDE 3.95.0) Installed from: Compiled From Sources OS: Linux KSettings::Dialog is seriously broken at the moment. In Kontact, which is probably the heaviest user of it, several things are missing: - It is not possible anymore to deselect the summary, notes todo or journal plugins (probably more) - There is a checkbox at Summary->Components, even though that is only a config page and can not be deselected - The checkboxes in the treewidget look ugly This is all because the code was refractored, without taking Kontact into account. In KDE3, there was a "Select Components" button, which allowed you to select the components. In KDE4, this has been replaced by checkboxes alongside the treewidget items. This can not work, because some components, like notes or todo, don't have a config page and are not shown in the treewidget. Therefore it is not possible to enable or disable them. I think the old "Select Component" button worked much better. Currently, this dialog is useless for Kontact.
AFAIK that operation mode of KSettings::Dialog is not finished yet and won't be for 4.0. Matthias Kretz didn't have time to do it, so I guess Kontact has two or three options: a) fix it b) live with it c) use something else oh and d) don't release with kde4.0 ;)
Please don't use b.k.o to vent your frustration. We've been talking about this on IRC before and you could have created a bit more task-oriented bug report. Also you know that I tried to fix those bugs but got stuck on a KPageWidget crash... > The checkboxes in the treewidget look ugly Report that to the oxygen widget style. Please test with Plastique to see how it's supposed to look. > refractored, without taking Kontact into account Actually Kontact was the only app I was thinking about. > This can not work, because some components, like notes or todo, > don't have a config page and are not shown in the treewidget. Please report this as a bug like "KPluginInfo without associated KCM does not show up in KSettings::Dialog" > It is not possible anymore to deselect the summary, notes todo > or journal plugins (probably more) Same bug as above or something different? I think notes, todo and journal are same as above, but summary is a bug like "KPluginInfo dependencies are not taken into account in KSettings::Dialog" And regarding comment #1, I sure think this is a). Those are just two bugs in the code. Would be nice if somebody other than me could look into this, too. I still have a lot to do for Phonon.
> Please don't use b.k.o to vent your frustration. We've been talking about > this on IRC before and you could have created a bit more task-oriented bug > report. Also you know that I tried to fix those bugs but got stuck on a > KPageWidget crash... Sorry if this bug report sounded harsh, it was really not my intention. I didn't know if you had time to do something after I talked to you on IRC, so I filed a bug report that it is not forgotten. I tried to summarize the main points again here, but I guess I failed at doing it properly. > > The checkboxes in the treewidget look ugly > > Report that to the oxygen widget style. Please test with Plastique to see > how it's supposed to look. OK, it is indeed locking fine in Plastique. I'll report it to the oxygen people. I only mentioned it as a reason to go back to the old "Select Components" button. > > refractored, without taking Kontact into account > > Actually Kontact was the only app I was thinking about. Oh, ok, sorry then. I guess the problems I reported here were not that obvious then, though they seemed to me because I am more involved with Kontact. > > This can not work, because some components, like notes or todo, > > don't have a config page and are not shown in the treewidget. > > Please report this as a bug like "KPluginInfo without associated KCM does > not show up in KSettings::Dialog" Do you think I should open a new report for that? > > It is not possible anymore to deselect the summary, notes todo > > or journal plugins (probably more) > > Same bug as above or something different? I think notes, todo and journal > are same as above, Ah yes, I repeated myself here. > but summary is a bug like "KPluginInfo dependencies are > not taken into account in KSettings::Dialog" > And regarding comment #1, I sure think this is a). Those are just two bugs > in the code. I think so too. > Would be nice if somebody other than me could look into this, too. I still > have a lot to do for Phonon. I understand your time problems. Thanks for all the Phonon work you've done, it is a great peace of software. OK, I'll try to be a bit more task-oriented now. I found some more issus (and added the old ones at the end): a) Although the summary does not have a checkbox in the treewidget to disable it, it actually has a checkbox in the right pane (the "component enabled" one). If an item has a checkbox in the right pane, it should have one in the treewidget as well. b) "component enabled" should be capitalized, but I'm not a native speaker either, so I don't know the proper wording. And we're already in the string freeze. c) When I disable the checkmark for "Pending To-dos", the entry goes grey and there is no way to enable it again, even after a restart. d) Enabling/Disabling plugins have only an effect after restarting Kontact. I haven't checked yet if this is a bug in Kontact or in the dialog. e) Disabling the summary does not seem to have an effect until you have disabled all childs (pending to-dos, upcoming special events, and components) (old bugs now) f) "Components" has a checkbox although it is nothing you can disable g) KPluginInfos without associated KCMs can not be disabled. Again, sorry for this hastly written and harsh bug report.
SVN commit 738788 by tmcguire: emit the pluginSelectionChanged() event when the config is synced. CCBUG: 152495 M +5 -1 dialog.cpp WebSVN link: http://websvn.kde.org/?view=rev&revision=738788
Fixed b) d) I can't reproduce, probably fixed by commit in #4 f) I can't reproduce a, c), e), f), g) are still valid
Created attachment 36001 [details] Fix plugins without kcm modules not configurable This is my initial attempt to fix at least part g) of comment #3. Since the existing code loops over all KCMs, then tries to find the related plugin, I added a "dummy" KCModuleInfo for plugins without KCMs. The current patch adds mostly code duplicated from existing code. Refactoring can be done later. Issues: A) AFAICT plugins/services have no weight, so I chose 1000 to make them appear at the end of the list B) the modules from the addressbook show individually with a checkbox, instead of grouped under the addressbook plugin (which is removed, because it is empty) - I blame the current addressbook rewrite for this :) C) this patch also fixes the fact that "Notebooks" did not get a checkbox, because there was exactly one subpage (Misc)
SVN commit 1016806 by cfeck: Show plugins without kcmServices so they can be disabled Re comment #5 a) cannot reproduce, Summary has a checkbox to disable it c) cannot reproduce, Pending To-dos has no checkbox e) cannot reproduce, Summary is disabled with checkbox f) cannot reproduce, Components has no checkbox g) this is fixed by this commit Re comment #6 A) still applies, I gave up finding a way to get the weight B) due to addressbook rewrite "Contacts" shows twice here C) is still fixed by this commit BUG: 152495 M +111 -78 dialog.cpp M +7 -0 dialog_p.h WebSVN link: http://websvn.kde.org/?view=rev&revision=1016806
about your B: you probably have an old .desktop in your install dir. Kcontactmanager doesn't exist anymore and kaddressbook_plugin.desktop was renamed. Only kaddressbookplugin.desktop should remain.
Christophe, good catch, I had indeed both files there.
*** Bug 196440 has been marked as a duplicate of this bug. ***
*** Bug 191365 has been marked as a duplicate of this bug. ***