mate-desktop / mate-terminal

The MATE Terminal Emulator
http://www.mate-desktop.org
GNU General Public License v3.0
133 stars 73 forks source link

mate-terminal doesn't show confirmation dialog closing the window #355

Open sc0w opened 4 years ago

sc0w commented 4 years ago

Expected behaviour

show confirmation dialog closing mate-terminal when opening from another terminal with --command argument

Actual behaviour

it doesn't show confirmation dialog and shows the warning on closing:

** (mate-terminal:175053): CRITICAL **: 02:28:06.906: terminal_window_remove_screen: assertion 'gtk_widget_get_toplevel (GTK_WIDGET (screen)) == GTK_WIDGET (window)' failed

Steps to reproduce the behaviour

** (mate-terminal:175053): CRITICAL **: 02:28:06.906: terminal_window_remove_screen: assertion 'gtk_widget_get_toplevel (GTK_WIDGET (screen)) == GTK_WIDGET (window)' failed

MATE general version

1.24

Package version

1.24.0-3

Linux Distribution

debian testing/bullseye

selectiveduplicate commented 4 years ago

Doing a mate-terminal --command top with the same steps doesn't show the confirmation dialogue and produces that warning. But if I have a mate-terminal window open and then do the same steps on xterm, there's no warning (and no confirmation either).

Basically, if there's any running process in the terminal that needs closing first (like a manpage or top) there should be a confirmation dialogue upon closing mate-terminal window, but there isn't any.

The issue doesn't show if I use mate-terminal instead of xterm.

This is with 1.24.0 for both MATE and mate-terminal on Fedora 32.

lukefromdc commented 3 years ago

Looks like using --command top and thus top opening in a new terminal, the child terminal is not recognizing that it has an ongoing process and can thus be closed without the confirmation dialog. True here whether running this command (and spawning the child mate-terminal) from mate-terminal or xterm

lukefromdc commented 3 years ago

Confirming, though this should be edited to reflect that the issue is in a terminal opened from --command