ansuz
4071a3aa25
revert to using the chainpad in /common/
...
now that we have found the problem that caused the backspace bug
we don't need a special chainpad for testing.
9 years ago
ansuz
4ba68eb2bf
fix leaky variable in chainpad
...
Patch.transform declared a 'toTransform' variable without using 'var'
this caused it to leak onto the window during operational transformations
9 years ago
ansuz
05108efdfa
correct chainpad's transformation function
...
addresses RTCHAINPAD-3
Pending further testing, this change will still need
to be corrected in https://github.com/xwiki-contrib/chainpad/
9 years ago
ansuz
cd357a9136
turn an alert into a console.error
9 years ago
ansuz
ec64e0d381
use getAttribute to inspect document elements
...
el.getAttribute('attr') is more reliable than el[attr].
9 years ago
ansuz
f5b0e1a5df
Add comments, debug variables. initialize better
...
Expose Hyperscript via window.REALTIME_MODULE
Make sure to pass in a JSON.parse'able initial state.
Add comments detailing the problems with not using setAttribute
9 years ago
ansuz
842b9d4243
Generalize _socket/realtime-input.js a little more
...
Anything JSON related should be at the application layer
9 years ago
ansuz
b59a14c5ac
merge hyperjson changes from realtime xwiki
...
more resilient class serialization.
comments
9 years ago
ansuz
2691d85582
use forked chainpad with assertions for _socket
9 years ago
ansuz
c50690349b
comments describing the role of each argument
9 years ago
ansuz
df78d284c4
initial state should be valid JSON so JSON parse doesn't fail
9 years ago
ansuz
96e03fcfa4
Use latest chainpad without mutations
9 years ago
ansuz
d5772c6315
when json-ot produces json that fails to parse...
...
export the relevant data to a window variable so we can inspect it better
9 years ago
ansuz
aaf7c777cc
add debugging info to the textPatcher
...
* kill dead code
* add assertions
* better logging for insertions and removals
9 years ago
ansuz
523df40d09
Debugging concurrent typing:
...
track whether there are local operations in progress, such that we can tell
whether a remote change is interrupting the DOM's conversion to hjson.
9 years ago
ansuz
e446a3645c
don't send funny BR attributes over the wire. Properly initialize the typing test
9 years ago
ansuz
22290590cb
don't rely on window scope in typingTest.js
9 years ago
ansuz
772ca5d30e
comment out debugging line
9 years ago
ansuz
6c340a6527
chainpad testing = true, reject non-compliant messages
9 years ago
ansuz
afa1104d85
Pull the cursor out of bogus BR tarpits when it gets stuck
9 years ago
ansuz
bac0e0ff88
implement hyperjson filtering
9 years ago
ansuz
e51635c4bb
fix index error
9 years ago
ansuz
3aebf7d2c2
minor changes to pass linting
9 years ago
ansuz
29e24f556c
kill another window variable
9 years ago
ansuz
e699073d45
attempt to preserve the magic line plugin while someone else is typing
9 years ago
ansuz
941f5361ea
forgot to add 'typingTest', which main depends on
9 years ago
ansuz
d852c578d8
removed dead code
9 years ago
ansuz
5591aae8fa
Clean up main file
...
* convert.js includes the vdom library, which we aren't using anymore
- removed, and replaced with the simple functions from Hyperjson and Hyperscript
* removed several variables that had been exported to 'window'
* moved the testing functions out into their own file for easier reuse
* restructured realtime initialization to be more compact
9 years ago
ansuz
478ccbf984
revert changes to chainpad
9 years ago
ansuz
e3b78e20de
Merge branch 'cjd-fixed-it-with-hax' of github.com:xwiki-labs/cryptpad into cjd-fixed-it-with-hax
9 years ago
ansuz
e26246178f
start to clean up and give things more sensible names.
...
get rid of the textarea entirely
9 years ago
Caleb James DeLisle
b372b0b77c
small change to chainpad in order to make it more likely to fail if the authDoc goes into the wrong state
9 years ago
Caleb James DeLisle
f3fb674504
Merge branch 'cjd-fixed-it-with-hax' of github.com:xwiki-labs/cryptpad into cjd-fixed-it-with-hax
9 years ago
Caleb James DeLisle
98c85cef8b
xxx
9 years ago
ansuz
12dcbc9121
fix quick red fox and make test.cancel work again
9 years ago
Caleb James DeLisle
62eabbc7ae
If a message does not match parent hash, don't delete it from storage
9 years ago
Caleb James DeLisle
dbf31798d5
json-ot triggering PARANOIA errors in ChainPad
9 years ago
Caleb James DeLisle
03932d0169
small changes to chainpad for testing
9 years ago
Caleb James DeLisle
669bcc1935
If there is a difference in the hjson then send a message back
9 years ago
Caleb James DeLisle
f62ec85a4c
Shuffled around some assertions and logs
9 years ago
Caleb James DeLisle
420a7098a6
more testing and crap
9 years ago
ansuz
4b35a145e3
Push WIP
9 years ago
ansuz
0d33af773f
implement optional filtering in hyperjson
...
Implemented via callback, return falsey if you want to filter an element
and all of its children from the serialized result.
9 years ago
ansuz
1bd5cb9e27
hyperjson.js : used split instead of filter... oops
9 years ago
ansuz
b2753ef7b7
fix string manipulation off-by-one
9 years ago
ansuz
0c6222b5f9
better error reporting when the operational transform fails to parse JSON
9 years ago
ansuz
79a9998b13
implement better serialization of class names
...
RTWYSIWYG-27 : poorly formed yet valid HTML caused hyperjson to produce element
selectors which hyperscript could not parse.
9 years ago
ansuz
bd24821c6c
Don't attempt to use the cursor selection when it has length 0
...
RTWYSIWYG-20
RTWYSIWYG-24
9 years ago
ansuz
3a7af63c54
correct malformed json
9 years ago
ansuz
136e2d8cf2
pass in missing textarea argument so textpad starts working again
9 years ago