rafatosta / zapzap

WhatsApp desktop application written in Pyqt6 + PyQt6-WebEngine.
https://rtosta.com/zapzap-web/
GNU General Public License v3.0
86 stars 2 forks source link

Can't upload files #74

Closed aleprovencio closed 2 years ago

aleprovencio commented 2 years ago

I'm trying to upload files from the xdg-download folder which has allowed access from the default manifest, although I'm able to select on the FileChooser window it never goes thru whatsapp.

My flatpak permissions are almost default, with the only difference of using wayland over X11.

rafatosta commented 2 years ago

Even in Wayland sending files works perfectly, but there is a reason not to come by default. Please use standard settings to avoid inconvenient or make your modifications at your own at risk.

Kooha-07-27-2022-10-59-23.webm

Also check permissions for access to host files. image

aleprovencio commented 2 years ago

Actually your drag'n'drop workflow also works for me, so thanks for letting me know that.

What still does not work is by using whatsapp's attach buttons, so sorry about missing it from the issue description.

I've just enabled wayland because I don't have xwayland on my system, and my filesystem options are just like your screenshot.

rafatosta commented 2 years ago

What buttons do you refer to? Brasileiro? Pode falar em português rsrs

aleprovencio commented 2 years ago

Ops! :)

Estou indo pelo botão de anexar, aquele clips ao lado esquerdo da barra de mensagens, e aí selecionando Fotos, Documentos, etc

rafatosta commented 2 years ago

Testei mais cedo e funcionou também. Se puder mandar prints do problema ou vídeo eu agradeço.

aleprovencio commented 2 years ago

Acabei de perceber mais uma pista: estou no swaywm e costumo usar o zapzap em modo tiling, que é onde o problema acontece..reparei que quando mudo a janela do zapzap pra floating roda normal, como no vídeo anexado.

https://user-images.githubusercontent.com/1352683/181350470-d3e01aa9-2a20-4907-a220-56d68bf66079.mp4

rafatosta commented 2 years ago

Pelo menos funciona rsrs Faz o seguinte teste: Desativa a decoração do próprio aplicativo e refaz o procedimento. image

aleprovencio commented 2 years ago

Sim, ao menos está funcionando e com estes testes já descobrimos 2 formas diferentes :) Mas mesmo desabilitando esta decoração o problema continua ... esquisito demais !

rafatosta commented 2 years ago

Estou curioso com esse erro. Tem como gravar um vídeo tentando anexar um arquivo? Executa via terminal com flatpak run com.rtosta.zapzap pra ver se aparece alguma mensagem de erro.

aleprovencio commented 2 years ago

Repare que quando volta do FileChooser não acontece nem mesmo o preview do arquivo como observado no outro vídeo.

https://user-images.githubusercontent.com/1352683/181524772-8af68e34-ab02-441c-8b25-0f7902502152.mp4

rafatosta commented 2 years ago

swaywm

Muito estranho! Vou instalar uma distro com essa interface e fazer um teste pra descobri o motivo desse problema. Você usa qual distro?

aleprovencio commented 2 years ago

Archlinux, @rafatosta

rafatosta commented 2 years ago

Archlinux, @rafatosta

Vou procurar uma disto mais fácil de testar com esse ambiente pra tentar desvendar esse problema.

aleprovencio commented 2 years ago

Fique à vontade com sua escolha, mas só para conhecimento e apesar de eu nunca ter usado, hoje com o script archinstall me parece muito rápido fazer uma instalação e pelo que vi eles tem um profile para swaywm.

rafatosta commented 2 years ago

Fique à vontade com sua escolha, mas só para conhecimento e apesar de eu nunca ter usado, hoje com o script archinstall me parece muito rápido fazer uma instalação e pelo que vi eles tem um profile para swaywm.

Vi que no OpenSuse tem. Como já tenho uma VM com o Opensuse, então é só instalar o Sway e testar.

rafatosta commented 2 years ago

Cara, que DE mais complicada de usar. Não achei nem aonde mudar o tamanho da tela kkkkk image

Mesmo instalando o flatpak e o repo do flathub fica dando um erro estranho de variáveis de ambiente e só abre o app depois de um tempo. Enfim, o app abriu e todos os testes que fiz funcionaram.

aleprovencio commented 2 years ago

Cara olhando esta screenshot me parece que não está usando o zapzap em tiling ou mesmo rodando o Sway..

O sway na verdade está mais para um window manager do que um Desktop Environment, mas na verdade é um wayland compositor.

Caso não consiga testar no sway especificamente, talvez o problema aconteça em qualquer outro que tenha o modo tiling como seu gerenciamento default de janelas; Quero dizer mesmo alternativas X11 tiling WM's mesmo, como i3, bspwm, etc

rafatosta commented 2 years ago

Estava escrito Sway no instalador do opensuse TW. Como não conheço eu acreditei rsrs Enfim, acho que você chegou a conclusão do problema. Existe uma disto extensão para o gnome que aplica o tiling do PopOS que pretendo testar e verificar se isso acontece.

rafatosta commented 2 years ago

Usando o gnome-shell-extension-pop-shell funcionou aqui

image

aleprovencio commented 2 years ago

Aprofundando os testes aqui, descobri que o problema tem a ver com o backend xdg-desktop-portal usado. Eu tinha instalado aqui o xdg-desktop-portal-gtk e o xdg-desktop-portal-wlr, mas reparei que o zapzap estava usando o xdg-desktop-portal-gtk mesmo eu estando no sway.

Com nossos testes, vi que é perfeitamente possível eu continuar usando o xdg-desktop-portal-gtk com o zapzap colocando uma configuração no sway para sempre deixar este tipo de janela no modo float, o que evitaria o problema.

Contudo, apesar de não ser o escopo da issue e talvez nem mesmo da sua aplicação, fiquei curioso em saber por que ela estava usando o xdg-desktop-portal-gtk ao invés do xdg-desktop-portal-wlr.

Outra dúvida é que desinstalando o xdg-desktop-portal-gtk, o zapzap simplesmente não abre o FileChooser quando eu clico em algum dos ícones de anexar, enquanto que meus outros flatpaks funcionam normalmente.

Conseguiria me ajudar com este vespeiro? rsrs

rafatosta commented 2 years ago

Roda esse comando flatpak run -vv com.rtosta.zapzap 2> arquivo.log, tenta acessar o seletor de arquivos, fecha o app e manda esse log, por favor. Testa se o mesmo acontece em algum navegador em flatpak.

rafatosta commented 2 years ago

Por que não manter o portal-gtk? Achei alguns problemas parecidos e a solução foi instalação do portal-gtk.

aleprovencio commented 2 years ago

Por que não manter o portal-gtk? Achei alguns problemas parecidos e a solução foi instalação do portal-gtk.

Sou um ignorante em flatpaks, mas realmente gostaria de entender por que eu preciso ter um portal-gtk sendo que o zapzap é desenvolvido em qt rodando em um sistema baseado em wlroots (sway).

Roda esse comando flatpak run -vv com.rtosta.zapzap 2> arquivo.log, tenta acessar o seletor de arquivos, fecha o app e manda esse log, por favor. Testa se o mesmo acontece em algum navegador em flatpak.

Rodei em 2 situações, a primeira apenas com o xdg-desktop-portal-wlr instalado e a segunda junto com ele o xdg-desktop-portal-gtk.

portal-wlr.log portal-gtk.log

rafatosta commented 2 years ago

Não tenho ideia do motivo.

Achei isso relacionado ao portal. Tenta mudar a variável do ambiente e testa novamente. https://github.com/flatpak/flatpak/issues/1957#issuecomment-412860191

rafatosta commented 2 years ago

Revisei a documentação do xdg-desktop-portal e está tudo ok por parte do aplicativo. Sendo o uso do QFileDialog executa o seletor de arquivo do sistema em que está executando. Como você disse que o problema não acontece quando não usa o tiling, então é algo do lado do sistema do cliente.

A solução para o SEU caso: manter xdg-desktop-portal-gtk