systemsettings enhancement when used in a kiosk environment
Needs RevisionPublic

Authored by sancelot on Nov 29 2017, 3:58 PM.

Details

Reviewers
davidedmundson
Group Reviewers
Plasma
Summary

When you defined a kiosk environment, disabling some modules to user, disabled module were always visible in menus.
However, if you open the view of these menu, a blank view will display because modules are disabled.

This patch solves it and displays only enabled module to user.

Test Plan

restrict and disable some modules in kdeglobals file .
eg adding these lines if you want to inhibit access to font module:

[KDE Control Module Restrictions][$i]
fonts.desktop=false
fontinst.desktop=true

launch system settings panel. the disabled font module will not being displayed

Diff Detail

Lint
Lint Skipped
Unit
Unit Tests Skipped
sancelot created this revision.Nov 29 2017, 3:58 PM
Restricted Application added a subscriber: plasma-devel. ยท View Herald TranscriptNov 29 2017, 3:58 PM
sancelot requested review of this revision.Nov 29 2017, 3:58 PM
davidedmundson requested changes to this revision.Nov 29 2017, 4:07 PM
davidedmundson added a subscriber: davidedmundson.

Latest master features the line:

if (!entry->noDisplay() ) {
        //add entry

which isn't in your diff, is this made against some old code?

KService::noDislpay already checks if (!KAuthorized::authorizeControlModule(storageId())) {

as well as other important things.

This revision now requires changes to proceed.Nov 29 2017, 4:07 PM

I was in branch 5.8 .... so, ok, I understand it may be have done. I will upgrade .