KubuntuLaunchpadIntegration
Launchpad Entry: https://launchpad.net/distros/ubuntu/+spec/kubuntu-launchpad-integration
Created: 6/6/06 by JonathanRiddell
Contributors: JonathanRiddell, SivanGreen
Packages affected: kdelibs, Qt apps in main, launchpad-integration
Summary
Include Launchpad Integration in Kubuntu programs.
Rationale
Ubuntu has Launchpad integration in most of its Gnome programmes. This adds menu items "Get Help Online" and "Translate this Application" which takes the user to a Launchpad page with links to support and help. We should include this in Kubuntu's KDE programmes.
The Gnome spec is at https://wiki.kubuntu.org/UbuntuDownUnder/BOFs/LaunchpadIntegration
Use cases
Maisie wants to know where to get support for Kontact, a Help menu item would show her where to find it.
Daniel is browing around the Kubuntu applications and notices a menu item "Translate this application", this takes him to a Launchpad page for translating the application in Rosetta and becomes a keen translator.
Scope
Add "Get Help Online" and "Translate this Application" to any application that uses kdelibs and all other Qt applications in main.
Design
KDE includes a standard Help menu in every application provided by the kdeui library, this means we only have to patch one place and can avoid having to patch every application.
The patch will add a menu item "Get Help Online" that goes to
https://launchpad.net/distros/ubuntu/<release>/+sources/<package>/+gethelp
and "Translate this Application" which goes to
https://launchpad.net/distros/ubuntu/<release>/+sources/<package>/+translate
Implementation
The python script launchpad-integration is used to find the package name for a running application.
KDE programmes are usually run from kdeinit and launchpad-integration --pid picks up kdeinit so instead we will use --file and find the full path of the application using KStandardDirs. All KDE applications know their binary name in the KApplication static class.
The change needs to be made to the kdeui library in kdelibs.
launchpad-integration needs to be modified to have a KDE option. A --kde command line switch will be added which runs the URL from kfmexec instead of gnome-open. When "Translate this Application" is run from e.g. Konqueror the command used will be launchpad-integration --kde --file /usr/bin/konqueror --translate.
Qt only apps will need to be patched individually. Qt apps to patch:
- scribus
- speedcrunch
- qtparted
- qtdesigner
- gambas
- psi
KubuntuLaunchpadIntegration (last edited 2008-08-06 16:39:15 by localhost)