summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMaxime Coste <frrrwww@gmail.com>2016-03-23 13:39:52 +0000
committerMaxime Coste <frrrwww@gmail.com>2016-03-23 13:39:52 +0000
commitabd5afe0129abad0fec6799fc7329a0ca38c1e45 (patch)
tree27cdddee21916e4175ae27b682dc6dae67c49b35 /src
parent5bf92430064a5136dba51402bd852398cee7e994 (diff)
Support mosue event in key_to_str
Diffstat (limited to 'src')
-rw-r--r--src/keys.cc18
1 files changed, 17 insertions, 1 deletions
diff --git a/src/keys.cc b/src/keys.cc
index f98a5dc0..7eb55e46 100644
--- a/src/keys.cc
+++ b/src/keys.cc
@@ -114,7 +114,23 @@ KeyList parse_keys(StringView str)
String key_to_str(Key key)
{
if (key.modifiers & Key::Modifiers::MouseEvent)
- return "<mouse event>";
+ {
+ const auto coord = key.coord() + CharCoord{1,1};
+ switch (key.modifiers)
+ {
+ case Key::Modifiers::MousePos:
+ return format("<mouse:move:{}.{}>", coord.line, coord.column);
+ case Key::Modifiers::MousePress:
+ return format("<mouse:press:{}.{}>", coord.line, coord.column);
+ case Key::Modifiers::MouseRelease:
+ return format("<mouse:release:{}.{}>", coord.line, coord.column);
+ case Key::Modifiers::MouseWheelDown:
+ return "<mouse:wheel_down>";
+ case Key::Modifiers::MouseWheelUp:
+ return "<mouse:wheel_up>";
+ default: kak_assert(false);
+ }
+ }
bool named = false;
String res;