Bug 430924 - Mac External Display menus in wrong location
Summary: Mac External Display menus in wrong location
Status: RESOLVED FIXED
Alias: None
Product: digikam
Classification: Applications
Component: Bundle-MacOS (show other bugs)
Version: 7.2.0
Platform: macOS (DMG) macOS
: NOR normal
Target Milestone: ---
Assignee: Digikam Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-12-29 00:16 UTC by Geoff King
Modified: 2023-04-09 07:37 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In: 8.0.0
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Geoff King 2020-12-29 00:16:47 UTC
Hello, 

I have a workaround for this as noted below, but want to point out the issue. 

I have an external monitor connected to a MacBook running Catalina 10.15.7.  The External monitor is "Desktop on Display 2" and the laptop is "Desktop on Display 1".  

Sometimes certain selection lists that popup from the interface show up in the wrong area when Digikam is on Display 2.  First click they are in the right place, next click they are on the wrong desktop or in the wrong place on the correct desktop.  For example, dialogs that have this issue are the language selection in the Description Title and Captions, or the Recent Tags selection, and probably a few others. 

This happens when there is mismatch between what desktop Digikam is on (Display 2) and what is selected/shown in that Dock Menu.  For example, the issue arises when Digikam is on Display 2 [external monitor] and dock menu says Display 1 [laptop screen].  The dock menu can be seen by right clicking the icon in the dock and selecting Options. When the Display is manually set, this is not a problem.   It seems to be caused by dragging the main window between desktops.  

To workaround/mitigate this, is to manually make sure the Dock menu matches the display that Digikam is on through the Options menu in the Dock.  This can be done by opening the options through the icon in the dock and select Desktop on Display 2 if Digikam is on Display 2. 

This may be a Mac or QT issue but I wanted to point it out.  
 
Thanks, Geoff

digiKam-7.2.0-rc-20201228T154340-MacOS-x86-64.pkg
Comment 1 caulier.gilles 2020-12-29 13:32:01 UTC
Hi Geoff,

Here my MacBook pro 2015 with macOS BigSur is connected to 2 Hdpi iiyama 27' external screen. I run digiKam 7.2.0-beta2.

Q: where do you seen the famous pop-up exactly with "Display n" information ?

Gilles Caulier
Comment 2 caulier.gilles 2020-12-29 13:47:20 UTC
Geoff,

Here i can show Desktop1 and Desktop2 annotation on top of screens when i reduce application windows with 3 fingers move up on the track-pad. This is what you mean ?

Gilles Caulier
Comment 3 Maik Qualmann 2020-12-29 14:27:03 UTC
Hi Gilles,

we have a similar report with bug 429338. But I cannot reproduce it. The reason is probably that if a widget has no parent and therefore has no access to the QScreen parameter, a popup opens on the wrong screen. But also with the language ComboBoxes mentioned by Geoff I don't see any faults from us, the parent chain should be ok.

Maik
Comment 4 Geoff King 2020-12-29 17:27:30 UTC
(In reply to caulier.gilles from comment #2)
> Geoff,
> 
> Here i can show Desktop1 and Desktop2 annotation on top of screens when i
> reduce application windows with 3 fingers move up on the track-pad. This is
> what you mean ?
> 


Hi, 
Using the 3 finger swipe, I have 3 desktops labeled at the top of the screen currently.  
  Desktop 1 = laptop
  Desktop 2 = laptop (normally unused)
  Desktop 3 = external monitor

A few things to note:
-In my original comment the "Desktop on Display 2" would correlate with Desktop 3.
-I only get the right click menu on icon, Options, Assign to Desktop on Display X if I have three Desktops or more as shown above. If I only have minimum number of desktops, Desktop 1 (laptop) and Desktop 2 (external), then the right click icon Options menu does not have the Assign ability.  

> Q: where do you seen the famous pop-up exactly with "Display n" information ?

Not sure what you are asking here?
But here's a different example, to simplify the problem a little. 
I now changed the configuration and have 2 Desktops (laptop is Desktop 1 and external Monitor is Desktop 2). Did this through the 3 finger swipe and deleting a desktop. 

Digikam is on Desktop 2.  
I click on the Captions-Description-Title language dropdown.  It shows up (incorrectly) on the right side of Desktop 1.  It's in a location to where it should be if digikam were on Desktop 1. 

Further moving things around, I right click (longer hold) the green window maximize button and select Move to Built in Retina display.  
Now that digikam is on Desktop 1, I try the drop down again and it is in the correct location.
Comment 5 Geoff King 2021-02-18 16:51:10 UTC
Hello, 
here is an update.  Still on Catalina with the 7.2.0-rc Build date: 2/7/21 3:49 PM (target: Debug).  

In the last few months I've started using multiple windows on Mac a lot more and sometimes see weird window behavior in other applications as well.  I've noticed a menu in the wrong spot with Affinity Photo and some others.  It usually is when I've dragged and dropped an application to another Display, but the app is still associated with the other original Display (as seen in the app icon, option menu, assign to menu). 

Maybe I just don't fully understand how Mac handles Displays vs Desktops or maybe it just doesn't work that well???
 
It does seem a little more easier to navigate when using the trackpad on the MacBook to navigate vs drag and dropping between windows or the Assign to command under the icon.  I use a normal 3 button mouse.  

Some examples of programs that have strange window location issues include:

Digikam = 
Language selection under Captions Description will show up in wrong place on same screen or other screen (this is the most serious looking glitch). 

Recent Tags under Captions, Tags will show up in different places.  It rotates between different screen locations. 

Tag Manager will show up on the other screen. 


Handbrake = The Activity, Preview and Queue windows will show up on the other desktop.  

Affinity Photo = An adjustment layer settings such as Levels dialog will show up on the other desktop.
Comment 6 Maik Qualmann 2021-02-19 06:51:41 UTC
Git commit 7a9bdbf06f52127508dd81e5d7cc0d0680bd1114 by Maik Qualmann.
Committed on 19/02/2021 at 06:50.
Pushed by mqualmann into branch 'master'.

try correcting the Tags Manager window position

M  +19   -14   core/libs/tags/manager/tagsmanager.cpp
M  +1    -0    core/libs/tags/manager/tagsmanager.h

https://invent.kde.org/graphics/digikam/commit/7a9bdbf06f52127508dd81e5d7cc0d0680bd1114
Comment 7 caulier.gilles 2023-04-09 07:37:56 UTC
I tried with digiKam 8.0.0 with an external display connected to computer, with:

- MacoS Monterrey Intel (macbook pro 2015)
- Macos Ventura M1 (macbook air 2021)

The problem is not reproducible

Gilles Caulier