Novo trabalho

Desde o dia 14 de novembro eu estou trabalhando para a basysKom, uma empresa da Alemanha muito ligada ao KDE. Finalmente um emprego onde posso trabalhar com o KDE :-)

O projeto em que estou trabalhando na basysKom é o Contour, que faz parte do Plasma Active. Um dos trabalhos que estou desenvolvendo é um substituto à caixa de diálogo de saída do KDE. A intenção é implementar uma caixa de diálogo mais fácil de ser usada em sistemas sensíveis ao toque, caso do Plasma Active. O resultado atual é esse:

O fato de ter somente três grandes botões é intencional, quanto menos botões menos problemas para usar :-) E botões grandes são mais fáceis de serem pressionados. A implementação está no branch ksmserver/qml-shutdowndlg do repositório git://anongit.kde.org/kde-workspace e foi feita parte em C++ e parte em QML. Este projeto está sendo um bom aprendizado de QML pra mim. Talvez no futuro (não próximo) eu possa usar o que aprendi no Plasma NM.

Para essa versão mais simples da caixa de diálogo não tive muitos problemas para implementar. Já para a versão  que irá substituir a caixa de diálogo atual eu tive bastante trabalho para implementar todas as suas funcionalidades e aparência, principalmente a parte de menu de contexto, que é fácil de fazer quando se tem um número estático de elementos, o que não é o meu caso. Outro problema ainda não resolvido e a parede de uso do teclado. Pelo que entendi QML é voltado para dispositivos sensíveis ao toque, onde não existe teclado. Por causa disso a implementação atual não usa tab order (usar a tecla TAB para selecionar o botão), pressionar ENTER não aciona o botão padrão e não é possível utilizar aceleradores (o subescrito que aparece em um label e que é usado para acionar o widget associado àquele label quando se pressionar a tela ALT + “letra do label).

Este final de semana terminei de implementar a maior parte das funcionalidades:

oxygen

Funciona inclusive com outros temas do Plasma:

Air

Androbit

Elegance

E aqui os dois menu de botões (veja o pequeno triângulo nos dois últimos botões):

 

QML shutdown dialog

Essas modificações talvez apareçam no KDE SC 4.8 (já é tarde para enviar novas funcionalidades, mas ainda há esperança). Para quem quiser testá-las pode fazê-lo inclusive no KDE SC 4.7, mas terá que compilar o plasmacomponents do kde-runtime master, o que não é difícil:

 

git clone git://anongit.kde.org/kde-runtime

mkdir kde-runtime/build

cd kde-runtime/build

cmake -DCMAKE_INSTALL_PREFIX=..

cd plasma/declarativeimports

make && make install

Depois disso é compilar o branch mencionado acima:

git clone git://anongit.kde.org/kde-workspace

cd kde-workspace

git checkout ksmserver/qml-shutdowndlg

mkdir build

cd build

cmake -DCMAKE_INSTALL_PREFIX=/usr ..

cd ksmserver

make && make install

Leave a Comment