如何从Messaging菜单中删除(或隐藏)聊天状态图标

我知道如何在消息菜单中删除或隐藏Ubuntu 12.04中的聊天状态部分 (可用,离开,忙碌,不可见和离线),因为我没有使用任何即时消息。 我不想删除整个菜单,只是该部分。

非常感谢,最诚挚的问候!

聊天状态部分截图

为12.04

如果您使用的是13.10或更新版本,请参阅此处。 。


这是可能的…

PIC

如您所见,状态部分已被删除,只留下广播和邮件部分

放一个积极的旋转 – 开源意味着你可以直接访问实际的源代码。 您可以查询和更改代码……只要您将代码更改回馈给其他人!

所以这里 – 下面演示了包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; 显示在函数“status_items_build”中的第80行或其附近:

PIC2

消息-service.c

在函数“resort_menu”中的第893行或其附近注释掉用/**/显示的代码

PIC3

让我们编译

要编译它,请移至父文件夹

 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 

    或者像我一样,我只需更换它,而无需卸载原装(我使用64位):

    备份原件

     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); */ 

您可以从软件中心删除指示器消息包以完全删除它,或者查看此链接以根据您的需要进行配置。