aboutsummaryrefslogtreecommitdiff
path: root/src/event.rs
diff options
context:
space:
mode:
authorTom Crayford <tcrayford@googlemail.com>2017-01-08 21:09:02 +0000
committerTom Crayford <tcrayford@googlemail.com>2017-01-08 21:09:02 +0000
commitd7a59810484015eda26ab34938512c54f6477d4e (patch)
tree98b62c65a72f3a339ed4175f9bbfbd986dbe41eb /src/event.rs
parent9e713189cc6dc83f97e87fa18b66b39d2c7222cc (diff)
downloadalacritty-d7a59810484015eda26ab34938512c54f6477d4e.tar.gz
alacritty-d7a59810484015eda26ab34938512c54f6477d4e.zip
print glutin events if --print-events is passed
When debugging many issues, it's often very helpful to have the raw glutin events printed out to stderr as they come in. This does that. Note that since `glutin::Event` doesn't implement `Display`, we just use rust's debugging output for now via `{:?}`.
Diffstat (limited to 'src/event.rs')
-rw-r--r--src/event.rs7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/event.rs b/src/event.rs
index bdfe2708..03d0ef7f 100644
--- a/src/event.rs
+++ b/src/event.rs
@@ -9,6 +9,7 @@ use parking_lot::MutexGuard;
use glutin::{self, ElementState};
use config::Config;
+use cli::Options;
use display::OnResize;
use index::{Line, Column, Side};
use input::{self, ActionContext, MouseBinding, KeyBinding};
@@ -58,6 +59,7 @@ impl Default for Mouse {
pub struct Processor<N> {
key_bindings: Vec<KeyBinding>,
mouse_bindings: Vec<MouseBinding>,
+ print_events: bool,
notifier: N,
mouse: Mouse,
resize_tx: mpsc::Sender<(u32, u32)>,
@@ -83,6 +85,7 @@ impl<N: Notify> Processor<N> {
pub fn new(
notifier: N,
resize_tx: mpsc::Sender<(u32, u32)>,
+ options: &Options,
config: &Config,
ref_test: bool,
size_info: SizeInfo,
@@ -90,6 +93,7 @@ impl<N: Notify> Processor<N> {
Processor {
key_bindings: config.key_bindings().to_vec(),
mouse_bindings: config.mouse_bindings().to_vec(),
+ print_events: options.print_events,
notifier: notifier,
resize_tx: resize_tx,
ref_test: ref_test,
@@ -184,6 +188,9 @@ impl<N: Notify> Processor<N> {
// Convenience macro which curries most arguments to handle_event.
macro_rules! process {
($event:expr) => {
+ if self.print_events {
+ err_println!("glutin event: {:?}", $event);
+ }
Processor::handle_event(
&mut processor,
$event,