No description
Find a file
Michael Meeks ccc3d6277c deltas: fix re-consitution of canvas' from rawDeltas under pressure.
When we need to re-constitute a canvas from the cached compressed
tile.rawDeltas, we could re-enter via var ctx = this._ensureContext(tile);
as we had to populate the canvas with the previous content before
applying our new delta.

Its important to ensure that we don't then try to apply the same
delta (or set of deltas) twice - ie. move the context/re-constitution
before we append the new deltas to the tile.rawDeltas.

Previously showing the same delta applied twice:

Applying a raw keyframe of length 7320
Applied keyframe 0 of total size 264270 at stream offset 0 size 262144
Applied chunk 1 of total size 2126 at stream offset 262144 size 53
Applied chunk 2 of total size 2073 at stream offset 262197 size 2073
Applied chunk 0 of total size 2073 at stream offset 0 size 2073

Signed-off-by: Michael Meeks <michael.meeks@collabora.com>
Change-Id: Ib23bb81e6d3534f140ff3472afed1010c6f98cc2
2023-07-18 09:43:34 +02:00
.git-hooks
.github fix(helm): ci with helm- prefix on tag and release 2023-06-30 08:11:12 +05:30
.gitpod-files a11y: add config for enable/disable accessibility in general 2023-06-08 00:00:51 +02:00
android android: after sdk 30 WRITE_EXTERNAL_STORAGE is not required 2023-07-15 20:33:18 +05:30
browser deltas: fix re-consitution of canvas' from rawDeltas under pressure. 2023-07-18 09:43:34 +02:00
common Typos: wake-up. 2023-07-17 11:35:25 +02:00
cypress_test cypress: cypress logs for cool.html iframe 2023-07-10 10:49:04 -04:00
debian Bump version to 23.05.1.2 2023-06-26 12:45:41 +02:00
docker docker: remove obsolete fix 2023-07-07 19:11:01 +02:00
etc
fuzzer
gtk
indexing
ios Bump version to 23.05.1.1 2023-06-23 18:55:31 +02:00
kit memory: add dump_malloc_stats helper. 2023-07-18 09:43:34 +02:00
kubernetes/helm updated k8s readme to use collaboraonline.github.io repo 2023-06-30 10:03:29 +05:30
man
net Typos: wake-up. 2023-07-17 11:35:25 +02:00
scripts Poco: build for Android 2023-07-02 10:29:16 +02:00
test deltas: more unit tests for wire-id fun. 2023-07-18 09:43:34 +02:00
tools cid#318955 Uninitialized scalar field 2023-07-05 14:49:59 +02:00
wasm
wsd deltas: fold the update: command back into an empty delta: command. 2023-07-17 11:35:25 +02:00
.cirrus.yml
.clang-format
.clang-tidy
.gitignore
.gitpod.dockerfile
.gitpod.yml
.mailmap
AUTHORS
autogen.sh
browsersync-config.js
ChangeLog
CODE_OF_CONDUCT.md
config.h.in
config_version.h.in
configure.ac configure.ac: Fix missing space in test command 2023-06-30 21:04:34 +02:00
CONTRIBUTING.md
coolkitconfig-mobile.xcu add dark mode settings to coolkitconfig-mobile.xcu 2023-07-03 11:01:07 +02:00
coolkitconfig.xcu.in Disable CalcHiddenColRow by default 2023-06-28 11:31:30 +03:00
coolwsd-generate-proof-key
coolwsd-systemplate-setup
coolwsd-welcome.xml
coolwsd.init.rhel6
coolwsd.service
coolwsd.spec.in configure option to disable building unit tests 2023-06-16 09:12:21 +02:00
coolwsd.xml.in admin: added retryInterval option in monitor config 2023-06-29 18:21:33 +02:00
COPYING
discovery.xml
favicon.ico
g
jsstress.in
Makefile.am fail make check early in typical dev setup if core not built using --without-system-nss 2023-07-04 21:30:34 +01:00
NEWS
PROBLEMS
README.CONTRIBUTING.md
README.FILENOTICES.md
README.md Update README.md (remove outdated build status links) 2023-06-26 10:28:13 +02:00
SECURITY.md
trace-event.sample2.json

Open in Gitpod

Collabora Online

Master: Pull request policy

irc Telegram Forum Website L10n Gitpod Ready-to-Code

Your own private Office in the Cloud

Get in touch 💬

Key features

  • View and edit text documents, spreadsheets, presentations & more
  • Collaborative editing features
  • Works in any modern browser no plugin needed
  • Open Source primarily under the MPLv2 license. Some parts are under other open source licences, see e.g. browser/LICENSE.

Website

For many more details, build instructions, downloads and more please visit https://collaboraonline.github.io/

Developer assistance

Please ask your questions on any of the bridged IRC/Matrix/Telegram rooms

Join the conversation on our Discourse server at https://forum.collaboraonline.com/

Watch the tinderbox status (if it's green) at https://cpci.cbg.collabora.co.uk:8080/job/Tinderbox%20for%20online%20master%20against%20co-22.05/

Development bits

This project has several components:

  • wsd/
    • The Web Services Daemon - which accepts external connections
  • kit/
    • The client which lives in its own chroot and renders documents
  • common/
    • Shared code between these processes
  • browser/
    • The client side JavaScript component
  • test/
    • C++ based unit tests
  • cypress_test/
    • JavaScript based integration tests

Please consult the README files in the component's directory for more details:

iOS and Android apps

See the corresponding READMEs:

GitPod

Head over to https://collaboraonline.github.io/post/build-code/ select gitpod from the dropdown and follow the steps.

Interesting things to keep in mind:

  • Make sure your browser is not blocking windows/tabs from opening from the gitpod workspace URL (maybe add *.gitpod.io to your browser's whitelist)
    • The GitPod tasks will run automatically and further instructions will be printed out right in the terminal
    • VNC tab will open automatically if not just click in the left icon Remote explorer and click 6080. You will see a tab completly black, that's normal.
    • As mentioned in those instructions if you are not using the VS Code desktop and if you are only relying on your browser please:
      • Do not try to click the URL from the make run out put instead copy that URL and execute firefox [paste URL here]
      • Head over to the tab where the VNC is opened (black page), you will see Firefox opening there, maximize and have fun.
      • You can also run cypress tests via GitPod but you will need to use Firefox, for that just prepend CYPRESS_BROWSER="firefox" to the desired command. Example: CYPRESS_BROWSER="firefox" make check for every test or CYPRESS_BROWSER="firefox" make check-desktop spec=impress/scrolling_spec.js for one specific test on desktop

Enjoy!