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

Can't escape full screen + menus stay closed (after upgrade to 5.12/5.13) #10731

Open
2 tasks done
sparusaurata opened this issue Dec 27, 2023 · 83 comments · May be fixed by #11440
Open
2 tasks done

Can't escape full screen + menus stay closed (after upgrade to 5.12/5.13) #10731

sparusaurata opened this issue Dec 27, 2023 · 83 comments · May be fixed by #11440
Labels
os: linux status: depends-on-external A bug or issue that depends on an update of an external library

Comments

@sparusaurata
Copy link

sparusaurata commented Dec 27, 2023

JabRef version

5.12 (latest release)

Operating system

GNU / Linux

Details on version and operating system

Mint 21.2 with Cinnamon 5.8.4

Checked with the latest development build (copy version output from About dialog)

  • I made a backup of my libraries before testing the latest development version.
  • I have tested the latest development version and the problem persists

Steps to reproduce the behaviour

  1. Upgrade to 5.12 by manually installing the Debian package.
  2. Open JabRef.
  3. The window is in full-screen (Cinnamon's title bar and bottom panel aren't visible), and when I click on a menu item (File, Edit, etc.) it appears and disappears immediately after.
  4. The solutions from https://docs.jabref.org/installation (adding Java options) don't change anything.

Appendix

Notice that I'll be able to perform some tests tomorrow if needed, but then I'll just re-install a previous version to be able to work. 😞

Log File
2023-12-27 18:44:25 [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-12-27 18:44:27 [JavaFX Application Thread] org.jabref.gui.StateManager.setActiveDatabase()
INFO: No open database detected
2023-12-27 18:44:27 [JavaFX Application Thread] org.jabref.gui.theme.ThemeManager.updateThemeSettings()
INFO: Not updating theme because it hasn't changed
2023-12-27 18:44:27 [JavaFX Application Thread] org.jabref.gui.theme.ThemeManager.updateThemeSettings()
INFO: Theme set to Theme{type=EMBEDDED, name='Dark.css'} with base css StyleSheet{jrt:/org.jabref/org/jabref/gui/Base.css}
2023-12-27 18:44:27 [JavaFX Application Thread] org.jabref.gui.theme.ThemeManager.updateThemeSettings()
INFO: Not updating theme because it hasn't changed
2023-12-27 18:44:27 [JavaFX Application Thread] org.jabref.gui.theme.ThemeManager.updateThemeSettings()
INFO: Theme set to Theme{type=EMBEDDED, name='Dark.css'} with base css StyleSheet{jrt:/org.jabref/org/jabref/gui/Base.css}
2023-12-27 18:44:29 [JavaFX Application Thread] org.jabref.preferences.JabRefPreferences.getFetcherKeysFromKeyring()
WARN: JabRef could not open the key store
2023-12-27 18:44:29 [pool-1-thread-1] org.jabref.gui.JabRefDialogService.notify()
INFO: Ouverture en cours: (...)
@Siedlerchr
Copy link
Member

@ThiloteE don't you have Linux mint as well?

@ThiloteE
Copy link
Member

ThiloteE commented Dec 27, 2023

I am on an older version of Linux Mint (20.3). I use the flatpak version of JabRef. The newest portable version I can run there is JabRef 5.9, because JabRef requires a newer kernel, which by default is only delivered with Ubuntu 22.0X or something and Linux Mint 20.3 is based on an older Ubuntu. I have not tried any of the deb versions.

@Siedlerchr
Copy link
Member

Can you test the latest 5.13 from here?
https://builds.jabref.org/main/
We donwgraded javafx

@k3KAW8Pnf7mkmdSMPHz27
Copy link
Sponsor Member

I can't reproduce in Ubuntu 22.04, but I don't use Cinnamon

@k3KAW8Pnf7mkmdSMPHz27
Copy link
Sponsor Member

Can't replicate it in Ubuntu 22.04 using Cinnamon, but I am unable to open JabRef in full-screen, so perhaps not that useful.

This might be related to the original part of #4939 ?

@sparusaurata
Copy link
Author

sparusaurata commented Dec 28, 2023

Can you test the latest 5.13 from here? https://builds.jabref.org/main/ We donwgraded javafx

The bug persists. 😢

  • I downgraded to 5.6 (a bit randomly, since I didn't remember the previous version I had) and it works fine.
  • EDIT: I also tried 5.10, it bugs.

@Siedlerchr
Copy link
Member

Then this sounds more like a bug in cinnamonn

@AdamWysokinski
Copy link
Contributor

AdamWysokinski commented Jan 2, 2024

I have a similar issue using Linux/i3 wm. Menus close immediately, unless the mouse key is kept pressed. But then, menu options cannot be selected. Menus keyboard shortcuts works fine. Same for 5.13. The issue is not present in 5.11.

@messiem
Copy link

messiem commented Jan 2, 2024

Same issue here; I just installed 5.12 and did not have the issue in 5.11.
Running Ubuntu 22.04.3 in Wayland.

Updating this because I first thought it had to do with Wayland but maybe not; my other (Xorg?) Ubuntu version was set up differently for displays. From what I can tell it had more to do with using dual displays and which one was set up as primary (the bug only happened when my external display was set up as primary). I installed 5.13 following a link given above and while the bug was still there at first, after a bit more random tests I am back on Wayland + primary external display and all looks well now (no idea why), so I won't touch this anymore - I'll report back if the bug comes back.

@koppor koppor added the status: depends-on-external A bug or issue that depends on an update of an external library label Jan 2, 2024
Siedlerchr added a commit that referenced this issue Jan 20, 2024
Fixes #5867
Probably also #10731
@Siedlerchr
Copy link
Member

Can you please test this version? https://builds.jabref.org/pull/10808/merge
@AdamWysokinski At least the menu problem on i3 should be fixed

@AdamWysokinski
Copy link
Contributor

The new build works fine on i3, thanks!

calixtus pushed a commit that referenced this issue Jan 21, 2024
@Ectras
Copy link

Ectras commented Jan 25, 2024

I have the same issue on Ubuntu 22.04.3 with Wayland. The window is in full screen and the menus disappear. I can confirm that installing 5.13 from https://builds.jabref.org/pull/10808/merge solved the issues with the menus for me (they are working normally again), but the window is still in full screen.

@AdamWysokinski
Copy link
Contributor

With the build 10808 on i3 there is no problem with switching full-screen on and off.

@mButlerDM
Copy link

I have this problem as well on the latest 5.13 build as of this comment. I can interact with menus by clicking now but the application is still stuck in full screen.

Linux Mint 21.2 with Cinnamon 5.8.4.

@teertinker
Copy link
Contributor

teertinker commented Mar 7, 2024

I updated to 5.12 today and have a similar issue on Ubuntu 22.04.. In Fullscreen Main Menu is not working. However in window mode, everything works as expected.
Bildschirmaufzeichnung vom 07.03.2024, 14:31:26.webm

Update: 5.13 dev solved the issue for me.

@karls0
Copy link

karls0 commented Mar 11, 2024

Hi,
I have the same problem: 5.13 from https://builds.jabref.org/pull/10808/merge solved the issues with the menus for me (they are working normally again), but the window is still in full screen. I can use the program now, but I can't change workspaces because of fullscreen mode.
How can I switch to window mode?
I'm using Mint 21.3 Virginia.

@plyaden
Copy link

plyaden commented Mar 13, 2024

Hi, I have the same problem: 5.13 from https://builds.jabref.org/pull/10808/merge solved the issues with the menus for me (they are working normally again), but the window is still in full screen. I can use the program now, but I can't change workspaces because of fullscreen mode. How can I switch to window mode? I'm using Mint 21.3 Virginia.

Hi, i have the same Problem on Obuntu 22.04. Sometimes it works to click the windowsbutton + arrowkeys, or just restart RabRef. The Problem only occurs at the first Start of the Software for me.

@Siedlerchr
Copy link
Member

Can you try the version with javafx22-ea-28from here? https://builds.jabref.org/jdk-ea/

@karls0
Copy link

karls0 commented Mar 13, 2024

Hi Chris,
I tried the version you mentioned, but it is worse than 5.13.233. No window decoration and the menus don't stay open to select an item. Good to remember Alt+F4 to quit :-) I also found out how to switch workspaces by using Ctrl+Alt-up-arrow. So not a big Problem for me, but thank you for the suggestion.

@karls0
Copy link

karls0 commented Mar 13, 2024

@plyaden
Thank you, but neither method works for me.

@calixtus
Copy link
Member

calixtus commented Mar 13, 2024

Tried just now the latest build in linux-portable with my linux machine, arch linux, kde, wayland, but could not reproduce...
grafik

@koppor
Copy link
Member

koppor commented Mar 14, 2024

@calixtus It seems to be about Linux Mint and Cinnamon. - Can you start Cinnamon on arch maybe?

@wujastyk
Copy link

JabRef 5.13--2024-03-20--047a975
Linux 6.5.0-26-generic amd64
Java 21.0.2
JavaFX 22+30

I'm having this same problem (Jabref in fullscreen mode and can't get out of it; clicking menus doesn't open the dropdown). I'm using Linux Mint and Cinnamon. Other programs running at the same time are normal; it's just Jabref.

@wujastyk
Copy link

Can you try the version with javafx22-ea-28from here? https://builds.jabref.org/jdk-ea/

I tried this - no improvement.

@wujastyk
Copy link

wujastyk commented Mar 21, 2024

JabRef 5.13--2024-03-20--82a0338
Linux 6.5.0-26-generic amd64
Java 21.0.2
JavaFX 22+30

The fullscreen-only problem appears only on my laptop (Thinkpad T580) and not on my dual-screen desktop setup. There, the same version of JabRef behaves just fine.

I don't know if it's related, but once again JabRef presents the "custom entry types" approval screen on every startup.

image

@wujastyk
Copy link

wujastyk commented May 8, 2024

JabRef 5.14--2024-05-07--045f815
Linux 6.5.0-28-generic amd64
Java 21.0.2
JavaFX 22.0.1+7

If I start JabRef with this command: /opt/jabref/bin/JabRef -p ~/jabref.prefs then JabRef opens in the expected manner, with window decorations, menus, and resizable windows. Everything normal.

I append the contents of my jabref.prefs file, which dates from August 2018.

jabref.prefs.txt

@nplgrn
Copy link

nplgrn commented May 24, 2024

I had the same problem under Linux Mint 21.3 Cinnamon (6.0.4), kernel 5.15.0-107-generic.
When starting JabRef its starts in fullscreen, no window control buttons, no panel available, JabRef menus not working.
I kind of solve it following this: https://docs.jabref.org/faq/linux#everything-looks-too-big-or-too-small.-how-can-i-change-it-to-to-a-more-reasonable-size

I added the line -Dglass.gtk.uiScale=1.01 in the [JavaOptions] section of the JabRef.cfg file.
Any scale other than 1 solves the problem of unresponsive menus and gives back the windows control buttons. I used a scale of 1.01 but other numbers also worked.
I still have an issue with the fonts, they look like those from old typing machines, but it works.
Hope it helps!

jabref

@Theodor-Lindberg
Copy link

JabRef 5.14--2024-05-07--045f815 Linux 6.5.0-28-generic amd64 Java 21.0.2 JavaFX 22.0.1+7

If I start JabRef with this command: /opt/jabref/bin/JabRef -p ~/jabref.prefs then JabRef opens in the expected manner, with window decorations, menus, and resizable windows. Everything normal.

I append the contents of my jabref.prefs file, which dates from August 2018.

jabref.prefs.txt

This worked for me, but setting -Dglass.gtk.uiScale=1.01 or -Djdk.gtk.version=2 in [JavaOptions] of the JabRef.cfg file did not.

JabRef 5.13--2024-04-01--6bdcf63
Linux 4.18.0-513.24.1.el8_9.x86_64 amd64
Java 21.0.2
JavaFX 22+30

@wujastyk
Copy link

wujastyk commented Jun 8, 2024

JabRef 5.14--2024-05-29--6a63990
Linux 6.5.0-35-generic amd64
Java 21.0.2
JavaFX 22.0.1+7

I have no idea if this is relevant, and it probably isn't. However, Linux Mint/Ubuntu today received an update to the X11 window manager and compositor library called mutter, taking it from 7.1 to 8.0. I noticed that one of the changes related to fullscreen maximization and it crossed my mind that there might be something here that intersected with the JabRef fullscreen issue. I have not experienced the fullscreen problem since early May.

The changes are described as follows:

mutter (42.9-0ubuntu8) jammy; urgency=medium

  [ Daniel van Vugt ]
  * Add fullscreen-maximize to tests-Tag-unstable-tests-as-flaky.patch
  * Add compositor-sync-ring-Allow-the-gpu_fence-to-be-moved.patch to
    fix lag and freezes on the Nvidia Xorg driver (LP: #2059847)

  [ Marco Trevisan (Treviño) ]
  * debian/patches: Refresh git indexes
  * debian/patches: Add fix to handle crash on destruction of invalid popups
    (LP: #2065066)

 -- Marco Trevisan (Treviño) <marco@ubuntu.com>  Tue, 07 May 2024 16:40:12 +0200

The full changelog is here.

@wujastyk
Copy link

JabRef 5.14-PullRequest11282.236--2024-06-15--49ab67b
Linux 6.5.0-35-generic amd64
Java 21.0.2
JavaFX 22.0.1+7

Still a problem, and now the solution of launching with -p <prefs> isn't working.

@Liam-Twomey
Copy link

Liam-Twomey commented Jun 27, 2024

Any updates from the devs (@Siedlerchr, @calixtus) as to what might be causing this? This is still an issue with 5.12, 5.13, and the latest dev build of 5.14. The only reliable solution I have found (which doesn't break fonts) is to regress to 5.10, and that is driving me nuts because renaming files in the cleanup dialog is broken in 5.10 (as per discourse 3999).

System info:
Linux Mint 21.3, Cinnamon DE, versions 5.10, 5.11, 5.12, 5.13 (all .deb), 5.14-dev (.deb, flatpak).

There's also a very wierd effect I'm noticing, where if the .deb of 5.10 is installed (which displays correctly), if the flatpak of 5.14 is installed, it opens with correct display on the first time opening the program, and for each subsequent opening both the .deb of 5.10 and the flatpak of 5.14 will be messed up. To fix this, both versions must be uninstalled and 5.10 reinstalled.

It seems like they're setting some shared variable which persists between sessions, which is not what I would expect, given that the flatpak's behavior should be sandboxed. This is confusing to me. Would erroneous setting of xdg variables in the flatpak be able to do this?

@calixtus
Copy link
Member

Hi @Liam-Twomey , thanks for asking.
Unfortunately there hasn't been an update on this issue, as we were not yet able to reproduce it.
We believe it has something to do with cinnamon and iavafx, but that's just a guess based on the fact that them problem mostly ( or only ?) occurs on cinnamon systems.
Nevertheless we also want to help you and the other users having problems.
Your post is another piece in the puzzle and actually it leads me to a suspicion, how we can work around this issue.
If you are willing to help, I'll try to create a test version of JabRef in the next days, you can try out.

@Siedlerchr
Copy link
Member

Might be some value in the preferences that is reported incorrectly

@calixtus
Copy link
Member

The preferences are not the problem, but I think setting the window to full screen instead of just maximizing is causing issues.

@Liam-Twomey
Copy link

Do you mean setting it to start in fullscreen somewhere in the JabRef preferences? To clarify, none of the users here are reporting that we set it to fullscreen -- it seems like the display is set to something like 1.1x scale, and so the titlebar for the window is outside the screen boundary. I think the menu issues come from the interactable UI elements not being scaled by the same value. Unfortunately, there's no way to force-resize a window in Cinnamon if you can't see the titlebar, so we can't shrink it or manipulate the window at all.

I'll keep tabs on this thread, if anyone has testing builds which might fix this, I'd be happy to be a Minty guinea pig.

@wujastyk
Copy link

wujastyk commented Jun 28, 2024 via email

@Siedlerchr
Copy link
Member

Siedlerchr commented Jun 28, 2024 via email

@Liam-Twomey
Copy link

Liam-Twomey commented Jun 29, 2024

I unfortunately cannot access preferences after the glitch has happened, as I can't open file menus anymore. However, I've done some further testing and found some interesting results.
Initially, as I was checking for preference changes after restarting the program before and after installation of the 5.13 flatpak, I noticed that:

  1. Restarting the 5.10 deb after installation of 5.13 flatpak did not cause the glitch, as I previously thought.
  2. After several restarts of each program version, the error did not manifest.
  3. After eventually moving the window to my other monitor (1) and restarting both versions of the program, the glitch manifested.
  4. Logging out was sufficient to revert this version of the glitch. Note that on this occasion, relogging reverted the window to its original position on monitor 2.
  5. After moving the flatpak window again to monitor 2 and restarting it, both versions of the program now open on monitor 1, and exhibit the glitch.
  6. Removing the flatpak reverted the deb version to normal windowing on both monitors. No relog was required.
    Please note that during this process, there was no point at which the flatpak and deb versions were open simultaneously.

At this point I suspected that the GNOME fractional scaling used in Cinnamon (and potentially the difference in scales used between my monitors) was messing with the JabRef display scale on monitor 1. I set both monitors' scale to the value used by monitor 2 (which causes no issues) and reinstalled the flatpak. This did not fix the issue.
Noticing that the download and storage sizes were smaller for this try at the flatpak install, I checked flatsweep, and noticed that 30 MB of data were remaining in org.jabref.jabref. With the flatpak uninstalled but those 30 MB of data left alone, I reinstalled the deb, which fixed it. This suggests that this effect could be (but is not necessarily) caused by some of the persistent data left behind by the flatpak, but it has no effect unless the flatpak is installed.
Reinstalling the flatpak once again broke both installs (this time from the first opening), as long as the flatpak window was opened on monitor 1.

At this point, I thought it was significant that the two versions shared the same remembered window location, and cannot be opened at the same time.
I think the best lead here is that at some level in Cinnamon or the OS, both the flatpak and deb must share the same ID, and the installation of the flatpak seems to break the behavior specifically of the maximized window. As long as the window is always closed as a non-maximized window, both versions will stay functional.

All in all, this makes it seem like:

  1. The issue is related to an attribute which is set by both versions and shared between them until uninstalled.
  2. The issue depends on a difference between monitors, but does not seem to be fixed by changing fractional scaling behavior.
  3. The issue is related specifically to behavior of the window when maximized.

This does raise the possibility of this being a Cinnamon bug rather than a JabRef one. However, I don't see any related bugs on the Cinnamon github, and I doubt JabRef is the only common JavaFX program. If the information I've collected here doesn't provide any clues as to how this might be a javafx bug, I can open a bug report at Cinnamon, it could be an interference between the updated javafx version and Cinnamon.

Update: after noticing this cinnamon bug, I also tested limiting display 1 to 60 Hz, but this did not resolve the issue.

See attached images for monitor details.
Monitor1Details
Monitor2Details

@Liam-Twomey
Copy link

Liam-Twomey commented Jun 29, 2024

Update: I ran a diff on the 5.13 and 5.10 preference export files. Using the freshly-installed 5.10 as reference for the 5.10 after opening 5.13 once (on the non-breaking monitor) we get the following. Please note that both the lengthy and unchanging previewStyle and the PII-containing prefsExportPath have been replaced with $removed$.

*** 5.10-prefs-relog.xml	2024-06-29 13:16:09.339923697 -0700
--- 5.10-prefs-initial.xml	2024-06-29 13:00:05.604933793 -0700
***************
*** 46,56 ****
            <entry key="mainTableColumnWidths" value="28.0;40.0;28.0;28.0;115.0;191.0;495.5;112.5;130.0;80.0;28.0;28.0;100.0"/>
            <entry key="mainWindowPosX" value="0.0"/>
            <entry key="mainWindowPosY" value="0.0"/>
!           <entry key="mainWindowSizeX" value="2048.0"/>
!           <entry key="mainWindowSizeY" value="1112.0"/>
            <entry key="nonWrappableFields" value="issn;url;isbn"/>
            <entry key="overrideDefaultFontSize" value="true"/>
-           <entry key="prefsExportPath" value="/home/$removed$.xml"/>
            <entry key="previewStyle" value="$removed$"/>
            <entry key="protectedTermsEnabledInternal" value="/protectedterms/months_weekdays.terms;/protectedterms/countries_territories.terms;/protectedterms/electrical_engineering.terms"/>
            <entry key="recentDatabases" value="$removed$"/>
--- 46,55 ----
            <entry key="mainTableColumnWidths" value="28.0;40.0;28.0;28.0;115.0;191.0;495.5;112.5;130.0;80.0;28.0;28.0;100.0"/>
            <entry key="mainWindowPosX" value="0.0"/>
            <entry key="mainWindowPosY" value="0.0"/>
!           <entry key="mainWindowSizeX" value="1920.0"/>
!           <entry key="mainWindowSizeY" value="1080.0"/>
            <entry key="nonWrappableFields" value="issn;url;isbn"/>
            <entry key="overrideDefaultFontSize" value="true"/>
            <entry key="previewStyle" value="$removed$"/>
            <entry key="protectedTermsEnabledInternal" value="/protectedterms/months_weekdays.terms;/protectedterms/countries_territories.terms;/protectedterms/electrical_engineering.terms"/>
            <entry key="recentDatabases" value="$removed$"/>
***************
*** 65,73 ****
            <entry key="vim" value="vim"/>
            <entry key="warnBeforeOverwritingKey" value="false"/>
            <entry key="winEdtPath" value="WinEdt"/>
-           <entry key="windowMaximised" value="true"/>
            <entry key="workingDirectory" value="$removed$"/>
!           <entry key="xmpPrivacyFilters" value="review;owner;note;timestamp;keywords;pdf"/>
          </map>
          <node name="bibtexkeypatterns">
            <map/>
--- 64,71 ----
            <entry key="vim" value="vim"/>
            <entry key="warnBeforeOverwritingKey" value="false"/>
            <entry key="winEdtPath" value="WinEdt"/>
            <entry key="workingDirectory" value="$removed$"/>
!           <entry key="xmpPrivacyFilters" value="owner;review;note;pdf;timestamp;keywords"/>
          </map>
          <node name="bibtexkeypatterns">
            <map/>

Comparing the diffing the 5.13 flatpak on first install with it after one closure, opening the 5.10 dev, and relogging (again, on the monitor for which it works) we get:

*** 5.13-prefs-relog.xml	2024-06-29 13:15:34.177309498 -0700
--- 5.13-prefs-initial.xml	2024-06-29 13:03:11.155151197 -0700
***************
*** 50,56 ****
            <entry key="mainWindowSizeY" value="1112.0"/>
            <entry key="nonWrappableFields" value="isbn;url;issn"/>
            <entry key="overrideDefaultFontSize" value="true"/>
!           <entry key="prefsExportPath" value="$removed$"/>
            <entry key="previewStyle" value="$removed$"
            <entry key="protectedTermsEnabledInternal" value="/protectedterms/months_weekdays.terms;/protectedterms/countries_territories.terms;/protectedterms/electrical_engineering.terms;/protectedterms/computer_science.terms"/>
            <entry key="recentDatabases" value="$removed$"/>
--- 50,56 ----
            <entry key="mainWindowSizeY" value="1112.0"/>
            <entry key="nonWrappableFields" value="isbn;url;issn"/>
            <entry key="overrideDefaultFontSize" value="true"/>
!           <entry key="prefsExportPath" value="$removed$"/>
            <entry key="previewStyle" value="$removed$"/>
            <entry key="protectedTermsEnabledInternal" value="/protectedterms/months_weekdays.terms;/protectedterms/countries_territories.terms;/protectedterms/electrical_engineering.terms;/protectedterms/computer_science.terms"/>
            <entry key="recentDatabases" value="$removed$"/>
***************
*** 65,73 ****
            <entry key="vim" value="vim"/>
            <entry key="warnBeforeOverwritingKey" value="false"/>
            <entry key="winEdtPath" value="WinEdt"/>
-           <entry key="windowMaximised" value="true"/>
            <entry key="workingDirectory" value="$removed$"/>
!           <entry key="xmpPrivacyFilters" value="note;pdf;keywords;timestamp;owner;review"/>
          </map>
          <node name="bibtexkeypatterns">
            <map/>
--- 65,72 ----
            <entry key="vim" value="vim"/>
            <entry key="warnBeforeOverwritingKey" value="false"/>
            <entry key="winEdtPath" value="WinEdt"/>
            <entry key="workingDirectory" value="$removed$"/>
!           <entry key="xmpPrivacyFilters" value="note;pdf;keywords;review;timestamp;owner"/>
          </map>
          <node name="bibtexkeypatterns">
            <map/>

It looks like I resized the 5.10 deb before closing it, but not the 5.13 flatpak, causing only the first diff to talk about the mainWindowSizeY and mainWindowSizeX. I also notice that the windowMaximised variable is noted for the flatpak -- I suspect that the undesirable behavior is somehow related to javafx's treatment of that variable when running under cinnamon. Does anyone who knows how javafx works have any ideas?

@wujastyk
Copy link

wujastyk commented Jun 29, 2024

JabRef 5.14--2024-06-24--f24a578
Linux 6.5.0-41-generic amd64
Java 21.0.2
JavaFX 22.0.1+7

Attached below is a diff of the "good" and "bad" prefs. And some useful news: the command

/opt/jabref/bin/JabRef -p jabref-prefs-good.xml

opens a properly-windowed session, while

/opt/jabref/bin/JabRef -p jabref-prefs-bad.xml

opens a bad, maximized session with menu misbehaviour. That suggest that the culprit is in this region somewhere.

Correction: when I ran /opt/jabref/bin/JabRef -p jabref-prefs-good.xml again, it gave me a bad session.

I attach the two actual prefs files in case there is some obscure issue connected with the sequence of prefs.

good-bad-diff.txt

jabref-prefs-bad.xml.txt
jabref-prefs-good.xml.txt

@wujastyk
Copy link

More experiments. Launching from term with

/opt/jabref/bin/JabRef -p /home/dom/Dropbox/updates/jabref/newjabref.prefs.xml

always gives me a good session.

But it's this very same session from which I'm exporting jabrer-prefs-good.xml.txt. That's hard to understand. Also, comparing the two (jabref-prefs-good.xml and newjabref.prefs.xml shows many differences; why, when the latter is the source of the former?)

At the present time, in spite of the opposite behaviour I recorded in the previous comment, launching

/opt/jabref/bin/JabRef -p jabref-prefs-good.xml

Is always giving me a good session and using jabref-prefs-bad.xml is always giving me a bad session. /opt/jabref/bin/JabRef alone always gives me a bad session.

All the above testing has beeing going on in a single terminal window. I opened a fresh terminal window and /opt/jabref/bin/JabRef -p jabref-prefs-good.xml gave me a good session and prefs-bad gave me a bad one, repeatedly.

At this point, I can't any more reproduce the bad session generated by prefs-good.

newjabref.prefs.xml.txt

@wujastyk
Copy link

There's something going on with <entry key="memoryStickMode"

In prefs-good, changing to value=false gives me a bad session.

But in prefs-bad, changing value=good does not give me a good session.

So this is implicated, but not alone.

[more testing]

If I go into Preferences and switch on the "memory stick mode" I reliably get a good session, even launching with just /opt/jabref/bin/JabRef. ...

except, not any more.

Grrrrr. I've spent all evening trying different combinations of good and bad prefs, on or off "memory stick mode" and everything else I can think of. All I can definitely say at present is that /opt/jabref/bin/JabRef -p /home/dom/Dropbox/updates/jabref/newjabref.prefs.xml always gives me a good session. (Thank goodness.)

@calixtus
Copy link
Member

It might be caused by this commit 4f9fd89 (#10128) setting the fullscreen property, instead it should just set the maximized property (see https://docs.oracle.com/javase/8/javafx/api/javafx/stage/Stage.html#fullScreenProperty).
@k3KAW8Pnf7mkmdSMPHz27 already mentioned this PR #10731 (comment) but maybe we overlooked it.

@calixtus
Copy link
Member

Also the screen size should not me remembered, if it is maximized on close, this causes problems when restarting jabref.

@calixtus calixtus linked a pull request Jun 30, 2024 that will close this issue
6 tasks
@calixtus
Copy link
Member

Can you please check if #11440 solves the problem? The binaries should be available in a couple of minutes.

@wujastyk
Copy link

Can you please check if #11440 solves the problem? The binaries should be available in a couple of minutes.

JabRef 5.14-PullRequest11440.213--2024-06-30--a76f0a2
Linux 6.5.0-41-generic amd64
Java 21.0.2
JavaFX 22.0.1+7

  1. First time I loaded /opt/jabref/bin/JabRef the program loaded fine.
  2. Then I tried /opt/jabref/bin/JabRef -p jabref-prefs-bad.xml and got a bad, fullscreen session.
  3. Then I tried 1. again (no arguments, new terminal window) and got a bad, fullscreen session.
  4. /opt/jabref/bin/JabRef -p /home/dom/Dropbox/updates/jabref/jabref-prefs-good.xml gave a good session, as always
  5. Immediately after 4., tried 1 again, bad session.

Loading with no prefs works first time, but then, after a bad session, never again.

@koppor
Copy link
Member

koppor commented Jul 1, 2024

Loading with no prefs works first time, but then, after a bad session, never again.

I tried more debugging at #11440 (comment). Could you retry that?

Now after step 4, the window position should be saved, so bad states should not be kept.

@wujastyk
Copy link

wujastyk commented Jul 1, 2024

JabRef 5.14-PullRequest11440.219--2024-07-01--6937c6b
Linux 6.5.0-41-generic amd64
Java 21.0.2
JavaFX 22.0.1+7

  1. Launching with /opt/jabref/bin/JabRef was good. I repeated it several times and it was always good.
  2. Then I tried /opt/jabref/bin/JabRef -p jabref-prefs-bad.xml and got a bad session.
  3. Subsequently, launching as in 1., no prefs, was bad. Repeatedly. So the no-prefs session is somehow remembering something from the bad session.
  4. Launching with /opt/jabref/bin/JabRef -p jabref-prefs-good.xml gave a good session, repeatedly.
  5. Subsequently, launching with /opt/jabref/bin/JabRef no prefs was still bad, repeatedly.

jabref-prefs-bad.xml.txt
jabref-prefs-good.xml.txt

@Liam-Twomey
Copy link

@koppor The patches at #11440 do resolve the windowing bug for me on a default open, however it also resets some proportions (such as the width of the left sidebar) on each opening. I did not replicate @wujastyk testing with the bad preferences file.

@AdamWysokinski
Copy link
Contributor

it also resets some proportions (such as the width of the left sidebar) on each opening

I have the same problem.

@koppor
Copy link
Member

koppor commented Jul 1, 2024

  1. Then I tried /opt/jabref/bin/JabRef -p jabref-prefs-bad.xml and got a bad session.

@wujastyk Do you maybe have the log file at hand? (~/.local/share/jabref/logs/$version/)

Would be interesting what JabRef "thinks".

@wujastyk
Copy link

wujastyk commented Jul 1, 2024

Here's the log of starting with just /opt/jabref/bin/JabRef, giving a bad session.
log_2024-07-01_17-34-34.txt

@wujastyk
Copy link

wujastyk commented Jul 1, 2024

Here's the log of starting with /opt/jabref/bin/JabRef -p jabref-prefs-bad.xml, giving a bad session.

log_2024-07-01_17-39-33.txt

@wujastyk
Copy link

wujastyk commented Jul 1, 2024

Here's the log of starting with /opt/jabref/bin/JabRef -p ~/Dropbox/updates/jabref/newjabref.prefs.xml and getting a good session (as always with these prefs)
log_2024-07-01_17-40-55.txt

newjabref.prefs.xml.txt

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
os: linux status: depends-on-external A bug or issue that depends on an update of an external library
Projects
None yet
Development

Successfully merging a pull request may close this issue.