Digikam/CodingSprint2014

From KDE Community Wiki

KDE Graphics Coding Sprint 2014

The KDE Graphics coding sprint 2014 will take place at Berlin, Germany, from november 14h to 16th 2014.

KDE Framework Port

KF5/Qt5 Status

Note: all port code must be stored in dedicated "frameworks" git branch for each project.

Component Project Page Status Who KDE4Support Remarks
libkexiv2 link done yes Gilles, Laurent
libkdcraw link partially yes Gilles, Laurent, Veaceslav
  • ThreadWeaver based classes not suitable as well at all. We need to use QThreadPool + QRunnable API instead to port RActionThreadBase class.
  • Test application about RActionThreadBase not yet ported.
  • In second time, KIntNumInput and KDoubleNumInput are deprecated, and we can plan to use Krita Int and Double input widgets to replace RNumInput and add reset button. See bug #284216 for details.
libkipi link todo
libkface link todo
libkgeomap link todo
Kipi-plugins link todo
digiKam link todo
Software Compilation link todo

Link to documentation to port code

Scripts to port code

Laurent Montel has written scripts to port CMake and C++ code to KF5/Qt5 and remove kdelibs4support dependency. There are available in this repository.

Scripts must be applied in this order, with a test compilation between each one :

  • Full safe scripts :
    • convert-to-k4aboutdata.pl (first one to apply, this help to compile)
    • adapt_cmakelists_file.pl (to convert CMake scripts, but code must don't be capititalized)
    • remove-kde4support.pl
    • convert-kicon.pl
    • convert-kmenu.pl
    • convert-kshortcut.pl
    • convert-kcolordialog.pl
    • convert-klistwidget.pl
    • convert-kmd5.pl
    • convert-kmenubar.pl
    • convert-ksplashscreen.pl
    • convert-kdebug.pl
  • Less safe scripts :
    • convert-kintnuminput.pl
    • convert-kintspinbox.pl
    • convert-ktextbrowser.pl
    • convert-kfontcombobox.pl
  • Scripts which need to check in-deep all changes :
    • convert-kvbox.pl
    • convert-kdialog.pl
    • convert-kcmdlineargs.pl
    • convert-kdebug-with-argument.sh (this one change kDebug(1556) en qCDebug with some info after to convert)
    • convert-kmimetype.pl
  • Last scripts to apply :
    • clean-forward-declaration.sh (remove forward declaration, to do when all compile fine)
    • clean-includes.sh (try to remove not used includes, not safe to 100%)
    • port_to_autogenerate_export_header.sh (convert to new signal/slot API, not safe to 100%)

Image Editor Model/View Fixes and Finalization

CANVAS : full image dimensions not shown when not viewing at 100% zoom level

CANVAS : image is displayed with wrong magnification after crop

CANVAS : image shifts position in mouse-over mode when changing between Before and After

CANVAS : mouse-over preview mode does not work

CANVAS : unable to zoom out to less than fit to window

Unable to crop due to image corruption into canvas with not X11 based computers

Import Tool Reports Review and Fixes

Database Reports Review and Fixes

Coding Sprint Notes

Next major task is to port digiKam to Qt5. Approx. 10% is already ported by Gilles. Objectives for this coding sprint:

  • Specify timeline for porting digiKam
  • Identify priorities (what should be ported first)
  • Delegate porting tasks to developers (who does what)


Shourya Singh Gupta works on implementing the Kipi tools functionality in the Batch Queue Manager (Tools Settings).

Marcel Wiesweg works on memory consumption in database and the bug with JPEG (and RAW) image preview on high-resolution screens. Also see https://bugs.kde.org/show_bug.cgi?id=205776

MySQL support is now disabled by default because it's not fully functional.