Tae Won Ha
145e732d97
Set snapshot version: 0.9.0-SNAPSHOT-20160801.2216-42
2016-08-01 22:16:42 +02:00
Tae Won Ha
18bc493ec4
GH-221 Refactor slightly
2016-08-01 21:57:06 +02:00
Tae Won Ha
d9a5e907e0
GH-221 Fix cursor drawing in the command area
2016-08-01 21:55:41 +02:00
Tae Won Ha
7aa2875ef6
GH-221 Take zero puts into account when computing the word boundaries
2016-08-01 21:55:36 +02:00
Tae Won Ha
9b30934f77
GH-221 Improve drawing when cursor is on the cell
2016-08-01 21:34:26 +02:00
Tae Won Ha
6bdfb5ed8c
GH-221 Use bounds and take offsets into account when computing Region from a CGRect
2016-08-01 21:34:22 +02:00
Tae Won Ha
3863fca9a4
GH-221 Refactor slightly
2016-07-31 21:16:08 +02:00
Tae Won Ha
2530472729
GH-221 Rename a method
2016-07-31 20:53:51 +02:00
Tae Won Ha
75f922d4e7
GH-221 Draw word-wise to take ligatures into account
2016-07-31 20:51:28 +02:00
Tae Won Ha
c77ce13737
Merge branch 'master' into issue/221-ligatures
2016-07-30 22:19:10 +02:00
Tae Won Ha
083d8618fa
GH-221 Add useLigatures flag and use it in the TextDrawer
2016-07-30 18:31:33 +02:00
Tae Won Ha
798bde03de
Set snapshot version: 0.9.0-SNAPSHOT-20160730.1822-41
2016-07-30 18:22:29 +02:00
Tae Won Ha
0f27f36997
GH-221 Remove unnec' class
2016-07-30 18:11:59 +02:00
Tae Won Ha
e5ecaa2879
Set snapshot version: 0.9.0-SNAPSHOT-20160730.0954-40
2016-07-30 09:54:27 +02:00
Tae Won Ha
db4b7c6bee
Reformat and refactor slightly
2016-07-30 09:49:39 +02:00
Tae Won Ha
12fe0daa4b
GH-223 When pinching use a proxy image
2016-07-29 22:23:43 +02:00
Tae Won Ha
da0720f169
GH-223 Add rudimentary pinch support
2016-07-29 18:25:32 +02:00
Tae Won Ha
f9a021d97d
Set snapshot version: 0.9.0-SNAPSHOT-20160728.2220-39
2016-07-28 22:21:08 +02:00
Tae Won Ha
c967a912da
GH-224 Check null for set title and set icon
2016-07-28 22:14:27 +02:00
Tae Won Ha
9f40b738f0
GH-222 Add some font related menu items
2016-07-28 19:37:39 +02:00
Tae Won Ha
34632095bd
Set snapshot version: 0.9.0-SNAPSHOT-20160727.1832-38
2016-07-27 18:33:25 +02:00
Tae Won Ha
3ae8a1d4c2
GH-213 Handle initial font setting
2016-07-27 00:04:31 +02:00
Tae Won Ha
d9af7fb0c5
Set snapshot version: 0.9.0-SNAPSHOT-20160718.2250-37
2016-07-18 22:50:33 +02:00
Tae Won Ha
89fdab1566
GH-218 Check validity of ports before invalidating
2016-07-18 20:16:56 +02:00
Tae Won Ha
4b4ccd13b3
GH-218 Add hasDirtyDocs()
...
- Use it to determine whether to close the window or not.
2016-07-18 20:16:56 +02:00
Tae Won Ha
2068a57bb8
Set snapshot version: 0.9.0-SNAPSHOT-20160717.1629-36
2016-07-17 16:29:39 +02:00
Tae Won Ha
e51c823b17
GH-216 Get rid of almost all cleanUp() methods
...
- We cannot get rid of -cleanUp of NeoVimAgent since -dealloc does not
get called unless the run loop has been stopped.
2016-07-17 15:56:36 +02:00
Tae Won Ha
6a66cb877c
GH-216: Implement the stop UI callback
...
- There was a leak of NeoVimAgent because the thread where the we ran a
CFRunLoop never stopped. We now stop the run loop explicitly.
2016-07-17 15:49:34 +02:00
Tae Won Ha
32ee8ab1d1
Set snapshot version: 0.9.0-SNAPSHOT-20160716.2332-35
2016-07-16 23:33:05 +02:00
Tae Won Ha
b02c0b4c87
GH-215 Refactor slightly
...
- play with some constants
2016-07-16 18:49:19 +02:00
Tae Won Ha
a06c1ca4f6
GH-215 Use one file for NeoVimView
...
- This way we can use more `private` properties.
2016-07-16 18:49:14 +02:00
Tae Won Ha
b6a1d21912
GH-215 Support trackpad scrolling
...
- We use some heuristics to make the scrolling on trackpad kind of ok...
- Scrolling using the scrollwheel of a mouse is probably broken.
2016-07-15 19:50:35 +02:00
Tae Won Ha
3b07365fc6
Update bundle version to 34
2016-07-14 20:35:02 +02:00
Tae Won Ha
13d7ccbb4c
Change version to new snapshot
...
- closes GH-211
2016-07-14 20:21:30 +02:00
Tae Won Ha
4780976f1a
GH-211 Refactor slightly
2016-07-14 20:20:39 +02:00
Tae Won Ha
845354a833
GH-211 Rename NeoVimViewEvents to NeoVimViewKeyEvents
2016-07-14 20:20:36 +02:00
Tae Won Ha
1bfc1380c3
GH-211 Implement left mouse events
2016-07-14 20:18:30 +02:00
Tae Won Ha
6aa609ab79
Refactor slightly
2016-07-13 22:09:49 +02:00
Tae Won Ha
484209b514
Underline in the foreground color
...
- not in the special color
2016-07-13 20:26:39 +02:00
Tae Won Ha
5e12c218b1
Fix the background rect when drawing
2016-07-13 20:16:04 +02:00
Tae Won Ha
b43bb29094
Change version to include SNAPSHOT and the date
2016-07-12 18:48:04 +02:00
Tae Won Ha
56a9fc0678
Delete unnec' import
2016-07-12 18:41:28 +02:00
Tae Won Ha
4f46e619cf
Rename nvox to VimR
...
- hopefully we renamed everything
2016-07-12 17:59:01 +02:00
Tae Won Ha
4699e3db35
Forward almost every keystroke to neovim
...
- we probably still have to fine-tune this.
2016-07-12 17:58:35 +02:00
Tae Won Ha
97cc6e4ad5
Make cursor drawing a bit better
...
- we still have to overhaul the cursor drawing, this is just a temporary
fix...
2016-07-11 19:39:28 +02:00
Tae Won Ha
c54e673e9c
Use agvtool to set versions
2016-07-10 23:09:52 +02:00
Tae Won Ha
9a2b3b0a86
Add rudimentary support for multi window
2016-07-10 18:47:24 +02:00
Tae Won Ha
07f0210841
Add some logging
2016-07-10 14:43:26 +02:00
Tae Won Ha
52f528b33b
Use ARC in NeoVimServer
2016-07-10 14:27:28 +02:00
Tae Won Ha
1da03e56d4
Make uuid of NeoVimView public
2016-07-10 14:14:19 +02:00
Tae Won Ha
b1af87bc5c
Refactor slightly
2016-07-10 14:10:09 +02:00
Tae Won Ha
f6038619db
Set current working directory for neovim
2016-07-10 14:05:10 +02:00
Tae Won Ha
6eca26bbc7
Refactor slightly
2016-07-10 14:00:31 +02:00
Tae Won Ha
f7a2fe770b
Ensure no NeoVimServer processes are left over
2016-07-10 11:38:53 +02:00
Tae Won Ha
4f0a20d2ba
Make NeoVimServer work
2016-07-10 11:38:52 +02:00
Tae Won Ha
2623b351c6
Restructure the project
...
- add the NeoVimServer binary
- we're on our way to remove the XPC service since only 1-to-1 correspondence
possible between an XPC and the main app
- NeoVimServer communicates with the main app via two CFMessagePorts
- Use enums to distinguish between messages
2016-07-10 11:38:34 +02:00
Tae Won Ha
9d491d5245
Establish bidirectional communication channel
...
- use CFMessagePort
2016-07-09 14:05:04 +02:00
Tae Won Ha
9242dd8c47
Add change font method
2016-07-06 19:51:31 +02:00
Tae Won Ha
4075b49fa7
Resize neovim when resized not by live resizing
2016-07-06 19:11:53 +02:00
Tae Won Ha
670c19043c
Refactor slightly
2016-07-06 19:02:30 +02:00
Tae Won Ha
903ef3e97b
Make Ctrl-F/B work
...
- maybe we should directly forward the key combination to neovim
2016-07-06 18:28:40 +02:00
Tae Won Ha
edfd5ccf4a
Rename some methods
2016-07-05 20:13:46 +02:00
Tae Won Ha
5b55c9522d
Remove unnec' code
2016-07-05 20:03:14 +02:00
Tae Won Ha
01cbb584be
Guard against invalid positions
2016-07-05 19:00:27 +02:00
Tae Won Ha
292e2be410
Remove unnec' code
2016-07-05 18:54:44 +02:00
Tae Won Ha
07ac09e95f
Make resizing NeoVimView work
...
- live resizing is not yet activated, but can be easily done
- @autoreleasepool-block for each UI callback and for each key input is
ugly...
2016-07-05 18:49:19 +02:00
Tae Won Ha
a5d6ca0ffd
Handle x,y-offset in the view drawing
...
- we won't resize the view in integer steps, but just draw some margins
2016-07-04 19:04:49 +02:00
Tae Won Ha
1948c2ea9f
Reformat
2016-07-03 22:08:14 +02:00
Tae Won Ha
e5f82261ca
Refactor slightly
2016-07-03 22:07:02 +02:00
Tae Won Ha
b2b959fd4f
Add Quick/Nimble and a stub test
2016-07-03 21:37:12 +02:00
Tae Won Ha
23d36d83be
Revert ugly cursor color
2016-07-03 16:42:25 +02:00
Tae Won Ha
4b4668ae21
Add a note on text input
2016-07-03 15:55:11 +02:00
Tae Won Ha
734b31c7e6
Make Hanja handling better(?)
2016-07-03 15:54:44 +02:00
Tae Won Ha
3d48c17fc1
Guard against too early call of selected range
2016-07-03 07:49:49 +02:00
Tae Won Ha
e685ef3581
Try to correctly render marked text
2016-07-02 18:59:23 +02:00
Tae Won Ha
1d1c46c3fc
Make hanja menu pop up
...
- Very rudimentary: since we don't use the replacement range when
setting marked text, the original hangul character won't be replaced.
- We probably should use a different mechanism for returning attributed
string: e.g. ask neovim to return the correct string...
2016-07-02 18:57:38 +02:00
Tae Won Ha
5a8fdbe9bc
Add some comments regarding two-cell-characters
2016-06-29 21:55:44 +02:00
Tae Won Ha
47a41156f4
Turn off some logging
2016-06-29 20:11:20 +02:00
Tae Won Ha
015b12332d
Improve cursor drawing
2016-06-29 20:10:00 +02:00
Tae Won Ha
8f38a53698
Add very rudimentary cursor drawing
2016-06-29 19:54:06 +02:00
Tae Won Ha
a27a16c47b
Update neovim
2016-06-29 18:36:55 +02:00
Tae Won Ha
903f72b542
Add a comment
2016-06-29 18:32:33 +02:00
Tae Won Ha
7358243b07
Add some support for marked text
...
- implement some of usual text-editing related selectors of NSResponder
- do not send <S-a> for A
- introduce a dispatch queue in XPC which is needed to sync all marked
stuff
2016-06-29 18:18:11 +02:00
Tae Won Ha
9f39654e4b
Fix redraw rect when scrolling
2016-06-27 18:42:37 +02:00
Tae Won Ha
ec4dbeb9aa
Play around with Cocoa's text input system
2016-06-27 18:42:35 +02:00
Tae Won Ha
02b338ed9a
Test NSTextInputClient using a stub view
2016-06-27 18:42:34 +02:00
Tae Won Ha
a4112d4927
Remove unnec' constant
2016-06-19 21:11:03 +02:00
Tae Won Ha
d5420f4b78
Use CoreText's font metric
2016-06-19 20:54:55 +02:00
Tae Won Ha
bbc0096019
Implement update fg/bg/sp
2016-06-19 20:54:47 +02:00
Tae Won Ha
edffb8956b
Use @import where appropriate
2016-06-18 23:14:49 +02:00
Tae Won Ha
c95d2c3201
Draw bold/italic/underline and correct color
2016-06-18 23:09:34 +02:00
Tae Won Ha
8e9c532b40
Minor refactoring
2016-06-16 18:36:26 +02:00
Tae Won Ha
a394f9ce4a
Remove unused stuff
2016-06-15 22:59:07 +02:00
Tae Won Ha
c124f1adbb
Find out which Cells to draw in drawRect
...
- NeoVim's UI callbacks stores the screen data in the Grid and sets
appropriate rects invalid.
- drawRect() then computes which cells are invalidated and draw them.
2016-06-15 22:39:46 +02:00
Tae Won Ha
c7fe3f1dac
Add scroll for Grid
2016-06-15 20:37:02 +02:00
Tae Won Ha
79e39b8350
Remove some crashing
2016-06-14 23:50:25 +02:00
Tae Won Ha
355844ad01
Add very very rudimentary rendering of some characters
2016-06-13 18:09:34 +02:00
Tae Won Ha
1ca45e84c5
Manually memory-manage in the XPC implementation
...
- Input events are fed and processed in two different threads. We want
to be sure that our NSStrings are released only after the processing
of the event has been done.
2016-06-07 19:47:27 +02:00
Tae Won Ha
5acc58d376
Add a probe method to the XPC service
2016-06-07 18:48:59 +02:00
Tae Won Ha
f8e759162a
Delete unused file
2016-06-06 23:11:02 +02:00
Tae Won Ha
681ee137f4
Call vim_input on the main_loop
2016-06-06 21:50:35 +02:00
Tae Won Ha
ab33181cc4
Use RxSwift to react to some of the UI events
2016-06-05 17:49:16 +02:00
Tae Won Ha
fa0ef63611
Add SwiftNeoVim framework target
...
- This target includes the XPC-service and will be included in the main
app
2016-06-05 17:46:05 +02:00