ansuz
ffbd428b87
better logging of browser fights
2016-04-21 15:06:03 +02:00
ansuz
4d44661f3b
more correct tests
2016-04-21 15:05:41 +02:00
ansuz
a18c793f98
use latest hyperjson
2016-04-21 14:53:53 +02:00
ansuz
980ff8a0ca
Fix a test that was failing on chrome
...
it failed for reasons which are irrelevant to our application
2016-04-21 12:16:48 +02:00
ansuz
9efcc443cd
add 'format' to TextPatcher's API
2016-04-21 12:16:11 +02:00
ansuz
0769e50414
move TextPatcher to highest application layer
2016-04-20 18:56:18 +02:00
ansuz
1d70335228
provide all callbacks before starting
2016-04-20 18:27:20 +02:00
ansuz
9498937b43
add a FIXME to the assert page
...
tests were failing (unnecessarily) on Chrome
2016-04-20 18:15:17 +02:00
ansuz
a3787ee4dc
Merge branch 'netflux' into beta
2016-04-20 15:25:00 +02:00
ansuz
06b464c524
move sheet/ to .git
2016-04-20 15:04:43 +02:00
ansuz
cdf02ac725
remove input pad
2016-04-20 15:00:21 +02:00
ansuz
11961b4f1d
export stringifyDOM to REALTIME_MODULE
2016-04-20 14:50:56 +02:00
ansuz
5db487db3f
remove old pad entirely
...
hyperjson version is considered a strict improvement
2016-04-20 14:26:56 +02:00
ansuz
010566d3c3
pushDelta was mistakenly deprecated. restored.
2016-04-20 14:20:34 +02:00
ansuz
1639c5b099
use hyperscript and hyperjson from common
2016-04-20 14:14:44 +02:00
ansuz
3598c93098
move new hyperjson into common
2016-04-20 14:14:06 +02:00
ansuz
103bb69daa
move custom hyperscript into common
2016-04-20 14:13:08 +02:00
ansuz
e357549eda
push browser fights into an array for inspection
2016-04-20 14:01:21 +02:00
ansuz
b83fb7b823
improve brFix logic
...
stop exporting functions which we wish to deprecate
2016-04-20 12:29:16 +02:00
ansuz
1c7954ed51
Grab Fabric off of the window
2016-04-20 12:13:04 +02:00
ansuz
06786b6e02
Remove redundant declaration
2016-04-20 10:37:20 +02:00
ansuz
df22c246c4
serialize text nodes correctly
2016-04-20 10:10:26 +02:00
ansuz
7ca5f47d02
remove multitest pad since it offers no significant benefit
2016-04-18 17:31:37 +02:00
ansuz
bafdd588dd
fix /hack/ to not require sharejs textarea
2016-04-18 17:14:00 +02:00
ansuz
f2db6b83eb
better sizing for palette options
2016-04-18 16:40:44 +02:00
ansuz
5ce158d2e2
add more colors
2016-04-17 20:21:19 +02:00
ansuz
7c4b334ad3
here's a canvas app!
2016-04-17 20:04:49 +02:00
ansuz
41276fffb5
repair /text/ application, conform to new API
2016-04-17 14:15:34 +02:00
ansuz
cb979844f6
implement text patching at application layer
2016-04-17 14:06:30 +02:00
ansuz
4a41575e6d
accept onLocal in config
2016-04-17 14:05:33 +02:00
ansuz
d3c2c901b6
implement cursor transformation in a common library
2016-04-17 14:02:45 +02:00
ansuz
92d89f6cac
start to factor sharejs into two modules
2016-04-15 18:17:45 +02:00
ansuz
13dc77b7f6
remove commented line
2016-04-15 18:16:54 +02:00
ansuz
41e635b2e5
realtime-input.js : turn on logging
2016-04-14 16:27:34 +02:00
Yann Flory
69e8e18283
Remove the pipe character in the hash
2016-04-14 16:10:08 +02:00
ansuz
d62e9fc1c9
add a missing semicolon
2016-04-14 15:41:02 +02:00
ansuz
4095201d15
Merge branch 'netflux' of github.com:xwiki-labs/cryptpad into integrate
2016-04-14 15:40:37 +02:00
Yann Flory
c32045d7d0
Fix an issue with missing characters when several users were typing at the same time
2016-04-14 15:30:42 +02:00
ansuz
822b2bd2b9
Merge branch 'netflux' of github.com:xwiki-labs/cryptpad into integrate
2016-04-14 14:47:22 +02:00
Yann Flory
be09a1808d
Remove old code from realtime-input
2016-04-14 14:46:42 +02:00
ansuz
5a5b9ad718
Merge branch 'netflux' into beta
2016-04-14 12:37:28 +02:00
ansuz
4af987a2a2
point to correct toolbar.js
2016-04-14 12:36:25 +02:00
ansuz
3ade46adc7
Merge branch 'newtests' into beta
2016-04-14 12:33:12 +02:00
Yann Flory
6884b0890a
Fix the typong tests not working properly
2016-04-14 12:24:17 +02:00
ansuz
b12a01e08f
report test results on the page, not in the console
2016-04-14 12:16:10 +02:00
ansuz
feaae609ad
fix broken path for padrtc
2016-04-14 10:48:25 +02:00
Yann Flory
ecc41d14af
Use canonical serializer for json serialization
2016-04-13 17:46:41 +02:00
ansuz
fc77ef66b3
Merge remote-tracking branch 'origin/sortify' into HEAD
...
utilize canonical stringify function
Conflicts:
www/_socket/main.js
2016-04-13 17:36:05 +02:00
Caleb James DeLisle
319f5b95f7
Use canonical serializer for json serialization
2016-04-13 16:54:34 +02:00
Yann Flory
9683fd9aec
Always serialize the DOM in one way.
2016-04-13 16:46:31 +02:00
Caleb James DeLisle
698338b49a
Use canonical serializer for json serialization
2016-04-13 16:43:59 +02:00
Yann Flory
e207d8b579
Merge branch 'diffdom' into netflux
2016-04-13 16:19:56 +02:00
ansuz
468827dadd
newest tests
2016-04-13 16:10:38 +02:00
ansuz
c867ab04ab
rename /_socket/ app to /p/
2016-04-13 16:01:45 +02:00
ansuz
a1fe941f69
Always serialize the DOM in one way.
2016-04-13 15:00:19 +02:00
ansuz
f4c5b2a996
Add sane defaults to TextPatcher diffs
2016-04-13 14:51:15 +02:00
ansuz
259772dd62
Turn on TextPatcher logging for _socket
2016-04-13 13:54:25 +02:00
ansuz
0537c28919
Add switchable logging to TextPatcher.js
2016-04-13 13:53:20 +02:00
Caleb James DeLisle
8a36963582
Enable ChainPad PARANOIA mode but remove the part which causes most slowness
2016-04-13 13:51:01 +02:00
ansuz
284da6a4e9
minor improvements I made to the /hack/ pad last night
2016-04-13 10:16:44 +02:00
ansuz
9f0cc4ed64
update hack with a slightly better UI
2016-04-12 18:51:03 +02:00
ansuz
71c0a06c3b
Merge branch 'hack' into diffdom
2016-04-12 18:17:01 +02:00
ansuz
19cd991dba
trim dead code, comment, very minor optimizations
2016-04-12 17:29:20 +02:00
ansuz
f75c246029
remove dead code from pad/main.js
2016-04-12 17:17:14 +02:00
ansuz
9f45ccb2d9
use console.error for stack traces
2016-04-12 16:47:30 +02:00
ansuz
d705b947ab
Merge branch 'diffdom' into netflux
...
basic cleanup while performing a larger merge between two prototypes
2016-04-12 15:56:43 +02:00
ansuz
2ffa69dc15
remove checks for a non-existent race condition
2016-04-12 15:55:03 +02:00
ansuz
368d72b337
add missing semicolons to TextPatcher.js
2016-04-12 15:39:53 +02:00
ansuz
851ccfbdb6
detect falsey operations in OT and ignore them
2016-04-12 15:37:47 +02:00
ansuz
400f6efde1
json-ot.js : jshint compliance
2016-04-12 15:37:47 +02:00
ansuz
a0999d1d2b
add a comment about why hashes are being stubbed
2016-04-12 15:36:03 +02:00
ansuz
ca94d30386
detect falsey operations in OT and ignore them
2016-04-12 15:35:07 +02:00
ansuz
9f9cd8d8cd
realtime-input.js : fixes for jshint compliance
2016-04-12 15:07:05 +02:00
ansuz
793149a608
json-ot.js : jshint compliance
2016-04-12 15:00:46 +02:00
ansuz
06a3b63923
jshint compliance for toolbar.js
2016-04-12 14:58:24 +02:00
ansuz
3b8238ef3b
add missing semicolons to pad/main.js
...
jshint compliance
2016-04-12 14:51:32 +02:00
ansuz
5cead3fad3
add missing semicolons to TextPatcher.js
2016-04-12 14:51:06 +02:00
ansuz
e6ab03164c
import TypingTests.js and expose at the console
...
RTWYSIWYG-54
> implement tests for components of the WYSIWYG editor
2016-04-12 14:34:47 +02:00
ansuz
94e57e4a26
update location of text-patcher.js
2016-04-12 14:21:31 +02:00
ansuz
b37dab1f49
Merge branch 'diffdom' into netflux
...
Simple cleanup and unit tests
2016-04-12 14:15:04 +02:00
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
2016-04-12 14:12:44 +02:00
ansuz
6bb37aed44
main.js : support tab insertion in /hack/ pad
2016-04-12 14:05:56 +02:00
ansuz
6b9d982d40
stabilize _socket/realtime-input.js
...
...as common/RealtimeTextSocket.js
2016-04-12 13:10:57 +02:00
ansuz
1a22592afa
remove unused modules from realtime-input.js
2016-04-12 13:06:52 +02:00
ansuz
39071021eb
stabilize typingTest.js as /common/TypingTests.js
2016-04-12 12:53:23 +02:00
ansuz
9805958ad7
stabilize text-patcher.js into /common/TextPatcher.js
2016-04-12 12:46:49 +02:00
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.
2016-04-12 12:27:33 +02:00
ansuz
7782069dbd
Merge pull request #15 from xwiki-labs/diffdom
...
merge diffdom into netflux
2016-04-12 10:21:19 +02:00
ansuz
a1f9b10175
remove offending line from chainpad entirely
...
RTCHAINPAD-3
2016-04-12 10:02:11 +02:00
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.
2016-04-12 09:55:50 +02:00
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
2016-04-12 09:52:36 +02:00
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/
2016-04-12 09:44:08 +02:00
Yann Flory
360fee9feb
Fix a new cursor error with Codepad
2016-04-11 17:58:30 +02:00
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)
2016-04-11 15:47:40 +02:00
Yann Flory
713c90242b
Hide the usernames when they have not been changed
2016-04-11 15:00:22 +02:00
Yann Flory
c53baab99d
Update Codepad with the latest improvements
2016-04-11 14:43:39 +02:00
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
2016-04-08 16:54:03 +02:00
ansuz
cd357a9136
turn an alert into a console.error
2016-04-07 17:03:30 +02:00
ansuz
ec64e0d381
use getAttribute to inspect document elements
...
el.getAttribute('attr') is more reliable than el[attr].
2016-04-07 15:55:57 +02:00
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
2016-04-07 15:50:56 +02:00
ansuz
842b9d4243
Generalize _socket/realtime-input.js a little more
...
Anything JSON related should be at the application layer
2016-04-07 15:48:38 +02:00
Yann Flory
cf9f60bd57
The server don't send back anymore messages to their sender
2016-04-07 11:27:14 +02:00
Yann Flory
eb4ea7a6b0
Remove the content from the ACK messages sent by the server
2016-04-05 15:06:38 +02:00
Yann Flory
ba4faea939
Update the pads to run with the latest improvements to the websocket server
2016-04-05 12:17:43 +02:00
Yann Flory
5ef7e29a9b
Add the latest changes from _socket into the netflux pad
2016-04-01 17:58:33 +02:00
ansuz
b59a14c5ac
merge hyperjson changes from realtime xwiki
...
more resilient class serialization.
comments
2016-04-01 11:20:19 +02:00
ansuz
2691d85582
use forked chainpad with assertions for _socket
2016-04-01 10:51:47 +02:00
Yann Flory
b41f0e8c50
Merge branch 'cjd-fixed-it-with-hax' into netflux2
2016-04-01 10:51:27 +02:00
ansuz
c50690349b
comments describing the role of each argument
2016-04-01 10:46:54 +02:00
ansuz
df78d284c4
initial state should be valid JSON so JSON parse doesn't fail
2016-04-01 10:44:23 +02:00
ansuz
96e03fcfa4
Use latest chainpad without mutations
2016-03-30 15:29:28 +02:00
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
2016-03-30 14:39:41 +02:00
ansuz
aaf7c777cc
add debugging info to the textPatcher
...
* kill dead code
* add assertions
* better logging for insertions and removals
2016-03-30 14:38:10 +02:00
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.
2016-03-30 14:36:11 +02:00
ansuz
e446a3645c
don't send funny BR attributes over the wire. Properly initialize the typing test
2016-03-29 17:21:02 +02:00
ansuz
22290590cb
don't rely on window scope in typingTest.js
2016-03-29 17:02:56 +02:00
ansuz
772ca5d30e
comment out debugging line
2016-03-29 17:01:57 +02:00
ansuz
6c340a6527
chainpad testing = true, reject non-compliant messages
2016-03-29 16:53:40 +02:00
ansuz
afa1104d85
Pull the cursor out of bogus BR tarpits when it gets stuck
2016-03-29 15:36:03 +02:00
ansuz
bac0e0ff88
implement hyperjson filtering
2016-03-29 15:35:40 +02:00
ansuz
e51635c4bb
fix index error
2016-03-29 15:34:58 +02:00
ansuz
3aebf7d2c2
minor changes to pass linting
2016-03-29 12:35:23 +02:00
ansuz
29e24f556c
kill another window variable
2016-03-29 12:13:57 +02:00
ansuz
e699073d45
attempt to preserve the magic line plugin while someone else is typing
2016-03-29 11:54:55 +02:00
ansuz
941f5361ea
forgot to add 'typingTest', which main depends on
2016-03-29 11:16:50 +02:00
ansuz
d852c578d8
removed dead code
2016-03-29 11:16:13 +02:00
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
2016-03-29 11:12:46 +02:00
ansuz
478ccbf984
revert changes to chainpad
2016-03-29 11:04:34 +02:00
ansuz
e3b78e20de
Merge branch 'cjd-fixed-it-with-hax' of github.com:xwiki-labs/cryptpad into cjd-fixed-it-with-hax
2016-03-25 18:01:51 +01:00
ansuz
e26246178f
start to clean up and give things more sensible names.
...
get rid of the textarea entirely
2016-03-25 18:01:23 +01:00
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
2016-03-25 17:35:07 +01:00
Caleb James DeLisle
f3fb674504
Merge branch 'cjd-fixed-it-with-hax' of github.com:xwiki-labs/cryptpad into cjd-fixed-it-with-hax
2016-03-25 16:50:17 +01:00
Caleb James DeLisle
98c85cef8b
xxx
2016-03-25 16:49:27 +01:00
ansuz
12dcbc9121
fix quick red fox and make test.cancel work again
2016-03-25 16:14:17 +01:00
Caleb James DeLisle
62eabbc7ae
If a message does not match parent hash, don't delete it from storage
2016-03-25 15:23:19 +01:00
Caleb James DeLisle
dbf31798d5
json-ot triggering PARANOIA errors in ChainPad
2016-03-25 15:01:17 +01:00
Caleb James DeLisle
03932d0169
small changes to chainpad for testing
2016-03-25 14:52:44 +01:00
Caleb James DeLisle
669bcc1935
If there is a difference in the hjson then send a message back
2016-03-25 14:26:31 +01:00
Caleb James DeLisle
f62ec85a4c
Shuffled around some assertions and logs
2016-03-25 14:14:19 +01:00
Caleb James DeLisle
420a7098a6
more testing and crap
2016-03-25 12:45:51 +01:00
ansuz
4b35a145e3
Push WIP
2016-03-25 11:04:27 +01:00
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.
2016-03-24 12:50:04 +01:00
ansuz
e066730b68
add notes about how hyperjson is to be used
2016-03-24 12:46:35 +01:00
ansuz
cd462ed872
Merge legacy websocket version
2016-03-24 12:28:45 +01:00
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
2016-03-24 12:16:42 +01:00
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.
2016-03-24 12:11:31 +01:00
ansuz
475ca9bea8
hyperjson.js : used split instead of filter... oops
2016-03-23 12:33:05 +01:00
ansuz
1bd5cb9e27
hyperjson.js : used split instead of filter... oops
2016-03-23 12:31:16 +01:00
ansuz
b2753ef7b7
fix string manipulation off-by-one
2016-03-22 19:29:58 +01:00
ansuz
f98fda7604
fix string manipulation off-by-one
2016-03-22 19:28:50 +01:00