Jon Valdés
885aca19da
Exposing cursor vfx parameters as settings
5 years ago
Jon Valdés
1eadd7fad6
More lenient type checking for setting parsing
5 years ago
Jon Valdés
6d2d398c23
Fix cursor animation being stuck for 1 frame after animation reset
5 years ago
Jon Valdés
6939a8186b
Made trail animation slightly longer to match old behavior better
5 years ago
Jon Valdés
5c8b1de97a
Switched to an exponential function for cursor trail animation
5 years ago
Jon Valdés
4ea5e31f13
Added "PixieDust" effect
5 years ago
Jon Valdés
8c410cef6e
Added "torpedo" mode to cursor effects
5 years ago
Jon Valdés
47eaf0c418
Implemented settings-based control for cursor animations
5 years ago
Jon Valdés
c517f00033
Fixing after rebasing on top of structured settings work
5 years ago
Jon Valdés
2ad315a507
Kept antialiasing enabled only for the cursor rendering
5 years ago
Jon Valdés
218f9adb6a
Railgun cursor tweaking
5 years ago
Jon Valdés
6fcd50289a
Added particle trail effect
5 years ago
Jon Valdés
5c6d1ffa42
Easing point highlight alpha
5 years ago
Jon Valdés
028c36d32a
Renamed CursorVFX to PointHighlight. Implemented Ripple and Wireframe modes
5 years ago
Jon Valdés
7c3585e9a6
Make CursorVFX a trait, tweak cursor trail with cubic easing function
5 years ago
Jon Valdés
e56bddf6b6
Splitting CursorVFX into its own module
5 years ago
Jon Valdés
d967666222
Making cursor_renderer its own nested module
5 years ago
Jon Valdés
a4c9dd442a
Tweaking and cleaning cursor trail math code
5 years ago
Jon Valdés
8295f835b5
Fixed a few bugs, implemented cursor VFX on state change
5 years ago
Jon Valdés
1b9f4b4f7c
Fix cursor shape changes
...
Also, make cursor movements while typing be immediate
5 years ago
Jon Valdés
169a04079d
Better idle detection for cursor animation
5 years ago
Jon Valdés
945ef975f6
Work on framerate-independent cursor animation
...
Has several different easing methods, but defaults to linear for now.
ease_out_quad was also pretty good, but which specific method we choose
will be more a personal preference than an objective thing
5 years ago
Raffael Zica
0b301cb690
Shaper includes system symbol fonts into cache
...
This should fix #153 on Windows but needs testing on Linux and macOS.
5 years ago
Keith Simmons
6451f7e736
remove unnecessary using statement
5 years ago
Keith Simmons
8d412c2a84
remove test log
5 years ago
Keith Simmons
3f2642a306
fix window disconnect bug, and make logging more consistent
5 years ago
Keith Simmons
c4d524287e
more fault tollerant dpi handling
5 years ago
Jon Valdés
9066802fbe
Documentation, a bit of code cleaning
5 years ago
Jon Valdés
6f4692db1b
Added a warning I forgot to change on last commit
5 years ago
Jon Valdés
28128b56b2
Fixed command line parsing. Added error reporting on wrong setting data type
5 years ago
Jon Valdés
0a726c2f77
Different, cleaner implementation of structured settings
5 years ago
Jon Valdés
40dd9404ec
Code formatting
5 years ago
Jon Valdés
e296e2a4ce
WIP for structured settings system
5 years ago
keith
ff67afaa46
refactor window event handling to be more organized
5 years ago
Tristan C
b25e86aebe
Modified 'setup_changed_listeners' for compatibility with neovim versions < 0.4.3
5 years ago
Keith Simmons
b337d83548
keybinding logging
5 years ago
Jon Valdés
f31f96e0bc
Adding a setting to change the refresh rate
5 years ago
Keith Simmons
8c19cdd275
fixed mouse dpi mapping
5 years ago
keith
8448d1b5a9
fix key binding issue, text scaling, and maybe render bug
5 years ago
keith
0f10f186e8
fix setting loading
5 years ago
keith
813f00fb85
enable mouse clickthrough
5 years ago
keith
d0f0477435
queue redraw on window event
5 years ago
keith
08da104680
better linux and mac fix
5 years ago
keith
1fa9127ef7
fix mac and linux builds
5 years ago
keith
56386d0e7f
mouse movement
5 years ago
keith
16a076a082
minor fixes
5 years ago
keith
b7d8333e9a
use public skulpin
5 years ago
keith
3df33a963e
ITS WORKING!!!
5 years ago
Keith Simmons
b758f01b62
working keybindings
5 years ago
Keith Simmons
f25381530f
rendering, but wrong dpi and no input support/resizing
5 years ago
keith
215b98d971
keybinding progress
5 years ago
Keith Simmons
fef5d56106
progress
5 years ago
Keith Simmons
04b0b795f3
Merge pull request #135 from jonvaldes/mutex-settings
...
Settings behind a Mutex, instead of using atomics
5 years ago
Jon Valdés
254426218c
Settings behind a Mutex, instead of using atomics
5 years ago
Vivian Lim
f167bbe410
Write nvim version requirement messages directly to stderr
5 years ago
Jon Valdés
4169ad2170
Fix less than key on linux
5 years ago
Keith Simmons
67468b20dd
settings system
5 years ago
Keith Simmons
86073351d0
remove extra clones
5 years ago
Keith Simmons
2f67645390
fix init error freeze
5 years ago
Keith Simmons
1b677f3d1b
make settings less complicated
5 years ago
Keith Simmons
971bb3d2ff
remove all hints of integer scaling
5 years ago
Keith Simmons
850b23933b
fix command line cursor bug
5 years ago
Jon Valdés
e1b423ce86
Add all missing VirtualKeycodes to the translation function
5 years ago
Keith Simmons
829d2b3073
revert font change
5 years ago
Keith Simmons
33c68d38b9
support undercurl
5 years ago
Keith Simmons
703087fd88
set buffer frames to 1 and add extra buffer startup command. Fix bug where mouse position is improperly scaled
5 years ago
Jon Valdés
a9acc532aa
Fix a bunch of small issues reported by clippy
5 years ago
Jon Valdés
f273833f96
Added comment explaining Linux input hack
5 years ago
Jon Valdés
7cfe625777
Improved hack. By ignoring the shift modifier, it works even better
5 years ago
Jon Valdés
c6d2a9a0f5
Hack to interpret more keyboard events on Linux
5 years ago
Keith Simmons
850cf3c6db
temp fix for scrolling problem
5 years ago
Jon Valdés
f9c7e2500c
Switch to parking_lot::Mutex. It is faster and has a better API than the std one
...
Also, no possibility of poisoning, so it removes a bunch of unwraps
5 years ago
Keith Simmons
6db3f31c74
Merge pull request #102 from jonvaldes/linearize-grid-storage
...
Idea for linearization of the Editor grid storage
5 years ago
Jon Valdés
1750ac8e76
Fix scrolling issue introduced when extracting the grid
5 years ago
Jon Valdés
ddad13be2d
Iterate over rows without generating a temporary Vec
5 years ago
Jon Valdés
9450ea62d8
Better external API for EditorGrid, returning Option<&mut GridCell> for external code to modify the cells
5 years ago
Luis Holanda
f48e7d5df8
perf: take msgv::Value by value in bridge::events
5 years ago
Jon Valdés
d8e974ee12
Forgot use statement
5 years ago
Jon Valdes
e8cb1ef863
WIP Extraction of Editor::grid into its own file and struct
5 years ago
Jon Valdes
0fe0475b6d
Initial implementation of linearization of the Editor grid storage
...
Converts the Editor grid from a nested Vec<Vec<GridCell>> to a Vec<GridCell> structure.
Does the same thing with the dirty structure
5 years ago
Keith Simmons
b411bd786d
unset lazyredraw on startup
5 years ago
Keith Simmons
5912b82cea
remove msg, add logging, add startup commands, add no-idle command
5 years ago
Jon Valdes
2a14d26f1e
Using iterators and for loops instead of explicit while loops
5 years ago
Jon Valdes
2d7239c0e2
Do not clear scrolled-off area, destructure width and height
5 years ago
Jon Valdes
543556bdbe
Different implementation of scroll_region, which avoids allocations and temporary copies of scrolled data
5 years ago
Keith Simmons
ba253869db
update winit to hotfix
5 years ago
Keith Simmons
48d3824892
Merge pull request #93 from Kethku/build-draw-command-perf-improvements
...
profiling motivated perf improvements in build draw commands
5 years ago
Keith Simmons
31a1bd5cdc
profiling motivated perf improvements in build draw commands
5 years ago
Matteo Merola
7becb4c7d0
Removed unused import.
5 years ago
keith
792568774b
missing semicolon
5 years ago
keith
ba3874f309
version error
5 years ago
keith
6758d4139b
fix keybindings
5 years ago
Keith Simmons
840110ae73
Merge pull request #81 from luisholanda/cleanup-brigde
...
Remove unnecessary clones and allocations from bridge module
5 years ago
keith
234d6fa71d
revert winit to pre 0.20.0 as it crashes on windows and mac
5 years ago
Luis Holanda
8143becae6
remove unneeded clones from brigde::events
5 years ago
Luis Holanda
4df81f9cd9
remove unneeded allocations in bridge::keybindings
5 years ago
keith
20a7320474
mouse fixes
5 years ago
keith
f971f7fbeb
minor quit changes
5 years ago
keith
7d54990e83
better dpi handling
5 years ago
Keith Simmons
29dc2c766b
update to winit_20. May cause dpi issues. Can't tell yet
5 years ago
Keith Simmons
86403294a4
support window title
5 years ago
Keith Simmons
4991fc3f58
parallize processing of ui commands and don't block on nvim process creation
5 years ago
Sebastian Nowicki
860b459523
Fix conditional for MacOS emoji font
...
Closes #76
5 years ago
keith
71406ba6cb
fix emoji font loading on macos
5 years ago
keith
b7368ac110
use system emoji font first if possible
5 years ago
keith
ec260da475
revive bold and italic support
5 years ago
keith
ca24df79e6
embed fonts
5 years ago
Keith Simmons
e8e69f757e
fixed underlines
5 years ago
Keith Simmons
934d63b278
fix panic handling (probably) and tweek font discovery
5 years ago
Keith Simmons
d0941cef2e
handle panics in renderer somewhat more gracefully
5 years ago
Keith Simmons
e72c8959f1
make editor grid access more robust
5 years ago
Keith Simmons
335045840b
fix some warnings and bump skulpin
5 years ago
Keith Simmons
9308d1d81f
rework animation loop and add back animation buffer
5 years ago
keith
24a5e5dc51
rework font loading to be WAY more robust
5 years ago
keith
2f619c5d17
linux bug fixes and better error printing on linux (just panic with a message)
5 years ago
keith
2916f1337a
don't require emoji font
5 years ago
keith
7358a7cff6
minor using fix
5 years ago
keith
1ed9fc9eb9
manually setup redraw system
5 years ago
keith
49d9dbb15d
initial pass on readme
5 years ago
Keith Simmons
5a8d24b77c
fix redraw event order
5 years ago
Keith Simmons
4079f218b3
remove unnecessary hack for emoji rendering
5 years ago
Keith Simmons
2494b37070
build fixes
5 years ago
Keith Simmons
a874537c35
parse multigrid events
5 years ago
keith
7f5902d364
adjust emoji positioning
5 years ago
Keith Simmons
f8bc1a2ce4
emojis working
5 years ago
keith
5a880d06aa
remove fonts cache and make first attempt at font fallback
5 years ago
Keith Simmons
b4c392997e
use global lazy_static variables to handle modules instead of passing via reference
5 years ago
Keith Simmons
e4dd7e572b
finish up cursor options
5 years ago
Keith Simmons
a1ad41247d
resolve clippy issues and fix cursor character issue
5 years ago
Keith Simmons
c562c78fcd
fix bug in cell styling
5 years ago
Keith Simmons
4690623ec6
better special casing of resize and enable closing via x button
5 years ago
Keith Simmons
3efb6879dc
bridge struct to wrap tokio runtime and channel
5 years ago
keith
35a675c8a4
progress toward splitting main into bridge
5 years ago
Keith Simmons
b3647d69c4
fix scroll positioning
5 years ago
Keith Simmons
c96a44a9e1
better resize handling
5 years ago
Keith Simmons
e0acbd0b9f
fix crash with error in startup script
5 years ago
Keith Simmons
54212f73f5
switch to tokio channel and add resizing debouncing
5 years ago
Keith Simmons
376664e65d
minor formatting
5 years ago
Keith Simmons
72aefd4730
fix mouse location
5 years ago
Keith Simmons
514a9ca254
working with nvim_rs
5 years ago
KillTheMule
f1a082a24e
Use spawn_blocking
...
Receiving on a sync channel will otherwise block the thread
5 years ago
KillTheMule
51a387ec21
Move to futures branch of nvim-rs
5 years ago
KillTheMule
74c4075f06
Make main() own the channel, and pass it off
5 years ago
KillTheMule
50f7f3bbf2
UI Events are notifications
5 years ago
Keith Simmons
73875eb486
part way there, but can't get ui events to receive properly and don't get events yet
5 years ago
Keith Simmons
ca1fdfc25c
special case message line cursor positions
5 years ago
Keith Simmons
ed28b14596
support cursor blinking
5 years ago
Keith Simmons
35093e6472
scroll fix
5 years ago
Keith Simmons
39ea340693
minor changes and add neovide variable
5 years ago
Keith Simmons
34034474d5
support strikethrough
5 years ago
Keith Simmons
ccc9a83e15
icons
5 years ago
keith
64fe9c8de6
upgrade skulpin and winit
5 years ago
keith
778868acc3
attempt at adding more support virtual key codes
5 years ago
Keith Simmons
d6b4c6dc41
remove reference to old shaper
5 years ago
Keith Simmons
005797b276
font widths are WAY better now
5 years ago
Keith Simmons
ab6c1d5700
more progress, but can't use text blob creation utilities :/
5 years ago
Keith Simmons
ec00fe37fa
progress toward better text shaping maybe...
5 years ago
keith
6f04e9e7e0
support font setting and changing
5 years ago
Keith Simmons
9ed5bbcdde
fix build issue
5 years ago
Keith Simmons
c4264df6cc
better explained unwrap solution
5 years ago
Keith Simmons
9cf4e9c2ce
add error message boxes
5 years ago
Keith Simmons
c21605532e
smarter cursor text rendering
5 years ago
Keith Simmons
cd35e33877
better cursor animation speed and clipping text to grid region
5 years ago
keith
38b90136c8
option set event parsing
5 years ago
keith
4ab94b3cae
support cell percentage configuration
5 years ago
keith
1d620acc5a
horizontal scrolling and progress toward command line
5 years ago
Keith Simmons
bf574cc876
some comments
5 years ago
Keith Simmons
f6edcc4761
working cursor smear
5 years ago
keith
59601b7d71
progress toward smeared cursor
5 years ago
Keith Simmons
2b2beb4e10
cursor_renderer changes
5 years ago
Keith Simmons
45f5c937f9
conditionally compile windows_subsystem for debug mode
5 years ago
Keith Simmons
6811d02983
remove debug commands and hide console
5 years ago
Keith Simmons
d729477193
more efficient event handling
5 years ago
keith
2dfe4c1a7f
partially working externalized command
5 years ago
Keith Simmons
22ddb545a9
more progress toward externalized command bar
5 years ago
keith
1a12766861
progress toward externalized commandline
5 years ago
Keith Simmons
e08ac79b9f
support bold and italic text
5 years ago
keith
4297faca63
fix ligature rendering
5 years ago
keith
7f772be865
progressive rendering done
5 years ago
Keith Simmons
06eb849497
progressive rendering progress
5 years ago
Keith Simmons
0cc51481b2
Cache surface not image
5 years ago
keith
84648518dc
progress toward progressive rendering
5 years ago
keith
8c75c44905
persistent rendering
5 years ago
Keith Simmons
c1fb24c37b
handle resize more robustly
5 years ago
Keith Simmons
8467ef18ab
refactored editor into multiple files to make things more readable
5 years ago
keith
be7c9f5207
refactor somewhat
5 years ago
Keith Simmons
d4a7e32c66
handle pipe character properly
5 years ago
Keith Simmons
186edf1819
better neovim process tracking and separated background/foreground rendering
5 years ago
keith
86b2e0df7d
filled in more parsers
5 years ago
keith
8b633986de
Shaper fully working and cached to preserve performance to some extent
5 years ago
Keith Simmons
4a685942a9
minor bug fixes
5 years ago
Keith Simmons
1bfe5bde03
mouse support, terminal handling, and underlines
5 years ago
keith
7033a05d26
shaping sorta working
5 years ago
Keith Simmons
e42355937a
shaper progress
5 years ago
Keith Simmons
293bd23f9e
working cursor styling
5 years ago
keith
cb0d118859
refactor message parsing
5 years ago
Keith Simmons
1f4dab9d9a
progress toward cleaning up event parsing
5 years ago
keith
44b545fa28
better keybindings and animated cursor
5 years ago
Keith Simmons
66d9b05657
better font sizing
5 years ago
Keith Simmons
3b27390ccd
better keybindings
5 years ago
keith
568ca834a2
skulpin working! really fast
5 years ago
keith
9fe0adcb38
in progress
5 years ago
Keith Simmons
65895b6d6e
make locking somewhat better
5 years ago
keith
ef8eef6bd3
colors working
5 years ago
keith
6ca852386f
somewhat working with druid
5 years ago