Часть старого окна остается после закрытия программы

Часть старого окна остается после закрытия программы

После закрытия программы часть окна остается открытой. Затронутая часть экрана остается такой же, какой она была, когда окно было открыто, и остается поверх других окон. Это не проблема перерисовкикак таковой-- xrefreshне помогает, так как перекрашивает плохое окно.

Это фантомное окно не отображается на «панели задач» или переключателе Alt+Tab, но это не просто артефакт экрана. Когда я провожу по нему мышкой, курсор меняется, так что оно все еще рассматривается в некотором роде как окно (хотя его нельзя выбрать или изменить, и у него нет полноценной панели заголовка).

Есть идеи, как это изменить? К сожалению, эта проблема случается со мной с некоторой регулярностью, может быть, раз в две недели. Поскольку я оставляю компьютер включенным на длительное время для выполнения расширенных вычислений, это более чем небольшое неудобство, поскольку он блокирует часть дисплея на несколько недель, пока работа не будет завершена, и я не смогу перезапустить его.

решение1

Я нашел ответ и записал его здесь для тех, у кого может возникнуть та же проблема.

Сначала я xpropискал, какое окно вызывало проблему. ( xkillздесь это было неэффективно.) Оказалось, что это было gtk-window-decorator.

Затем я убил его по его pid (заданному xpropили ps). Наконец, я перезапустил его (используя Alt + F2, чтобы он не был привязан к терминалу), чтобы получить заголовки и другие украшения.

решение2

Лучше всего запустить команду "ps -A", чтобы увидеть запущенные процессы. Убедитесь, что вы не запускаете критические программы, и закройте как можно больше программ, так как это покажет меньше процессов в команде "ps -A".

Затем вы продолжаете убивать каждый из процессов по одному, пока фантомные окна не исчезнут. Запишите программы, прежде чем убивать их. Это на тот случай, если вы убьете процесс, который засорит ваш компьютер (память, вы всегда можете перезагрузить). Это означает, что вы перезагрузите и начнете снова, когда в следующий раз появится окно.

Это итеративный процесс, но он поможет вам найти неисправности.

Как только вы обнаружите проблемную программу, удалите ее или установите для нее атрибут, запрещающий ее выполнение.

Также погуглите процессы, которые вы видите, это даст вам представление о том, какой процесс является нормальным, а какой нет, но может быть причиной.

Связанный контент