Merge branch 'imcontext'
This commit is contained in:
commit
20327e4311
384
Cargo.lock
generated
384
Cargo.lock
generated
@ -2,25 +2,25 @@
|
||||
name = "nvim-gtk"
|
||||
version = "0.1.2"
|
||||
dependencies = [
|
||||
"cairo-rs 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"cairo-rs 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"env_logger 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gdk 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gdk-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gio 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gtk 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gtk-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gdk 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gdk-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gio 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gtk 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gtk-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"htmlescape 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"log 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"neovim-lib 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"pango 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"pangocairo 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"pango 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"pangocairo 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"phf 0.7.21 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"phf_codegen 0.7.21 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"serde 1.0.11 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"serde_derive 1.0.11 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"toml 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@ -33,29 +33,29 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "atk-sys"
|
||||
version = "0.3.4"
|
||||
version = "0.4.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
dependencies = [
|
||||
"bitflags 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gobject-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gobject-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.29 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"pkg-config 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "bitflags"
|
||||
version = "0.5.0"
|
||||
version = "0.7.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
|
||||
[[package]]
|
||||
name = "bitflags"
|
||||
version = "0.8.2"
|
||||
version = "0.9.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
|
||||
[[package]]
|
||||
name = "byteorder"
|
||||
version = "1.0.0"
|
||||
version = "1.1.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
|
||||
[[package]]
|
||||
@ -65,22 +65,23 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
|
||||
[[package]]
|
||||
name = "cairo-rs"
|
||||
version = "0.1.3"
|
||||
version = "0.2.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
dependencies = [
|
||||
"c_vec 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"cairo-sys-rs 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"cairo-sys-rs 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.29 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "cairo-sys-rs"
|
||||
version = "0.3.4"
|
||||
version = "0.4.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
dependencies = [
|
||||
"libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.29 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"pkg-config 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
@ -90,6 +91,19 @@ name = "cfg-if"
|
||||
version = "0.1.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
|
||||
[[package]]
|
||||
name = "conv"
|
||||
version = "0.3.3"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
dependencies = [
|
||||
"custom_derive 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "custom_derive"
|
||||
version = "0.1.7"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
|
||||
[[package]]
|
||||
name = "env_logger"
|
||||
version = "0.4.3"
|
||||
@ -101,156 +115,158 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "gdk"
|
||||
version = "0.5.3"
|
||||
version = "0.6.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
dependencies = [
|
||||
"bitflags 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"cairo-rs 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"cairo-sys-rs 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gdk-pixbuf 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gdk-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gio 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gobject-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"pango 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"cairo-rs 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"cairo-sys-rs 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gdk-pixbuf 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gdk-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gio 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gobject-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.29 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"pango 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "gdk-pixbuf"
|
||||
version = "0.1.3"
|
||||
version = "0.2.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
dependencies = [
|
||||
"gdk-pixbuf-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gdk-pixbuf-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gobject-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.29 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "gdk-pixbuf-sys"
|
||||
version = "0.3.4"
|
||||
version = "0.4.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
dependencies = [
|
||||
"bitflags 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gio-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gobject-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gio-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gobject-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.29 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"pkg-config 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "gdk-sys"
|
||||
version = "0.3.4"
|
||||
version = "0.4.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
dependencies = [
|
||||
"bitflags 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"cairo-sys-rs 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gdk-pixbuf-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gio-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gobject-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"pango-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"cairo-sys-rs 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gdk-pixbuf-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gio-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gobject-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.29 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"pango-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"pkg-config 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "gio"
|
||||
version = "0.1.3"
|
||||
version = "0.2.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
dependencies = [
|
||||
"bitflags 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gio-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gobject-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gio-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gobject-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.29 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "gio-sys"
|
||||
version = "0.3.4"
|
||||
version = "0.4.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
dependencies = [
|
||||
"bitflags 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gobject-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gobject-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.29 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"pkg-config 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "glib"
|
||||
version = "0.1.3"
|
||||
version = "0.3.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
dependencies = [
|
||||
"bitflags 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gobject-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gobject-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.29 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "glib-sys"
|
||||
version = "0.3.4"
|
||||
version = "0.4.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
dependencies = [
|
||||
"bitflags 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.29 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"pkg-config 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "gobject-sys"
|
||||
version = "0.3.4"
|
||||
version = "0.4.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
dependencies = [
|
||||
"bitflags 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.29 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"pkg-config 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "gtk"
|
||||
version = "0.1.3"
|
||||
version = "0.2.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
dependencies = [
|
||||
"bitflags 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"cairo-rs 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"cairo-sys-rs 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gdk 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gdk-pixbuf 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gdk-pixbuf-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gdk-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gio 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gio-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gobject-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gtk-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"pango 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"cairo-rs 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"cairo-sys-rs 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gdk 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gdk-pixbuf 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gdk-pixbuf-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gdk-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gio 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gio-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gobject-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gtk-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.29 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"pango 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "gtk-sys"
|
||||
version = "0.3.4"
|
||||
version = "0.4.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
dependencies = [
|
||||
"atk-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"bitflags 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"cairo-sys-rs 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gdk-pixbuf-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gdk-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gio-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gobject-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"pango-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"atk-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"cairo-sys-rs 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gdk-pixbuf-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gdk-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gio-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gobject-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.29 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"pango-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"pkg-config 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
||||
@ -266,7 +282,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
|
||||
[[package]]
|
||||
name = "libc"
|
||||
version = "0.2.20"
|
||||
version = "0.2.29"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
|
||||
[[package]]
|
||||
@ -274,12 +290,29 @@ name = "log"
|
||||
version = "0.3.8"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
|
||||
[[package]]
|
||||
name = "magenta"
|
||||
version = "0.1.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
dependencies = [
|
||||
"conv 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"magenta-sys 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "magenta-sys"
|
||||
version = "0.1.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
dependencies = [
|
||||
"bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "memchr"
|
||||
version = "1.0.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
dependencies = [
|
||||
"libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.29 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@ -295,53 +328,57 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "num-traits"
|
||||
version = "0.1.39"
|
||||
version = "0.1.40"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
|
||||
[[package]]
|
||||
name = "pango"
|
||||
version = "0.1.3"
|
||||
version = "0.2.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
dependencies = [
|
||||
"bitflags 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"pango-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gobject-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.29 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"pango-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "pango-sys"
|
||||
version = "0.3.4"
|
||||
version = "0.4.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
dependencies = [
|
||||
"bitflags 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gobject-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gobject-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.29 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"pkg-config 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "pangocairo"
|
||||
version = "0.1.3"
|
||||
version = "0.2.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
dependencies = [
|
||||
"cairo-rs 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"pango 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"pango-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"pangocairo-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"cairo-rs 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"gobject-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"pango 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"pango-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"pangocairo-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "pangocairo-sys"
|
||||
version = "0.3.4"
|
||||
version = "0.4.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
dependencies = [
|
||||
"cairo-sys-rs 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"pango-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"cairo-sys-rs 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"glib-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.29 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"pango-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"pkg-config 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
||||
@ -368,7 +405,7 @@ version = "0.7.21"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
dependencies = [
|
||||
"phf_shared 0.7.21 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"rand 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"rand 0.3.16 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@ -391,10 +428,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
|
||||
[[package]]
|
||||
name = "rand"
|
||||
version = "0.3.15"
|
||||
version = "0.3.16"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
dependencies = [
|
||||
"libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.29 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"magenta 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@ -419,8 +457,8 @@ name = "rmp"
|
||||
version = "0.8.6"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
dependencies = [
|
||||
"byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"byteorder 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"num-traits 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@ -428,18 +466,18 @@ name = "rmpv"
|
||||
version = "0.3.4"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
dependencies = [
|
||||
"num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"num-traits 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"rmp 0.8.6 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "serde"
|
||||
version = "1.0.9"
|
||||
version = "1.0.11"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
|
||||
[[package]]
|
||||
name = "serde_derive"
|
||||
version = "1.0.9"
|
||||
version = "1.0.11"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
dependencies = [
|
||||
"quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
@ -490,10 +528,10 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "toml"
|
||||
version = "0.4.2"
|
||||
version = "0.4.5"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
dependencies = [
|
||||
"serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"serde 1.0.11 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@ -507,7 +545,7 @@ version = "0.5.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
dependencies = [
|
||||
"cfg-if 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
"libc 0.2.29 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@ -535,56 +573,60 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
|
||||
[metadata]
|
||||
"checksum aho-corasick 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)" = "500909c4f87a9e52355b26626d890833e9e1d53ac566db76c36faa984b889699"
|
||||
"checksum atk-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "d7a9635b2b56a4925bf9c9b14cb7cad91eb2c3ca1eb04671a525b9e729b5c0a2"
|
||||
"checksum bitflags 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4f67931368edf3a9a51d29886d245f1c3db2f1ef0dcc9e35ff70341b78c10d23"
|
||||
"checksum bitflags 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1370e9fc2a6ae53aea8b7a5110edbd08836ed87c88736dfabccade1c2b44bff4"
|
||||
"checksum byteorder 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c40977b0ee6b9885c9013cd41d9feffdd22deb3bb4dc3a71d901cc7a77de18c8"
|
||||
"checksum atk-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c69658a4e18d5c9575f716e24559645d08a4044d6946c30c2e0025952c84d842"
|
||||
"checksum bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "aad18937a628ec6abcd26d1489012cc0e18c21798210f491af69ded9b881106d"
|
||||
"checksum bitflags 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4efd02e230a02e18f92fc2735f44597385ed02ad8f831e7c1c1156ee5e1ab3a5"
|
||||
"checksum byteorder 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ff81738b726f5d099632ceaffe7fb65b90212e8dce59d518729e7e8634032d3d"
|
||||
"checksum c_vec 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "6237ac5a4b1e81c213c24c6437964c61e646df910a914b4ab1487b46df20bd13"
|
||||
"checksum cairo-rs 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "0180a8b65dc13e78479c6a47c4d5f094d64dc34465a9433c6daef9ae2fbfb3ee"
|
||||
"checksum cairo-sys-rs 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "a2414b86c20c40dfb56a98b1dbca05bde56411f488d268c4289a86df1b648c61"
|
||||
"checksum cairo-rs 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a9d336f1b2ff46c17475a14360de7f456707008da475c54824887e52e453ab00"
|
||||
"checksum cairo-sys-rs 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9e8a1e2a76ac09b959788c2c30a355d693ce6f7f7d7268f6d1dd5d8c3359c521"
|
||||
"checksum cfg-if 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "d4c819a1287eb618df47cc647173c5c4c66ba19d888a6e50d605672aed3140de"
|
||||
"checksum conv 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "78ff10625fd0ac447827aa30ea8b861fead473bb60aeb73af6c1c58caf0d1299"
|
||||
"checksum custom_derive 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "ef8ae57c4978a2acd8b869ce6b9ca1dfe817bff704c220209fdef2c0b75a01b9"
|
||||
"checksum env_logger 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3ddf21e73e016298f5cb37d6ef8e8da8e39f91f9ec8b0df44b7deb16a9f8cd5b"
|
||||
"checksum gdk 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "9f5cc612be763b8a63cee5fb8d444d9869a8690f12c199535329bcba716de5e5"
|
||||
"checksum gdk-pixbuf 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "65506bc318d83947c3ee458cec22c35377a941770e0b762e35fbb491e91d012f"
|
||||
"checksum gdk-pixbuf-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "ff3c977528255ba4f1dfaecfb697c630996c4f5a6a3b1fbc08ff7bdeb3f754c3"
|
||||
"checksum gdk-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "c11dcde28f6ddf0bc6a93cec5205aafb034c318d99147a9668d455d66e5ba749"
|
||||
"checksum gio 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "1b5f3ca1ee702ff9f5fea73ebb33ad8d007f2e77b8179d90689c919ef328da32"
|
||||
"checksum gio-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "963cf38f6575843b98fe7d39d426c4c0025b6f965a9a8b8c0165aface866400a"
|
||||
"checksum glib 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "81f514a8abd315ede0e94e39ce5987fdb99191c5f812e5066bc5bdb965104fc4"
|
||||
"checksum glib-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8826cbc94631507bdd91ee40f7e099bfaa3cc4f43c086b4d1c15cff5b4e8220b"
|
||||
"checksum gobject-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "87373f64e136e9ea192ff5d3ef676a51e9ac6ab06b629223a081e0523c5f04e2"
|
||||
"checksum gtk 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "78d69fb7425fd6efba3b0c99f952b130fa4a0fdfdffbceb2b40ba018b2ed6a77"
|
||||
"checksum gtk-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "9391d0b50af734dbd54582d1836d0346d8daf6dc5e7f272afea96f4dcaf50b74"
|
||||
"checksum gdk 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f30018ecbbb1e6f1d59c4024ec08675850744b799abc5420be0629ac9ba0abd2"
|
||||
"checksum gdk-pixbuf 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "caf05dab73febcc6e90abaff8f24cfe1cf1bd2222cd648ddfe337bf3b994489f"
|
||||
"checksum gdk-pixbuf-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "85eb441420653b33e5a29d13227ea34995383e65bf4f33b16492ec95e44a8996"
|
||||
"checksum gdk-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "679d86da2a4522a623e3ce4b67f2126a12e057a1f7269eee7028199f78b5a854"
|
||||
"checksum gio 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b7bc3126c94109e65871e4228b990d1ea2953259483d5b06eb96e8b36a7bf196"
|
||||
"checksum gio-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "189969f8189604c371d42b613d928c9d17fcfbf6e175d6b0ce9475a950f76dc6"
|
||||
"checksum glib 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "67eb5b7251562f527d55d0ccf81bc5e6e75045df38b97cfee98ee7b2fc5aa7c0"
|
||||
"checksum glib-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "cdd7d911c5dc610aabe37caae7d3b9d2cfe6d8f4c85ff4c062f3d6f490e75067"
|
||||
"checksum gobject-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "edc95561e538381576425264a4ddd08c65d5da218f10b2a47b4479dd147775da"
|
||||
"checksum gtk 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ce17f98e7dcdc9d06b3a5f7621d796a24937c04953481205b1be267c5a02697a"
|
||||
"checksum gtk-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "854b56ce6d6b05945f7735651482835c5ac1f8582142ce67306726259a3dafb0"
|
||||
"checksum htmlescape 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e9025058dae765dee5070ec375f591e2ba14638c63feff74f13805a72e523163"
|
||||
"checksum lazy_static 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "3b37545ab726dd833ec6420aaba8231c5b320814b9029ad585555d2a03e94fbf"
|
||||
"checksum libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)" = "684f330624d8c3784fb9558ca46c4ce488073a8d22450415c5eb4f4cfb0d11b5"
|
||||
"checksum libc 0.2.29 (registry+https://github.com/rust-lang/crates.io-index)" = "8a014d9226c2cc402676fbe9ea2e15dd5222cd1dd57f576b5b283178c944a264"
|
||||
"checksum log 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)" = "880f77541efa6e5cc74e76910c9884d9859683118839d6a1dc3b11e63512565b"
|
||||
"checksum magenta 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4bf0336886480e671965f794bc9b6fce88503563013d1bfb7a502c81fe3ac527"
|
||||
"checksum magenta-sys 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "40d014c7011ac470ae28e2f76a02bfea4a8480f73e701353b49ad7a8d75f4699"
|
||||
"checksum memchr 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1dbccc0e46f1ea47b9f17e6d67c5a96bd27030519c519c9c91327e31275a47b4"
|
||||
"checksum neovim-lib 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "cd81cd2140309fcbe61775ebe5901b0730e5fdae2558a6cd27539e6e730fa76a"
|
||||
"checksum num-traits 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "1708c0628602a98b52fad936cf3edb9a107af06e52e49fdf0707e884456a6af6"
|
||||
"checksum pango 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "4215233226ff03c9a3ed7c85cbc3c58257203723e3a93d5a20ce3560f66261b7"
|
||||
"checksum pango-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "e401ee469540e60a80d1df63dcea4e9c201115e79344b77529fa3705ea8eadcd"
|
||||
"checksum pangocairo 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "1994752fcd20dbefd084a3c231bbcd79ebe67ca2e7f9cd11db0243b64f155c35"
|
||||
"checksum pangocairo-sys 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "02eeea9019eeb6ea32c170664247cac130d871f28902376de3c8b30f001b9e7b"
|
||||
"checksum num-traits 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)" = "99843c856d68d8b4313b03a17e33c4bb42ae8f6610ea81b28abe076ac721b9b0"
|
||||
"checksum pango 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5afa4b4c5380315b12075e7767d9bdd62d53beeb6087d9287ef6990e57a6b643"
|
||||
"checksum pango-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e6ec8d90306b5ff43f5836f4363267ea95be02b3df71d2b31ba8fbb1680bdee1"
|
||||
"checksum pangocairo 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c8edeb86f36f8f10a252a888fa3d9aff4d0681373da918c207eac2208aa091e6"
|
||||
"checksum pangocairo-sys 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c26c200ef32a682bf8b693b47996c3c33e0b2de32b30f7251cc60673ad513bef"
|
||||
"checksum phf 0.7.21 (registry+https://github.com/rust-lang/crates.io-index)" = "cb325642290f28ee14d8c6201159949a872f220c62af6e110a56ea914fbe42fc"
|
||||
"checksum phf_codegen 0.7.21 (registry+https://github.com/rust-lang/crates.io-index)" = "d62594c0bb54c464f633175d502038177e90309daf2e0158be42ed5f023ce88f"
|
||||
"checksum phf_generator 0.7.21 (registry+https://github.com/rust-lang/crates.io-index)" = "6b07ffcc532ccc85e3afc45865469bf5d9e4ef5bfcf9622e3cfe80c2d275ec03"
|
||||
"checksum phf_shared 0.7.21 (registry+https://github.com/rust-lang/crates.io-index)" = "07e24b0ca9643bdecd0632f2b3da6b1b89bbb0030e0b992afc1113b23a7bc2f2"
|
||||
"checksum pkg-config 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "3a8b4c6b8165cd1a1cd4b9b120978131389f64bdaf456435caa41e630edba903"
|
||||
"checksum quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6e920b65c65f10b2ae65c831a81a073a89edd28c7cce89475bff467ab4167a"
|
||||
"checksum rand 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)" = "022e0636ec2519ddae48154b028864bdce4eaf7d35226ab8e65c611be97b189d"
|
||||
"checksum rand 0.3.16 (registry+https://github.com/rust-lang/crates.io-index)" = "eb250fd207a4729c976794d03db689c9be1d634ab5a1c9da9492a13d8fecbcdf"
|
||||
"checksum regex 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1731164734096285ec2a5ec7fea5248ae2f5485b3feeb0115af4fda2183b2d1b"
|
||||
"checksum regex-syntax 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ad890a5eef7953f55427c50575c680c42841653abd2b028b68cd223d157f62db"
|
||||
"checksum rmp 0.8.6 (registry+https://github.com/rust-lang/crates.io-index)" = "7ce560a5728f4eec697f07f8d7fa20608893d44b4f5b8f9f5f51a2987f3cffe2"
|
||||
"checksum rmpv 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "45368daa6c60116376d8813ec6a2556df640229709becb8f80df1651f882e7af"
|
||||
"checksum serde 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)" = "6a7c6b751a2e8d5df57a5ff71b5b4fc8aaee9ee28ff1341d640dd130bb5f4f7a"
|
||||
"checksum serde_derive 1.0.9 (registry+https://github.com/rust-lang/crates.io-index)" = "2f6ca58905ebd3c3b285a8a6d4f3ac92b92c0d7951d5649b1bdd212549c06639"
|
||||
"checksum serde 1.0.11 (registry+https://github.com/rust-lang/crates.io-index)" = "f7726f29ddf9731b17ff113c461e362c381d9d69433f79de4f3dd572488823e9"
|
||||
"checksum serde_derive 1.0.11 (registry+https://github.com/rust-lang/crates.io-index)" = "cf823e706be268e73e7747b147aa31c8f633ab4ba31f115efb57e5047c3a76dd"
|
||||
"checksum serde_derive_internals 0.15.1 (registry+https://github.com/rust-lang/crates.io-index)" = "37aee4e0da52d801acfbc0cc219eb1eda7142112339726e427926a6f6ee65d3a"
|
||||
"checksum siphasher 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "0df90a788073e8d0235a67e50441d47db7c8ad9debd91cbf43736a2a92d36537"
|
||||
"checksum syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)" = "d3b891b9015c88c576343b9b3e41c2c11a51c219ef067b264bd9c8aa9b441dad"
|
||||
"checksum synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a393066ed9010ebaed60b9eafa373d4b1baac186dd7e008555b0f702b51945b6"
|
||||
"checksum thread_local 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "1697c4b57aeeb7a536b647165a2825faddffb1d3bad386d507709bd51a90bb14"
|
||||
"checksum toml 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b0601da6c97135c8d330c7a13a013ca6cd4143221b01de2f8d4edc50a9e551c7"
|
||||
"checksum toml 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)" = "a7540f4ffc193e0d3c94121edb19b055670d369f77d5804db11ae053a45b6e7e"
|
||||
"checksum unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f860d7d29cf02cb2f3f359fd35991af3d30bac52c57d265a3c461074cb4dc"
|
||||
"checksum unix_socket 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "6aa2700417c405c38f5e6902d699345241c28c0b7ade4abaad71e35a87eb1564"
|
||||
"checksum unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "382810877fe448991dfc7f0dd6e3ae5d58088fd0ea5e35189655f84e6814fa56"
|
||||
|
32
Cargo.toml
32
Cargo.toml
@ -5,16 +5,26 @@ authors = ["daa84 <daa84@inbox.ru>"]
|
||||
build = "build.rs"
|
||||
|
||||
[dependencies]
|
||||
cairo-rs = "0.1"
|
||||
pango = "0.1"
|
||||
pangocairo = "0.1"
|
||||
glib = "0.1"
|
||||
glib-sys = "0.3"
|
||||
gdk = "0.5"
|
||||
gdk-sys = "0.3"
|
||||
cairo-rs = "0.2"
|
||||
pango = "0.2"
|
||||
pangocairo = "0.2"
|
||||
glib = "0.3"
|
||||
glib-sys = "0.4"
|
||||
gdk = "0.6"
|
||||
gdk-sys = "0.4"
|
||||
gio = "0.2"
|
||||
#gdk = { git = 'https://github.com/gtk-rs/gdk' }
|
||||
#gdk-sys = { git = 'https://github.com/gtk-rs/sys' }
|
||||
#glib = { git = 'https://github.com/gtk-rs/glib' }
|
||||
#glib-sys = { git = 'https://github.com/gtk-rs/sys' }
|
||||
#cairo-rs = { git = 'https://github.com/gtk-rs/cairo' }
|
||||
#cairo-sys-rs = { git = 'https://github.com/gtk-rs/cairo' }
|
||||
#pango = { git = 'https://github.com/gtk-rs/pango' }
|
||||
#pango-sys = { git = 'https://github.com/gtk-rs/sys' }
|
||||
#gio = { git = 'https://github.com/gtk-rs/gio' }
|
||||
#pangocairo = { git = 'https://github.com/RazrFalcon/pangocairo-rs' }
|
||||
neovim-lib = "0.4"
|
||||
phf = "0.7"
|
||||
gio = "0.1"
|
||||
log = "0.3"
|
||||
env_logger = "0.4"
|
||||
htmlescape = "0.3"
|
||||
@ -30,10 +40,12 @@ toml = "0.4"
|
||||
phf_codegen = "0.7"
|
||||
|
||||
[dependencies.gtk]
|
||||
version = "0.1"
|
||||
version = "0.2"
|
||||
features = ["v3_22"]
|
||||
#git = "https://github.com/gtk-rs/gtk"
|
||||
|
||||
[dependencies.gtk-sys]
|
||||
version = "0.3"
|
||||
version = "0.4"
|
||||
features = ["v3_22"]
|
||||
#git = 'https://github.com/gtk-rs/sys'
|
||||
|
||||
|
@ -77,11 +77,15 @@ pub fn convert_key(ev: &EventKey) -> Option<String> {
|
||||
}
|
||||
}
|
||||
|
||||
pub fn im_input(nvim: &mut Neovim, input: &str) {
|
||||
debug!("nvim_input -> {}", input);
|
||||
nvim.input(&input).expect("Error run input command to nvim");
|
||||
}
|
||||
|
||||
pub fn gtk_key_press(nvim: &mut Neovim, ev: &EventKey) -> Inhibit {
|
||||
if let Some(input) = convert_key(ev) {
|
||||
debug!("nvim_input -> {}", input);
|
||||
nvim.input(&input)
|
||||
.expect("Error run input command to nvim");
|
||||
nvim.input(&input).expect("Error run input command to nvim");
|
||||
Inhibit(true)
|
||||
} else {
|
||||
Inhibit(false)
|
||||
|
62
src/main.rs
62
src/main.rs
@ -35,8 +35,9 @@ mod project;
|
||||
mod tabline;
|
||||
mod error;
|
||||
|
||||
|
||||
use std::env;
|
||||
use gio::ApplicationExt;
|
||||
use gio::{ApplicationExt, FileExt};
|
||||
|
||||
use ui::Ui;
|
||||
|
||||
@ -47,29 +48,41 @@ const BIN_PATH_ARG: &'static str = "--nvim-bin-path";
|
||||
fn main() {
|
||||
env_logger::init().expect("Can't initialize env_logger");
|
||||
|
||||
let app_flags = gio::APPLICATION_HANDLES_OPEN;
|
||||
|
||||
let app = if cfg!(debug_assertions) {
|
||||
gtk::Application::new(Some("org.daa.NeovimGtkDebug"),
|
||||
gio::ApplicationFlags::empty())
|
||||
app_flags)
|
||||
} else {
|
||||
gtk::Application::new(Some("org.daa.NeovimGtk"), gio::ApplicationFlags::empty())
|
||||
gtk::Application::new(Some("org.daa.NeovimGtk"), app_flags)
|
||||
}
|
||||
.expect("Failed to initialize GTK application");
|
||||
|
||||
app.connect_activate(activate);
|
||||
{
|
||||
use gio::ApplicationExtManual;
|
||||
app.connect_open(open);
|
||||
}
|
||||
|
||||
let args: Vec<String> = env::args().collect();
|
||||
let mut argv: Vec<&str> = args.iter()
|
||||
let argv: Vec<&str> = args.iter()
|
||||
.filter(|a| !a.starts_with(BIN_PATH_ARG))
|
||||
.map(String::as_str)
|
||||
.collect();
|
||||
if open_arg().is_some() {
|
||||
argv.pop();
|
||||
app.run(&argv);
|
||||
}
|
||||
|
||||
fn open(app: >k::Application, files: &[gio::File], _: &str) {
|
||||
for f in files {
|
||||
let mut ui = Ui::new(ShellOptions::new(nvim_bin_path(std::env::args()),
|
||||
f.get_path().and_then(|p| p.to_str().map(str::to_owned))));
|
||||
|
||||
ui.init(app);
|
||||
}
|
||||
app.run(argv.len() as i32, &argv);
|
||||
}
|
||||
|
||||
fn activate(app: >k::Application) {
|
||||
let mut ui = Ui::new(ShellOptions::new(nvim_bin_path(std::env::args()), open_arg()));
|
||||
let mut ui = Ui::new(ShellOptions::new(nvim_bin_path(std::env::args()), None));
|
||||
|
||||
ui.init(app);
|
||||
}
|
||||
@ -83,23 +96,6 @@ fn nvim_bin_path<I>(args: I) -> Option<String>
|
||||
.unwrap_or(None)
|
||||
}
|
||||
|
||||
fn open_arg() -> Option<String> {
|
||||
open_arg_impl(std::env::args())
|
||||
}
|
||||
|
||||
fn open_arg_impl<I>(args: I) -> Option<String>
|
||||
where I: Iterator<Item = String>
|
||||
{
|
||||
args.skip(1)
|
||||
.last()
|
||||
.map(|a| if !a.starts_with('-') {
|
||||
Some(a.to_owned())
|
||||
} else {
|
||||
None
|
||||
})
|
||||
.unwrap_or(None)
|
||||
}
|
||||
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use super::*;
|
||||
@ -111,20 +107,4 @@ mod tests {
|
||||
.iter()
|
||||
.map(|s| s.to_string())));
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_open_arg() {
|
||||
assert_eq!(Some("some_file.txt".to_string()),
|
||||
open_arg_impl(vec!["neovim-gtk",
|
||||
"--nvim-bin-path=/test_path",
|
||||
"some_file.txt"]
|
||||
.iter()
|
||||
.map(|s| s.to_string())));
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_empty_open_arg() {
|
||||
assert_eq!(None,
|
||||
open_arg_impl(vec!["neovim-gtk"].iter().map(|s| s.to_string())));
|
||||
}
|
||||
}
|
||||
|
@ -7,6 +7,8 @@ use nvim::RepaintMode;
|
||||
use shell::Shell;
|
||||
#[cfg(unix)]
|
||||
use gio;
|
||||
#[cfg(unix)]
|
||||
use gio::SettingsExt;
|
||||
|
||||
#[derive(PartialEq)]
|
||||
pub enum FontSource {
|
||||
|
239
src/shell.rs
239
src/shell.rs
@ -7,7 +7,8 @@ use std::thread;
|
||||
use cairo;
|
||||
use pangocairo::CairoContextExt;
|
||||
use pango;
|
||||
use pango::FontDescription;
|
||||
use pango::{LayoutExt, FontDescription};
|
||||
use gdk;
|
||||
use gdk::{ModifierType, EventButton, EventMotion, EventType, EventScroll};
|
||||
use gdk_sys;
|
||||
use glib;
|
||||
@ -63,6 +64,7 @@ pub struct State {
|
||||
stack: gtk::Stack,
|
||||
drawing_area: gtk::DrawingArea,
|
||||
tabs: Tabline,
|
||||
im_context: gtk::IMMulticontext,
|
||||
error_area: error::ErrorArea,
|
||||
|
||||
line_height: Option<f64>,
|
||||
@ -100,6 +102,7 @@ impl State {
|
||||
stack: gtk::Stack::new(),
|
||||
drawing_area,
|
||||
tabs: Tabline::new(),
|
||||
im_context: gtk::IMMulticontext::new(),
|
||||
error_area: error::ErrorArea::new(),
|
||||
|
||||
line_height: None,
|
||||
@ -131,7 +134,8 @@ impl State {
|
||||
}
|
||||
|
||||
pub fn set_detach_cb<F>(&mut self, cb: Option<F>)
|
||||
where F: FnMut() + Send + 'static
|
||||
where
|
||||
F: FnMut() + Send + 'static,
|
||||
{
|
||||
if cb.is_some() {
|
||||
self.detach_cb = Some(Box::new(RefCell::new(cb.unwrap())));
|
||||
@ -215,12 +219,16 @@ impl State {
|
||||
}
|
||||
}
|
||||
|
||||
fn im_commit(&self, ch: &str) {
|
||||
input::im_input(&mut self.nvim.borrow_mut(), ch);
|
||||
}
|
||||
|
||||
fn calc_char_bounds(&self, ctx: &cairo::Context) -> (i32, i32) {
|
||||
let layout = ctx.create_pango_layout();
|
||||
|
||||
let desc = self.create_pango_font();
|
||||
layout.set_font_description(Some(&desc));
|
||||
layout.set_text("A", -1);
|
||||
layout.set_text("A");
|
||||
|
||||
layout.get_pixel_size()
|
||||
}
|
||||
@ -237,8 +245,10 @@ impl State {
|
||||
if let Some(line_height) = self.line_height {
|
||||
if let Some(char_width) = self.char_width {
|
||||
let alloc = self.drawing_area.get_allocation();
|
||||
return Some(((alloc.width as f64 / char_width).trunc() as usize,
|
||||
(alloc.height as f64 / line_height).trunc() as usize));
|
||||
return Some((
|
||||
(alloc.width as f64 / char_width).trunc() as usize,
|
||||
(alloc.height as f64 / line_height).trunc() as usize,
|
||||
));
|
||||
}
|
||||
}
|
||||
|
||||
@ -313,6 +323,8 @@ impl Shell {
|
||||
state.drawing_area.set_vexpand(true);
|
||||
state.drawing_area.set_can_focus(true);
|
||||
|
||||
state.im_context.set_use_preedit(false);
|
||||
|
||||
let nvim_box = gtk::Box::new(gtk::Orientation::Vertical, 0);
|
||||
|
||||
nvim_box.pack_start(&*state.tabs, false, true, 0);
|
||||
@ -323,75 +335,103 @@ impl Shell {
|
||||
|
||||
self.widget.pack_start(&state.stack, true, true, 0);
|
||||
|
||||
state
|
||||
.drawing_area
|
||||
.set_events((gdk_sys::GDK_BUTTON_RELEASE_MASK | gdk_sys::GDK_BUTTON_PRESS_MASK |
|
||||
state.drawing_area.set_events(
|
||||
(gdk_sys::GDK_BUTTON_RELEASE_MASK | gdk_sys::GDK_BUTTON_PRESS_MASK |
|
||||
gdk_sys::GDK_BUTTON_MOTION_MASK |
|
||||
gdk_sys::GDK_SCROLL_MASK)
|
||||
.bits() as i32);
|
||||
.bits() as i32,
|
||||
);
|
||||
|
||||
let ref_state = self.state.clone();
|
||||
let ref_ui_state = self.ui_state.clone();
|
||||
state
|
||||
.drawing_area
|
||||
.connect_button_press_event(move |_, ev| {
|
||||
gtk_button_press(&mut *ref_state.borrow_mut(),
|
||||
state.drawing_area.connect_button_press_event(move |_, ev| {
|
||||
gtk_button_press(
|
||||
&mut *ref_state.borrow_mut(),
|
||||
&mut *ref_ui_state.borrow_mut(),
|
||||
ev)
|
||||
ev,
|
||||
)
|
||||
});
|
||||
|
||||
let ref_ui_state = self.ui_state.clone();
|
||||
state
|
||||
.drawing_area
|
||||
.connect_button_release_event(move |_, _| {
|
||||
state.drawing_area.connect_button_release_event(
|
||||
move |_, _| {
|
||||
gtk_button_release(&mut *ref_ui_state.borrow_mut())
|
||||
});
|
||||
},
|
||||
);
|
||||
|
||||
|
||||
let ref_state = self.state.clone();
|
||||
let ref_ui_state = self.ui_state.clone();
|
||||
state
|
||||
.drawing_area
|
||||
.connect_motion_notify_event(move |_, ev| {
|
||||
gtk_motion_notify(&mut *ref_state.borrow_mut(),
|
||||
state.drawing_area.connect_motion_notify_event(
|
||||
move |_, ev| {
|
||||
gtk_motion_notify(
|
||||
&mut *ref_state.borrow_mut(),
|
||||
&mut *ref_ui_state.borrow_mut(),
|
||||
ev)
|
||||
});
|
||||
ev,
|
||||
)
|
||||
},
|
||||
);
|
||||
|
||||
let ref_state = self.state.clone();
|
||||
state
|
||||
.drawing_area
|
||||
.connect_draw(move |_, ctx| gtk_draw(&ref_state, ctx));
|
||||
state.drawing_area.connect_draw(
|
||||
move |_, ctx| gtk_draw(&ref_state, ctx),
|
||||
);
|
||||
|
||||
let ref_state = self.state.clone();
|
||||
state
|
||||
.drawing_area
|
||||
.connect_key_press_event(move |_, ev| {
|
||||
state.drawing_area.connect_key_press_event(move |_, ev| {
|
||||
let mut shell = ref_state.borrow_mut();
|
||||
shell.cursor.as_mut().unwrap().reset_state();
|
||||
let mut nvim = shell.nvim();
|
||||
input::gtk_key_press(&mut *nvim, ev)
|
||||
// GtkIMContext will eat a Shift-Space and not tell us about shift.
|
||||
// Also don't let IME eat any GDK_KEY_KP_ events
|
||||
if !ev.get_state().contains(gdk::SHIFT_MASK) &&
|
||||
ev.get_keyval() < gdk_sys::GDK_KEY_KP_Space as u32 &&
|
||||
ev.get_keyval() > gdk_sys::GDK_KEY_KP_Divide as u32 &&
|
||||
shell.im_context.filter_keypress(ev)
|
||||
{
|
||||
Inhibit(true)
|
||||
} else {
|
||||
if shell.nvim.borrow().is_initialized() {
|
||||
input::gtk_key_press(&mut shell.nvim.borrow_mut(), ev)
|
||||
} else {
|
||||
Inhibit(false)
|
||||
}
|
||||
}
|
||||
});
|
||||
let ref_state = self.state.clone();
|
||||
state.drawing_area.connect_key_release_event(move |_, ev| {
|
||||
ref_state.borrow().im_context.filter_keypress(ev);
|
||||
Inhibit(false)
|
||||
});
|
||||
|
||||
let ref_state = self.state.clone();
|
||||
state
|
||||
.drawing_area
|
||||
.connect_scroll_event(move |_, ev| gtk_scroll_event(&mut *ref_state.borrow_mut(), ev));
|
||||
state.drawing_area.connect_scroll_event(move |_, ev| {
|
||||
gtk_scroll_event(&mut *ref_state.borrow_mut(), ev)
|
||||
});
|
||||
|
||||
let ref_state = self.state.clone();
|
||||
state
|
||||
.drawing_area
|
||||
.connect_focus_in_event(move |_, _| gtk_focus_in(&mut *ref_state.borrow_mut()));
|
||||
state.drawing_area.connect_focus_in_event(move |_, _| {
|
||||
gtk_focus_in(&mut *ref_state.borrow_mut())
|
||||
});
|
||||
|
||||
let ref_state = self.state.clone();
|
||||
state
|
||||
.drawing_area
|
||||
.connect_focus_out_event(move |_, _| gtk_focus_out(&mut *ref_state.borrow_mut()));
|
||||
state.drawing_area.connect_focus_out_event(move |_, _| {
|
||||
gtk_focus_out(&mut *ref_state.borrow_mut())
|
||||
});
|
||||
|
||||
let ref_state = self.state.clone();
|
||||
state
|
||||
.drawing_area
|
||||
.connect_configure_event(move |_, _| {
|
||||
state.drawing_area.connect_realize(move |w| {
|
||||
ref_state.borrow().im_context.set_client_window(
|
||||
w.get_window().as_ref(),
|
||||
)
|
||||
});
|
||||
|
||||
let ref_state = self.state.clone();
|
||||
state.im_context.connect_commit(move |_, ch| {
|
||||
ref_state.borrow().im_commit(ch)
|
||||
});
|
||||
|
||||
let ref_state = self.state.clone();
|
||||
state.drawing_area.connect_configure_event(move |_, _| {
|
||||
try_nvim_resize(&ref_state);
|
||||
false
|
||||
});
|
||||
@ -443,7 +483,8 @@ impl Shell {
|
||||
}
|
||||
|
||||
pub fn set_detach_cb<F>(&self, cb: Option<F>)
|
||||
where F: FnMut() + Send + 'static
|
||||
where
|
||||
F: FnMut() + Send + 'static,
|
||||
{
|
||||
let mut state = self.state.borrow_mut();
|
||||
state.set_detach_cb(cb);
|
||||
@ -459,6 +500,7 @@ impl Deref for Shell {
|
||||
}
|
||||
|
||||
fn gtk_focus_in(state: &mut State) -> Inhibit {
|
||||
state.im_context.focus_in();
|
||||
state.cursor.as_mut().unwrap().enter_focus();
|
||||
let point = state.model.cur_point();
|
||||
state.on_redraw(&RepaintMode::Area(point));
|
||||
@ -466,6 +508,7 @@ fn gtk_focus_in(state: &mut State) -> Inhibit {
|
||||
}
|
||||
|
||||
fn gtk_focus_out(state: &mut State) -> Inhibit {
|
||||
state.im_context.focus_out();
|
||||
state.cursor.as_mut().unwrap().leave_focus();
|
||||
let point = state.model.cur_point();
|
||||
state.on_redraw(&RepaintMode::Area(point));
|
||||
@ -520,8 +563,9 @@ fn mouse_input(shell: &mut State, input: &str, state: ModifierType, position: (f
|
||||
let col = (x / char_width).trunc() as u64;
|
||||
let row = (y / line_height).trunc() as u64;
|
||||
let input_str = format!("{}<{},{}>", keyval_to_input_string(input, state), col, row);
|
||||
nvim.input(&input_str)
|
||||
.expect("Can't send mouse input event");
|
||||
nvim.input(&input_str).expect(
|
||||
"Can't send mouse input event",
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -594,10 +638,12 @@ fn show_nvim_init_error(err: nvim::NvimInitError, state_arc: Arc<UiMutex<State>>
|
||||
});
|
||||
}
|
||||
|
||||
fn init_nvim_async(state_arc: Arc<UiMutex<State>>,
|
||||
fn init_nvim_async(
|
||||
state_arc: Arc<UiMutex<State>>,
|
||||
options: ShellOptions,
|
||||
cols: usize,
|
||||
rows: usize) {
|
||||
rows: usize,
|
||||
) {
|
||||
// execute nvim
|
||||
let mut nvim = match nvim::start(state_arc.clone(), options.nvim_bin_path.as_ref()) {
|
||||
Ok(nvim) => nvim,
|
||||
@ -620,10 +666,13 @@ fn init_nvim_async(state_arc: Arc<UiMutex<State>>,
|
||||
let mut nvim = Some(nvim);
|
||||
glib::idle_add(move || {
|
||||
let mut nvim = nvim.take().unwrap();
|
||||
if let Err(err) = nvim::post_start_init(&mut nvim,
|
||||
if let Err(err) = nvim::post_start_init(
|
||||
&mut nvim,
|
||||
options.open_path.as_ref(),
|
||||
cols as u64,
|
||||
rows as u64) {
|
||||
rows as u64,
|
||||
)
|
||||
{
|
||||
show_nvim_init_error(err, state_arc.clone());
|
||||
} else {
|
||||
let mut state = state_arc.borrow_mut();
|
||||
@ -651,11 +700,12 @@ fn init_nvim(state_arc: &Arc<UiMutex<State>>) {
|
||||
}
|
||||
|
||||
#[inline]
|
||||
fn get_model_clip(state: &State,
|
||||
fn get_model_clip(
|
||||
state: &State,
|
||||
line_height: f64,
|
||||
char_width: f64,
|
||||
clip: (f64, f64, f64, f64))
|
||||
-> ModelRect {
|
||||
clip: (f64, f64, f64, f64),
|
||||
) -> ModelRect {
|
||||
let mut model_clip =
|
||||
ModelRect::from_area(line_height, char_width, clip.0, clip.1, clip.2, clip.3);
|
||||
// in some cases symbols from previous row affect next row
|
||||
@ -669,12 +719,14 @@ fn get_model_clip(state: &State,
|
||||
}
|
||||
|
||||
#[inline]
|
||||
fn draw_backgound(state: &State,
|
||||
fn draw_backgound(
|
||||
state: &State,
|
||||
draw_bitmap: &ModelBitamp,
|
||||
ctx: &cairo::Context,
|
||||
line_height: f64,
|
||||
char_width: f64,
|
||||
model_clip: &ModelRect) {
|
||||
model_clip: &ModelRect,
|
||||
) {
|
||||
let line_x = model_clip.left as f64 * char_width;
|
||||
let mut line_y: f64 = model_clip.top as f64 * line_height;
|
||||
|
||||
@ -712,7 +764,7 @@ fn draw_initializing(state: &State, ctx: &cairo::Context) {
|
||||
ctx.paint();
|
||||
|
||||
layout.set_font_description(&desc);
|
||||
layout.set_text("Loading..", -1);
|
||||
layout.set_text("Loading..");
|
||||
let (width, height) = layout.get_pixel_size();
|
||||
|
||||
let x = alloc.width as f64 / 2.0 - width as f64 / 2.0;
|
||||
@ -725,17 +777,15 @@ fn draw_initializing(state: &State, ctx: &cairo::Context) {
|
||||
|
||||
|
||||
ctx.move_to(x + width as f64, y);
|
||||
state
|
||||
.cursor
|
||||
.as_ref()
|
||||
.unwrap()
|
||||
.draw(ctx,
|
||||
state.cursor.as_ref().unwrap().draw(
|
||||
ctx,
|
||||
state,
|
||||
char_width,
|
||||
line_height,
|
||||
y,
|
||||
false,
|
||||
&state.bg_color);
|
||||
&state.bg_color,
|
||||
);
|
||||
}
|
||||
|
||||
fn draw(state: &State, ctx: &cairo::Context) {
|
||||
@ -756,21 +806,24 @@ fn draw(state: &State, ctx: &cairo::Context) {
|
||||
for clip_idx in 0..clip_rects.len() {
|
||||
let clip = clip_rects.get(clip_idx).unwrap();
|
||||
|
||||
let model_clip =
|
||||
get_model_clip(state,
|
||||
line_height,
|
||||
char_width,
|
||||
(clip.x, clip.y, clip.x + clip.width, clip.y + clip.height));
|
||||
let model_clip = get_model_clip(state, line_height, char_width, (
|
||||
clip.x,
|
||||
clip.y,
|
||||
clip.x + clip.width,
|
||||
clip.y + clip.height,
|
||||
));
|
||||
|
||||
let line_x = model_clip.left as f64 * char_width;
|
||||
let mut line_y: f64 = model_clip.top as f64 * line_height;
|
||||
|
||||
draw_backgound(state,
|
||||
draw_backgound(
|
||||
state,
|
||||
&draw_bitmap,
|
||||
ctx,
|
||||
line_height,
|
||||
char_width,
|
||||
&model_clip);
|
||||
&model_clip,
|
||||
);
|
||||
|
||||
for (line_idx, line) in state.model.clip_model(&model_clip) {
|
||||
|
||||
@ -785,17 +838,15 @@ fn draw(state: &State, ctx: &cairo::Context) {
|
||||
let (bg, fg) = state.colors(cell);
|
||||
|
||||
if row == line_idx && col == col_idx {
|
||||
state
|
||||
.cursor
|
||||
.as_ref()
|
||||
.unwrap()
|
||||
.draw(ctx,
|
||||
state.cursor.as_ref().unwrap().draw(
|
||||
ctx,
|
||||
state,
|
||||
char_width,
|
||||
line_height,
|
||||
line_y,
|
||||
double_width,
|
||||
bg);
|
||||
bg,
|
||||
);
|
||||
|
||||
ctx.move_to(current_point.0, current_point.1);
|
||||
}
|
||||
@ -807,7 +858,7 @@ fn draw(state: &State, ctx: &cairo::Context) {
|
||||
layout.set_font_description(&desc);
|
||||
buf.clear();
|
||||
buf.push(cell.ch);
|
||||
layout.set_text(&buf, -1);
|
||||
layout.set_text(&buf);
|
||||
|
||||
// correct layout for double_width chars
|
||||
if double_width {
|
||||
@ -1064,19 +1115,26 @@ impl RedrawEvents for State {
|
||||
RepaintMode::Area(self.model.cur_point())
|
||||
}
|
||||
|
||||
fn popupmenu_show(&mut self,
|
||||
fn popupmenu_show(
|
||||
&mut self,
|
||||
menu: &[Vec<&str>],
|
||||
selected: i64,
|
||||
row: u64,
|
||||
col: u64)
|
||||
-> RepaintMode {
|
||||
col: u64,
|
||||
) -> RepaintMode {
|
||||
if let (&Some(line_height), &Some(char_width)) = (&self.line_height, &self.char_width) {
|
||||
let point = ModelRect::point(col as usize, row as usize);
|
||||
let (x, y, width, height) = point.to_area(line_height, char_width);
|
||||
|
||||
self.popup_menu
|
||||
.borrow_mut()
|
||||
.show(self, menu, selected, x, y, width, height);
|
||||
self.popup_menu.borrow_mut().show(
|
||||
self,
|
||||
menu,
|
||||
selected,
|
||||
x,
|
||||
y,
|
||||
width,
|
||||
height,
|
||||
);
|
||||
}
|
||||
|
||||
RepaintMode::Nothing
|
||||
@ -1093,20 +1151,21 @@ impl RedrawEvents for State {
|
||||
}
|
||||
|
||||
|
||||
fn tabline_update(&mut self,
|
||||
fn tabline_update(
|
||||
&mut self,
|
||||
selected: Tabpage,
|
||||
tabs: Vec<(Tabpage, Option<String>)>)
|
||||
-> RepaintMode {
|
||||
tabs: Vec<(Tabpage, Option<String>)>,
|
||||
) -> RepaintMode {
|
||||
self.tabs.update_tabs(&self.nvim, &selected, &tabs);
|
||||
|
||||
RepaintMode::Nothing
|
||||
}
|
||||
|
||||
|
||||
fn mode_info_set(&mut self,
|
||||
fn mode_info_set(
|
||||
&mut self,
|
||||
cursor_style_enabled: bool,
|
||||
mode_info: Vec<nvim::ModeInfo>)
|
||||
-> RepaintMode {
|
||||
mode_info: Vec<nvim::ModeInfo>,
|
||||
) -> RepaintMode {
|
||||
self.mode.set_info(cursor_style_enabled, mode_info);
|
||||
RepaintMode::Nothing
|
||||
}
|
||||
|
@ -7,7 +7,8 @@ use gtk;
|
||||
use gtk_sys;
|
||||
use gtk::prelude::*;
|
||||
use gtk::{ApplicationWindow, HeaderBar, ToolButton, Image, AboutDialog};
|
||||
use gio::{Menu, MenuItem, SimpleAction};
|
||||
use gio::prelude::*;
|
||||
use gio::{Menu, MenuExt, MenuItem, MenuItemExt, SimpleAction};
|
||||
|
||||
use settings::Settings;
|
||||
use shell::{Shell, ShellOptions};
|
||||
|
Loading…
Reference in New Issue
Block a user