Как очистить все уведомления оболочки gnome?

21

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

Однако я хочу иметь возможность удалить все уведомления оболочки gnome несколькими щелчками мыши. В настоящее время весь мой нижний край экрана заполнен уведомлениями, и я не хочу очищать каждый элемент по одному.

Итак, мой вопрос, как я могу очистить эти уведомления? Если это невозможно в пользовательском интерфейсе, можно ли написать расширение для этого? Где я должен предложить эту функцию разработчикам гномов? Форумы Gnome почти мертвы, администратор не активировал мою созданную учетную запись уже 5 дней!

aatish
источник
Такие программы, как hplipвсе уведомления, сгруппированы в один прокручиваемый список в моей области уведомлений GNOME Shell. Может быть, это ошибка?
Кристофер Кайл Хортон

Ответы:

5

Насколько я знаю, в настоящее время нет способа очистить все уведомления в gnome-shell. Ваш нижний экран такой? (не Firefox, а любые приложения, заполняющие нижнюю панель)

введите описание изображения здесь

Я попытался найти все документы по дизайну в вики и до сих пор не могу найти дизайн или спецификацию для очистки всех уведомлений.

Вы можете запросить эту функцию, открыв отчет об ошибке здесь


Дополнительная информация: клиринг в Unity

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

введите описание изображения здесь

Маниш Синха
источник
Привет, похоже, что другие опубликовали примерно такую ​​же проблему на форумах. спасибо, что дали мне ссылку. ну, я действительно предпочитаю систему сообщений в gnome shell и тот факт, что я могу общаться без перехода на другое приложение. Сказав это, я думаю, что уведомления должны быть легко отклонены.
aatish
@ user19448 Я думаю, что часть чата не имеет отношения к уведомлениям как таковым в этом особом случае. Это более глубокая интеграция эмпатии в оболочку гнома. Если бы не было интеграции с чатом, вы бы предпочли систему сообщений в gnome-shell?
Маниш Синха
Вау, я отвечаю слишком поздно. Нет, не совсем. Функция интеграции в чат - это то, что я действительно ценю в Gnome Shell. Сравните это с Unity, где каждый раз, когда кто-то что-то говорит, мне нужно нажимать маленькую кнопку и осторожно (не теряя фокус во всплывающем меню) идти вниз и выбирать элемент, чтобы сфокусировать окно чата. Какой смысл иметь такое индикаторное меню, когда дешевле (вовремя) нажать alt tab и найти окно чата? Чат - это не само действие, это дополнительное действие к тому, что вы делаете, и я думаю, что Gnome Shell действительно поняла эту идею.
aatish
@ user19448 «спуститесь вниз и выберите элемент, чтобы сфокусировать окно чата» -> Вы, кажется, упустили, для чего предназначено это меню сообщений. Это для тех уведомлений, которые не должны красть ваше внимание, пока вы работаете. Это уведомление о том, что что-то важное ждет вас. Меню сообщений не само действие, а индикация. Вы неправильно поняли меню сообщений. Во-вторых, сравнение встроенного чата и меню обмена сообщениями сравнивает яблоки с апельсинами
Маниш Синха
18

Бесстыдно, используя этот обходной путь с форумов Fedora здесь .

Вы можете сбросить gnome-shell, набрав Alt+ F2, введя rи нажав enter. Это сбрасывает / перезапускает оболочку GNOME и очищает все уведомления.

Мартен Вервийс
источник
Ищите это решение для моей машины Fedora, и оно работает как часы. По моему личному мнению, это лучший и более простой ответ.
Рубенс Мариуццо
Да, это единственное, что, кажется, действительно делает работу в данный момент.
айчеди
Это удалило все настройки из моих расширений. Мне пришлось заново все перенастроить. Ни один из них больше не был активирован.
Себастьян Барт
отлично, разморозить скорлупу!
кот
17

Если это все еще беспокоит вас, я нашел обходной путь для использования Юпитера. Хитрость заключается в том, чтобы добавить временную подсказку к уведомлениям, которые отправляет jupter.

Для меня (установленный Юпитер через webupd8 ppa на 11.10), соответствующий файл для изменения /usr/lib/jupiter/scripts/notify

Для моей настройки я должен был внести изменения --hint int:transient:1в каждый вызов notify-sendскрипта. Таким образом, мой скрипт уведомления Юпитера изменился с:

    function notify {
      if [ ! "$NO_NOTIFY" = "1" ]; then
        ICON=$2
        MESSAGE=$1
        if [ "$DISTRIB_RELEASE" = "9.10" ]; then
          DISPLAY=:0.0 /usr/bin/notify-send -i $ICON -t 1500 "$MESSAGE" 2>/dev/null
        else
          USER=$(who | sed -n '/ (:0[\.0]*)$\| :0 /{s/ .*//p;q}')
          USERCNT=$(who | wc -l)
          if [ ! "$(whoami)" = "$USER" ]; then
            if [ ! "$USERCNT" -lt 1 ]; then
               su $USER -l -c "DISPLAY=:0.0 /usr/bin/notify-send -i $ICON -t 700 \"$MESSAGE\" 2>/dev/null"
            fi
        else
            if [ ! "$USERCNT" -lt 1 ]; then
             /usr/bin/notify-send -i $ICON -t 700 "$MESSAGE" 2>/dev/null
            fi
          fi
        fi
      fi
    }

чтобы:

    function notify {
      if [ ! "$NO_NOTIFY" = "1" ]; then
        ICON=$2
        MESSAGE=$1
        if [ "$DISTRIB_RELEASE" = "9.10" ]; then
          DISPLAY=:0.0 /usr/bin/notify-send --hint int:transient:1 -i $ICON -t 1500 "$MESSAGE" 2>/dev/null
        else
          USER=$(who | sed -n '/ (:0[\.0]*)$\| :0 /{s/ .*//p;q}')
          USERCNT=$(who | wc -l)
          if [ ! "$(whoami)" = "$USER" ]; then
            if [ ! "$USERCNT" -lt 1 ]; then
               su $USER -l -c "DISPLAY=:0.0 /usr/bin/notify-send --hint int:transient:1 -i $ICON -t 700 \"$MESSAGE\" 2>/dev/null"
            fi
        else
            if [ ! "$USERCNT" -lt 1 ]; then
             /usr/bin/notify-send --hint int:transient:1 -i $ICON -t 700 "$MESSAGE" 2>/dev/null
            fi
          fi
        fi
      fi
    }

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

Надеюсь это поможет!

jat255
источник
1
--hint int:transient:1это колени пчелы! Огромное спасибо. Это исправило мои проблемы с notify-send(в моих сценариях администратора), а также.
Сехе
-1

Нажмите на любое уведомление, и оно исчезнет, ​​если у него нет собственного меню (информационное или свернутое приложение).

wisemonkey
источник
Правильно, проблема возникает, когда у вас есть 150 уведомлений. Никто действительно не хочет нажать 150 раз, чтобы сбросить их все. В моем случае у меня есть Google Drive Sync, который уведомляет меня каждый раз, когда он что-то синхронизировал. Если я работаю над файлом и он сохраняется, я постоянно получаю уведомления об изменениях статуса.
csgeek
-2

Просто нажмите Alt+ F2, введите букву Rи удар Enter.

Это не решение для очистки уведомлений, но я использую его для этой цели. :) Что это действительно делает, так это перезапускает GNOME Shell. После перезапуска GNOME Shell все уведомления исчезают.

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

kkarpieszuk
источник
4
Это по сути идентично этому предыдущему ответу . Вы добавили немного больше информации ... но вы могли бы подумать о том, чтобы добавить это как изменение к другому ответу. (Не заставляйте этот другой ответ читать точно так же, как этот, просто добавьте недостающую информацию.) Если вы решите это сделать, вы можете удалить этот ответ.
Элия ​​Каган