digiKam digest - 2009-08-02

Interesting things which happened last week:

  • Continuing work database independend backend.
  • Full support for OpenStreetMap. Both for Map queries and Geolocation. On screenshot below you will also notice buttons for zooming.
    • openstreetmap.png
  • Fixed many bugs, among them crashes under MacOS X @ Intel.
  • Improving Nepomuk interaction.
  • New local contrast image plugin.
    • localcontrast.png
  • Usability fixes in camera menu creation.

Bug/wish table

Opened bugs Opened last week Closed last week Change Opened wishes Opened last week Closed last week Change
digikam225+11-12-1277+9-72
kipiplugins100+5-6-1146+1-10

Full tables:


NEWS reports

Issues closed last week (note: due to different methodologies numbers may not add up with table above)

digiKam

+General : Add OpenStreetMap support in Geolocation panels. + +006 ==> 201560 : Crash at start up when scanning images. +007 ==> 197508 : Geo-localisation integration missing, but marble is installed. +008 ==> 201640 : Opportunity to compile digiKam without Nepomuk service. +009 ==> 201692 : No thumbnails in album view. +010 ==> 185098 : digiKam craches sometimes on raw files selection. +011 ==> 201624 : Showfoto => color-management => input-profile => search => crash. +012 ==> 151712 : Adjust Exif orientation tag - wrong permission interpretation. +013 ==> 171983 : Enable display of Openstreetmap maps in the Map Widget. +014 ==> 155097 : Performance problems with recursive view and filtering. +015 ==> 200392 : Slideshow displays "Headline" field as "image caption" and has no way to display "Caption" field. +016 ==> 201302 : Crash due to memory access problem on Mac OS X. +017 ==> 133094 : Exif-changes by external prog has no affect inside digiKam. +018 ==> 201746 : Invalid TIFF output in Editor and Batch queue manager. +019 ==> 196692 : Red and blue channels in images are reversed when saving. +020 ==>

Kipi-plugins

+003 ==> AdvancedSlideshow : 195699 : Ken Burns : it takes minutes before the slideshow actually starts. +004 ==> AdvancedSlideshow : 182743 : Renders system unresponsive on large image collections. +005 ==> GalleryExport : 202019 : [PATCH] : mpGallery not initialized, crash on destruction if setup not called. +006 ==> AdvancedSlideshow : 131619 : Blend transition in slideshow without OpenGL. +007 ==> SendImages : 147513 : It's non possible to send the file of photo because kmail don't start.

Selected commits

branches/extragear/graphics/digikam/1.0-databaseext/data/database (2009-07-27 13:12)
SVN commit 1002934 by foerster: Updated schema to use LONGTEXT definition as much as possible. 1 file changed
extragear/graphics/digikam (2009-07-27 17:31)
SVN commit 1003063 by mwiesweg: Disable compilation of Nepomuk if libraries are not found CCBUG: 201640 3 files changed
extragear/graphics/digikam/libs/imageproperties (2009-07-27 16:01)
SVN commit 1003013 by cgilles: prepare marble map theme support 6 files changed
extragear/graphics/digikam/libs/imageproperties (2009-07-27 23:28)
SVN commit 1003234 by cgilles: added new button to right sidebar to switch between from Default map to openStreet map in marble widget. CCBUGS: 171983 3 files changed
extragear/graphics/digikam (2009-07-28 10:48)
SVN commit 1003434 by cgilles: Factoring again map theme management for marble widget. add theme button for Map Search tool. BUGS: 171983 5 files changed
extragear/graphics/kipi-plugins/advancedslideshow (2009-07-28 02:08)
SVN commit 1003299 by aclemens: Read settings correctly: do not enable openGlFullScale checkbox if OpenGL is turned off. 1 file changed
extragear/graphics/digikam/utilities/gpssearch (2009-07-28 15:39)
SVN commit 1003623 by cgilles: Map search tool : display all items which matches a search over the map to visualize search album contents. 2 files changed
branches/extragear/graphics/digikam/1.0-databaseext/digikam (2009-07-28 18:58)
SVN commit 1003709 by foerster: Catch database connection errors at the beginning of digikam. Provide a nice dialog where the user can decide to retry, or cancel the action or go directly to the database setup page. 1 file changed
branches/extragear/graphics/digikam/1.0-databaseext (2009-07-29 17:00)
SVN commit 1004196 by foerster: Now that we have complex database settings, disconnect them from the collection settings page to not confuse the user with two different things. The simple settings (which defaults to the sqlite backend) are set via the first run dialog. 5 files changed
extragear/graphics/digikam/libs (2009-07-28 23:47)
SVN commit 1003834 by mwiesweg: Fix behavior when histogram of current selection is displayed: - when setting a new selection, again show selection's histogram, according with the button's state - display statistics for currently rendered histogram 3 files changed
extragear/graphics/digikam/libs/3rdparty/libpgf (2009-07-30 06:16)
SVN commit 1004398 by cgilles: apply patch to prevent crash under Mac osx for intel CCBUGS: 201302 1 file changed
extragear/graphics/kipi-plugins/advancedslideshow (2009-07-30 13:46)
SVN commit 1004511 by aclemens: disable the fullScale checkbox if Ken Burns effect is selected. It will not be used in this effect. 1 file changed
extragear/graphics/digikam/digikam (2009-07-30 15:51)
SVN commit 1004568 by mwiesweg: Fix propagation of settings changes. Add a method to start digikam service via DBus if not running. 2 files changed
extragear/graphics/digikam/imageplugins/freerotation (2009-07-30 15:53)
SVN commit 1004570 by mwiesweg: Test for a null image here. This is only a workaround. Rotation will not crash (or only at the next point), but fail. The problem is still that memory allocation fails. CCBUG: 188334 1 file changed
extragear/graphics/digikam/utilities/setup (2009-07-30 15:50)
SVN commit 1004567 by mwiesweg: Add settings tab for Nepomuk to the "Metadata" setup 1 file changed
extragear/graphics/digikam/libs/dimg/loaders (2009-07-30 15:50)
SVN commit 1004564 by mwiesweg: Use some call for writing as for reading. May explain swapped blue and red channels. CCBUG: 196692 1 file changed
extragear/graphics/digikam/libs/widgets/metadata (2009-07-30 15:50)
SVN commit 1004565 by mwiesweg: Make Metadata panel just add itself at the current position, not requiring to take the second to fifth tab. 1 file changed
extragear/graphics/digikam/libs/imageproperties (2009-07-30 17:55)
SVN commit 1004617 by aclemens: This commit fixes the caption issue described in the ML for me. Do we really need this connection? CCMAIL:digikam-devel@kde.org 1 file changed
extragear/graphics/kipi-plugins/galleryexport (2009-07-30 19:25)
SVN commit 1004656 by cgilles: init private members in constructor BUGS: 202019 2 files changed
extragear/graphics/digikam/utilities/nepomuk (2009-07-31 19:53)
SVN commit 1005271 by mwiesweg: Accept db params set directly from start app, reorganize methods accordingly. Add (currently unused) draft of a method to get info from Nepomuk when a file is newly added. This can't be done from the service but need to be integrated to ImageScanner after 1.0. 2 files changed
extragear/graphics/digikam/digikam (2009-07-31 19:53)
SVN commit 1005270 by mwiesweg: Move check and startup of nepomuk service to AlbumManager 4 files changed
extragear/graphics/kipi-plugins/advancedslideshow (2009-07-31 23:19)
SVN commit 1005358 by aclemens: Use m3u files instead of *.playlist. We only support the simple m3u format, all metadata from the advanced version will be skipped. 2 files changed
extragear/graphics/digikam/utilities/batch (2009-07-31 23:20)
SVN commit 1005361 by mwiesweg: Restructure some parts, with regards to recent changes (ensure progress info message is sent for list-only parsing as well) and possible loophole for bug 194777. CCBUG: 194777 1 file changed
branches/extragear/graphics/digikam/1.0-databaseext/libs/database (2009-08-01 21:15)
SVN commit 1005685 by mwiesweg: Add method to actually set the error handler. Add a flag to ensure the handler is called only once. 3 files changed
extragear/graphics/digikam (2009-08-01 15:44)
SVN commit 1005615 by mwiesweg: If the image does not have alpha, we must not set TIFFTAG_EXTRASAMPLES at all. If setting UNASSOC_ALPHA, libtiff assumes the last value for a pixel is a mask. When settings samples_per_pixel to three, there are 3-1=2 color channels left which libtiff (and noone really) cannot handle. BUG: 201746 2 files changed
branches/extragear/graphics/digikam/1.0-databaseext/libs/database (2009-08-01 21:16)
SVN commit 1005690 by mwiesweg: Consolidate code to a maximum so that all three methods that do the actual execution (exec(QSqlQuery), execBatch(QSqlQuery) and execDirectSql(QString) which is the former exec(QString)) enjoy the same error handling code. For possible retries use only one outer loop, no recursion or extra loops in the error handling. 3 files changed
KDE/kdegraphics/libs/libkexiv2/libkexiv2 (2009-08-01 15:20)
SVN commit 1005610 by mwiesweg: Fix new[] / delete[] mismatch (not critical) 1 file changed
extragear/graphics/digikam/imageplugins (2009-08-01 20:51)
SVN commit 1005681 by jnarboux: New local contrast plugin by julien pontabry CCBUGS: 145442 150533 19 files changed
branches/extragear/graphics/digikam/1.0-databaseext/libs/database (2009-08-01 21:15)
SVN commit 1005684 by mwiesweg: Add code to handle a database error that is detected right when executing a query (this means: in any thread, and with locked database mutex). - give the backend access to the mutex kept by DatabaseAccess - this is a recursive mutex, add a condVar + non-recursive mutex for waiting - use a status flag Wait/Abort/Execute for executing queries - a DatabaseErrorHandler can handle the error case and pass its solution back to the backend. Shortly tested with SQlite, but not in case or error (so this is alpha / draft code) Detect error in DatabaseCoreBackend::exec(QSqlQuery&). http://websvn.kde.org/?view=rev&revision=1005684 7 files changed
branches/extragear/graphics/digikam/1.0-databaseext/libs/database (2009-08-01 21:15)
SVN commit 1005687 by mwiesweg: I guess we only need these transaction statements if we actually started a transaction. 1 file changed
extragear/graphics/digikam (2009-08-02 12:43)
SVN commit 1005830 by aclemens: New method extractCameraNameToken(), for splitting up the full cameraname that was set in the constructor Added some more tests: use gphoto camera list as well to check if the cameraname parsing is working) 5 files changed
extragear/graphics/digikam/digikam (2009-08-02 13:13)
SVN commit 1005839 by aclemens: Merge the camera import menus, so that we have only one list with cameras to choose from. All auto-detected cameras will have a suffix and they are separated by a line from the manually added cameras. For example: Nikon D50 (PTP Mode, auto-generated) ------------------------------------ Canon Powershot A80 (PTP Mode) Hama Cardreader 8 in 1 ------------------------------------ Add Camera... I had to restructure the code a little bit, for example we fill the solidUsmActionGroup and solidCameraActionGroup all the time, so that duplicate entries may occur. This has been fixed (I hope), but for manualCameraActionGroup it is still valid. Every time you add a camera, the list is duplicated. I will fix that later. Some polishing needs to be done, too. Another thing to add is a way to determine duplicate entries and remove the auto-detected ones (the manually added cameras are the primary target and should always be displayed). With the CameraNameHelper class this tasks should be easy, I will add this later, too. 4 files changed
extragear/graphics/digikam/digikam (2009-08-02 13:44)
SVN commit 1005849 by aclemens: Do not check if the device is valid, because if we disconnect a device, none of the import menus is updated and the device is still shown. Since fillSolidMenus() takes care of valid devices anyway, we should simply call it all the time. If you disconnect the camera, it will be removed now from the menu. 1 file changed
extragear/graphics/digikam/libs/database (2009-08-02 16:31)
SVN commit 1005895 by mwiesweg: Add isNull() for structures 1 file changed
extragear/graphics/digikam/libs/database (2009-08-02 16:31)
SVN commit 1005897 by mwiesweg: Add optional, very simple caching to ImageCopyright. The caching only applies when a template is filled. Instead of one SQL statement for each field we can query all entries from the DB in one statement and read fields from there. The caching is not persistent (which would induce a lot of complexity). When selecting 10,000 images with the ImageDescEdit tab open, this reduces loading time on my machine from 15.1 secs to 5.5 secs. This is still too slow but this was the lowest-hanging fruit. We should put MetadataHub-loading into a dedicated thread but there are complications as MetadataHub currently needs AlbumManager which is main-thread-only etc. 2 files changed
extragear/graphics/digikam/libs/dmetadata (2009-08-02 17:02)
SVN commit 1005907 by mwiesweg: Read IPTC Core DescriptionWriter as the common comments author. Private per-language information from XMP takes precedence. 1 file changed
extragear/graphics/digikam (2009-08-02 17:07)
SVN commit 1005913 by aclemens: simplify CameraNameHelper: we don't need a full-blown object here, it is enough to define three static methods here that can handle the formatting of the camera name. 6 files changed
extragear/graphics/digikam/libs/dmetadata (2009-08-02 17:02)
SVN commit 1005906 by mwiesweg: Allow to specify one author common to all comments, if per-language info is not available. The per-language map takes precendence. If commonAuthor is null it is ignored. 2 files changed
extragear/graphics/digikam (2009-08-02 18:25)
SVN commit 1005934 by aclemens: Do not add duplicate camera actions. This is a imple comparison method, based on some string operations. Somehow auto-detection gives different mode names in some cases, so simply comparing both modes is not working. This method should be able to compare (at least with PTP mode ;-)) camera names and decide if they are the same. If so, we don't add the auto-detected version and only present the manually added camera. In the future we might want to work with setData() for the camera actions. We could add a QMap to it which has values like vendor product protocol port etc. This way the CameraNameHelper might become obsolete again, or at least the comparison method. 5 files changed
extragear/graphics/digikam/libs/database (2009-08-02 18:39)
SVN commit 1005939 by mwiesweg: Fix two problems with plug&play of collections on removable media: - the UDI passed by the deviceRemoved() signal cannot be used for any checks, the device is removed. Check if the udi is contained in a list of devices of interest - there can be a race condition between the automounter and digikam's device handling, so that devices can not yet be mounted when digikam is notified of it being added. Listen to the accessibilityChanged signal. This also handles manual mounts/umounts. Plugging in and out a USB stick added as collection works now smoothly here. 2 files changed
extragear/graphics/digikam/libs/dialogs (2009-08-02 22:17)
SVN commit 1006012 by aclemens: change order of filetype patterns: 1. All Images 2. All RAW files 3. the rest... For me the filedialog is broken, can you confirm this (it was broken before this commit, before anyone asks ;-)). If I open showFoto and click on "Open" (not "Open Folder"), I can select any filter, I will not see my files. The only thing that seems to work is "All RAW files", but still when hitting "Ok" the photo is not loaded into showFoto. Can someone confirm this? CCMAIL:digikam-devel@kde.org 1 file changed

cool

Please continue these reports, they rock :-)

Maybe it's worth thinking about putting them on dot.kde.org, we (kde-promo ppl) can help you with that... Send an email to kde-promo@kde.org !

cheers,

Jos