Skip to content

Latest commit

 

History

History
61 lines (45 loc) · 2.29 KB

File metadata and controls

61 lines (45 loc) · 2.29 KB

Plano — PyTranslucidTb

Clone do TranslucentTB em Python puro para Windows 11.

Objetivo

Deixar a barra de tarefas do Windows transparente ou desfocada, controlável por um ícone na bandeja, com as preferências salvas em disco e a opção de iniciar junto com o sistema (aparecendo em Aplicativos de inicialização).

Como funciona (núcleo técnico)

O Windows expõe a função não documentada SetWindowCompositionAttribute na user32.dll. Ao definir uma ACCENT_POLICY na janela da barra de tarefas (Shell_TrayWnd e as secundárias Shell_SecondaryTrayWnd), conseguimos os estados:

Estado Efeito
ACCENT_DISABLED barra padrão do Windows
ACCENT_ENABLE_TRANSPARENTGRADIENT transparente
ACCENT_ENABLE_BLURBEHIND desfoque
ACCENT_ENABLE_ACRYLICBLURBEHIND acrílico

O Windows reaplica o estilo próprio da barra com frequência (ao abrir o Menu Iniciar, passar o mouse etc.), então um laço leve reaplica o efeito a cada ~100 ms.

Observação honesta: o resultado visual pode variar conforme a build do Windows 11, já que a barra passou a ser renderizada em XAML. A API é a mesma usada pelo TranslucentTB.

Módulos

Arquivo Responsabilidade
pytranslucidtb/taskbar.py aplica o efeito via ctypes/user32
pytranslucidtb/config.py persiste preferências em %APPDATA%\PyTranslucidTb\config.json
pytranslucidtb/autostart.py liga/desliga o início automático via HKCU\...\Run
pytranslucidtb/app.py ícone de bandeja (pystray) + laço de reaplicação
pytranslucidtb/__main__.py / run.pyw pontos de entrada

Persistência e início com o sistema

  • Preferências: JSON em %APPDATA%\PyTranslucidTb\config.json (estado ligado, efeito, autostart).
  • Início automático: valor em HKCU\Software\Microsoft\Windows\CurrentVersion\Run. É o mecanismo que faz o app surgir em Aplicativos de inicialização e iniciar com o Windows.

Etapas de entrega (commits atômicos)

  1. .gitignore
  2. Plano
  3. Módulo da barra (taskbar.py)
  4. Persistência (config.py)
  5. Início automático (autostart.py)
  6. Ícone de bandeja (app.py + entradas)
  7. Dependências (requirements.txt)
  8. README

Dependências

  • pystray — ícone de bandeja
  • pillow — imagem do ícone