Como fazer um ícone da área de trabalho da mostra em um canto da tela?

3

Eu sei como colocar um ícone do Show Desktop no lançador, mas gostaria de ter um em um canto.

A razão para isto é que no Launcher eu tenho que "cuidadosamente" clicar nele, enquanto que se estiver na esquina, eu posso ser mais "agressivo".

EDIT: Eu testei algumas das soluções nas respostas, mas nenhuma realizou o meu objetivo, talvez porque eu não disse com precisão: eu quero, em um canto, um ícone da área de trabalho da área de trabalho (ou não, eu realmente não não importa se ao invés eu tenho que mover o ponteiro para o canto) de tal forma que quando eu seleciono, o Desktop é mostrado e eu posso trabalhar no Desktop, por exemplo copiar algum arquivo lá, abrir um terminal, etc. e então, eu posso voltar para todas as janelas minimizadas com o mesmo ícone.

A solução do @Serg tem dois problemas: 1) O ícone é fixo, mas não está em um canto. 2) Não me deixa voltar para as janelas minimizadas.

A solução da @Heynnema tem o maior problema de o ícone apenas "mostrar" o Desktop, mas não consigo trabalhar nele: se eu clicar com o botão direito em algum espaço vazio para abrir um terminal, esse espaço pode não ser realmente "vazio" no sentido de que, se eu tivesse uma janela aberta, as opções de clique direito exibidas são as dessa janela antes de serem minimizadas.

A solução do @GautamVashisht parece ser a mesma do Heynnema, porque o Hot Corners é ativado sempre que eu o ativo no CCSM.

    
por Diego 06.11.2016 / 02:05

3 respostas

4

disclaimer: Eu sou autor deste indicador e está escrito para esta pergunta específica

Introdução

O Ubuntu, por padrão, não tem a opção de mover o ícone "Show Desktop" - ele precisa estar no inicializador. Você também pode exibi-lo no menu Alt + Tab. No entanto, é possível criar um pequeno miniaplicativo de indicadores, que ficará no seu painel superior, o que se aproxima muito da sua necessidade de colocar o ícone no canto da tela. Esta resposta fornece exatamente isso

Uso

O uso é muito simples. Salve o código na sua pasta ~/bin , por exemplo, para mim, seria /home/serg/bin/show_desktop_indicator . Para torná-lo aberto sempre que você fizer login no seu Ubuntu, procure em Dash por "Startup Applications", abra o aplicativo e adicione o caminho completo ao indicador como novo comando.

Você também pode fazer o download da pasta zip com o indicador da página do Github do projeto

Essencialmente, minimiza todas as janelas abertas. Há duas maneiras de fazer isso. Um, você pode clicar no ícone do indicador e clicar na entrada de menu "Mostrar área de trabalho" ou usar o clique do meio do mouse no próprio ícone.

Código

Também disponível em Github

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

#
# Author: Serg Kolo , contact: [email protected]
# Date: November 5th, 2016
# Purpose: appindicator for minimizing all windows
# Written for: http://askubuntu.com/q/846067/295286
# Tested on: Ubuntu 16.04 LTS
#
#
# Licensed under The MIT License (MIT).
# See included LICENSE file or the notice below.
#
# Copyright © 2016 Sergiy Kolodyazhnyy
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included
# in all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
import gi
gi.require_version('AppIndicator3', '0.1')
gi.require_version('Notify', '0.7')
from gi.repository import GLib as glib
from gi.repository import AppIndicator3 as appindicator
from gi.repository import Gtk as gtk
from gi.repository import Gdk

class ShowDesktop(object):

    def __init__(self):
        self.app = appindicator.Indicator.new(
            'files-indicator', "user-desktop",
            appindicator.IndicatorCategory.OTHER
        )
        self.app.set_status(appindicator.IndicatorStatus.ACTIVE)
        self.make_menu()

    def add_menu_item(self, menu_obj, item_type, image, label, action, args):
        """ dynamic function that can add menu items depending on
            the item type and other arguments"""
        menu_item, icon = None, None
        if item_type is gtk.ImageMenuItem and label:
            menu_item = gtk.ImageMenuItem.new_with_label(label)
            menu_item.set_always_show_image(True)
            if '/' in image:
                icon = gtk.Image.new_from_file(image)
            else:
                icon = gtk.Image.new_from_icon_name(image, 48)
            menu_item.set_image(icon)
        elif item_type is gtk.ImageMenuItem and not label:
            menu_item = gtk.ImageMenuItem()
            menu_item.set_always_show_image(True)
            if '/' in image:
                icon = gtk.Image.new_from_file(image)
            else:
                icon = gtk.Image.new_from_icon_name(image, 16)
            menu_item.set_image(icon)
        elif item_type is gtk.MenuItem:
            menu_item = gtk.MenuItem(label)
        elif item_type is gtk.SeparatorMenuItem:
            menu_item = gtk.SeparatorMenuItem()
        if action:
            menu_item.connect('activate', action, *args)

        menu_obj.append(menu_item)
        menu_item.show()



    def make_menu(self):
        self.app_menu = gtk.Menu()
        content = [self.app_menu,gtk.MenuItem,
                   None,'Show Desktop',
                   self.show_desktop,[None]
        ]
        self.add_menu_item(*content)
        last = None
        for i in self.app_menu.get_children():
             last = i
        self.app.set_secondary_activate_target(last)

        content = [self.app_menu,gtk.ImageMenuItem,
                   'exit','Quit',
                   self.quit,[None]
        ]
        self.add_menu_item(*content)
        self.app.set_menu(self.app_menu)

    def show_desktop(self,*args):
        screen = Gdk.Screen.get_default()
        for w in screen.get_window_stack():
            w.iconify()
            w.process_all_updates()

    def run(self):
        """ Launches the indicator """
        try:
            gtk.main()
        except KeyboardInterrupt:
            pass

    def quit(self, *args):
        """ closes indicator """
        gtk.main_quit()


def main():
    """ defines program entry point """
    indicator = ShowDesktop()
    indicator.run()

if __name__ == '__main__':
  try:
    main()
  except  KeyboardInterrupt:
    gtk.main_quit()

Indicador em ação:

Tema de ícones do Ubuntu com o Kylin:

    
por Sergiy Kolodyazhnyy 06.11.2016 / 05:49
2

Ainda melhor ...

Instale Compiz configuration settings manager ( compizconfig-settings-manager no Synaptic ou no terminal).

Inicie o CompizConfig Settings Manager no Unity Dash e escolha o Expo plugin.

Emseguida,altereoExpoCorner/EdgedeNenhumparaqualquercantoouladoquevocêgostariadeativá-lo.EuescolhiocantoTopRight.EntãosaiadoCCSM.

Agora você pode simplesmente passar pelo mouse até o canto TopRight, clicar uma vez na área de trabalho / viewport desejada, e voila, nenhum ícone da área de trabalho é necessário!

    
por heynnema 06.11.2016 / 15:24
0

Não há nenhuma maneira específica no Ubuntu até agora para mover o ícone Show Desktop no lançador para um canto. Mas existem algumas maneiras alternativas (alternativas) que você pode usar para acessar a tela da Área de Trabalho! Alguns deles estão listados abaixo: -

1.) Tecla de Atalho Alt + Tab

Use a tecla de atalho Alt + Tab . É usado principalmente para aplicações de comutação. Quando você pressiona a tecla Alt + Tab , o primeiro ícone que aparece à esquerda é o ícone Mostrar área de trabalho . Você pode Tabear até chegar a este ícone para acessar a tela da sua Área de trabalho.

2.) Super + D ou Ctrl + Alt + D Tecla de atalho

No Unity Desktop, você pode usar a tecla de atalho padrão Super + D ou Ctrl + Alt + D para acessar a tela da área de trabalho.

3.) Acessando a tela da área de trabalho usando Hotcorners

Para fazer isso, primeiro instale o Unity Tweak Tool pelo Ubuntu Software Center ou digite sudo apt-get install unity-tweak-tool no terminal. Em seguida, abra / inicie o Unity Tweak Tool e clique em Hotcorners em Gerenciador do Windows . Em seguida, na seção Geral , ative Hotcorners e, na seção Comportamento , selecione Alternar Área de Trabalho na caixa adjacente à hotcorner você deseja usar. Então, sempre que você passar o cursor naquele canto, verá sua tela da área de trabalho.

Referências: Acessando o ícone Show Desktop no Ubuntu

    
por Gautam Vashisht 06.11.2016 / 03:52