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
ansuz
4f3fcb08a4
better error reporting when the operational transform fails to parse JSON
2016-03-22 12:13:15 +01:00
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.
2016-03-22 12:13:01 +01:00
ansuz
fbe6225681
Don't attempt to use the cursor selection when it has length 0
...
RTWYSIWYG-20
RTWYSIWYG-24
2016-03-22 12:12:46 +01:00
ansuz
0c6222b5f9
better error reporting when the operational transform fails to parse JSON
2016-03-22 10:19:13 +01:00
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.
2016-03-22 10:16:14 +01:00
ansuz
bd24821c6c
Don't attempt to use the cursor selection when it has length 0
...
RTWYSIWYG-20
RTWYSIWYG-24
2016-03-22 10:06:42 +01:00
Yann Flory
de6db0285c
Limit the size of the usernames to 32 chars
2016-03-16 17:48:27 +01:00
Yann Flory
38d797a4f1
Fix issue with Chrome and WebRTC
2016-03-16 17:38:26 +01:00
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
2016-03-16 17:09:08 +01:00
Yann Flory
e77d85bc82
Trigger an onReady() method when the user's pad is fully synced (the history is loaded)
2016-03-16 14:00:14 +01:00
Yann Flory
eca4ec699c
Ability to change the username (the user ID is displayed by default)
2016-03-16 12:02:39 +01:00
Yann Flory
6e50ae94dd
Remove unused code
2016-03-15 10:51:19 +01:00
Yann Flory
5da8560e22
Fix the user list in the toolbar keeping old data with the WebSocket server
...
Chainpad is no longer responsible for the userlist or the ping
2016-03-15 10:37:27 +01:00
Yann Flory
3a188625e0
Improve the detection of a disconnected peer to update the user list with the WebRTC service
2016-03-14 15:20:00 +01:00
Yann Flory
77e7fb5724
Fix an issue with the WebRTC service where it was impossible to join a channel once someone had left this channel
2016-03-14 14:49:19 +01:00
Yann Flory
06e5c84702
Clean some code
2016-03-11 17:32:45 +01:00
Yann Flory
29033f344c
Merge branch 'netflux' of github.com:xwiki-labs/cryptpad into netflux
2016-03-11 17:15:55 +01:00
Yann Flory
b1e8bcddef
Fix the user list not working with the WebRTC service and causing major issues
2016-03-11 17:09:27 +01:00
Yann Flory
c576241104
Add a Chainpad adapter to make Chainpad know the userList
2016-03-10 18:48:38 +01:00
ansuz
fb0e82931d
correct malformed json
2016-03-10 14:08:15 +01:00
Yann Flory
ae8f6f7f2c
Ability to choose which protocol to use (Websocket or WebRTC) with Netflux
2016-03-10 14:03:31 +01:00
ansuz
3a7af63c54
correct malformed json
2016-03-10 11:58:23 +01:00
Yann Flory
b7885eb539
Fix channel history
2016-03-09 18:35:39 +01:00
ansuz
136e2d8cf2
pass in missing textarea argument so textpad starts working again
2016-03-09 11:02:12 +01:00
ansuz
8258018c1d
Revert "fix undefined reference"
...
This reverts commit 7d65540123
.
To restore functionality in convert.js
2016-03-09 10:32:57 +01:00
ansuz
c67451bc1a
Revert "remove broken functions from convert module"
...
Because I forgot that the /render/ page was still using vdom
This reverts commit 93fb944e1f
.
2016-03-09 10:29:51 +01:00
Yann Flory
c536ecbc1c
Temp commit
2016-03-08 15:13:57 +01:00
Yann Flory
870b2dbb7e
Add the WebRTC server in Cryptpad
2016-03-08 11:45:03 +01:00
Yann Flory
c4f62fb812
First try with WebRTC
2016-03-08 11:25:37 +01:00
Yann Flory
09a06a8bc5
Replace the chainpad server by the netflux server
2016-03-07 17:35:31 +01:00
Yann Flory
60c3aceb0d
Add chatflux server
2016-03-07 17:18:47 +01:00
Yann Flory
deb2084fc5
Add the socket connection checker
2016-03-07 12:00:45 +01:00
ansuz
d3e2a2f52e
make verbose logging switchable via a conditional
2016-03-07 11:59:36 +01:00
ansuz
1c54af69a1
update minor editors to use new realtime-input api
2016-03-07 11:52:18 +01:00
ansuz
9b228eea6b
modify vdom main.js to adhere to new realtime-input api
2016-03-07 11:36:33 +01:00
ansuz
fefb904261
realtime input changes
2016-03-07 11:34:16 +01:00
ansuz
fd99dba4a3
modify realtime-input api to take a single object as configuration. merge netflux API
2016-03-07 11:33:46 +01:00
Yann Flory
62ba579d4a
Add Netflux API with WebSocket service V1
2016-03-07 11:07:37 +01:00
ansuz
53d3e475f7
ui hints for hackpad
2016-03-04 16:47:59 +01:00
ansuz
d2f4fbcee9
fail the toolbar from the application layer
2016-03-04 16:46:18 +01:00
ansuz
d7b34cf6be
don't call toolbar from within realtime-input.js
2016-03-04 16:45:11 +01:00
ansuz
e8469ae1bb
test out extended realtime-input api
2016-03-04 16:41:34 +01:00
ansuz
5e1566eaec
fix incomplete 'onAbort' block
2016-03-04 11:07:12 +01:00
ansuz
52fe892bae
invert logical relationship with flag
...
otherwise updates don't actually propogate
2016-03-04 11:05:58 +01:00
ansuz
938df2b92f
lock the editor until the chain has synced
...
add 'onAbort' hook. lock the editor if the connection fails.
2016-03-03 18:05:05 +01:00
ansuz
1d6ccc99a1
add 'onAbort' hook to realtime-input.js
2016-03-03 18:04:14 +01:00
ansuz
e5bef52850
reintroduce the toolbar
2016-03-03 16:05:07 +01:00
ansuz
6ff5b10486
remove local diffDOM version
2016-03-03 16:04:08 +01:00
ansuz
93fb944e1f
remove broken functions from convert module
2016-03-03 15:18:05 +01:00
ansuz
7d65540123
fix undefined reference
2016-03-03 15:12:43 +01:00
ansuz
c246adc57b
Lock contenteditable until chain is done syncing.
...
Don't bother patching the dom until the chain has synced
2016-03-03 14:38:07 +01:00
ansuz
1c0074258c
go back to using diffDOM from bower
...
The latest version is required. You'll need to update.
2016-03-03 10:49:59 +01:00
ansuz
79bd82a62e
main.js : integrate with patched diffDOM
2016-02-29 17:59:00 +01:00
ansuz
6884fabda9
Use local diffDOM instead of bower_components
...
At least until the PR gets accepted
2016-02-29 17:05:04 +01:00
ansuz
f5a8727254
remove some unused functions from cursor.js
2016-02-29 16:52:07 +01:00
ansuz
db1515c445
cursor.js : commit before cleaning up
2016-02-29 16:27:55 +01:00
ansuz
7e367e770e
resize vdom debug panel to 30% width
2016-02-29 15:37:51 +01:00
ansuz
91ada5ce7a
export Operation from chainpad. for use with OT
2016-02-29 15:28:32 +01:00
ansuz
5425699f43
check if possible parent exists before checking if it contains another element
2016-02-29 15:27:11 +01:00
ansuz
67bdb8a65a
fix a bad regex that occasionally threw an error
...
'nothing to repeat'
2016-02-25 12:35:11 +01:00
ansuz
e87a4599a4
main.js : tiny patch until things are working correctly.
2016-02-23 16:22:09 +01:00
ansuz
9ce59c985f
only do stuff with the cursor when a remote edit takes place
2016-02-23 15:54:25 +01:00
ansuz
39f56d4fd1
throw error when checking for the index of a node that has no parent.
...
it probably isn't in the dom if this is the case.
Check if it's there before using this function
2016-02-23 15:53:58 +01:00
ansuz
de46be85ba
add better helpers for finding and resetting the cursor
2016-02-23 15:52:58 +01:00
ansuz
7e7f1fee76
include abstracted json-ot, add comments, start to use cursor stuff
2016-02-22 18:01:57 +01:00
ansuz
c09036bd29
snapshot cursor.js, as some things are working quite well now
2016-02-22 18:00:46 +01:00