Hello... WorkFlow Plasmoid

Michail V. mvourlakos at gmail.com
Wed Jun 27 13:59:00 UTC 2012


Hello,

this plasmoid is going pretty well, it is almost usable right now
I have use libtaskmanager and libkactivities for the communication
with qml and much much more goodness.

Next Stop is going to be the cloning theory for activities,
For the delete activity issue, I just had to wait for the activity to
get into the "Stopped" state and then delete it...

Does anyone have an idea how can I access window previews from
a plasmoid? Get for example pixmaps for spesific windows? It doesnt
have to be live previews, as kwin does right now in order to use
in qml. For start I was thinking to get every 1sec a QPixmap preview
for spesific windows...

any ideas?

Cheers,
Michail


P.S. many kudos Ivan, moving a task from activity to activity with dragging
worked like charm, with using atoms ...

Στις 22/06/2012 06:32 μμ, ο/η Marco Martin έγραψε:
> On Friday 22 June 2012, Michail V. wrote:
>> Hello everyone,
>>
>> I am developing a plasmoid called Workflow, the project's webpage can be
>> found here:
>> http://opentoolsandspace.org/en/projects/development/plasmoid-workflow
>>
>> I'd love to have your feedback, as I have a deadline in my head for the
>> first version
>> mid-of September. The pieces are starting to get into place, it's almost
>> usable right now
>> but until now I have faced the following issues, I am developing it in
>> KDE 4.8.4 at opensuse
> Hi,
> first of all, this is a very cool project, (there may be even some concepts of
> it that may make sense to be implemented in the default workspace)
>
> how is written? c++? qml? a combination of the two?
>
>> 1) I am using the following code to remove an activity:
>>
>> void ActivityManager::remove(QString id) {
>>       ActivityManager::stop(id);
>>
>>       Plasma::Service *service = plasmaActEngine->serviceForSource(id);
>>       KConfigGroup op = service->operationDescription("remove");
>>       op.writeEntry("Id", id);
>>       Plasma::ServiceJob *job = service->startOperationCall(op);
>>       connect(job, SIGNAL(finished(KJob*)), service, SLOT(deleteLater()));
>>
>> }
>>
>> plasmaActEngine is org.kde.activities,
>> the behavior is that the activity is not removed from the dataengine,
>> there is a ghost activity
>> in the dataengine that doesnt have some fields, name, icon etc...
>> In order for someone to delete it completely the user must use the
>> ActivityManager or make
>> a logout/login
> i seen this problem in the past.
> seems that to be correctly deleted the deletion should happen at least an
> event loop after the stop. (like being done by a slot connected with a timer
> with 0 timeout).
>
> if this is still the case in master is worth investigating why this happens.
>
>> 2) The plasmoid is developed as a PopupApplet in order to be able to be
>> placed in a panel,
>> I have tried many things but I can not restore the plasmoid in its
>> previous used size after a logout/login,
>> the popupapplet changes the DialogWidth,DialogHeight properties
>> correctly in the plasmoids settings
>> but after a logout/login the plasmoid remains in its default size.
> is the size correctly saved in plasma-desktop-appletsrc?
>
> in theory shouldn't be necessary to do anything
> (may be a problem in the qml binding of popupapplet itself?)
>
>> 3) I have tried to find a way to clone an activity through the plasmoid
>> but I did not have any success.
>> I have seen that the ActivitiesEngine, in plasma/desktop/shell, is using
>> class PlasmaApp for most of the
>> operations and not the dataengine, Is there a way to use PlasmaApp also?
>> or in the future cloning an activity
>> is going to be supported through the dataengine?
> there aren't any exposed way, i don't think.
> this because the implementation of activities/containment correspondence is in
> the shell executable, so not reachable by the plasma library.
>
> i see several ways in which the containments cloning may be reached from a
> library tough.
> what is needed is:
> * a client asks the activity manager to duplicate an activity
> * the activity manager signals this, the plasma shell duplicates the
> containments
> * the activity manager duplicates the associations nepomuk resource/activity
> as well
> * kwin duplicates the window association
>
> i think the last two points are not done in any way for now.
>
> this may also sparkle a discussion on what is the optimal workflow to create
> an activity:
> * an empty one can be created
> * or a duplicate of the current
> * or one with all the files and windows currently open, regardless if they are
> associated or not
> * or the union of last two points: all open stuff plus all currently
> associated to the current one
>
> Cheers,
> Marco Martin
> _______________________________________________
> Plasma-devel mailing list
> Plasma-devel at kde.org
> https://mail.kde.org/mailman/listinfo/plasma-devel
>




More information about the Plasma-devel mailing list