Ideas Mocukp Plasma Media Center for Pictures

Christophe Olinger olingerc at binarylooks.com
Thu Mar 18 14:03:48 CET 2010


Mockup

see attachment or here:

http://imagebin.ca/view/HAeAkDf.html


Cheers

Chris




On Thu, Mar 18, 2010 at 1:08 PM, Alessandro Diaferia
<alediaferia at gmail.com> wrote:
> CC'ing to plasma-devel since this might be interesting for others.
>
> 2010/3/18 Christophe Olinger <olingerc at binarylooks.com>
>>
>> Hi Alessandro and Marco
>> (should I post this to plasma-devel?)
>>
>> Currently I am going through Alessandro's work class by class and try
>> to understand how you planned the whole media center. It’s amazing how
>> much you have done already! Unfortunately, at the same time I am
>> learning all about KDE and Plasma development so it all goes much
>> slower than I want and with lots of going through plasma code and
>> trying to find stuff.
>>
>> I want to use as much as possible of what you have done already so
>> here a quick heads up on how I wanted to proceed. Please be very
>> strict about how you imagined it and tell me what to change, I am kind
>> of inexperienced in all this:
>>
>> 1) you created the plasmediacenter shell which you use as a
>> springboard to load all your stuff. A standard corona, your
>> MediaCenter::MediaContainment then browser, playlist, controller,
>> player. The following things come to my mind (please correct me if I’m
>> wrong):
>> •       independently of whether we are looking at pictures, videos or
>> music, you wanted to always have these 4 components
>
>
> right
>
>> •       From the previous I suppose you wanted to do all these media
>> consumption types in the same workspace, the user would not use a
>> different app when he wants to look at pictures than the app he uses
>> to listen to Music.
>
> right, that's Media Center :)
>
>>
>> •       Maybe you just wanted to start from something generic and later
>> wanted to adapt the workspace to what the user currently does.
>
> pretty correct assumption.
>
>>
>> In my mind, I actually only thought about a mediacenter for pictures,
>> but I really want my work to fit into yours. This is how I imagined my
>> app:  (SEE MOCKUP)
>>
>> •       On plasmamediacenter_pictures startup (or switch to “picturemode”
>> within plasmamediacenter) we will see a full screen browser (or a
>> browser that fills completely its dedicated space, for example if we
>> have the plasma-netbook panel visible)
>
>
> We already have this behavior with the browser applet.
>
>>
>> •       This browser will be in grid mode and shows picture thumbnails
>> (with
>> or without names)
>> •       Navigation will be done via a bottom horizontally maximized widget
>> with an upper directory button and home button. At the home screen we
>> can also select to browse via nepomuk or other models (flickr...)
>> (bottom, because I think it is easier to reach with your figures if
>> you have a tablet, maybe top is easier?)
>> •       At the right there will be a vertically maximized widget that
>> contains the following:
>> o       A widget that allows switching between grid and single picture
>> mode
>> (icons changes depending on current mode)
>
> Again, mediabrowser applet already does this.
>
>>
>> o       A widget that allows to set a zoom state for the grid browser
>> (4x4,
>> 8x8, 16x16,...) or in  single browser mode (unnecessary for pinch to
>> zoom)
>> o       rotate button
>> o       tag widget (tagging on the item will be too small I think
>> •       both side panels can be hidden using a button on the bottom right
>> •       tapping a picture selects it, double tapping switches between
>> single
>> / grid mode
>> •       dragging the grid view allows for scrolling
>> •       maybe I can allow a list view later
>> •       flicking in single picture mode switches picture
>> •       pinch to zoom
>>
>> Your browser already has most of the necessary stuff so here are some
>> questions:
>
> Well i do not think is worth developing your own app and then merge your
> work with Plasma MC.
> You'd better start hacking directly on MC, imho, sending patches. This way
> we can guide you for the first steps and then you can keep going on your
> own.
>
>>
>> •       For my browser should I create a new mediabrowser_pics class in
>> which I create a new abstractmediaitemview object with the necessary
>> configurations and based on your grid:view? All the nice models and
>> stuff are already in this class.
>
> ATM we have a video dataengine that expects plugins for it to be developed.
> YouTube is already there. The video-dataengine makes it easier developing a
> plugin for the mediabrowser applet. This way you simply write your own
> QAbstractItemModel that fetches from the video-dataengine and then package
> it all inside a ModelPackage (the abstract interfaces for
> mediabrowser-applet plugins).
>
>>
>> •       I don’t want to change your mediabrowser class and applet, so if I
>> want to create a new applet, I have to duplicate all your basic
>> mediabrowser classes (abstractitemview, grid view and the models), or
>> is it possible to create a second .desktop file in a directory which
>> would create an applet based on the same classes but with other
>> configuration settings.
>
> Again, i feel you should directly contribute with patches. Do not be scared,
> we can give you hints :-)
>
>>
>> •       How can I do this without duplicating stuff, or do I have to make
>> your current code more generic? (taking the abstractitemview, gridview
>> and stuff into some sort of libs directory?)
>> •       Should I create a new mediacontainment, since I would not really
>> use
>> your autohide feature, or is it easily turned off by configuring an
>> object of type mediacontainment?
>> •       I could also use a generic plasma containment
>> •       The bottom and right panel would be new applets? Should I base
>> them
>> on plasma panels? I could take your mediacontroller applet to inspire
>> me.
>> •       So basically I create a new shell which does the following:
>> o       new corona
>> o       new containment (plasma or media containment?)
>> o       configure containment (or is this better done in a new containment
>> class?)
>> o       add browser applet
>> o       add bottom and right panel widgets
>> o       add player
>> •       The single browser mode would be an actual player applet
>>
>> The whole thing is easily adaptable to a video browser I think. we
>> just need to add the playback controller widget. And somewhere a
>> playlist. Then we also have a music applet already. Hmmm. I hope this
>> is not completely different from what you planned.
>
> This is too similar instead. See above :-)
>
>>
>> BTW, I think I’ll adapt the whole thing to a touch interface
>> immediately, that means no hover events or rightclick events. (Maybe I
>> can keep hover? for the netbook or desktop even)
>>
>> Okay, that was a brain dump par excellence. I hope you see what I want to
>> say.
>>
>>
>> Cheers,
>>
>> Chris
>
>
>
> --
> Alessandro Diaferia
> KDE Developer
> KDE e.V. member
>
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: PMC_pics_mockup_v1.png
Type: image/png
Size: 46245 bytes
Desc: not available
Url : http://mail.kde.org/pipermail/plasma-devel/attachments/20100318/05c0bf0f/attachment-0001.png 


More information about the Plasma-devel mailing list