Project

General

Profile

Bug #11400

Copy/paste in darkroom does not apply drawn masks properly

Added by Matthieu Moy over 2 years ago. Updated 3 months ago.

Status:
Fixed
Priority:
Medium
Assignee:
Category:
Darkroom
Target version:
Start date:
12/28/2016
Due date:
% Done:

100%

Affected Version:
2.2.0
System:
Debian
bitness:
64-bit
hardware architecture:
amd64/x86

Description

Hi,

The copy/paste feature works perfectly when used from lighttable, but does not copy the drawn mask shapes when used from darkroom.

Steps to reproduce:

  • Fresh dt install (no ~/.config, no *.xmp files)
  • Open dt in darkroom mode with 2 images
  • Activate a module (tested with "exposure -> -3 eV"), activate blending -> drawn mask.
  • Draw shapes
  • Press Control-C
  • Move to another image
  • Press Control-V

Expected behavior:

Effect is copied together with drawn mask (as is the case when using Control-C/Control-V in lighttable)

Actual behavior:

The module is copied, the blending mode "drawn mask" is copied, but none of the shapes is. One can even read "drawn mask no mask used".

Surprisingly, the preview at the bottom of the screen shows the effect with the drawn mask, while the main image and the top-left preview show the effect applied to the whole image.

Surprisingly again, moving to the previous image and coming back restores the expected behavior. Similarly, moving to lighttable and coming back to darkroom applies the masks. My guess is that the shapes are applied to the database but not in-memory, or something like that.

This seems reproducible with a fresh install, but after a while using dt the problem sometimes disappears. I could not understand what makes it disappear or reappear unfortunately.

History

#1 Updated by Tobias Ellinghaus over 2 years ago

I don't have a dt install handy to try, but could you please check if going to lighttable, then back to darkroom and then copy&pasting works?

#2 Updated by Matthieu Moy over 2 years ago

New experiments :

  • activate module, create drawn mask on image 1
  • switch to lighttable, switch back to lightroom on image 1
  • Control-C on image 1
  • move to image 2
  • Control-V

-> bug is present

  • darkroom on image 1, Control-C
  • switch to lighttable, switch back to lightroom on image 1
  • move to image 2
  • Control-V

-> Bug is present

  • darkroom on image 1, Control-C
  • switch to lighttable
  • move to image 2 from lighttable
  • switch to darkroom
  • move to image 2
  • Control-V

-> Bug is present

I also tried to Control-C from darkroom and Control-V from lighttable, but then dt complains "you need to copy history ...", as the copy-paste info does not seem to be shared between lighttable and darkroom.

#3 Updated by René Seindal about 1 year ago

This bug is still present in 2.4.0.

#4 Updated by Federico Vigolo 3 months ago

The bug is still present in 2.6.0.

Interestingly, the bug does not happen when doing as follows:
  • darkroom on image 1
  • select image 1 (or image 3) in the filmstrip and copy effects (ctrl+C or ctrl+shift+C)
  • select image 2 in the filmstrip and paste effects (ctrl+V)

It appears that darktable does not like to add copied masks to the image you are currently in in darkroom mode. I hope this helps debugging.

#5 Updated by Pascal Obry 3 months ago

  • Assignee set to Pascal Obry
  • Target version set to 2.6.1
  • Priority changed from Low to Medium

Should be fixed now.

Thanks for the simpler reproducer, it has helped indeed! Note that this was also only happening when doing all this in the same session. That is, with the following scenario there was not issue:

  • darkroom on image 1
  • create a drawn mask on image &
  • exit dt and restart it
  • select image 1 (or image 3) in the filmstrip and copy effects (ctrl+C or ctrl+shift+C)
  • select image 2 in the filmstrip and paste effects (ctrl+V)

#6 Updated by Pascal Obry 3 months ago

  • % Done changed from 0 to 100
  • Status changed from New to Fixed

Also available in: Atom PDF