GNOME Bugzilla – Bug 395327
win32: Some dialog windows open in the background, app may look frozen
Last modified: 2018-06-29 21:22:17 UTC
Version: r15334 Platform: WinXP. Please can a Linux user confirm whether this is cross-platform. Problem: From the Match payees/memos dialog (QIF import), click a line to select an account. Seeing that there's no suitable account, click "New Account". No new dialog appears but the "Select Account" dialog becomes unresponsive (i.e. clicking Cancel or OK doesn't do anything). CPU usage is 0% so it isn't in a tight loop. Workaround: Make jolly sure that you've got all the accounts you might need before starting a QIF Import. Diagnostics: No relevant diagnostics on the console or in gnucash.trace. Reproducing: Occurs 100% of the time.
Please check whether this is yet another duplicate of bug 371036 and friends: * press Windows-D to minimize all windows * click the import druid in the window list Does that show you the dialog?
(In reply to comment #1) > [snip] > Does that show you the dialog? Yes - so the problem is a partial duplicate of bug 371036 (my apologies that my searches didn't turn it up). However, it's more than that. Bug 371036 says that you end up with the problem if you move other windows in front of the modal dialog. However, in this case, I hadn't moved anything. The modal dialog (prompting me for an account name) opened in the background. I've changed the title and severity of this bug appropriately.
Seems like Gtk+/Win32 has a quite few bugs regarding modal windows. We cannot do much about it within the GnuCash source code.
Well, is there any way we could send a "raise" event to all new windows after we create them? Would that even help? (I'm just grasping at straws).
This problem also occurs when the auto-save dialog informing the user of auto-saves appears. If the user is looking at another window and then alt-tabs back to GnuCash, the window will not appear at all and the application will appear frozen.
Should we try out the workaround in bug#371036#c7 for the most important ones of our modal dialogs?
Sigh. A quick test reveals this additional gtk_window_set_skip_taskbar_hint() doesn't fix the error, neither with or without GTK_DIALOG_MODAL flag. I'm afraid this will bite us hard on Windows...
It sounds like bug #112404 might be relevant as well. There's a patch up there, or if you're using a recent version of gtk 2.10 you might grab my binary I made from http://bzr.medsphere.com/~cody/libgdk-win32-2.0-0.dll and see if that helps any. I think it might help at least the original bug description. Once you start minimizing and restoring windows, there are other bugs that I haven't fixed yet but would like to.
(In reply to comment #8) > you might grab my binary and see if that helps any. With that binary, the problem of "alt-tabs back to GnuCash, the modal dialog will not appear at all" still persists. So that isn't fixed by this one, unfortunately.
That's right, that wouldn't be fixed. The thing that I think would be fixed is the bug described by the reporter.
That is, the part about "no new dialog appears and it becomes unresponsive". This is happening because the dialog -is- being created and mapped, but it's behind its transient child and it is modal, which is why input is not accepted anywhere else.
*** Bug 457017 has been marked as a duplicate of this bug. ***
*** Bug 463733 has been marked as a duplicate of this bug. ***
*** Bug 467000 has been marked as a duplicate of this bug. ***
*** Bug 478501 has been marked as a duplicate of this bug. ***
I've just committed a fix for #164537 and I believe it will solve this bug. Can anyone using GnuCash on Windows confirm this?
That is bug #164537 (adding this comment for auto-linking goodness).
GnuCash 2.2.2 ships GTK+ v2.12.3 now. Is this still a problem?
Still present using GnuCash 2.2.3
Okay, I'll install GnuCash on Windows and see if I can help debug this then.
Does this still happen with Gnucash 2.2.6?
Scratch that... Does this still happen with GnuCash 2.2.7?
I can confirm that this is fixed (in both 2.2.6 and 2.2.7). I've marked it as such. Andrew
GnuCash bug tracking has moved to a new Bugzilla host. This bug has been copied to https://bugs.gnucash.org/show_bug.cgi?id=395327. Please update any external references or bookmarks.