Publicado em 26 de dezembro de 2019

JxBrowser 7.5

Um brinde a este lançamento próximo das férias! Aqui o que ela traz:

JSON

O JxBrowser 7.5 lhe permite converter objetos JavaScript numa string JSON e obter os objetos JavaScript a partir de uma string JSON. Por exemplo:

Json json = frame.json();
JsObject jsObject = json.parse("{\"one\":1,\"two\":2}");
String jsObjectJson = json.stringify(jsObject);

Favicons dinâmicos

Esta versão expande a funcionalidade que permite obter o favicon da página Web atualmente carregada, que foi introduzida na versão 7.2. Uma vez que algumas páginas Web alteram dinamicamente os seus favicons, decidimos permitir que o JxBrowser receba notificações quando o favicon da página Web carregada é alterado. Aqui está como:

browser.on(FaviconChanged.class, event -> {
    Bitmap newFavicon = event.favicon();
});

DOM API

Na versão 7.5, expandimos a DOM API com os seguintes métodos que estavam presentes no JxBrowser 6:

  • Element.scrollIntoView(AlignTo alignTo)
  • Node.compareDocumentPosition(Node otherNode)

PID do processo de renderização

Esta versão contém a API RenderProcess e a funcionalidade que permite obter o PID do processo de renderização onde o Frame está sendo executado. Por exemplo:

frame.renderProcess().pid();

A classe Navigation agora possui o método browser() que permite obter a instância Browser da instância Navigation.

Eventos de navegação

Os eventos NavigationStarted e NavigationFinished agora possuem o método isInMainFrame() que indica se a navegação está ocorrendo no frame principal ou não.

Endereço IP do UrlRequest

A classe ReceiveHeadersCallback.Params foi expandida com o método ipAddress() que permite obter o endereço IP do UrlRequest.

Melhorias

  • Esta versão tem um desempenho melhor quando se trabalha com objetos DOM e JavaScript.
  • Agora, todas as informações sensíveis, como a entrada do teclado e do mouse, senhas, etc., não são impressas no log de depuração.
  • A caixa de diálogo Salvar Arquivo, mostrada em DefaultStartDownloadCallback, agora é modal para as implementações Swing e JavaFX.
  • O método Navigation.loadUrlAndWait() agora lida com a navegação dentro da página web atualmente carregada (por exemplo, navigations para os # links internos).
  • Todos os binários do Chromium para Windows 32-bit e 64-bit são assinados com uma assinatura TeamDev válida e autorizada.

Problemas corrigidos

  • O erro IllegalStateException, ao focar o BrowserView após remover outro BrowserView e fechar seu Browser no modo de renderização acelerada por hardware.
  • Bloqueio de thread, ao acessar à funcionalidade durante a renderização ativa (por exemplo, reprodução de vídeo HTML5) na página web carregada no modo de renderização fora de tela.
  • O deadlock de thread ao fechar a caixa de diálogo Visualizar Impressão no modo de renderização fora de tela no Windows.
  • O erro IllegalArgumentException causado por largura e altura negativas, ao redimensionar o BrowserView no Windows no modo de renderização acelerada por hardware.
  • A perda de memória, ao fechar as instâncias Browser, enquanto seu Engine ainda está vivo.
  • A perda de memória, ao remover o componente BrowserView do seu container.
  • A perda de memória no processo de GPU do Chromium no macOS, ao redimensionar o BrowserView. A causa principal estava nas portas mach não lançadas em ambos os modos de renderização. Esta perda pode causar a reinicialização do sistema quando todas as portas disponíveis estiverem ocupadas.
  • Chamada da função XPathResult.asSnapshotNodes() o método gera o erro XPathException quando deveria retornar uma coleção vazia.
  • O método Document.frame() retorna o Frame errado quando a instância Document pertence a um IFRAME.
  • A chamada de retorno CanGetCookiesCallback não está recebendo os cookies esperados de um servidor Web, quando os cabeçalhos HTTP são substituídos em ReceiveHeadersCallback.
  • O conteúdo da Web é apresentado no canto superior esquerdo da tela principal, quando um componente Swing BrowserView é incorporado no container JTabbedPane.

Baixe o JxBrowser 7.5

Por favor, compartilhe seu e-mail conosco, e nós lhe enviaremos instruções para download.

Enviando...
Por favor, verifique sua caixa de entrada.

Não foi possível enviar o e-mail. Por favor, use o link direto para baixar o JxBrowser.

Se você é um cliente registrado, não precisa fazer nada para usar esta atualização.

Se você deseja avaliar o produto, precisa de uma licença de avaliação.

Obtenha Teste Gratuito de 30 dias
Go Top