35

I have installed a Ubuntu GNOME and found that I am getting lots of PROGRAM is not responding messages.

I have either to "Force Quit" the program or "Wait" for it a little more.

I've noticed that each time I wait for the program, the program eventually continues without issues.

So, I think there might be a "timeout" configuration for programs to be considered non-responding and I want to increase this timeout.

Lucio
  • 19,191
  • 32
  • 112
  • 191
malhobayyeb
  • 1,522

4 Answers4

16

It could not be configured, because the timeout value is defined as constant value in the mutter source. gnome-shell refers mutter library. I found the timeout value at the mutter source, mutter-3.10.4/src/core/display.c.

...
#define PING_TIMEOUT_DELAY 5000

And it's used by a below function named as meta_display_ping_window

ping_data->ping_timeout_id = g_timeout_add (PING_TIMEOUT_DELAY, meta_display_ping_timeout, ping_data);

It's referred from the function when the window is activated:

window_activate(mutter-3.10.4/src/core/window.c) -> meta_window_check_alive(mutter-3.10.4/src/core/delete.c) -> meta_display_ping_window(mutter-3.10.4/src/core/display.c)

As you can see at above, the timeout is 5 seconds.

You can modify the value just for you because mutter is open source project.

And the timeout value is referred another case when the window is closed. Window delete flow is as

meta_window_delete(mutter-3.10.4/src/core/delete.c) -> meta_window_check_alive(mutter-3.10.4/src/core/delete.c) -> meta_display_ping_window(mutter-3.10.4/src/core/display.c)

However, I think that you need to modify the source for your delayed window. Or I think that you can discuss about it with the mutter developers/maintainers.

You can prepare the build environment and get the source with following commands.

$ sudo apt-get build-dep mutter
$ sudo apt-get source mutter

To build it, Refer

https://www.debian.org/doc/manuals/apt-howto/ch-sourcehandling.en.html https://wiki.debian.org/BuildingTutorial

kos
  • 41,268
xiaodongjie
  • 2,874
8

Use can change the mutter value via dconf (/org/gnome/mutter/check-alive-timeout) - default is 5000.

Stefan Haas
  • 81
  • 1
  • 2
4

This bug was fixed. A backport was released for Ubuntu 18 as gnome-shell 3.28.4 on 2019-6-6. See How To Disable the "Window not responding" Dialog

user10489
  • 5,533
0

I don’t know if answering this old question has any sense, but maybe for someone it will be helpful.

I tried to build the mutter library from source, but I gave up, because this library depends on many other libraries, and those libraries also depends on other libraries.

I needed a way to close this dialog once if it appears, but I was not able to close it in the wine application. So I wrote a small script in bash, that will kill this window if it appears.

#!/bin/bash 

while [  true ]; do
    VAL=$(ps -fA | grep "class mutter-dialog" | grep -cv grep)

    if [ $VAL -eq 1 ]
    then
            ID=$(ps -fA | grep "class mutter-dialog" | grep -v grep | awk '{print $2}')
            sleep 5
            echo killing $ID
            kill $ID
            exit 0
    fi

    sleep 10
done
Tom
  • 29