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@kde.org
https://mail.kde.org/mailman/listinfo/plasma-devel



_______________________________________________
Plasma-devel mailing list
Plasma-devel@kde.org
https://mail.kde.org/mailman/listinfo/plasma-devel

Reply via email to