Starting script engine based applets that are Plasma::Containments

2010-02-19 Thread Richard Dale
I not sure whether we actually want Plasma::Containments to be written
using scripting languages or not.

However, there is some support there in that the Plasma runtime
searches for Plasma/Containment service types and creates a
Plasma::Containment if it finds one. After that the applet doesn't
actually get started. I've found this is because Applet::init() is a
virtual method, and the Containment::init() method doesn't call the
Applet one. So I tried adding 'Applet::init()' to the
Containment::init() method, and found out that Containment::init() was
being called twice for my test applet. For the second call, the
scripting applet had been created, although isContainment() was no
longer true. Hmm..

So here is the change I made for better or worse:

Index: containment.cpp
===
--- containment.cpp (revision 1092821)
+++ containment.cpp (working copy)
@@ -148,6 +148,7 @@
 void Containment::init()
 {
 if (!isContainment()) {
+Applet::init();
 return;
 }


When I added support for scripting PopupApplets a few other things
needed changing too like plasmapkg. Also Ruby is the only language
that actually has a Containment class at the moment. So if it is
actually a sensible idea to have scripting containments, there are
still a few more things to be done.

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


Globally installed Python Plasmoids

2010-02-19 Thread Jonathan Riddell

With 4.4 I can't seem to get globally installed Python plasmoids to
work in 4.4.  

In 4.3 plasma-widget-facebook would work with the files
 /usr/share/kde4/services/plasma-widget-facebook.desktop
 /usr/share/kde4/apps/plasma/plasmoids/facebook/metadata.desktop
 /usr/share/kde4/apps/plasma/plasmoids/facebook/contents/code/main.py
(the first two files are the same) but in 4.4 I have to copy the last
 two files into ~/.kde/share/apps/plasma/plasmoids/facebook/

I get this error message

plasma-desktop(18289)/libplasma Plasma::Package::isValid: Could not
find required file mainscript , look in
"/home/jr/.kde/share/apps/plasma/plasmoids/facebook/contents/code/main"

Can globally installed Python plasmoids still work?

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


branches/KDE/4.4/kdelibs/kdeui/notifications

2010-02-19 Thread Aurélien Gâteau
SVN commit 1092712 by gateau:

Fix funky look of tray icon bottom half on 64bit machines

CCMAIL:plasma-devel@kde.org

 M  +1 -1  kstatusnotifieritem.cpp  


--- branches/KDE/4.4/kdelibs/kdeui/notifications/kstatusnotifieritem.cpp 
#1092711:1092712
@@ -846,7 +846,7 @@
 //swap to network byte order if we are little endian
 if (QSysInfo::ByteOrder == QSysInfo::LittleEndian) {
 quint32 *uintBuf = (quint32 *) icon.data.data();
-for (uint i = 0; i < icon.data.size()/sizeof(quint32 *); ++i) {
+for (uint i = 0; i < icon.data.size()/sizeof(quint32); ++i) {
 *uintBuf = htonl(*uintBuf);
 ++uintBuf;
 }
___
Plasma-devel mailing list
Plasma-devel@kde.org
https://mail.kde.org/mailman/listinfo/plasma-devel


KDE/kdelibs/kdeui/notifications

2010-02-19 Thread Aurélien Gâteau
SVN commit 1092666 by gateau:

Fix funky look of tray icon bottom half on 64bit machines

CCMAIL:plasma-devel@kde.org

 M  +1 -1  kstatusnotifieritem.cpp  


--- trunk/KDE/kdelibs/kdeui/notifications/kstatusnotifieritem.cpp 
#1092665:1092666
@@ -846,7 +846,7 @@
 //swap to network byte order if we are little endian
 if (QSysInfo::ByteOrder == QSysInfo::LittleEndian) {
 quint32 *uintBuf = (quint32 *) icon.data.data();
-for (uint i = 0; i < icon.data.size()/sizeof(quint32 *); ++i) {
+for (uint i = 0; i < icon.data.size()/sizeof(quint32); ++i) {
 *uintBuf = htonl(*uintBuf);
 ++uintBuf;
 }
___
Plasma-devel mailing list
Plasma-devel@kde.org
https://mail.kde.org/mailman/listinfo/plasma-devel