Easy Coding 2013¶
We collected some usability issues, some of them might serve as "Easy Coding" task. Every patch solving one of them is highly appreciated! Have a look at them:
Add scalar fallback macros to SSE code¶
grep mm -r src/* gives all the currently used SSE code, especially the mersenne twister, darktable:source:src/iop/atrous.c, darktable:source:src/develop/imageop.c, and darktable:source:src/iop/demosaic.c.
These should be encapsulated into macros which expand to the real SSE intrinsics only in case it is supported by the current CPU (compile time, to not lose performance).
Alternative: Do the check at runtime when initializing darktable (catch SIGILL, issue a SSE2 op, react), remember if SSE2 is available and let plugins use this information to change set some function pointers when loaded. Will be slightly slower but result in an executable which should run everywhere.
Better handling of removed images¶
Currently images that are in a collections but that have been removed from the filesystem appear in the lighttable view. We need a way to handle that more properly. either with a marking on the image itself or by removing them entirely from the collection. The exact solution is opened, but should probably be discussed with the devs
Import of duplicates¶
When importing a filmroll which already has XMP files it only honours those which are directly related to an image (like IMG_0123.CR2 + IMG_0123.CR2.xmp). If there were duplicates there would be other XMP files (IMG_0123_01.CR2.xmp). Reading them as duplicates should be added. I guess we even had that when we still used .dt files.
Cache image properties¶
Add the color labels, star ratings, selection etc. to the dt_image_t cache and sync in image_cache.c. So expose() doesn't need to go to disk but can read everything from the cache.
Fix UI behaviour: z preview, stars and colorlabels¶
When holding @z and scrolling using the arrow keys all different selected images are shown. But if the user tries to apply a star rating or a colorlabel to it, only the first image will get the rating, not the currrent shown image. The code can be found in darktable:source:src/viewslighttable.c.
Implement a more user friendly OpenCL state reporting, something that is easy to copy/paste to the mailing list.
Clean up file-lookup¶
Darktable looks for lots of file to run, including the library file, the cache file, the config file etc... currently the path to some of these path are hardwired, other are configurable from the preference menus. some are configurable at build time, other arn't
we need to have all this cleaned up. In particular it should be possible to have two DT installed, and in possible run DT from the build directory