Bug : darkroom shortcut ALT-2

  • Linux 4.15.0-76
  • Ubuntu 18.04.3 LTS
  • Lubuntu : Desktop Xfce
  • dt version 3.1.0-584

The shortcut ALT-2 (views/darkroom/zoom fill) is broken. Using this shortcut the image starts flickering, label “working…” is shown (also flickering). Looks like an endless loop… Can be stopped by using ALT-1 or ALT-3.

Please report bugs in the bug tracker on github!

Sorry, not possible. GitHub forces me to to create an account for creating a new issue and I don’t agree with their (extremely extensive and complicated) privacy statements. That’s the reason I posted here.

I was willing to file a bug report on Github for you but…

Not able to reproduce the behaviour described by you.

  • 4.19.0-8-amd64
  • Debian Buster (10.2)
  • Xfce 4.12.5
  • darktable versions: both stable 3.0.0 and development 3.1.0+615

No flickering, loops or any other oddities.

I just did some further investigations. It happens, if the film stripe at the bottom is decreased to its minimum. (dragging the small double arrow down as far as possible). Moving it up some pixels, the issue disappears. See the attached screenshot :

It shows the state flickering appears if ALT-2 is pressed.

edit : it’s possible to force the issue also by having a film stripe with a large height, then pressing ALT-2 (everything is ok) and then reducing the height of the film stripe. Some pixels above the minimum height flickering starts.
The issue also depends on the width of the side panels. It can be forced by pressing ALT-2, then moving the double arrow right or left.
The issue obviously depends on the relationship of the width/height of the image area, the widths of the side panels and the height of the film stripe at the bottom.

second edit :
further investigation shows that the issue appears at the moment the slider(s) for the image area (horizontal or vertical) appear or disappear.

  • Adding a slider reduces the width (or height) in the image area available for the image
  • Image gets downscaled in accordance with ALT-2 setting
  • Image now is shown smaller, the slider is no longer needed, so it is removed
  • Image now gets upscaled in accordance with ALT-2 setting
  • Image now is shown larger, sliders are needed again, and so on…

That’s the flickering one can observe.

What version of GTK? What, if any, kind of graphics card? Are you using X11 or Wayland?

  • GTK+3 version : 3.22.30-1ubuntu4
  • Nvidia GeForce RTX 2060
  • Nvidia Driver 430.50
  • echo $XDG_SESSION_TYPE -> X11

hope this helps…

Having some more details I’ve tried to copy all the scenario’s you mention and a few you didn’t, but I am not able to reproduce, forcefully or otherwise, what you are describing.

Have you tried the newest development version? You seem to be on +584 and I initially tested with +615 and these latest tests i did with +621 both without any problems.

Here’s a better overview of my setup:

  • darktable Version: 3.1.0+621
  • OS : Linux - kernel 4.19.0-8-amd64
  • Distro : Debian Buster (rel. 10.3)
  • Graphics card : NVIDIA GF104 [GeForce GTX 460] (rev a1)
  • Graphics driver : NVIDIA x86_64 Kernel Module 390.116
  • OpenCL activated : No
  • Xorg : 7.7+19
  • GTK+ : 3.24.5-1

I’ll just throw this out there: the flatpak is at version 3.0, but with a newer version of gtk than @pehar uses. It supports openCL and all that good business, but requires a PPA for the latest version of flatpak itself. If you’re willing to try it out, maybe that’s a good test?

I see 4 significant differences between our systems

  1. your darktable version is somewhat more up to date
  2. your OS is somewhat more up to date (I’m using the last recent LTS version of ubuntu, will be updated about august 2020)
  3. your hardware is some years old (I guess), my is just 5 month old
  4. I’m using OpenCL, you do not

Here is what I tried :

  • deactivating OpenCL changes nothing, I can still force the issue
  • when image area “flickers” the cpu load increases to about 30%. This means for my hardware (6 cores, hyperthreading) that at least 4 threads are running parallell (possibly more).
  • the issue is independent of the size of the darktable window or if it uses the full screen

Here is another way to force the issue :

  • in “settings -> GUI options” set “show scrollbars for center view : lightroom and darktable”
  • choose an image which is large enough to be downscaled when shown in darkroom (in my case about 6000 x 4000 pixels)
  • press ALT-3 in darkroom
  • adjust the width of the sidepanels and the height of the filmstripe that the (downscaled) image nearly perfecly fits the image area available (only small light grey margins around the image, horizontal and vertical margins effectively equal, example is shown left hand side of the screenshot below)
  • press ALT-2 : flickering starts immediately

Here a conclusion what happens :
There are three different states the image area can have as shown in the screenshot.

  • no scrollbars (left hand side)
  • vertical scrollbar (middle)
  • horizontal scrollbar (right hand side)

The flicker is an oscillation between this three states.
I’m wondering if the parallel processing in several threads (at least 4, possibly more) might be the reason ? If the threads running parallel are not perfectly synchonised, I can imagine the observed effects. I’m thinking about forcing my OS to use only one thread for a test, but currently I don’t know how to do so. Next weekend I’ll build a new darktable version from master, but I’m not very hopeful that this will help.

Here is another way to force the issue :

  • in “settings -> GUI options” set “show scrollbars for …

Yep, with those steps I’m able to replicate this issue: It shows the flickering/jitterring!

BTW: Just checked stable 3.0 with the same approach: It also shows this issue.

I’ll file a bug report at the end of the day on GitHub.

I just filed a bug report:

EDIT: Still figuring out how pixls.us works. Changed the above link to this nice little box thingy…

1 Like

Thank you for filing the bug report, so for me it was worth to invest some time to understand what happens in detail and to describe it here. I also found a way running darktable on a single cpu by using
taskset but I’m stopping further investigations now, because you confirmed the bug.