[gnome-shell] st-entry: Implement Ctrl-u / Ctrl-k keybindings
- From: Florian Müllner <fmuellner src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-shell] st-entry: Implement Ctrl-u / Ctrl-k keybindings
- Date: Fri, 26 Sep 2014 20:11:26 +0000 (UTC)
commit 67b14d5fe5fe52372e5aec9d5d406e0cd7cfd9b5
Author: Florian Müllner <fmuellner gnome org>
Date: Fri Sep 26 15:43:17 2014 +0100
st-entry: Implement Ctrl-u / Ctrl-k keybindings
These keybindings are well-established on the CLI (e.g. "kill-line"
and "unix-line-discard" in readline(3)), and adding support for them
is cheap ...
https://bugzilla.gnome.org/show_bug.cgi?id=737346
src/st/st-entry.c | 23 +++++++++++++++++++++++
1 files changed, 23 insertions(+), 0 deletions(-)
---
diff --git a/src/st/st-entry.c b/src/st/st-entry.c
index 8ad3f80..1507c2d 100644
--- a/src/st/st-entry.c
+++ b/src/st/st-entry.c
@@ -662,6 +662,29 @@ st_entry_key_press_event (ClutterActor *actor,
return TRUE;
}
+
+ /* delete to beginning of line */
+ if ((event->modifier_state & CLUTTER_CONTROL_MASK)
+ && event->keyval == CLUTTER_u)
+ {
+ int pos = clutter_text_get_cursor_position ((ClutterText *)priv->entry);
+ clutter_text_delete_text ((ClutterText *)priv->entry, 0, pos);
+
+ return TRUE;
+ }
+
+
+ /* delete to end of line */
+ if ((event->modifier_state & CLUTTER_CONTROL_MASK)
+ && event->keyval == CLUTTER_k)
+ {
+ ClutterTextBuffer *buffer = clutter_text_get_buffer ((ClutterText *)priv->entry);
+ int pos = clutter_text_get_cursor_position ((ClutterText *)priv->entry);
+ clutter_text_buffer_delete_text (buffer, pos, -1);
+
+ return TRUE;
+ }
+
return CLUTTER_ACTOR_CLASS (st_entry_parent_class)->key_press_event (actor, event);
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]