page9
Umas das características a ser aproveitada no LOOL é que muito da edição de documentos não trata de modificações, mas a maior parte do tempo é gasta em leitura, revisão e navegação de documentos. Para economizar a atualização dos pixels pelo servidor, abrimos mão do LibreOffice Kit que é executado no navegador. Ao passear pelo documento, ou revisitá-lo, não haverá necessidade de comunicação com o servidor.
Desta forma, a possibilidade do javascript do navegador entender coisas do documento permite uma utilização mais suave no browser. Esta é a mesma funcionalidade usada pelo Firefox e pelo LibreOffice ambos para Android, para conseguir uma renderização suave. O LibreOffice Kit parece ser o caminho aqui.
Mundo Libre
evento
LibreOffice Magazine | Abril 2015
<número>
Cache de visualização do documento
Não menos importante em ambientes on-line é que a colaboração genérica entre usuários com vários dispositivos, assíncronos, no mesmo documento é um problema insano. Resolver a parada mesmo para casos simples (por exemplo, reordenar edições conflitantes) não é trivial para qualquer conjunto de operações intercedentes. Mas para nosso caso há dois fatores simplificadores.
Primeiro, há uma instância central única do LibreOfficeKit renderizando e fornecendo “tiles” para todos os clientes. Isso reduz significativamente a necessidade de uma reordenação assíncrona do fluxo de operações de mudanças, que é também o caso em que conflitos de edição devem ser vistos quando criados.
Em segundo lugar, há um conjunto de operações de alto nível, por exemplo seleção, edição, exclusão e redimensionamento de objetos que podem ser incrementados ao longo do tempo para estender as funcionalidades básicas de edição.
O caso da colaboração