User:Chani/Plans: Difference between revisions

From KDE TechBase
(so many ideas, so little code)
 
 
(11 intermediate revisions by the same user not shown)
Line 1: Line 1:
Some of the things I'm planning to do are on [[/Projects/Plasma/4.1_Roadmap|the roadmap]]. some are only on my laptop, and will stay there. here's some stuff that I'm thinking of doing, but I'm not certain enough about it to put it on the actual roadmap page. there's a pretty good chance I'll never find time for any of it.
Some of the things I'd like to do need to get on [[Schedules/KDE4/4.3_Feature_Plan|the feature plan]]. some are only on my laptop, and will stay there. here's some of the stuff that I'm thinking of doing. There's a pretty good chance I'll never find time for most of it. If one of them sparks your interest, feel free to implement it. (but tell me, so we don't both end up doing the same thing ;)


====mix plasma and the screensaver====
 
*desktop containment that can display screensavers in the background
===little things I never get to===
*I want plasma on the actual screensaver too. I blogged about this before, and other people have had the same idea.


====make a graphical timezone selector====
====make a graphical timezone selector====
*I think I've seen such a thing ona gnome computer, and it it just made *sense*.
*I think I've seen such a thing ona gnome computer, and it it just made *sense*.
*I'm not sure if this would be a plasma thing or a kdelibs thing.
*I'm not sure if this would be a plasma thing or a kdelibs thing. or a marble thing.
*at the very least the existing timezone selecter needs a filter bar...
 
===plasmoid ideas===


====attention plasmoid====
====attention plasmoid====
Line 13: Line 15:
*this is useful for people like me who usually don't want a taskbar, but don't want to miss that attention request.
*this is useful for people like me who usually don't want a taskbar, but don't want to miss that attention request.


====kconfig plasmoid====
====icon plasmoid improvements====
*like the little kde3 applet - pops up a list of kconfig modules so you can go right to the one you want instea of clicking around systemsettings.
*right now, it kinda sucks. I have links on my desktop called stuff like "http" and I can't change them. oh, and dragging a kickoff entry to the desktop then changing it has broken things horribly in the past.
*I find that when I actually do remember where the hell a setting is stored (like when I have to keep switching proxies), this kind of ui is much faster.
*what I want is a more generic launcher plasmoid that can be configured to launch whatever I want. like how you could add stuff to your panel in kde3 and configure it to run a program with extra options or whatever.
 
====kwin effects plasmoids====
*someone on hte interwebs thought of this one: just little icons that trigger certain kwin effects. should be really easy, assuming there's a dbus way to trigger those things.
 
====victory calendar [mine!!]====
*this is the one I keep blogging about
*I need to make it possible to add rows
*then I need to make it save the state of the flags
*then I need to make it save them per day, and display history
*eventually I might add pretty graphs
 
====note-taking containment====
*this would be something like a simplified basKet
*the containment would have a row of buttons for creating new notes, sketches, etc. these would use existing plasmoids (which might need improving)
*the containment itself would be a sketch plasmoid so you could draw on hte background.
*actually this might not need to be a special containment. the row of buttons could be its own plasmoid, then you just need to add that plasmoid and set the containment type to sketch
*obviously there has to exist a sketch plasmoid that allows the user to do simple sketches and can be used as a containment. I think there's some sort of blackboard plasmoid somewhere that could be turned into this.
*this will make it easy to produce lots of disorganized data, so it'd be nice if the note/sketch plasmoids could save their data somewhere outside the plasma config. tagging would also be nice. and containment saving.
 
===soc ideas===
 
====containment saving====
*use case 1: I have a system with limited resources, and lots of activities. I want to close the ones I haven't used recently, but not delete them forever.
*use case 2: I have a really cool setup, and my friend wants me to send her one of my activites because she likes it so much.
*the idea is to save out the containment's config to another file (in $APPDATA or something for use case 1) and remove it, then when the user wants to load a saved containment we give them a list of the saved containments (plus an option to load from any file), then pull in the one they choose. if they choose one from the list then we remove that file so that they don't get multiple copies of the same activity.
*there should be a nice friendly UI for all of this, of course. bonus points if the "share with a friend" is something cooler than having the user do "save to file, open mail client, attach that file to an email"


====groupbox====
====full keyboard control====
*just a containment that can sit on the desktop and hold other applets.
*two parts: dbus interface and a runner
*first, we need a full dbus interface to plasma
**I want to be able to control as much as possible. everything, really. every applet, every containment...
**first, we need a way to get a listing of the containments running, and applets running in a specific containment
**we need a way to refer to those specific containments and applets, to do things to them.
**I should be able to do stuff like move, resize, add, remove... I'm not sure if changing configuration makes sense. being able to make it flash would be useful too (at the very least to confirm you're actually acting on the applet you think you're acting on)
*second, we need a runner
**this should be a less-scary way to use the dbus interface... something a bit more intuitive with less typing


====multiple containments====
===neverending tasks===
*unless aaron gets there first, I'd like to get a ui in place for adding and removing desktop containments. one just isn't enough!


====keyboard shortcuts====
====screensaver security====
*having a crappy laptop mouse that's beginning to show its age, I really hate how inaccessible plasma is right now. I want to figure out a sane system for keyboard shortcuts that'll let me navigate around without eating up too much of the shortcut namespace.
**there was a discussion about this last year [http://mail.kde.org/pipermail/panel-devel/2008-July/015313.html on panel-devel]
**I'm going to have to re-check all the main plasmoids during every freeze. yuck. [[/ConstraintsList]]

Latest revision as of 03:19, 9 November 2009

Some of the things I'd like to do need to get on the feature plan. some are only on my laptop, and will stay there. here's some of the stuff that I'm thinking of doing. There's a pretty good chance I'll never find time for most of it. If one of them sparks your interest, feel free to implement it. (but tell me, so we don't both end up doing the same thing ;)


little things I never get to

make a graphical timezone selector

  • I think I've seen such a thing ona gnome computer, and it it just made *sense*.
  • I'm not sure if this would be a plasma thing or a kdelibs thing. or a marble thing.
  • at the very least the existing timezone selecter needs a filter bar...

plasmoid ideas

attention plasmoid

  • when a task wants attention (ie. it would be flashing in the taskbar) this would show the task and get the user's attention.
  • this is useful for people like me who usually don't want a taskbar, but don't want to miss that attention request.

icon plasmoid improvements

  • right now, it kinda sucks. I have links on my desktop called stuff like "http" and I can't change them. oh, and dragging a kickoff entry to the desktop then changing it has broken things horribly in the past.
  • what I want is a more generic launcher plasmoid that can be configured to launch whatever I want. like how you could add stuff to your panel in kde3 and configure it to run a program with extra options or whatever.

kwin effects plasmoids

  • someone on hte interwebs thought of this one: just little icons that trigger certain kwin effects. should be really easy, assuming there's a dbus way to trigger those things.

victory calendar [mine!!]

  • this is the one I keep blogging about
  • I need to make it possible to add rows
  • then I need to make it save the state of the flags
  • then I need to make it save them per day, and display history
  • eventually I might add pretty graphs

note-taking containment

  • this would be something like a simplified basKet
  • the containment would have a row of buttons for creating new notes, sketches, etc. these would use existing plasmoids (which might need improving)
  • the containment itself would be a sketch plasmoid so you could draw on hte background.
  • actually this might not need to be a special containment. the row of buttons could be its own plasmoid, then you just need to add that plasmoid and set the containment type to sketch
  • obviously there has to exist a sketch plasmoid that allows the user to do simple sketches and can be used as a containment. I think there's some sort of blackboard plasmoid somewhere that could be turned into this.
  • this will make it easy to produce lots of disorganized data, so it'd be nice if the note/sketch plasmoids could save their data somewhere outside the plasma config. tagging would also be nice. and containment saving.

soc ideas

containment saving

  • use case 1: I have a system with limited resources, and lots of activities. I want to close the ones I haven't used recently, but not delete them forever.
  • use case 2: I have a really cool setup, and my friend wants me to send her one of my activites because she likes it so much.
  • the idea is to save out the containment's config to another file (in $APPDATA or something for use case 1) and remove it, then when the user wants to load a saved containment we give them a list of the saved containments (plus an option to load from any file), then pull in the one they choose. if they choose one from the list then we remove that file so that they don't get multiple copies of the same activity.
  • there should be a nice friendly UI for all of this, of course. bonus points if the "share with a friend" is something cooler than having the user do "save to file, open mail client, attach that file to an email"

full keyboard control

  • two parts: dbus interface and a runner
  • first, we need a full dbus interface to plasma
    • I want to be able to control as much as possible. everything, really. every applet, every containment...
    • first, we need a way to get a listing of the containments running, and applets running in a specific containment
    • we need a way to refer to those specific containments and applets, to do things to them.
    • I should be able to do stuff like move, resize, add, remove... I'm not sure if changing configuration makes sense. being able to make it flash would be useful too (at the very least to confirm you're actually acting on the applet you think you're acting on)
  • second, we need a runner
    • this should be a less-scary way to use the dbus interface... something a bit more intuitive with less typing

neverending tasks

screensaver security

    • there was a discussion about this last year on panel-devel
    • I'm going to have to re-check all the main plasmoids during every freeze. yuck. /ConstraintsList