Как удалить (или скрыть) значки статуса чата из меню сообщений
Я бы знал, как удалить или скрыть в Ubuntu 12.04 раздел "Статус чата" (доступен, нет, занят, невидим и отключен) из меню сообщений, поскольку я не использую мгновенные сообщения. Я не хочу удалять все меню, только этот раздел.
Большое спасибо и наилучшие пожелания!!
3 ответа
ЗА 12.04
Если вы используете 13.10 или новее, смотрите здесь.,
Возможно...
Как видите, раздел статуса был удален, оставив только разделы Broadcast и Mail.
Положительное вращение - открытый исходный код означает, что у вас есть прямой доступ к фактическому исходному коду. Вы можете запрашивать и изменять код... до тех пор, пока вы возвращаете изменения кода другим!
Итак, здесь - следующее демонстрирует изменения кода, необходимые для пакета indicator-messages
предпосылки
Получим исходные пакеты из репозитория:
sudo apt-get build-dep indicator-messages
apt-get source indicator-messages
Это создаст папку - имя будет меняться в зависимости от версии пакета indicator-messages
, Для 12.04 эта папка indicator-messages-0.6.0
изменения кода
Два модуля в папке indicator-messages-0.6.0
нужно будет изменить.
cd indicator-messages-0.6.0/src
статус-items.c
Используя ваш любимый редактор, добавьте строку return NULL;
на или около строки 80 в показанной функции status_items_build:
Сообщения-service.c
В строке 893 или около нее в функции "resort_menu" закомментируйте код, показанный /*
а также */
давайте скомпилируем
Чтобы скомпилировать это, перейдите в родительскую папку
cd ..
Скомпилируйте, сделайте и установите:
./configure
make
sudo make install
Выйти и войти.
отменить
Чтобы отменить ваши изменения:
cd indicator-messages-0.6.0
sudo make uninstall
sudo apt-get --reinstall install indicator-messages
За 13.10
Если вы используете для 12.04 см. Здесь.
Практически те же шаги в разделе Как удалить (или скрыть) значки статуса чата из меню сообщений
Установите необходимые условия сборки
sudo apt-get build-dep indicator-messages
Скачать исходный архив
apt-get source indicator-messages
изменять
src/im-desktop-menu.c
, добавлять/*
а также*/
комментировать ненужное меню, как показано здесь:/* static GMenu * create_status_section (void) { GMenu *menu; GMenuItem *item; ... g_object_unref (item); return menu; } */ /* { GMenu *status_section; status_section = create_status_section(); im_menu_append_section (IM_MENU (menu), G_MENU_MODEL (status_section)); g_object_unref (status_section); } */
Удалять
Clear
пункт меню тоже:/* { GMenu *clear_section; clear_section = g_menu_new (); g_menu_append (clear_section, _("Clear"), "indicator.remove-all"); im_menu_append_section (IM_MENU (menu), G_MENU_MODEL (clear_section)); g_object_unref (clear_section); } */
компилировать
./autogen.sh ./configure make
устанавливать
sudo make install
Или, как я, я просто заменяю его, не удаляя оригинал (я использую 64bit):
Резервное копирование оригинала
sudo mv /usr/lib/x86_64-linux-gnu/indicator-messages/indicator-messages-service /usr/lib/x86_64-linux-gnu/indicator-messages/indicator-messages-service_orig
Скопируйте новую скомпилированную версию
sudo cp ./src/indicator-messages-service /usr/lib/x86_64-linux-gnu/indicator-messages/indicator-messages-service_mod
Создать ссылку на новую скомпилированную версию
sudo ln -s /usr/lib/x86_64-linux-gnu/indicator-messages/indicator-messages-service_mod /usr/lib/x86_64-linux-gnu/indicator-messages/indicator-messages-service
За 14.04
Если вы используете для 12.04 см. Здесь.
Те же шаги, что и 13.10 с различными модификациями
изменять
src/im-desktop-menu.c
, добавлять/*
а также*/
комментировать ненужное меню, как показано здесь:/* static void menu_append_status (GMenu *menu, const gchar *label, const gchar *detailed_action, const gchar *icon_name) { GMenuItem *item; GIcon *icon; ... g_object_unref (icon); g_object_unref (item); } static void im_desktop_menu_show_chat_section (ImDesktopMenu *menu) { GMenu *status_section; ... menu->status_section_visible = TRUE; g_object_unref (status_section); } */ ... /* if (g_desktop_app_info_get_boolean (app_info, "X-MessagingMenu-UsesChatSection")) im_desktop_menu_show_chat_section (menu); */
Вы можете удалить пакет индикаторных сообщений из центра программного обеспечения, чтобы полностью удалить его, или просмотреть эту ссылку, чтобы настроить его для своих нужд.