Commit Graph

306 Commits (4af987a2a2e49fc6e56d2a88af382353c27e1fe0)

Author SHA1 Message Date
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
ansuz b12a01e08f report test results on the page, not in the console 2016-04-14 12:16:10 +02:00
ansuz c8dabbd6e7 Merge pull request #17 from xwiki-labs/sortify
Merge pull request #16 from xwiki-labs/beta
2016-04-14 11:15:30 +02:00
ansuz 9a33e7cbf0 Merge pull request #16 from xwiki-labs/beta
Beta
2016-04-14 11:14:23 +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 698338b49a Use canonical serializer for json serialization 2016-04-13 16:43:59 +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 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 2fdb4c1255 ignore external files and anything relying on es6
merge differences from netflux

Conflicts:
	.jshintignore
2016-04-12 15:39:28 +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 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 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
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
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
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