aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristoph Lohmann <20h@r-36.net>2013-02-23 21:50:13 +0100
committerChristoph Lohmann <20h@r-36.net>2013-02-23 21:50:13 +0100
commitbe7c6d7fb09ff50127332060d771b94a3bc8e44c (patch)
treed8b86751aef52effed37f75952364c144558a7d7
parente40d8da194cb02b400b09d2c8642f701c5c16821 (diff)
downloadst-patched-be7c6d7fb09ff50127332060d771b94a3bc8e44c.tar.bz2
st-patched-be7c6d7fb09ff50127332060d771b94a3bc8e44c.tar.xz
st-patched-be7c6d7fb09ff50127332060d771b94a3bc8e44c.zip
Add insert for the primary clipboard to MOD + Shift + Ins.
Thanks Mantas Mikulėnas <grawity@gmail.com> for the patch!
-rw-r--r--config.def.h1
-rw-r--r--st.c17
2 files changed, 15 insertions, 3 deletions
diff --git a/config.def.h b/config.def.h
index a31a235..34884c0 100644
--- a/config.def.h
+++ b/config.def.h
@@ -70,6 +70,7 @@ static Shortcut shortcuts[] = {
70 { MODKEY|ShiftMask, XK_Prior, xzoom, {.i = +1} }, 70 { MODKEY|ShiftMask, XK_Prior, xzoom, {.i = +1} },
71 { MODKEY|ShiftMask, XK_Next, xzoom, {.i = -1} }, 71 { MODKEY|ShiftMask, XK_Next, xzoom, {.i = -1} },
72 { ShiftMask, XK_Insert, selpaste, {.i = 0} }, 72 { ShiftMask, XK_Insert, selpaste, {.i = 0} },
73 { MODKEY|ShiftMask, XK_Insert, clippaste, {.i = 0} },
73 { MODKEY, XK_Num_Lock, numlock, {.i = 0} }, 74 { MODKEY, XK_Num_Lock, numlock, {.i = 0} },
74}; 75};
75 76
diff --git a/st.c b/st.c
index 2ebb15b..afa6813 100644
--- a/st.c
+++ b/st.c
@@ -266,9 +266,10 @@ typedef struct {
266} Shortcut; 266} Shortcut;
267 267
268/* function definitions used in config.h */ 268/* function definitions used in config.h */
269static void xzoom(const Arg *); 269static void clippaste(const Arg *);
270static void selpaste(const Arg *);
271static void numlock(const Arg *); 270static void numlock(const Arg *);
271static void selpaste(const Arg *);
272static void xzoom(const Arg *);
272 273
273/* Config.h for applying patches and the configuration. */ 274/* Config.h for applying patches and the configuration. */
274#include "config.h" 275#include "config.h"
@@ -830,7 +831,17 @@ selpaste(const Arg *dummy) {
830 xw.win, CurrentTime); 831 xw.win, CurrentTime);
831} 832}
832 833
833void selclear(XEvent *e) { 834void
835clippaste(const Arg *dummy) {
836 Atom clipboard;
837
838 clipboard = XInternAtom(xw.dpy, "CLIPBOARD", 0);
839 XConvertSelection(xw.dpy, clipboard, sel.xtarget, XA_PRIMARY,
840 xw.win, CurrentTime);
841}
842
843void
844selclear(XEvent *e) {
834 if(sel.bx == -1) 845 if(sel.bx == -1)
835 return; 846 return;
836 sel.bx = -1; 847 sel.bx = -1;