Kevin Sawicki & Nathan Sobo
abc20b3a05
Update text buffer to use telepath markers
2013-07-15 17:07:06 -07:00
Kevin Sawicki
cdbbb114f6
Use PeerServer ☁️ instead of EC2
2013-07-05 12:53:51 -07:00
Kevin Sawicki
b8bd9b6ec6
Compare site id using site from original event
...
Previously the site was being looked for in a copy of the event where
only the range and text keys were picked and so it was always missing.
2013-07-05 12:53:51 -07:00
Kevin Sawicki & Nathan Sobo
5a26fa838f
Emit markers-updated event for remote buffer changes
...
This is temporary until markers are a part of telepath.
2013-07-05 12:53:51 -07:00
Kevin Sawicki & Nathan Sobo
bf45beedbe
Swap parameter order for Document.deserialize()
2013-07-05 12:53:51 -07:00
Kevin Sawicki & Nathan Sobo
e82170efcb
Serialize EditSession's buffer's id instead of its path
2013-07-05 12:53:50 -07:00
Kevin Sawicki & Nathan Sobo
9b22ca4825
Serialize window state in telepath format
2013-07-05 12:53:50 -07:00
Kevin Sawicki & Nathan Sobo
85cc81851f
Replicate insertion and removal of project buffers
...
Buffers are now destroyed when removed from the project if they
haven't been destroyed already.
2013-07-05 12:53:50 -07:00
Kevin Sawicki & Nathan Sobo
30273c6a66
Add serialization version to TextBuffer
2013-07-05 12:53:50 -07:00
Kevin Sawicki & Nathan Sobo
e01ac96b66
Guard against a null pending changed event
...
Previously TextBuffer would emit change events even when the change
was empty. SharedString does not emit empty change events and so a
pending event may no longer be present when a marker-updated event
fires.
2013-07-05 12:53:50 -07:00
Kevin Sawicki & Nathan Sobo
2ff282011b
💄
2013-07-05 12:53:50 -07:00
Kevin Sawicki
f766bbbb38
Remove Point and Range classes now provided by telepath
2013-07-05 12:53:50 -07:00
Kevin Sawicki
fddcbae4eb
Clip range specified to change()
2013-07-05 12:53:50 -07:00
Kevin Sawicki
2d313e07ff
Clip position in characterIndexForPosition()
2013-07-05 12:53:50 -07:00
Kevin Sawicki & Nathan Sobo
05a3f35512
Normalize line endings in TextBuffer.change()
2013-07-05 12:53:50 -07:00
Kevin Sawicki & Nathan Sobo
72f9af4d00
Replicate buffer changes
...
Still some failures due to line endings
2013-07-05 12:53:49 -07:00
Kevin Sawicki & Nathan Sobo
dd0f7a032f
Start basing Buffer's text on a replicable string
2013-07-05 12:53:49 -07:00
Kevin Sawicki & Nathan Sobo
010c3435da
Add Project serialization version
2013-07-05 12:53:49 -07:00
Kevin Sawicki & Nathan Sobo
da3a89fc27
Don't show pane items that can't be deserialized
2013-07-05 12:53:49 -07:00
Nathan Sobo
30e4531a8f
Store buffer paths instead of serialized buffers in EditSession state
...
Since there can be multiple edit sessions per buffer, it doesn't make
sense to serialize the buffer multiple times. Previously, we were
de-duplicating buffers in the deserialize method itself, but this won't
work now that we want to replicate buffers.
2013-07-05 12:53:49 -07:00
Kevin Sawicki
651bbaa3ce
Create an empty ~/.atom/config.cson when missing
...
Closes #614
2013-07-05 09:17:44 -07:00
Kevin Sawicki
c7f6e87132
Only use event.which when key identifier is non-ASCII
...
Previously event.which was used when it was less than the key identifier
which broke fn-delete since that generates a valid key identifier but a
lower event.which value that does not translate to 'delete' using the char
code converter.
Close #611
2013-07-02 13:13:45 -07:00
Kevin Sawicki & Nathan Sobo
0e6a3c52ad
Add comments to view cache ivars
2013-07-02 10:13:59 -07:00
Kevin Sawicki
b786bcc774
Store views that don't implement setModel() by their item
...
Previously viewForItem() would create a new view each time it was called
with an item whose view did not implement setModel() even if a view for that
item already existed in the pane.
Now a WeakMap is used to map items to their view so they can be reused
and cleaned up even when the view does not implement setModel().
2013-07-02 09:41:46 -07:00
Nathan Sobo
23df564189
Release any leftover buffers in Project.destroy
2013-07-01 14:21:42 -06:00
Nathan Sobo
0c17ed9c33
Return a clone of @buffers from Project.getBuffers
...
Previously, we traversed the EditSessions. Not necessary.
2013-07-01 14:21:42 -06:00
Kevin Sawicki
7615d54337
Support calling fsUtils.absolute() with a '~' path
2013-07-01 12:46:50 -07:00
Kevin Sawicki
6b591b121d
Interpolate pathToCreate instead of path
...
This regressed as part of the migration to using helpers from
path instead of fs-utils.
Close #608
2013-07-01 12:10:52 -07:00
Kevin Sawicki & Nathan Sobo
268edf16d8
Make setModel optional in pane item view classes
2013-07-01 10:53:34 -07:00
Kevin Sawicki
01f220fb1b
Support non-English keyboard languages
...
Use event.which if it is lower than the parsed key identifier.
This is the case when a non-English keyboard language is selected and
a physical English keyboard is being used.
This allows keybindings to still work even when the physical key pressed
is different than the key it maps to for the currently selected language.
Closes #585
2013-06-28 16:36:55 -07:00
Kevin Sawicki
53a92751e6
Add missing @ before call to confirmSync
2013-06-28 10:06:41 -07:00
Nathan Sobo
5a9e45f9d8
Upgrade telepath
2013-06-28 04:39:31 -06:00
Kevin Sawicki
8561bb34a8
Save and restore spec window dimensions
...
Closes #597
2013-06-28 04:39:30 -06:00
Kevin Sawicki & Nathan Sobo
f4300b8cab
Fix specs due to scrollTop/Left becoming methods on EditSession
2013-06-28 04:39:30 -06:00
Kevin Sawicki & Nathan Sobo
f3f9c2c921
Show active item from Pane constructor if state has activeItemUri
2013-06-28 04:39:30 -06:00
Kevin Sawicki & Nathan Sobo
33dca9315c
Add PaneContainer.getState
2013-06-28 04:39:30 -06:00
Kevin Sawicki & Nathan Sobo
c596514d11
Accept documents in EditSession and replicate scroll position
2013-06-28 04:39:30 -06:00
Kevin Sawicki & Nathan Sobo
5b00cf1701
Rename Buffer -> TextBuffer to match file and deserializer name
2013-06-28 04:39:29 -06:00
Kevin Sawicki & Nathan Sobo
a62cd0f16a
Replicate active pane item
2013-06-28 04:39:29 -06:00
Kevin Sawicki & Nathan Sobo
f340828506
Use .getState() instead of .serialize() when mutating panes
2013-06-28 04:39:29 -06:00
Kevin Sawicki
b999c71ad6
Auto-insert clipboard when it is a GUID
2013-06-28 04:39:28 -06:00
Kevin Sawicki
9f31f9a76b
Add loading view when joining session
2013-06-28 04:39:28 -06:00
Kevin Sawicki & Nathan Sobo
7fe356b649
Ensure events are delivered in order
2013-06-28 04:39:28 -06:00
Kevin Sawicki & Nathan Sobo
b5aa0b900c
Remove output listener when connection is closed
2013-06-28 04:39:28 -06:00
Kevin Sawicki & Nathan Sobo
cd4622fbeb
Serialize project in window state
2013-06-28 04:39:27 -06:00
Kevin Sawicki & Nathan Sobo
89192c2ee2
Extract helpers to session-utils
2013-06-28 04:39:27 -06:00
Kevin Sawicki & Nathan Sobo
b5b408d134
Open new window when joining collaboration session
2013-06-28 04:39:27 -06:00
Kevin Sawicki
b08f320ed5
Remove mini class to give id enough room
2013-06-28 04:39:27 -06:00
Kevin Sawicki
4c7025ae81
Add message to join prompt
2013-06-28 04:39:27 -06:00
Kevin Sawicki
554af1becb
Add initial collaboration keymap
2013-06-28 04:39:27 -06:00