Como remover (ou ocultar) ícones de status de bate-papo no menu Mensagens

6

Eu gostaria de saber como remover ou esconder no Ubuntu 12.04 a seção Status do bate-papo (disponível, ausente, ocupado, invisível e offline) no Menu de Mensagens, pois não estou usando nenhum mensageiro instantâneo. Eu não quero remover o menu inteiro, apenas essa seção.

Muito obrigado e os melhores cumprimentos !!

    
por user44849 07.09.2012 / 10:29

3 respostas

15

PARA 12,04

Se você estiver usando 13.10 ou mais recente, veja aqui. .

É possível ...

Como você pode ver, a seção de status foi removida deixando apenas as seções "Broadcast" e "Mail"

Para colocar um spin positivo - open-source significa que você tem acesso direto ao código-fonte real. Você pode interrogar e alterar o código ... contanto que você devolva o código para outras pessoas!

Então aqui vai - o seguinte demonstra as alterações de código que são necessárias para o pacote indicator-messages

pré-requisitos

Permite obter pacotes fonte do repositório:

sudo apt-get build-dep indicator-messages
apt-get source indicator-messages

Isso criará uma pasta - o nome será alterado dependendo da versão do pacote de indicator-messages . Para 12.04 esta pasta é indicator-messages-0.6.0

alterações de código

Dois módulos na pasta indicator-messages-0.6.0 precisarão ser alterados.

cd indicator-messages-0.6.0/src

status-items.c

Usando o seu editor favorito, adicione a linha return NULL; na ou na linha 80 na função "status_items_build" mostrada:

messages-service.c

Na ou ao redor da linha 893 na função "resort_menu", comente o código mostrado com /* e */

deixa compilar

Para compilar isso, mova para a pasta pai

cd ..

Compile, crie e instale:

./configure
make
sudo make install

Logout e login.

para desfazer

Para desfazer suas alterações:

cd indicator-messages-0.6.0
sudo make uninstall
sudo apt-get --reinstall install indicator-messages
    
por fossfreedom 15.04.2013 / 22:17
4

Para 13.10

Se você está usando para 12.04 veja aqui.

Quase os mesmos passos em Como remover (ou ocultar) Ícones de status de bate-papo no menu Mensagens

  • Instalar pré-requisitos de compilação

    sudo apt-get build-dep indicator-messages
    
  • Faça o download do arquivo de origem

    apt-get source indicator-messages
    
  • Modifique src/im-desktop-menu.c , adicione /* e */ para comentar o menu não necessário, conforme mostrado aqui:

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

    Para remover também o item de menu 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);
      }
    */
    
  • Compile

    ./autogen.sh
    ./configure
    make
    
  • Instalar

    sudo make install
    

    Ou, como eu, eu apenas o substituo, sem desinstalar o original (eu uso 64 bits):

    Backup original

    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
    

    Copie a nova versão compilada

    sudo cp ./src/indicator-messages-service /usr/lib/x86_64-linux-gnu/indicator-messages/indicator-messages-service_mod
    

    Crie um link para a nova versão compilada

    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
    

Para 14.04

Se você está usando para 12.04 veja aqui.

Mesmos passos que 13.10 com modificações diferentes

  • Modifique src/im-desktop-menu.c , adicione /* e */ para comentar o menu não necessário, conforme mostrado aqui:

    /*
    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);
    */
    
por user.dz 16.02.2014 / 00:30
0

Você pode remover o pacote indicador-mensagens do centro de software para removê-lo completamente ou ver este link para configurá-lo para as suas necessidades .

    
por Saeed Zarinfam 07.09.2012 / 10:33