GTK 3.99 está aqui e a um passo de GTK 4, conheça suas mudanças mais importantes

A versão final do GTK 3.99 já foi lançada e nele eu vouegan várias implementações que visam atualizações a serem oferecidas dentro GTK 4.

O ramo GTK 4 está sendo desenvolvido como parte de um novo processo desenvolvimento que tente fornecer aos desenvolvedores de aplicativos uma API estável e compatível por vários anos, ele pode ser usado sem medo de que a cada seis meses você terá que refazer aplicativos devido a alterações de API na próxima versão do GTK.

O que há de novo no GTK 3.99?

Nesta nova versão lançada do GTK 3.99, é removeu a antiga implementação de a API de acessibilidade para pessoas com deficiência e, em vez disso, uma nova versão baseada na especificação ARIA foi proposta e o widget GtkAccessible.

Para Windows, um novo backend de renderização GDK baseado em ANGLE foi proposto, uma camada intermediária para traduzir chamadas OpenGL ES para OpenGL, Direct3D 9/11, Desktop GL e Vulkan. Já para o macOS, um novo back-end GDK foi adicionado.

Outra das mudanças implementadas é o suporte para rótulos editáveis (GtkEditableLabel), mais novos modelos de lista foram propostos para exibir favoritos (GtkBookmarkList), Strings (GtkStringList) e Select Boxes (GtkBitset) e o widget GtkTreeView implementa a capacidade de editar células.

Das outras mudanças nesta versão:

  • GtkGridView e GtkListView melhoraram a implementação de rolagem, adicionaram suporte para rolagem automática e ocultação automática.
  • GtkWidget acelerou significativamente o processamento de várias ações.
  • Suporte de rolagem e filtragem incremental adicionado a GtkFilterListModel e GtkSortListModel.
  • O Inspetor adiciona suporte para inspecionar modelos de lista e a capacidade de navegar diretamente entre objetos.
  • No GDK, o histórico de deslocamento é salvo, a API GdkDevice foi limpa, a divisão de dispositivos em mestre e escravo foi interrompida.

O que é esperado do GTK4?

Quanto às mudanças que são esperadas para GTK4 (que tem previsão de lançamento entre outubro e novembro deste ano) é por exemplo um método de projeto de restrição, em que a posição e o tamanho dos elementos filhos são determinados com base na distância até as bordas e no tamanho de outros elementos.

Um módulo de renderização baseado na API gráfica Vulkan, que implementa sombreadores para muitos elementos CSS de uso intensivo de recursos usados ​​em widgets GTK.

Integração GSK (GTK Scene Kit) com recursos de renderização de cenas gráficas por meio de OpenGL e Vulkan.

Assim como o organização de representação foi revisada: Em vez de gerar um buffer, um modelo baseado em nó de renderização agora é usado, no qual a saída é organizada na forma de uma árvore de operações de alto nível, processadas de forma eficiente pela GPU usando OpenGL e Vulkan.

Um modelo de entrega de eventos modernizado o que elimina a necessidade de uma subjanela ao rotear eventos de entrada. A necessidade de implementação de um novo modelo está associada a um uso mais ativo dos efeitos de animação, que devem ser renderizados sem alterar o layout dos elementos visíveis e, conseqüentemente, sem subjanela.

API GDK reprojetada para aproveitar as vantagens do protocolo Wayland e conceitos relacionados. As funções relacionadas ao X11 e ao Wayland foram movidas para back-ends separados.

Para o desenvolvimento de widgets, um novo objeto GtkLayoutManager é apresentado com a implementação do sistema de controle para o desenho dos elementos em função do tamanho da área visível. GtkLayoutManager substituiu propriedades filho em contêineres GTK como GtkBox e GtkGrid.

Tratamento simplificado de eventos que agora são usados ​​apenas para entrada. O resto dos eventos foram substituídos por sinais separados.

O back-end da Broadway foi reescrito para permitir a renderização da saída da biblioteca GTK em uma janela do navegador da web.

A API relacionada às operações de arrastar e soltar foi alterada, incluindo os objetos GdkDrag e GdkDrop propostos separadamente.

Finalmente se você estiver interessado em saber mais sobre isso sobre o que esperar do GTk4, você pode verificar os detalhes no link a seguir.


Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: Miguel Ángel Gatón
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.