summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVille Hakulinen <ville.hakulinen@gmail.com>2020-07-07 13:24:15 +0300
committerVille Hakulinen <ville.hakulinen@gmail.com>2020-07-12 01:57:30 +0300
commit47a6024839c0bfea51d5ab7e0ff0556522a402c1 (patch)
tree0e320e409ec3f35cac2c869f9608775f1fcd6a0d
parentf3ddcdbe5e4ee94a40094836072b6336cd503781 (diff)
Prevent using grid's itself as anchor for float
-rw-r--r--src/ui/state.rs12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/ui/state.rs b/src/ui/state.rs
index 563a96d..1d616d5 100644
--- a/src/ui/state.rs
+++ b/src/ui/state.rs
@@ -6,7 +6,7 @@ use glib;
use gtk;
use gtk::prelude::*;
-use log::{debug, error};
+use log::{debug, error, warn};
use nvim_rs::{Tabpage, Window as NvimWindow};
use crate::nvim_bridge::{
@@ -556,8 +556,14 @@ impl UIState {
if evt.anchor_grid == 1 {
(0.0, 0.0)
} else {
- let anchor_window = self.windows.get(&evt.anchor_grid).unwrap();
- (anchor_window.x, anchor_window.y)
+ if evt.anchor_grid == evt.grid {
+ warn!("Can't use a grid as its own float anchor. Defaulting to (0, 0)");
+ (0.0, 0.0)
+ } else {
+ let anchor_window =
+ self.windows.get(&evt.anchor_grid).unwrap();
+ (anchor_window.x, anchor_window.y)
+ }
}
};