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
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
ansuz
4eee1f5210
add orderOfNodes function to tree library
2016-02-22 17:56:17 +01:00
ansuz
7689151fc0
pull json validation for OT into its own module for reuse
2016-02-22 17:54:59 +01:00
ansuz
fbb9163e42
main.js : clean up and commit before making big-ish changes for cursor fixing
2016-02-19 14:12:22 +01:00
ansuz
2c8a2406c6
cursor.js : snapshot before code deletion
2016-02-19 14:07:43 +01:00
ansuz
1beb3f5355
snapshot of treesome.js before deletion
2016-02-19 14:07:16 +01:00
ansuz
8ead5ca129
realtime-input.js : add notes regarding integration of the netflux api
2016-02-16 15:14:38 +01:00
ansuz
3cb94b8d80
jshint compliance
2016-02-15 16:07:46 +01:00
ansuz
d1885fbab6
better jshint compliance for common files
2016-02-15 15:42:08 +01:00
ansuz
539cc3a2fa
remove unused files from common directory
2016-02-15 15:41:36 +01:00
ansuz
afa2811472
remove local version of marked.js, prefer bower version
2016-02-15 11:49:47 +01:00
ansuz
587f95b6d7
don't overflow
2016-02-14 12:01:05 +01:00
ansuz
a01331cb9a
hide styling textarea no matter what
2016-02-12 16:44:54 +01:00
ansuz
a600ece5c5
fix jshint complaints in common directory
2016-02-12 16:22:20 +01:00
ansuz
4a05a859e6
fix initialization routines
2016-02-12 16:21:52 +01:00
ansuz
f1915d3b7c
fix jshint complaints in pad directory
2016-02-12 16:21:17 +01:00
ansuz
fe3917c0f1
fix jshint complaints in codemirror directory
2016-02-12 16:20:55 +01:00
ansuz
2c5a2b6023
remove unused code, add todos, fix minor errors
2016-02-12 12:03:15 +01:00
ansuz
c5ab5dfe26
realtime style editor with lorum ipsum
2016-02-12 11:45:40 +01:00
ansuz
967d636df9
address more jshint complaints
2016-02-12 11:39:37 +01:00
ansuz
f6c848385f
hyperjson.js : jshint complains about var index in for loop
2016-02-12 11:21:33 +01:00
ansuz
0fbbb51f7f
drop this useless line
2016-02-12 11:19:36 +01:00
ansuz
d1dd497457
html-patcher.js : add missing semicolon
2016-02-12 11:17:10 +01:00
ansuz
62ea172ff4
errorbox.js : add missing semicolon so jshint doesn't complain
2016-02-12 11:15:59 +01:00
ansuz
3b5c932252
jshint ignore eval line
2016-02-12 11:10:59 +01:00
ansuz
7f92abc7bf
Merge branch 'diffdom' of github.com:xwiki-labs/cryptpad into demoEffect
2016-02-12 10:24:11 +01:00
Caleb James DeLisle
a7da21ccba
Remove the cursor treatment
2016-02-11 16:22:59 +01:00
Caleb James DeLisle
86c4a69a97
Switch to patching with DiffDOM for testing :D
2016-02-11 16:10:44 +01:00
ansuz
653ba33b65
Merge branch 'vdom' of github.com:xwiki-labs/cryptpad into demoEffect
2016-02-11 13:15:57 +01:00
Caleb James DeLisle
2031191261
testing=false
2016-02-11 13:13:58 +01:00
Caleb James DeLisle
37db31b09e
Attempt an operational transformation and if the result is not valid JSON then fail
2016-02-11 12:34:06 +01:00
Caleb James DeLisle
e16299b5c4
Revert "restub OT until it's verified"
...
This reverts commit 350c9e6c76
.
2016-02-11 12:33:12 +01:00
ansuz
c22269e36e
cursor.js : make the console a little less noisy
2016-02-11 10:02:47 +01:00
ansuz
350c9e6c76
restub OT until it's verified
2016-02-11 09:44:47 +01:00
ansuz
99a23154b7
files for unstubbing OT
2016-02-11 09:38:58 +01:00
ansuz
c740c0ec92
add stuff for walking the tree
2016-02-11 09:32:58 +01:00
ansuz
ad184b1114
add stuff to recover the cursor
2016-02-11 09:32:41 +01:00
ansuz
1aea11bb30
describe all the prototypes which are available
2016-02-10 16:50:00 +01:00
ansuz
9b13fd8f34
pull cursor correction code out of main.js
...
put it in cursor.js
2016-02-10 11:38:53 +01:00
ansuz
3b0ac3af4c
More sensible styles
...
respond to viewport size
don't use gigantic font
2016-02-10 10:53:56 +01:00
ansuz
b43674eb53
switch back to two-panel layout
2016-02-10 10:52:46 +01:00
ansuz
f33e061c9a
visit /hack/ to see what this is
...
I'll leave it up to the users to decide
whether XSS is a bug or a feature
2016-02-10 10:47:33 +01:00
ansuz
019750bea8
realtime-input.js : callback onInit if exists
2016-02-10 10:40:52 +01:00
ansuz
61fbf81dcd
factor out rainbow stuff into rainbow.js
2016-02-05 11:55:37 +01:00
ansuz
7102a0a164
make rainbows
2016-02-05 11:48:34 +01:00
ansuz
aa3880f442
up to date
2016-02-03 16:48:49 +01:00
ansuz
d2f6c63d8a
realtime-input.js : changed the api and left an undefined reference. fixed
2016-02-03 12:58:54 +01:00
ansuz
150c9a300d
scale viewport so mobile is readable
2016-02-03 12:50:36 +01:00
ansuz
d96124229b
clean up realtime-input.js, break API
...
use an object for configuration, so as to be more extensible.
modify applications which use the API to match.
2016-02-03 12:45:45 +01:00
ansuz
e43b9715e8
remove /md/ prototype
...
use /text/ and /render/ instead.
2016-02-03 11:52:23 +01:00
ansuz
64cc177a60
remove vmd directory
...
it was only a prototype, and only contained code which was no longer useful
2016-02-03 11:46:11 +01:00
ansuz
e220113e98
fix the 'crapstorm' bug
2016-02-01 19:41:55 +01:00
ansuz
ed03a48092
minor patches that make things a bit more reliable, still some bugs
2016-02-01 19:41:13 +01:00
ansuz
ac0f7852fc
committing latest changes for review
2016-02-01 15:28:33 +01:00
ansuz
2016550e01
virtual-dom.js : identify problem area?
2016-02-01 14:28:13 +01:00
ansuz
08fb010627
give 'onChange' a name
2016-02-01 14:27:43 +01:00
ansuz
b52327be49
restyle /text/ page
2016-02-01 14:14:48 +01:00
ansuz
266e5eccce
change styles for rendered page
2016-02-01 14:14:32 +01:00
ansuz
2adfeaaaaa
test having multiple textareas in one page
2016-02-01 14:13:35 +01:00
ansuz
3cffdc982f
remove unused functions from render/main.js
...
better comments
2016-01-31 13:15:50 +01:00
ansuz
317abf36f3
make rendered images sort of responsive
2016-01-31 13:14:45 +01:00
ansuz
388c6de64a
minor style tweaks for /render/
2016-01-30 18:04:01 +01:00
ansuz
ec172b6d21
rendered html should be scrollable
2016-01-30 17:30:00 +01:00
ansuz
a484b920e3
disallow resizing of textarea
2016-01-30 17:26:39 +01:00
ansuz
d9d4abb9a5
don't let the textarea overflow the body
2016-01-30 17:25:20 +01:00
ansuz
dcbbeea734
solarized dark color scheme in /text/
2016-01-30 17:15:59 +01:00
ansuz
c2eb29b75e
fix typo
2016-01-30 14:24:26 +01:00
ansuz
fd1e5d5735
better styling on render page
...
now solarized dark
2016-01-30 14:18:20 +01:00
ansuz
a718f89e08
make a new pad that doesn't allow input.
...
It simply renders markdown that's being written in the same channel
but in another editor that allows input.
2016-01-30 13:59:20 +01:00
ansuz
2e3b424a1a
sanitize markdown before rendering to prevent XSS
...
draw rainbox borders on element redraws in vdom method.
This lets us see what being redrawn, as the vdom.diff method
is breaking a few things.
2016-01-30 13:54:12 +01:00
ansuz
13f5371199
remove duplicated files
2016-01-30 13:53:21 +01:00
ansuz
aa6bbabc62
prototype a vdom-based markdown editor
...
avoid unnecessary redraws.
discover a bug, apparently vdom replaces all child elements after an
element which was modified.
As such, changing b in [a, b, c, d] causes b, c, and d to be redrawn.
This is undesirable.
2016-01-29 15:06:10 +01:00
ansuz
d14e42fedd
start on a vdom-based wysiwyg realtime
...
There are still a few conditions that cause it to 'explode'
when different browsers disagree on element semantics.
Overall it's a much cleaner approach, but it will require
extensive tuning to improve performance, as there are still
many complete dom traversals which will not scale for large documents
2016-01-29 12:40:45 +01:00
ansuz
1f7f90165f
Slap marked.js onto a textarea
...
Multiple people can now edit markdown and see the results in realtime.
2016-01-29 12:30:17 +01:00
ansuz
d5a1629a93
A really basic shared text area with encryption.
...
...and not much else. If you want to hack on something
this is a great place to start.
2016-01-29 12:29:24 +01:00
ansuz
50121c8ab6
a really basic collaborative input
...
type="text" is typically slower than the same code
when used to sync a textarea.
WATCH OUT!
2016-01-29 12:28:11 +01:00
ansuz
b18dfef656
sharejs textarea is used by realtime-input.js
2016-01-29 12:27:29 +01:00
ansuz
997ce1147f
realtime input wraps up basic realtime stuff
...
so we don't have to rewrite the realtime api for every application.
starting to move towards a portable api :D
2016-01-29 12:26:49 +01:00
ansuz
40b8c0efe8
drop in chjj's marked.js for a cool demo
2016-01-29 12:26:27 +01:00
ansuz
2d8ffdf31c
Merge branch 'master' of github.com:ansuz/cryptpad
2016-01-29 11:54:26 +01:00
ansuz
0c2e057f9d
export component APIs from convert
2016-01-27 10:10:47 +01:00
ansuz
b958caebdd
dom, vdom, hyperjson, and an api which provides a matrix of conversions
2016-01-26 17:26:33 +01:00
ansuz
4cf2a8a0bd
rtwiki.js : catch some typeErrors
2016-01-26 11:32:12 +01:00
Lars-Magnus Skog
84c0ea6d26
refactor: pass in ifrw.CodeMirror into andThen()
2016-01-17 00:43:10 +01:00
ansuz
663e987345
fix race condition in codemirror initialization
...
over slow connections, iframes don't load fast enough to be ready for code
which depends on certain features existing.
wait until they're ready, then initialize.
2016-01-16 07:37:00 -05:00
ansuz
2ed9f0867a
Merge branch 'master' of github.com:xwiki-labs/cryptpad into codepad
2016-01-15 11:24:21 -05:00
ansuz
c71b060dc2
main.js : wait until your editor is defined before trying to reference it. addresses a race condition that caused ckeditor to fail half the time.
2016-01-14 05:14:45 -05:00
ansuz
ff52f050e5
chainpad.js : pull in upstream changes to chainpad.js. new APIs
2016-01-13 09:47:11 -05:00
ansuz
9fc44cdf0c
add notes to clientside js files
2016-01-13 05:43:58 -05:00
mouhb
af80bed07b
XWR-190: Make CryptPad version with rtwiki/CodeMirror
2016-01-08 11:52:33 +01:00
mouhb
9626dfc365
XWR-190: Make CryptPad version with rtwiki/CodeMirror
2016-01-07 18:13:45 +01:00
Yann Flory
9a932a3f56
Patch Realtime into CodeMirror in CryptPad
2015-11-25 10:09:23 +01:00
Yann Flory
32f44161a7
Patch Realtime into CodeMirror in CryptPad
2015-11-25 09:48:30 +01:00
Caleb James DeLisle
88fb6772e8
Cleaned up the front page and added a little piece of code to show recent pads
2015-02-02 17:53:10 +01:00
Caleb James DeLisle
51544db9a2
Completed adding of customization system and bottom infobar
2015-02-02 16:01:33 +01:00
Caleb James DeLisle
84164123b6
not quite finished
2015-01-30 18:12:20 +01:00
Caleb James DeLisle
0e44b10aeb
Seperated common crypto operations to common file and made common toolbar used for both pad and spreadsheet
2015-01-30 16:52:23 +01:00
Caleb James DeLisle
e039e90a24
upgrade to most recent chainpad
2015-01-30 16:41:01 +01:00
Caleb James DeLisle
c13bfe978a
Switched cryptpad to use common/toolbar.js which is shared with cryptsheet
2015-01-30 11:10:51 +01:00
Caleb James DeLisle
50c10f818e
Added cryptsheet to cryptpad suite!
2015-01-29 17:55:18 +01:00
Caleb James DeLisle
4a63ba7df3
Give cryptpad a proper main page
2015-01-28 17:58:55 +01:00
Caleb James DeLisle
652a1da7a4
oops changed some work in the js file
...
Revert "change logo"
This reverts commit 9325100a02
.
2014-11-06 13:03:20 +01:00
Caleb James DeLisle
9325100a02
change logo
2014-11-06 12:56:57 +01:00
Caleb James DeLisle
3330fae47e
typo
2014-11-04 10:53:49 +01:00
Caleb James DeLisle
8fc732d879
remove the 'magic line' because it causes problems with the realtime
2014-11-04 10:52:15 +01:00
Caleb James DeLisle
0d3ded68a0
use a websocket which automatically reconnects if the connection is lost
2014-11-04 10:51:53 +01:00
Caleb James DeLisle
e3a54c11ee
remove some code which may be over-engineering
2014-11-03 21:47:54 +01:00
Caleb James DeLisle
2a1f3f9027
show a little spinner which spins when loading and when people type
2014-11-03 21:44:35 +01:00
Caleb James DeLisle
87aa1aaf91
don't start measuring lag until after syncing and update readme
2014-11-03 20:43:43 +01:00
Caleb James DeLisle
6d68bb0bde
error when opening error message window D:
2014-11-03 16:16:26 +01:00
Caleb James DeLisle
6cbdcdec65
Show users editing and lag, properly send message to indicate that all users have left channel and show basic error box if disconnected.
2014-11-03 16:07:39 +01:00
Caleb James DeLisle
5ae599fa07
support different ports for websocket and http
2014-11-03 11:13:41 +01:00
Caleb James DeLisle
a6b88e276c
use the slower version of applyHTMLOp
2014-10-31 17:28:35 +01:00
Caleb James DeLisle
b6523adb1f
rand fixed
2014-10-31 17:05:09 +01:00
Caleb James DeLisle
1508c7ba71
and so it begins
2014-10-31 16:42:58 +01:00