User:Chani/Plans/ConstraintsList
< User:Chani | Plans
This is a table of plasmoids vs. security constraints. they need to be checked before release, because we can't actually force c++ code to follow them.
the table's a bit ugly, but functional; if you're good with wiki syntax feel free to make it prettier. :)
the meaning of cells in this table:
- R: Required
- O: Optional
- U: Unused
- 1: couldn't check (crash or similar)
- 2: too much effort (like, non-applet class needs to access Applet::hasAuthorization)
- 3: way too much effort (webkit, urgh)
- 4: low priority (doesn't belong on screensaver)
after checking a plasmoid+feature, X-Plasma-Requires-<feature> in the plasmoid's .desktop should be set to one of Required, Optional or Unused.
- Required: the plasmoid cannot do without this feature
- Unused: the plasmoid doesn't use this feature at all
- Optional: it has made optional in the code using hasAuthorization() (see the comic or picture-frame for examples)
tips on checking for features:
- anything in the config dialog doesn't count
- FileDialog can just be grepped for - I'm not aware of anything that a plasmoid is likely to use that could expose it indirectly.
- LaunchApp can usually be checked by grepping for KRun. there are exceptions, though - battery uses KToolInvocation::kdeinitExec.
- it's always good to play with the actual plasmoid a bit if you can't remember every single feature it has.
TODO: a few of the 'required' entries for 4.4 could be made optional with a little work (weather, for example). we just don't really have the time.
Plasmoid | 4.3 | 4.3 | 4.4 | 4.4 | 4.5 | 4.5 | |
---|---|---|---|---|---|---|---|
FileDialog | LaunchApp | FileDialog | LaunchApp | FileDialog | LauchApp | ||
workspace/plasma | |||||||
activitybar | U | U | U | U | |||
analog-clock | U | U | U | U | U | U | |
battery | U | O | U | O | U | O | |
calendar | U | U | U | U | U | U (exposing PIM data though) | |
currentappcontrol | 4 | ||||||
devicenotifier | U | R | U | R (could be made O?) | U | R (could be made O?) | |
digital-clock | U | U | U | U | U | U | |
icon | U | R | U | R | |||
kickoff | U | R | U | R | U | R | |
lock_logout | U | U | U | U | |||
pager | U | U | 4 | U | U(4?) | ||
panelspacer | 4 | 4 | 4 | ||||
quicklaunch | R | R | R | R | R | R | |
searchbox | 4 | 4 | |||||
system-monitor | U | U | U | U | U | U | |
systemtray | 4 | 4 | 4 | ||||
tasks | U | U | U | U | U | U | |
trash | U | R | U | R | U | R | |
webbrowser | 3 | 3 | 3 | ||||
windowlist | 4 | 4 | 4 | ||||
apps/plasma | |||||||
folderview | 4 | 4 | 4 | ||||
kdeplasma-addons | |||||||
bball | U | U | U | U | U | U | |
binary-clock | U | U | U | U | U | U | |
blackboard | U | U | U | U | |||
bookmarks | 4 | ||||||
bubblemon | U | U | U | U | U | U | |
calculator | U | U | U | U | U | U | |
charselect | U | U | U | U | U | U | |
comic | O | O | O | O | O | O | |
dict | U | U | U | U | U | U | |
eyes | U | U | U | U | U | U | |
fifteenPuzzle | U | U | U | U | U | U | |
fileWatcher | U | U | U | U | U | U | |
frame | U | O | U | O | U | O | |
fuzzy-clock | U | U | U | U | U | U | |
incomingmsg | U | U | U | U | U | U | |
kdeobservatory | U | U | |||||
kimpanel | U | U | |||||
knowledgebase | U | R | U | R | |||
kolourpicker | U | U | U | U | U | U | |
konqprofiles | U | R | U | R | U | R | |
konsoleprofiles | U | R | U | R | U | R | |
lancelot | U | R | U | R | U | R | |
leavenote | 3 | 3 | 3 | ||||
life | U | U | U | U | U | U | |
luna | U | U | U | U | U | U | |
magnifique | 3 | U | U | U | U | ||
mediaplayer | R | U | R | U | R | U | |
microblog | 3 | 3 | 3 | ||||
news | 3 | 3 | 3 | ||||
notes | U | U | U | U | |||
nowplaying | U | U | U | U | U | U | |
opendesktop | 2 | U | R | ||||
opendesktop-activities | 4? U | U | U | O | |||
paste | 4 | 4 | 4 | ||||
pastebin | U | U | U | R | U | R | |
plasmaboard | 4 | 4 | |||||
qalculate | U | U | |||||
previewer | R | R | R | R | R | R | |
rememberthemilk | U | U | U | U | U | U | |
rssnow | 2 | U | R | ||||
showdashboard | 4 | 4 | 4 | ||||
showdesktop | 4 | 4 | 4 | ||||
systemloadviewer | U | U | U | U | U | O | |
timer | U | U | U | U | U | O | |
unitconverter | U | U | U | U | U | U | |
weather | 1 | U | R | U | R | ||
weatherstation | 1 | U | R | U | O | ||
playground/base/plasma |