User:Chani/Plans/ConstraintsList: Difference between revisions

    From KDE TechBase
    (more edits)
    No edit summary
    Line 283: Line 283:
    | 3
    | 3
    |  
    |  
    |
    |  
    |
    | U
    |-
    |-
    | life
    | life
    Line 301: Line 301:
    | 3
    | 3
    |  
    |  
    |
    | U
    |
    | U
    |-
    |-
    | mediaplayer
    | mediaplayer

    Revision as of 08:53, 28 January 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: plasmoids that are new in 4.4 need adding to this list!

    Plasmoid 4.3 4.3 4.4 4.4
    FileDialog LaunchApp FileDialog LaunchApp
    workspace/plasma
    activitybar U U
    analog-clock U U
    battery U O
    calendar U U
    devicenotifier U R
    digital-clock U U
    icon U R
    kickoff U R
    lock_logout U U
    pager U U
    panelspacer 4
    quicklaunch R R
    system-monitor U U
    systemtray 4
    tasks U U
    trash U R
    webbrowser 3
    apps/plasma
    folderview 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
    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 U
    life U U U U
    luna U U U U
    magnifique 3 U U
    mediaplayer R U R U
    microblog 3
    news 3
    notes U U
    nowplaying U U
    opendesktop 2
    paste 4
    pastebin U U
    previewer R R
    rememberthemilk U U
    rssnow 2
    showdashboard 4
    showdesktop 4
    systemloadviewer U U
    timer U U
    unitconverter U U
    weather 1
    weatherstation 1
    playground/base/plasma