Keith Simmons
d0cc37c84c
minor text tweak
3 years ago
Keith Simmons
29668bb743
formatting and clippy fixes
3 years ago
Keith Simmons
bc8d002e32
add ability to list available fonts
3 years ago
Keith Simmons
f8cb3a2131
fix minor typo
3 years ago
Fred Sundvik
b0ec20be4a
Use the width of letter 'M' instead of font average width
...
The average character width in the font information is not always
reliable, so get the width from the character 'M' instead. It still
fall backs to the average if there's no 'M' in the font.
3 years ago
Fred Sundvik
c428501def
Fix the font spacing
...
Previously the font width was always rounded down to the nearest
integer, which typically caused the fonts to look to squashed. To
correct the issue a fudge factor, which scales the fonts so that the
width is always an exact integer, was introduced.
3 years ago
LoipesMas
a46f12be35
Remove unused `use`
3 years ago
Fred Sundvik
8c2099496a
Fix window settings load and save
...
Some of the load and save paths were fixed. And the json is now
structured to properly support saving and loading of both position and
size data, and is easily extendible for more fields and objects in the
future.
3 years ago
LoipesMas
36479dd45b
Merge pull request #1099 from LoipesMas/remember_pos
...
Add remember_window_position setting
3 years ago
Fred Sundvik
d030f97d45
Fix for non-existing data directory
...
Also respect XDG_DATA_HOME on unix systems instead of using hardcoded
path.
3 years ago
LoipesMas
97da1926ba
Remember position and size on by default
3 years ago
LoipesMas
c77a7a93cc
Add remember_window_position setting
3 years ago
Nguyễn Anh Khoa
f563360735
remove "-complete=expression" with -nargs=0 ( #1097 )
...
fix: Remove `-complete` when using `-nargs=0`
Newer versions of Vim/Neovim throw error when using -complete with
-nargs=0
https://github.com/neoclide/coc.nvim/issues/3414
https://github.com/neoclide/coc.nvim/pull/3210
3 years ago
Keith Simmons
60ec743b7e
tweaks to cli args
3 years ago
Keith Simmons
78bcc7431a
add nosrgb flag
3 years ago
Keith Simmons
6b96f79bb1
move window files into main window directory rather than being window wrapper
3 years ago
Keith Simmons
b78a714be0
attach to console on startup
3 years ago
Keith Simmons
4982c2615e
only set background opacity if window transparency is not 1.0
3 years ago
Keith Simmons
76bddae01a
check loaded window size before running
3 years ago
Keith Simmons
5539b035b5
remove verbosity
3 years ago
Keith Simmons
00bed7dabd
add some tests documenting behavior
3 years ago
Serg Tereshchenko
bad4415e48
fix redundant field names
3 years ago
Serg Tereshchenko
2e68a48cb0
refactor: Use neovim_args for passing files to open
3 years ago
Serg Tereshchenko
2014b40195
fix: Add files_to_open, removed in https://github.com/neovide/neovide/pull/1016/
3 years ago
Serg Tereshchenko
6e93bd7552
fix: Add verbosity flag, removed in https://github.com/neovide/neovide/pull/1016 , set default verbosity to "warn".
3 years ago
Keith Simmons
cf8b48f5f5
default to only logging errors
3 years ago
LoipesMas
4131c50cfd
Fix compiler warnings on non-Windows
3 years ago
Keith Simmons
46e7bec50d
move mouse hiding to just be in the mouse manager
3 years ago
Jan Sosulski
81f52db78b
cargo fmt
3 years ago
Jan Sosulski
f17020b6af
added setting to hide mouse cursor when typing
3 years ago
Keith Simmons
15f9e82af1
fix formatting and clippy
3 years ago
Keith Simmons
c1f7af6eaa
fix formatting
3 years ago
Alex Pawlowski
894c07bf5a
Document handle_macos()
3 years ago
Alex Pawlowski
774f55b882
Linting
3 years ago
Alex Pawlowski
6a627e2be7
Properly parse PATH on macOS
...
This fixes Fish support Neovide is launched from Finder, as well as other non-standard configs where ~/.profile is missing
3 years ago
LoipesMas
ef8a95a91d
Fix transparency for floating windows
3 years ago
LoipesMas
5906bf58c3
Cleanup
3 years ago
LoipesMas
06113d603e
Fix separators and tabline not disappearing
3 years ago
LoipesMas
d4c9b7b850
Sort floating windows by position
3 years ago
LoipesMas
b8b9573168
Formatting
3 years ago
LoipesMas
a6f5906fbd
Remove unnecessary code
3 years ago
LoipesMas
1345eb396b
Draw default-color background as transparent
3 years ago
LoipesMas
b0dc9332c4
Make only root_canvas semi-transparent
3 years ago
LoipesMas
45ab1843b8
Draw floating text as opaque
...
I don't think anyone wants transparent text
3 years ago
LoipesMas
139e0da98d
Draw black background as transparent
3 years ago
LoipesMas
b68cf32006
Revert useless change
3 years ago
LoipesMas
62bdb20c41
Remove useless code
3 years ago
LoipesMas
42f74a3bbb
Transparency working again
3 years ago
Keith Simmons
401d1a88a2
add tests for the cmdline parsing
3 years ago
LoipesMas
5630d5240e
Add neovim_bin argument
3 years ago
LoipesMas
fe4ac0162e
Merge pull request #1078 from LoipesMas/fix_float_outside
...
Fix floating windows showing outside of neovide window
3 years ago
LoipesMas
a7d87d6218
Fix special style test
3 years ago
jeremycostanzo
4e207fbd19
Remove compiler warning on non windows platforms
...
ParallelCommand was only used on windows but it was imported for every
distro
3 years ago
LoipesMas
93b5c49ff7
Fix floating windows showing outside of neovide window
3 years ago
nganhkhoa
8b1a81ded3
format code
3 years ago
nganhkhoa
551994c705
[windows] Right click menu setup with no Admin
...
The old code was using HKEY_CLASSES_ROOT, which requires Admin.
Fixed to use HKEY_CURRENT_USER to works without Admin.
Reference: https://stackoverflow.com/a/29769228/13173256
3 years ago
Keith Simmons
3d4bd0e056
Fixed some clippy warnings
3 years ago
Keith Simmons
b7b06c59a0
fix formatting issues
3 years ago
Johan Sköld
551236a290
Redraw window when requested
3 years ago
Michael Doronin
2689bccbb9
Use combinators instead of manual code
3 years ago
Michael Doronin
2a0f464f34
Remove unnecessary boxing
3 years ago
Keith Simmons
7f76ad4764
fix formatting
3 years ago
Keith Simmons
124bf32a86
fix floating window selection issue
3 years ago
Keith Simmons
cbdb28b094
formatting and clippy fixes
3 years ago
Keith Simmons
80d5ed983c
fix quit on startup
3 years ago
Keith Simmons
0ef1521a18
compiling but quits on startup
3 years ago
Keith Simmons
b5ff3556fe
fix minor remaining bugs
3 years ago
Keith Simmons
cb0f92688d
split ui command into serial and parallel
3 years ago
Keith Simmons
fb9c1de747
fix clippy and formatting
3 years ago
Keith Simmons
35f46ebb5f
adjust foreground clip to be looser in the x y plane
3 years ago
Keith Simmons
3cc0d5c173
rework draw commands to send whole line at once and draw background before foreground
3 years ago
Keith Simmons
8bade3667d
formatting and clippy fixes
3 years ago
Keith Simmons
46845b86b4
add modifiers and button selection to other mouse events
3 years ago
Keith Simmons
abd3d52ae3
add modifiers to nvim_input_mouse scroll events
3 years ago
Keith Simmons
a1fc0bf9c7
increase minimum
3 years ago
Keith Simmons
4515aa5a61
add minimum window size
3 years ago
Keith Simmons
18f9ae5dac
build fixes
3 years ago
leon332157
f9bbdab458
attempt x11 fix ( #964 )
...
* attempt x11 fix
* formet code
* trigger format check
3 years ago
Keith Simmons
cf781031e3
pass button to mouse input event
3 years ago
Keith Simmons
839f2938a1
make event handling forwards compatible and use constant generics to simplify parsing logic
3 years ago
Christian Clason
69187642e4
fix: adapt to upstream change to win_viewport
...
handle `line_count` field that was added in
086631cd92
3 years ago
Keith Simmons
c23c176c00
add srgb setting, commandline arg, and environment variable to fix amd windows machines
3 years ago
Serg Tereshchenko
a81c65b781
fix: Fixed red color for underline
3 years ago
Oliver Jan Krylow
d2760e2d45
chore: Updates rmpv (0.4.4 -> 1.0.0)
...
Bumped version of rmpv in neovide to 1.0.0 to match nvim-rs.
Also, fixed a warning where a variable need not be mut.
Co-authored-by: Oliver Krylow <o.krylow@isp-insoft.de>
3 years ago
Serg Tereshchenko
5047637c4f
refactor: Allow resize at startup for tiling WM
...
... but preserve startup screen for normal WM.
Tiling WM is detected by initial window size,
which is already changed on first render pass.
Refs #918
3 years ago
Serg Tereshchenko
96f0c636f4
fix: Allow resize at startup
...
Refs #918
3 years ago
rsynnest
3be5de6874
Invoke user's login shell to load proper WSL $PATH
...
In Linux, custom changes to the $PATH are usually defined in ~/.profile,
~/.bash_profile, ~/.zprofile, etc. These files are only loaded by a
'login shell', which can be explicitly invoked with the -l flag. Most
shells (bash, dash, zsh, fish) support this -l flag. This commit uses
the $SHELL env var to invoke the user's default shell with the -l flag to
force a login shell. This should properly load any custom $PATH settings
defined by the WSL user. This is a potential fix for #693
3 years ago
Serg Tereshchenko
55179e43c3
refactor: Refactor initial resize fix
...
window.is_maximized() returns false on startup, using settings instead.
Refs #892
3 years ago
Serg Tereshchenko
bd4a181162
fix(renderer): Force grid redraw on startup with --maximized flag
...
Refs #892
3 years ago
Christian Clason
c3fe866bb9
refactor(font): conditional compilation on macos
...
Avoids
```
warning: unused variable: `points_per_inch`
--> src/renderer/fonts/font_options.rs:94:9
|
94 | let points_per_inch = 72.0;
| ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_points_per_inch`
|
= note: `#[warn(unused_variables)]` on by default
```
on macOS, which is innocuous but has been bugging me for a while.
3 years ago
Keith Simmons
3bba418c1c
refactor grid_renderer out of renderer and clean up window draw command handling
3 years ago
Keith Simmons
c52a6e356a
format code
3 years ago
Keith Simmons
a4822378e2
log version on startup and bump it
3 years ago
Serg Tereshchenko
dc3b3351d5
fix(logging): Replace println with debug in bridge/events.rs
3 years ago
mforsb
8779a76fb0
Clean up tokio::sync::mpsc imports
3 years ago
mforsb
e343c64d4e
Simplify nvim version check, remove regex dependency
...
Using `has("nvim-0.4")` check seems more robust than using a regex to
parse the version string. This also means regex is no longer a runtime
dependency.
3 years ago
mforsb
5c90f33e9e
Use tokio::sync::mpsc instead of crossfire::mpsc
...
Since tokio channels has blocking_recv now crossfire isn't needed
anymore.
3 years ago
mforsb
768a589576
Remove rust-embed as a dependency
...
This is a rather heavy dependency that's easily replaceable using only
the standard library. This brings the number of dependencies down from
368 to 362 (on Linux).
3 years ago
Serg Tereshchenko
71e107d649
fix: Trigger grid resize after font change
3 years ago
Serg Tereshchenko
d5404299ee
chore(logging): Don't log "icon created" message
3 years ago
Serg Tereshchenko
caf9e35726
chore(logging): Use 4 digits for scale_factor display
3 years ago
Keith Simmons
400dbcabd3
remove global suffix on settings call
3 years ago
Serg Tereshchenko
0549540c13
style: apply cargo --fmt
3 years ago
partizan
9149c98292
Merge pull request #865 from neovide/refactor-grid-conv
...
Refactor grid conversions
3 years ago
Serg Tereshchenko
6d38f34f8b
refactor: Use paired values as tuples/Dimensions
...
Paired values, like width/height now using tuples and Dimensions.
`Dimensions` struct implements traits for multiplication and division,
which allows us to scale grid size to physical and back just by
multiplying `Dimensions` instead of each variable.
Also, added trait for multiplication (u64, u64) by Dimensions.
For the same purpose as above.
3 years ago
Keith Simmons
1e1bd45d45
swap feature flag to just be a setting instead
3 years ago
Keith Simmons
48336ee84d
working swap to upstream nvim-rs
3 years ago
Serg Tereshchenko
725f12cafd
refactor: Remove first_render_pass flag
3 years ago
Serg Tereshchenko
a8c6e1707b
refactor: Refactor startup process to delay setting window size.
...
Setting initial window size moved into draw_frame, and called
after fonts are loaded. So initial window size matches requested
geometry.
This also fixes missing startup screen, as UiCommand::Resize is not
called on startup.
3 years ago
Serg Tereshchenko
d12ab7e33a
refactor: Refactor ui_attach options
3 years ago
Keith Simmons
132f993699
add better touch scrolling ( #861 )
...
* add better touch scrolling
* optionally send multiple scroll events
* fix formatting
Co-authored-by: Keith Simmons <keithsim@microsoft.com>
3 years ago
partizan
30dd5e7f73
fix(cmd_line): Renamed --multiGrid to --multigrid ( #862 )
...
BREAKING CHANGE: Renamed --multiGrid to --multigrid
BREAKING CHANGE: Removed env var NeovideMultiGrid
3 years ago
Lucas Miranda
726539fbae
add neovide_input_use_logo to toggle logo handling ( #857 )
...
* add neovide_input_use_logo to toggle logo handling
it also completely ignores keyboard inputs with D modifier
* fix lint errors
3 years ago
mforsb
178cbafb2f
Fix recursion when using -- to pass args to nvim. ( #854 )
...
Co-authored-by: Marcus Forsberg <mforsb92@gmail.com>
3 years ago
partizan
6a744fee2c
refactor: Refactor disowning process. ( #852 )
3 years ago
partizan
257ec70a80
refactor: Refactor window module ( #849 )
...
- Split platform-dependent code into separate function
- Remove wrapper function `create_window`
- Move handle_new_grid_size where it belongs
3 years ago
Benson Li
21a8adc4a5
Remember window dimensions #622 ( #816 )
...
* Implementation for #622
* Update src/window/settings.rs
Co-authored-by: partizan <serg.partizan@gmail.com>
* applied suggestions from @last-partizan
* applied suggestions from @Kethku
* applied more suggestions from @last-partizan
Co-authored-by: partizan <serg.partizan@gmail.com>
3 years ago
Keith Simmons
949e15f808
add debug renderer feature
3 years ago
Serg Tereshchenko
61fb07d7bf
style: Fix clippy warning
3 years ago
Lucas Miranda
0d6cfd54cb
Fix to sending key signals when window focus lost ( #845 )
...
When window focus has just been lost, key pressed events aren't ignored
3 years ago
Lucas Miranda
0c1a7029e3
Fix to ensure provided gui font is valid ( #842 )
...
Providing a wrong font was causing neovide to retry every time to load an
inexistent font, instead just trying to load once at it's setup should
be enough
3 years ago
partizan
3da8b56b74
fix(keyboard): Fix shift+tab handling ( #836 )
...
Refs #445
3 years ago
Tim Biermann
f6a8ffced0
Make waylands app_id and x11s class overrideable ( #834 )
...
* trying to make app_id and class exchangeable
* still fails to hand over the argument
* make both app_id and class be set by command line arguments
* added missing cfg for class
* Changes as requested. Putting the os check in a block however doesn't
work for me
* getting rid of superfluous to_string()
* x11-class argument gets ignored
* changed argument name
* Update src/cmd_line.rs
* changed faulty unwrap
* added missing comma
* fixed wrong case
* fixed class
* make cargo fmt happy
* exchanged String::from with String::new
* make both attributes also overrideable via env::var
Co-authored-by: partizan <serg.partizan@gmail.com>
3 years ago
Serg Tereshchenko
5991117814
style(fonts): Removed redundant closure
...
(Thanks clippy)
3 years ago
partizan
334c2d779f
Refactor keyboard manager ( #833 )
...
* refactor(keyboard_manager): Refactor KeyboardManager
This refactoring changes nothing in key handling behaviour, but moves
some code out of handle_event, to make thigs clearer.
* style(keyboard_manager): Move private functions to bottom
3 years ago
partizan
e8354e1b23
Dynamic scale factor updates ( #817 )
...
* wip: dynamic scale factor updates
* refactor font options
* update font opts
* refacor scale factor updates
* cargo fmt
3 years ago
Serg Tereshchenko
42ff24518b
fix(macos): Fix scaling on mac-os
...
On MacOS points and pixels are the same.
3 years ago
Keith Simmons
cacde9ec9d
fix initial window positioning
3 years ago
partizan
a527c0ebb7
fix(fonts): Fix font scaling (points to pixels conversion) ( #814 )
...
Refs #387
3 years ago
partizan
abb05ab7b8
refactor(startup): Use SETTINGS to store window geometry ( #806 )
3 years ago
Serg Tereshchenko
c870c46aa3
chore(renderer/fonts): Fix unused variable warning
3 years ago
Serg Tereshchenko
a1bb24b445
fix(window): Fix resize after maximized
...
Refs #803
3 years ago
Serg Tereshchenko
07c0349e4a
chore: Fixed formatting
3 years ago
partizan
43bab8404b
Refactor scaling code ( #793 )
...
* refactor(scaling): Refactor scaling code, scale only font size
* chore: Add debug logging for scale factor
* fix scaling for default font
3 years ago
Keith Simmons
80c57bb339
tweak vertical positioning ( #795 )
3 years ago
partizan
d53884f6e9
fix(window_wrapper): Fix unmaximize behaviour ( #792 )
...
set_inner_size was using LogicalSize from current physical size,
it was working fine only for scaling=1.
Removing this leaves unmaximizing to winit, which does it correctly.
3 years ago
partizan
d2e33b87f2
Rename "bot" to "bottom" in WindowDrawCommand::Scroll ( #789 )
...
* chore(test): Fix function call
* refactor(WindowDrawCommand::Scroll): Rename bot to bottom
3 years ago
partizan
d564dc8261
chore(test): Fix function call ( #785 )
3 years ago
partizan
9f7207feb8
fix(window): Fix incorrect initial scaling ( #784 )
...
Also, replaced inverse scaling (like 1 / scaling) with natural scaling.
I think easier to work with natural scaling factor (like 1..2)
and multiplication, instead of inverse scaling factor and division.
Refs #771
3 years ago
Keith Simmons
73902a6c7a
formatting and clippy fixes
3 years ago
Keith Simmons
b0222d206e
revert 'fix' for pum position
3 years ago
Keith Simmons
2fc74f83ca
enable bold/italic highlight styles
3 years ago
smolck
f99c21d971
feat(fonts): add support for :b and :i in guifont ( #769 )
...
Close #709 .
3 years ago
Tim Biermann
a0d076bbda
this adds app_id attribute to neovide ( #747 )
...
* this adds app_id attribute to neovide
* app_id should only be included for linux builds
3 years ago
smolck
bc1009babc
make dead keys work w/out breaking ctrl mappings ( #767 )
3 years ago
Keith Simmons
fd27e059f0
fix another issue
3 years ago
Keith Simmons
792a6b80b0
yet more macos fixes
3 years ago
Keith Simmons
b015c77657
more macos fiddling
3 years ago
Keith Simmons
43fdcb7bb2
fix for option key on macos
3 years ago
Keith Simmons
82b745c92b
fix pum menu positioning
3 years ago