ansuz
cdf02ac725
remove input pad
9 years ago
ansuz
11961b4f1d
export stringifyDOM to REALTIME_MODULE
9 years ago
ansuz
5db487db3f
remove old pad entirely
...
hyperjson version is considered a strict improvement
9 years ago
ansuz
010566d3c3
pushDelta was mistakenly deprecated. restored.
9 years ago
ansuz
1639c5b099
use hyperscript and hyperjson from common
9 years ago
ansuz
3598c93098
move new hyperjson into common
9 years ago
ansuz
103bb69daa
move custom hyperscript into common
9 years ago
ansuz
e357549eda
push browser fights into an array for inspection
9 years ago
ansuz
b83fb7b823
improve brFix logic
...
stop exporting functions which we wish to deprecate
9 years ago
ansuz
1c7954ed51
Grab Fabric off of the window
9 years ago
ansuz
06786b6e02
Remove redundant declaration
9 years ago
ansuz
df22c246c4
serialize text nodes correctly
9 years ago
ansuz
7ca5f47d02
remove multitest pad since it offers no significant benefit
9 years ago
ansuz
bafdd588dd
fix /hack/ to not require sharejs textarea
9 years ago
ansuz
f2db6b83eb
better sizing for palette options
9 years ago
ansuz
5ce158d2e2
add more colors
9 years ago
ansuz
7c4b334ad3
here's a canvas app!
9 years ago
ansuz
41276fffb5
repair /text/ application, conform to new API
9 years ago
ansuz
cb979844f6
implement text patching at application layer
9 years ago
ansuz
4a41575e6d
accept onLocal in config
9 years ago
ansuz
d3c2c901b6
implement cursor transformation in a common library
9 years ago
ansuz
92d89f6cac
start to factor sharejs into two modules
9 years ago
ansuz
13dc77b7f6
remove commented line
9 years ago
ansuz
41e635b2e5
realtime-input.js : turn on logging
9 years ago
Yann Flory
69e8e18283
Remove the pipe character in the hash
9 years ago
ansuz
d62e9fc1c9
add a missing semicolon
9 years ago
ansuz
4095201d15
Merge branch 'netflux' of github.com:xwiki-labs/cryptpad into integrate
9 years ago
Yann Flory
c32045d7d0
Fix an issue with missing characters when several users were typing at the same time
9 years ago
ansuz
822b2bd2b9
Merge branch 'netflux' of github.com:xwiki-labs/cryptpad into integrate
9 years ago
Yann Flory
be09a1808d
Remove old code from realtime-input
9 years ago
ansuz
5a5b9ad718
Merge branch 'netflux' into beta
9 years ago
ansuz
4af987a2a2
point to correct toolbar.js
9 years ago
ansuz
3ade46adc7
Merge branch 'newtests' into beta
9 years ago
Yann Flory
6884b0890a
Fix the typong tests not working properly
9 years ago
ansuz
b12a01e08f
report test results on the page, not in the console
9 years ago
ansuz
feaae609ad
fix broken path for padrtc
9 years ago
Yann Flory
ecc41d14af
Use canonical serializer for json serialization
9 years ago
ansuz
fc77ef66b3
Merge remote-tracking branch 'origin/sortify' into HEAD
...
utilize canonical stringify function
Conflicts:
www/_socket/main.js
9 years ago
Caleb James DeLisle
319f5b95f7
Use canonical serializer for json serialization
9 years ago
Yann Flory
9683fd9aec
Always serialize the DOM in one way.
9 years ago
Caleb James DeLisle
698338b49a
Use canonical serializer for json serialization
9 years ago
Yann Flory
e207d8b579
Merge branch 'diffdom' into netflux
9 years ago
ansuz
468827dadd
newest tests
9 years ago
ansuz
c867ab04ab
rename /_socket/ app to /p/
9 years ago
ansuz
a1fe941f69
Always serialize the DOM in one way.
9 years ago
ansuz
f4c5b2a996
Add sane defaults to TextPatcher diffs
9 years ago
ansuz
259772dd62
Turn on TextPatcher logging for _socket
9 years ago
ansuz
0537c28919
Add switchable logging to TextPatcher.js
9 years ago
Caleb James DeLisle
8a36963582
Enable ChainPad PARANOIA mode but remove the part which causes most slowness
9 years ago
ansuz
284da6a4e9
minor improvements I made to the /hack/ pad last night
9 years ago
ansuz
9f0cc4ed64
update hack with a slightly better UI
9 years ago
ansuz
71c0a06c3b
Merge branch 'hack' into diffdom
9 years ago
ansuz
19cd991dba
trim dead code, comment, very minor optimizations
9 years ago
ansuz
f75c246029
remove dead code from pad/main.js
9 years ago
ansuz
9f45ccb2d9
use console.error for stack traces
9 years ago
ansuz
d705b947ab
Merge branch 'diffdom' into netflux
...
basic cleanup while performing a larger merge between two prototypes
9 years ago
ansuz
2ffa69dc15
remove checks for a non-existent race condition
9 years ago
ansuz
368d72b337
add missing semicolons to TextPatcher.js
9 years ago
ansuz
851ccfbdb6
detect falsey operations in OT and ignore them
9 years ago
ansuz
400f6efde1
json-ot.js : jshint compliance
9 years ago
ansuz
a0999d1d2b
add a comment about why hashes are being stubbed
9 years ago
ansuz
ca94d30386
detect falsey operations in OT and ignore them
9 years ago
ansuz
9f9cd8d8cd
realtime-input.js : fixes for jshint compliance
9 years ago
ansuz
793149a608
json-ot.js : jshint compliance
9 years ago
ansuz
06a3b63923
jshint compliance for toolbar.js
9 years ago
ansuz
3b8238ef3b
add missing semicolons to pad/main.js
...
jshint compliance
9 years ago
ansuz
5cead3fad3
add missing semicolons to TextPatcher.js
9 years ago
ansuz
e6ab03164c
import TypingTests.js and expose at the console
...
RTWYSIWYG-54
> implement tests for components of the WYSIWYG editor
9 years ago
ansuz
94e57e4a26
update location of text-patcher.js
9 years ago
ansuz
b37dab1f49
Merge branch 'diffdom' into netflux
...
Simple cleanup and unit tests
9 years ago
ansuz
a07774e81a
Implement tests for serialization
...
ensure that complex DOM elements can serialize and deserialize without modifications
RTWYSIWYG-54
> implement tests for components of the WYSIWYG editor
9 years ago
ansuz
6bb37aed44
main.js : support tab insertion in /hack/ pad
9 years ago
ansuz
6b9d982d40
stabilize _socket/realtime-input.js
...
...as common/RealtimeTextSocket.js
9 years ago
ansuz
1a22592afa
remove unused modules from realtime-input.js
9 years ago
ansuz
39071021eb
stabilize typingTest.js as /common/TypingTests.js
9 years ago
ansuz
9805958ad7
stabilize text-patcher.js into /common/TextPatcher.js
9 years ago
ansuz
2c34833d2c
break text-patcher's functionality into components
...
text-patcher.js now exports diff, patch, log, and apply change
in addition to the previous 'create' method.
9 years ago
ansuz
7782069dbd
Merge pull request #15 from xwiki-labs/diffdom
...
merge diffdom into netflux
9 years ago
ansuz
a1f9b10175
remove offending line from chainpad entirely
...
RTCHAINPAD-3
9 years ago
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
Yann Flory
360fee9feb
Fix a new cursor error with Codepad
9 years ago
Yann Flory
c2e0dded3a
Fix an issue with the cursor sometimes disappearing when a patch was received
...
Update CodeMirror to the latest version (5.13.2)
9 years ago
Yann Flory
713c90242b
Hide the usernames when they have not been changed
9 years ago
Yann Flory
c53baab99d
Update Codepad with the latest improvements
9 years ago
Yann Flory
0b3d6e15b8
Replace the Netflux old client (netflux.js) by the Netflux2 client.
...
Move the WebRTC peer-to-peer use case in /padrtc, which still uses the old
Netflux client
Use es6-promises.min.js to solve a issue with some browser and the new
Netflux client
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
Yann Flory
cf9f60bd57
The server don't send back anymore messages to their sender
9 years ago
Yann Flory
eb4ea7a6b0
Remove the content from the ACK messages sent by the server
9 years ago
Yann Flory
ba4faea939
Update the pads to run with the latest improvements to the websocket server
9 years ago
Yann Flory
5ef7e29a9b
Add the latest changes from _socket into the netflux pad
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
Yann Flory
b41f0e8c50
Merge branch 'cjd-fixed-it-with-hax' into netflux2
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
42c972116b
leave TODO re: diffDOM and magicline
...
Hyperjson guarantees that magicline elements are not sent across the wire.
DiffDOM must guarantee that magicline elements will not be removed on remote edits.
9 years ago
ansuz
e066730b68
add notes about how hyperjson is to be used
9 years ago
ansuz
cd462ed872
Merge legacy websocket version
9 years ago
ansuz
c047d5310f
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.
Conflicts:
www/common/convert.js
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
475ca9bea8
hyperjson.js : used split instead of filter... oops
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
f98fda7604
fix string manipulation off-by-one
9 years ago
ansuz
4f3fcb08a4
better error reporting when the operational transform fails to parse JSON
9 years ago
ansuz
0ff4906f0e
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
fbe6225681
Don't attempt to use the cursor selection when it has length 0
...
RTWYSIWYG-20
RTWYSIWYG-24
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
Yann Flory
de6db0285c
Limit the size of the usernames to 32 chars
9 years ago
Yann Flory
38d797a4f1
Fix issue with Chrome and WebRTC
9 years ago
Yann Flory
7237c751d5
Move 'vdom' to the main 'pad'.
...
Hide the right-hand panel (can de bisplayed with a 'debug' button)
Hide the IDs of users if they don't change their name
9 years ago
Yann Flory
e77d85bc82
Trigger an onReady() method when the user's pad is fully synced (the history is loaded)
9 years ago