This page is here to collect together proceedings from sessions as part of the 'Application Developers' track at the Natty UDS in Orlando, Florida.

Please add proceedings by doing the following:

  • Add a new section with the name of the session.
  • Add the outcomes of the session as a collection of bullet points. The goal of the proceedings is to really focus on decided outcomes, so please try to keep them crisp.



Kubuntu Natty Coding


  • Samba sharing nearly there, needs kdelibs elite people (e.g. dfaure) to review
  • dantii expecting to work on printer tools this cycle
  • can kded services be loaded later?
  • Can kwallet use PAM?

  • qtwebkit will be using qtmultimediakit which uses gstreamer. test and consider if we should use gstreamer phonon backend. consult sandsmark and markey and others. would be nice to prevent having two multimedia libraries on the CD and in memory. watch to make sure gstreamer doesn't bring in lots of gnomey libraries. Alternate plan; bring torches to Brisbane :P
  • consider kde-config-touchpad, if suitable replace with kde-config-synamtics: kde-config-touchpad is abandoned upstream, synaptics has more features/is more reliable, haven't found time to package yet
  • owncloud: discuss with kali and other upstream if it should be in release or PPA, depends on maturity
  • Plasma media centre: investigate if suitable for use within mythbuntu, or if mythtv should be integrated with plasma-media-centre
  • backports will be set to no automatic updates. get kpackagekit to highlight updated versions to users but make clear you have to manually select to get upgrade.


  • Get Muon into main and onto the DVD
  • set $LANG in ~/.kde/env based on KDE language
  • Merge language selector features into KCM [large, wishlist task]
  • Implement wifi setup from Ubiquity to follow GTK frontend
  • Ensure jockey -a gets run for the live session from ubiquity as well as target install
  • Get Samba sharing into kdelibs/base 4.6
  • Investiage setting grab server to through in kdmrc [note, I don't actually remember what this means - jriddell]
  • Implement LightDM Plasma frontend [large, wishlist task]

Kubuntu Natty Mobile


  • kwin mobile, will be separate git branch from normal kwin. not ready in time for 4.6. might be a version which could be shipped in natty
  • rbelem to work on kwin mobile with mgresslin

* graphics - needs OpenGL-ES drivers from vendor. licence problems - working with vendors on getting hardware drivers best way in such cases


  • Use NODM as login manager
  • Package mobile PIM, consider for inclusion in kubuntu mobile
  • Package FreOffice, consider for inclusion in kubuntu mobile

  • Investigate splitting out ksmserver into separate package, much of kdebase-workspace-bin probably isn't needed for mobile
  • Work out what can be moved from kubuntu-common seed to desktop to get out of mobile
  • Work out what can be ignored from desktop-common seed (i.e. depend on standard and bring in only those bits necesssary from desktop-common)
  • Add udev rules needed by N900
  • Document kubuntu-mobile installation on N900
  • Implement on screen keyboard [large, wishlist item]
  • get latest plasma mobile packaged

Ubuntu One and KDE


  • announcing apis on a mailing list, and discuss the api changes there would be nice
  • provide a deprecation path for apis
  • ubuntu sso API from 10.10 is deprecated but will not break during natty. also new APIs will appear by January
  • ubuntu sso package should be split into GUI and non-GUI parts similarly for password keyring/wallet
  • somewhat outdated post about my experience of installing ubuntuone-kde


  • Refactor gnome-keyring out of ubuntu-sso-client, implement option for KWallet [note 4.6 using new cross desktop wallet, how will this affect it?]
  • Start up ubuntu-one-devel mailing list for third party developer and API discussions

Qt Patch Review


  • Ideal: Remove all patches.
  • appmenu being sorted out already, some changes needed so no copy of libdbusmenu-qt to be included, stays for Natty, since we will still ship Qt 4.7.x


  • 0180-window-role.diff - rejected by upstream, unnecessary KDE apps have names already
  • 0195-compositing-properties.diff - Qt will take a look
  • 0209-prevent-qt-mixing.diff - should be dropped
  • 0216-allow-isystem-for-headers.diff - mac only skip it
  • 0225-invalidate-tabbar-geometry-on-refresh.patch - fine, should go upstream, needs someone in Qt who understands it
  • 07_trust_dpkg-arch_over_uname-m.diff - "we have no idea what it does" "ask sune"
  • 08_configure_quilt_compat.diff - not going to be accepted upstream
  • 09_qmake_lflags_as-needed.diff - "probably very old" "we should respect LDFLAGS" "could be patch is old" can probably be dropped
  • 10_config_tests_fixes.diff - "no clue why this was needed" a mystery
  • 11_build_translations.diff - dunno
  • 12_add_nostrip_for_debug_packages.diff - "think it has changed in 4.7" it's the separate debug info option, no separate debug now default" "it shouldn't strip, report to Qt"
  • 13_fix_prl_files_dont_link_entire_world.diff.disabled - already fixed with libs private, disabled
  • 15_fix_qmake_makefile_generation.diff - needs test case and reported to Qt
  • 16_hide_std_symbols_on_qtwebkit.diff - makes sense but not a complete solution, thiago has bug open that will allow to use symbols better, needs reported to qt webkit
  • 17_add_postgresql_8.3_support.diff - "there is absolutely no need for this patch" "not using any feature of postgres 8.3 8.4 it's not necessary" "do submit it"
  • 18_enable_qt3support_qtwebkit_debug_info.diff - talk to david faure, if he wants it then it goes in
  • 20_install_qvfb.diff - "won't be accepted" they will probably modularise qvfb out and package separately
  • 21_qt_ia32_library_path.diff - not going to go upstream
  • 22_use_GLIBC.diff - could be upstreamed, makes sence if you just define if GLIBC

  • 30_webkit_unaligned_access.diff - don't know
  • 40_alpha_ice.diff - sounds like a gcc bug, could be accepted but would rather not
  • 41_disable_opengl_visibility.diff - as above
  • 50_kfreebsd_Q_OS.diff - we can accept
  • 51_kfreebsd_strnstr_build_fix.diff - is reported upstream
  • 70_hppa_ldcw_fix.diff -
  • 71_hppa_unaligned_access_fix_458133.diff -
  • 80_hurd_max_path.diff -
  • 89_powerpc_opts.diff -
  • 91_s390_use_gstabs.diff -
  • 92_armel_gcc43_valist_compat.diff - "interesting, e-mail it to me (thiago)"
  • 96_webkit_no_gc_sections.diff -
  • kubuntu_10_ibus_input_method.diff - create a task for us to consider
  • kubuntu_12_fix_stack_protector.diff - when JIT is enabled we compile with no-stack-protector, "sounds like something that got forgotten" "send us an e-mail to remind us"
  • kubuntu_15_appmenu.diff - agateau already getting upstream
  • kubuntu_16_qt-designer-toplevel-mode-menubar.diff - merge request on this one
  • kubuntu_17_enable_qtwebkit_for_qtassistant.diff - we will fix this with modularisation
  • kubuntu_18_fix_qtreeview_regression.diff -
  • kubuntu_19_gtkstyle_inactive_background.diff -
  • kubuntu_20_gtkstyle_tabwidget_focus.diff -
  • kubuntu_21_fix_phantom_cursor.diff -
  • kubuntu_90_webkit_htmlxml_gb_gb18030_detect.diff - report to webkit


  • Send patches upstream as indicated above
  • Discuss with Debian dropping unnecessary patches

A Plan for a Gesture Language

  • Musical metaphor
  • Higher level language to express complex patterns more easily than by invoking grail primitives
  • Consider scripting and declarative syntaxes
  • Need to develop a sample usage and demo

The Technical Foundations of a Gesture Language

  • Map complex patterns of gestures into application-domain entities
  • Provide a programmable transformation engine like GL shaders
  • Libraries of gesture "phrases" and "sentences"
  • A gesture language "shell" to glue other tools together

Gesture Support in GTK/Gnome Applications

  • Gesture support in widgets should bring gestures to applications with little to no intervention from application developers
  • Prefer to utilize native gesture engine if possible to promote platform consistency
    • (As opposed to requiring geis for gtk gesture support)
  • Initial gesture api integration into widgets already under way in unmerged branches
  • "Grope" and associated bad jokes

Gesture Support in Games / Support Commercial Games

  • Select a single development platform for games and providing support for gestures inside.
  • Support is with documentation, demos, code snippets, etc
  • Need for more discussion with commercial games providers for Linux.

GEIS Gesture API Roadmap

  • GEIS 2.0 resulted from experience with GEIS 1.0, addresses awkward aspects of usage
  • "regions" API is unnecessary and can be removed
  • Do not include touch data with gesture data
  • Backwards API/ABI compatibility with GEIS 1.0 is not a concern

Ubuntu One APIs

  • Provide a limited set of Ubuntu One APIs that can be used in Ubuntu applications, web applications, and mobile apps
  • Add a new developer section on that provides information on how to start using Ubuntu One APIs in their applications, API documentation, and how to collaborate with Ubuntu One

  • Flagship applications that are targets for using the new Ubuntu One APIs include (and will likely drive which APIs are available for Natty):
    • tasks: desktop + web + mobile
    • music playlists (ratings are just as important): desktop + mobile
    • recipe & shopping list

Probabilistic Input

  • Slide and movie from Carnegie Mellon researchers
  • Discussion revolved around better understanding their intent and possible use cases

Kubuntu Rekonq Wishlist


  • Rekonq is innovative browser for KDE. We like.
  • don't know how this happened, but rekonq had me signed in with my 'nixternal' account for and not my real account. i am wondering if rekonq got the username/password from kopete? also noticed that i was logged into google/gmail without ever having to log in before. today was the first time that i fired up rekonq, so i know i never logged in to any website previously. (Yes, it's exactly so. KDE apps share the wallet, it's not just rekonq behavior).

Wishlist items

  • release schedule in line with Kubuntu?
    • adjam: this is quite impossible. We'll obviously take care of prepare our best release ever for April.
  • Clear button returned to URL bar (use case: select URL in konsole, paste into URL bar), not including it deviates from KDE UI
    • adjam: uhm... is CTRL + L && CTRL + V too much easy? Anyway, forget the same behavior from normal klineedit(s) as we reimplemented it to have right buttons. setClearButtonShown(true) will basically break it all. We have a working personal implementation of it by Lionel. I decided to not include to not high too much the number of right icons, growing on every feature added: bookmarks, rss, useragent switcher, ssl info, web shortcut creator, etc..

  • Right-click "open with"
    • adjam: good browsers don't need this. I suggest to help fixing eventual rendering bugs instead
  • ctrl-w should always close a window, even if it happens to be the last one
    • adjam: this behavior has been decided from users. I'm ok with any change here, but doing it every release is suboptimal
  • Different name - rekonq is not really ideal (code doesn't need to change, just the app name exposed to the user). or at least a capital letter to match normal English usage
  • Bookmarks toolbar does not stay hidden on restart
  • smaller spinners in start page previews -- agateau
  • make it easy to disable rekonq from asking you to store/forget whatever when you log in to a website. chrome/ff allow you to disable this in settings. the kde way of asking you 'not for this site' and what not is horrible
    • adjam:clarification needed
  • open gzip text files embedded
  • fix printing and find in embedded okular
    • adjam: YEAH!! Anyway, this means some big changes as the actual system does not seem supporting it very well and it's not so "expandable". Targetting 0.7
  • Fix re-open last tabs on startup, doesn't do anything in git version
  • user agent: can you modify this for websites? this is a horrible fix for getting to certain features such as yahoo mail, but if i were to use rekonq full-time, i would definitely need this
    • adjam: scheduled for the first release KDE SC 4.6 based
  • Support for opening links with keyboard (look at vimperator firefox extension for the way they give keyboard access to links) -- agateau. known as 'access keys' in konqi/kde --nixternal
  • Shortcut for private browsing and clear data
    • adjam: a default shortcut? Setting one from shorcuts conf settings is not enough?

Websites people have problems with These will mostly be Webkit issues

Quickly Enhancements

  • gedit has added support we need to enable plugins on-the-fly
  • LP promises to continue to add support we need on the server to enable PPA creation
  • As that comes online, support will be added to Quickly
  • Add some features for more Glade integration (self.ui.button1 and self.button1_clicked automatically hooked up)
  • Install into /opt by default

Quickly Widgets Enhancements

  • Don't port to Vala yet, it's not worth the effort until a wider set of programs wants to use this library
  • Continue in same vein as before, adding a few widgets and fixing bugs in old ones. No drastic scope change or large new features

Upstream Contacts Growth

  • Every upstream application in Ubuntu should get an Upstream Contact. It is great to have a continuing interaction between upstream and downstream;
  • JorgeCastro will continue to investigate the health of our relations with upstreams using Launchpad data and surveys;

  • From now on, JorgeCastro will do six-monthly surveys to make sure we know what our upstreams think of us;

  • Ubuntu's Maintainers are already doing a lot of work Upstream Contacts should do as well, so they will be explicitly marked as Upstream Contacts;
  • Jorge will investigate conferences and other events that can be used to propagate the Upstream Contacts project;
  • The way we send patches to upstreams will be investigated;
  • Jorge will create a communication plan for Upstream Contacts.

UDSProceedings/N/ApplicationDevelopers (last edited 2012-06-14 23:29:56 by chasedouglas)