Расширение оболочки Gnome не загружается автоматически после входа в систему или перезапуска оболочки gnome

Я пытаюсь исправить и улучшить всплывающую подсказку gs-ext-applications-overview-tooltip, созданную Франко Бьянкони, чтобы она работала в gnome-shell 3.10 и 3.12. Я разветвил его код на git-hub и смог исправить некоторые проблемы и внести некоторые улучшения. К моему большому удивлению, расширение теперь работает в оболочке gnome 3.12, также предоставленные мной улучшения работают, как и ожидалось. Мой код находится здесь, на github.

Моя проблема в том, что расширение не работает сразу после запуска или после перезапуска gnome-shell. Я должен отключить расширение и снова включить его. Затем всплывающие подсказки в обзоре приложений отображаются, как и ожидалось. Если я перезапущу gnome-shell (Alt + F2: r), я должен сделать то же самое.

Мне не удалось найти в журналах никаких связанных сообщений об ошибках, и я не знаю, чем это вызвано. Может ли кто-нибудь дать мне несколько советов?

РЕДАКТИРОВАТЬ:

На самом деле я только что понял, что вызывает это. Расширение позволяет получать ссылки на аппиконы из обзора, если оно включено.

let appIcons = Main.overview.viewSelector.appDisplay._views[1].view._items;

Это приводит к пустому объекту appIcons, когда обзор приложения еще не был «посещен», что происходит после входа в систему или перезапуска gnome-shell. Если я перехожу в обзорное меню и затем снова включаю расширение, оно работает, потому что оно может получить ссылку на значки приложений из обзора.

Вопрос: как мне решить проблему?

РЕДАКТИРОВАТЬ2:

Я только что понял это, если сделаю следующее:

let appIcons;
appIcons = Main.overview.viewSelector.appDisplay._views[1].view._items;
Object.getOwnPropertyNames(appIcons);

в консоли зеркала сразу после перезапуска gnome-shel отображаются все приложения из обзора приложений. Так что это работает так, как ожидалось. Только расширение ведет себя по-другому, и мне нужно сначала посетить обзор и снова включить расширение.


person karlitos    schedule 21.05.2014    source источник


Ответы (1)


Кто-то на Github был так любезен и предоставил решение этой проблемы. Решение см. в этом запросе на включение.

person karlitos    schedule 21.05.2014