Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Main and context menus misalgined or wrongly positioned #5941

Closed
ytzemih opened this issue Feb 13, 2020 · 18 comments · Fixed by #10627
Closed

Main and context menus misalgined or wrongly positioned #5941

ytzemih opened this issue Feb 13, 2020 · 18 comments · Fixed by #10627
Labels
bug Confirmed bugs or reports that are very likely to be bugs status: depends-on-external A bug or issue that depends on an update of an external library ui

Comments

@ytzemih
Copy link

ytzemih commented Feb 13, 2020

JabRef 5.0-beta.419--2020-02-12--3859620
Linux 5.4.19-050419-generic amd64
Java 13.0.2

Steps to reproduce the behavior:

  1. In Ubuntu 19.10 using my external display (my primary monitor next to my laptop), I open JabRef.
  2. Open the menu and the list items will be displayed with a more or less significant disalignment (see jabref-screenshot1).
  3. Moreover, context menus (e.g. for switching to titlecase) are located on the wrong screen, see jabref-screenshot2 where the menu hides behind the bottom of the left bar of the gnome desktop).

This issue makes it difficult to click menu items because sometimes menus close before the mouse pointer reaches them.

jabref-screenshot1

jabref-screenshot2

@NRJank
Copy link

NRJank commented Sep 24, 2020

I missed this when filing my issues report yesterday, that sees the same problem with context menu on the wrong screen. (I think I may have accidentally filtered on OS.) That issue appears on Windows, so this seems to not just be a linux problem, and it appears in both 5.1 and the recent 5.2 dev build.

@ytzemih
Copy link
Author

ytzemih commented Sep 24, 2020

@NRJank Thanks for confirming. Still there for me, with

JabRef 5.2--2020-09-16--5bb159d
Linux 5.4.19-050419-generic amd64
Java 14.0.2

@calixtus calixtus added the bug Confirmed bugs or reports that are very likely to be bugs label Sep 29, 2020
@calixtus
Copy link
Member

thanks for reporting, i'll put this in the line on high, seems like jabref is hard to use with the dislocated menus on multiple screen setups.

@Siedlerchr
Copy link
Member

@NRJank @ytzemih Can you plaese test this again with the latest development version? We recently upgraded the javafx version and it seems the issue is solved
https://builds.jabref.org/master/
Remember to make a backup of your library

@ytzemih
Copy link
Author

ytzemih commented Nov 4, 2020

@Siedlerchr thanks for checking that. I've just installed
JabRef 5.2--2020-11-04--67f67a1
Linux 5.4.19-050419-generic amd64
Java 15.0.1
and, unfortunately, in Ubuntu 19.10 Gnome and in i3, I am still seeing the same result, matching the screenshots above.

It is worth mentioning, the main dropdown menus are on the right screen, so is the context menu in the entry list.
However, the context menu in the entry editor shows on the wrong screen (it seems always on the primary screen if I e.g. use JabRef on my external display). Maybe it's do to with differences in how these context menus are registered/called.

It's interesting: If you click on the "date" field, the context menu shows correctly, but if you right-click on e.g. "journaltitle", then the context menu shows on the wrong screen. The same erroneous behaviour for "author" and "title". Hope that helps.

@NRJank
Copy link

NRJank commented Apr 6, 2021

@NRJank @ytzemih Can you plaese test this again with the latest development version? We recently upgraded the javafx version and it seems the issue is solved
https://builds.jabref.org/master/
Remember to make a backup of your library

just confirmed with latest 5.3 build that the behavior is unchanged on windows, following same test steps I listed in Issue #6935

@Siedlerchr
Copy link
Member

We recently upgraded to openjfx18 which fixed some issues regarding context menu positioning. Can you all please test the current development version?

We would like to ask you to use a development build from https://builds.jabref.org/main and report back if it works for you. Please remember to make a backup of your library before trying-out this version.

@ytzemih
Copy link
Author

ytzemih commented Apr 8, 2022

@Siedlerchr Thx for the update. I've just tried it with JabRef 5.6--2022-04-04--dbf921e with the unfortunate result
that the problems remain for me:

  1. Slightly offset positioning of the drop-down menus,
  2. Context menus on different screen.

Although, the menus are closer to the menu bar, but I'm afraid that this was already the case in JR 5.5.

I presume that openjfx could have a general issue with tiling WMs under Linux, that's my case. But on the other hand, @NRJank was reporting on this issue being observable under Windows as well. That refutes my theory.

@calixtus
Copy link
Member

calixtus commented Apr 3, 2023

Should be fixed with JavaFX 21
https://bugs.openjdk.org/browse/JDK-8251862

@ThiloteE
Copy link
Member

@ytzemih can you still reproduce this with JabRef 5.10?

@ytzemih
Copy link
Author

ytzemih commented Oct 15, 2023

@ThiloteE Thanks for asking. Unfortunately, I could not recognise any change over the last couple of versions. I'm currently using
JabRef 5.11--2023-10-02--7e65220
Linux 6.2.0-34-generic amd64
Java 21-internal
JavaFX 20.0.2+3
under Ubuntu 22.04.

I'm using the JabRef deb installer, so I didn't care about any switch from JavaFX 20 to 21.
Could this version difference perhaps be the reason for why I'm seeing this issue and getting:

Messages are not initialized before accessing key: Display help on command line options
2023-10-15 11:20:49 [JavaFX-Launcher] sun.util.logging.internal.LoggingProviderImpl$JULWrapper.log()
WARN: Unsupported JavaFX configuration: classes were loaded from 'module org.jabref.merged.module', isAutomatic: false, isOpen: true
2023-10-15 11:20:50 [JavaFX Application Thread] org.jabref.preferences.JabRefPreferences.getFetcherKeysFromKeyring()
WARN: JabRef could not open the key store

when starting JR from the command line?

@ThiloteE
Copy link
Member

Ah, JavaFX21 is not yet merged. I confused it with java21. My bad. We will have to wait a little bit more to test if this was fixed by JavaFX21. Sorry for the noise.

I believe the warnings you receive are unrelated. If you want you could open a separate issue for them, but I am not really sure if they are actually a problem. The keystore warning is harmless. I am not completely sure, but I believe it has to do with you not having configured API keys (which is fine). Apparently JabRef automatically tries to fetch them, even if you do not have any or something like that.

@ThiloteE
Copy link
Member

I am thinking of removing this from the candidates for university projects, because past policy has been to simply wait for javafx updates and nobody dug deeper to debug the rootcause of the problem.

Students would need to

  1. Debug the issue.
  2. Come up with a solution.

A clear path towards fixing this issue is not known yet, so it might be very hard for students to fix this.

Thoughts?

@ThiloteE ThiloteE moved this from High priority to Normal priority in Prioritization Oct 15, 2023
@ytzemih
Copy link
Author

ytzemih commented Oct 16, 2023

@ThiloteE No worries, thanks for keeping an eye on this. So, I'll ignore these warnings for now and wait until JavaFX21 is in. Then, I'll see whether something has changed.

One more thing: Although I'm mostly using a tiling window manager (i3), interestingly, I'm having this issue in both, i3 and Gnome wm. My latest guess is that it's something to do with me using Gnome Flashback (https://wiki.gnome.org/Projects/GnomeFlashback) in order to use some Gnome features under i3. See also https://github.com/regolith-linux/i3-gnome-flashback.

So, this is issue is perhaps a low-priority issue and hopefully fixed automatically with JavaFX21.

@ThiloteE ThiloteE added the status: depends-on-external A bug or issue that depends on an update of an external library label Oct 16, 2023
@Siedlerchr Siedlerchr mentioned this issue Nov 7, 2023
6 tasks
@github-project-automation github-project-automation bot moved this from Normal priority to Done in Prioritization Nov 7, 2023
@ThiloteE
Copy link
Member

ThiloteE commented Nov 7, 2023

JavaFX 21 has been merged. Please try the latest development version of JabRef. You can download it from here: https://builds.jabref.org/main/
Please reopen the issue, if you can still reproduce.

@ytzemih
Copy link
Author

ytzemih commented Nov 9, 2023

Thanks, @ThiloteE. I've installed the build

JabRef 5.12--2023-11-07--2afd1f6
Linux 6.2.0-36-generic amd64 
Java 21.0.1 
JavaFX 21.0.1+6

Unfortunately, for me it shows the same messages as in #5941 (comment): Unsupported JavaFX configuration and the GUI rendering issue isn't gone. However, I think, it's a particular issue to do with my configuration (i3, gnome-flashback, Ubuntu 22.04).

So, this issue does not need to be reopened as I'm perhaps the only one seeing it.

@Siedlerchr
Copy link
Member

The warning messages about the module can be ignored. It comes from the fact that multiple modules are merged together while packaging and JavaFX does not recognize this. It works nonetheless

@ytzemih
Copy link
Author

ytzemih commented Nov 9, 2023

Ah, I see. Well, then it's just the strange window manager setting that I'm using that perhaps JavaFX can't properly deal with. I think, it's not a JR issue. So, let's ignore it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Confirmed bugs or reports that are very likely to be bugs status: depends-on-external A bug or issue that depends on an update of an external library ui
Projects
Archived in project
Development

Successfully merging a pull request may close this issue.

5 participants