No description
ccc3d6277c
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 |
||
---|---|---|
.git-hooks | ||
.github | ||
.gitpod-files | ||
android | ||
browser | ||
common | ||
cypress_test | ||
debian | ||
docker | ||
etc | ||
fuzzer | ||
gtk | ||
indexing | ||
ios | ||
kit | ||
kubernetes/helm | ||
man | ||
net | ||
scripts | ||
test | ||
tools | ||
wasm | ||
wsd | ||
.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 | ||
CONTRIBUTING.md | ||
coolkitconfig-mobile.xcu | ||
coolkitconfig.xcu.in | ||
coolwsd-generate-proof-key | ||
coolwsd-systemplate-setup | ||
coolwsd-welcome.xml | ||
coolwsd.init.rhel6 | ||
coolwsd.service | ||
coolwsd.spec.in | ||
coolwsd.xml.in | ||
COPYING | ||
discovery.xml | ||
favicon.ico | ||
g | ||
jsstress.in | ||
Makefile.am | ||
NEWS | ||
PROBLEMS | ||
README.CONTRIBUTING.md | ||
README.FILENOTICES.md | ||
README.md | ||
SECURITY.md | ||
trace-event.sample2.json |
Collabora Online
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
- IRC:
#cool-dev
onirc.libera.chat
- Matrix: #cool-dev:libera.chat
- Telegram: CollaboraOnline
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
Further recommended reading with build details
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 click6080
. 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 orCYPRESS_BROWSER="firefox" make check-desktop spec=impress/scrolling_spec.js
for one specific test on desktop
- Do not try to click the URL from the make run out put instead copy that URL and execute