Starting script engine based applets that are Plasma::Containments
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
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
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
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