User:Chani/Plans/ConstraintsList: Difference between revisions

From KDE TechBase
(Adding 4.5 columns)
(lalala, constraints)
Line 53: Line 53:
|-
|-
| analog-clock
| analog-clock
| U
| U
| U
| U
| U
| U
Line 59: Line 61:
|-
|-
| battery
| battery
| U
| O
| U
| U
| O
| O
Line 69: Line 73:
| U
| U
| U
| U
| U
| U (exposing PIM data though)
|-
|-
| currentappcontrol
| currentappcontrol
Line 79: Line 85:
| U
| U
| R
| R
| U
| R (could be made O?)
| U
| U
| R (could be made O?)
| R (could be made O?)
|-
|-
| digital-clock
| digital-clock
| U
| U
| U
| U
| U
| U
Line 95: Line 105:
|-
|-
| kickoff
| kickoff
| U
| R
| U
| U
| R
| R
Line 111: Line 123:
| 4  
| 4  
|
|
| U
| U(4?)
|-
|-
| panelspacer
| panelspacer
Line 143: Line 157:
|-
|-
| tasks
| tasks
| U
| U
| U
| U
| U
| U
Line 149: Line 165:
|-
|-
| trash
| trash
| U
| R
| U
| U
| R
| R
Line 165: Line 183:
| 4
| 4
|
|
| 4
|-
|-
! colspan=7 | apps/plasma
! colspan=7 | apps/plasma

Revision as of 21:36, 15 June 2010

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
quicklaunch R R R R
searchbox 4
system-monitor U U U U
systemtray 4 4
tasks U U U U U U
trash U R U R U R
webbrowser 3 3
windowlist 4 4
apps/plasma
folderview 4 4
kdeplasma-addons
bball U U U U
binary-clock U U U U
blackboard U U
bubblemon U U U U
calculator U U U U
charselect U U U U
comic O O O O
dict U U U U
eyes U U U U
fifteenPuzzle U U U U
fileWatcher U U U U
frame U O U O
fuzzy-clock U U U U
incomingmsg U U U U
kdeobservatory
kimpanel
knowledgebase U R
kolourpicker U U U U
konqprofiles U R U R
konsoleprofiles U R U R
lancelot U R U R
leavenote 3 3
life U U U U
luna U U U U
magnifique 3 U U
mediaplayer R U R U
microblog 3 3
news 3 3
notes U U
nowplaying U U U U
opendesktop 2
opendesktop-activities 4? U U
paste 4 4
pastebin U U U R
plasmaboard 4
previewer R R R R
rememberthemilk U U U U
rssnow 2
showdashboard 4 4
showdesktop 4 4
systemloadviewer U U U U
timer U U U U
unitconverter U U U U
weather 1 U R
weatherstation 1 U R
playground/base/plasma