I posted this message to the plasma5 forum (https://forum.kde.org/viewtopic.php?f=289&t=127322) and an administrator replied to write here too.
I'm playing with plasma widget development, I am currently trying to write a widget to launch a .desktop file. I have some problems finding the documentation but finally I found a way to launch a program looking in the official SystemLoadViewer sources. [kdeplasma-addons.git] / applets / systemloadviewer / package / contents / ui / SystemLoadViewer.qml Initialization at line 79 and launch at line 238. Watching the program run I undestand that kRun.openUrl() accepts a string representing a file to be opened with the default associated application or a .desktop file to launch. I tested with various files: - Copy-paste from the example to launch "sysguard" with the url obtained from the "apps" DataSource: WORKS - Using the url "/usr/share/applications/org.kde.ksysguard.desktop" (it is the same string returned by the "apps" DataSource): WORKS - If I try with another .desktop file inside my home folder: SEGFAULT - If I copy the file "org.kde.ksysguard.desktop" in another directory and try with the new path: SEGFAULT - If I try to execute a bash script: WORKS - Using the url of a PDF file will open the file with Okular: WORKS - Using the url of a binary application "/usr/bin/ksysguard" don't work and the openUrl() function returns an error value. No segfault so I think this is the expected behaviour. I tested the widget directly in my plasma desktop and also using "plasmawindowed". The segfault happen in both cases but with the former I can see the console log. Even if I am feeding the wrong data to the function I don't think the segfault is the expected behaviour. Maybe someone more expert can take a loot at this problem. I'm using: - updated kubuntu 15.04. - Qt: 5.4.1 - KDE Frameworks: 5.9.0 - Plasma version 5.3.1. I'm available to give more info if needed. Here ends the "maybe important" stuff, the following is a newbie question. I don't know if this is the correct place for this but I'm still searching a solution for the original problem. If I can't launch an executable this way maybe this isn't the correct function. I am unable to find a documentation or source code for the QML implementation of "Kio.KRun". Inspecting the properties with javascript shows only three properties: - objectName = - objectNameChanged = function() { [code] } - openUrl = function() { [code] } So "openUrl()" appears to be the only function available, maybe KRun it's the wrong tool. I found the interesting Plasma2 / Service but I don't know how to find the available DataSource ID's and the" operationDescription". I'm currently stuck and need some direction. Thanks for the help. -- Nicola Felice _______________________________________________ Plasma-devel mailing list Plasma-devel@kde.org https://mail.kde.org/mailman/listinfo/plasma-devel