]> git.lizzy.rs Git - plan9front.git/commitdiff
rio: move the code for 'send' into a function
authorkvik <kvik@a-b.xyz>
Sun, 4 Oct 2020 20:45:22 +0000 (22:45 +0200)
committerkvik <kvik@a-b.xyz>
Sun, 4 Oct 2020 20:45:22 +0000 (22:45 +0200)
Makes the code a bit nicer and allows reusing wsend() in patches.

sys/src/cmd/rio/dat.h
sys/src/cmd/rio/rio.c
sys/src/cmd/rio/wind.c

index 8ae7e41e2b2bf92cafed26263ddcd65e57934b39..1f37684506113544624c3f2a38d00e7e5a64fc2f 100644 (file)
@@ -210,6 +210,7 @@ void                wresize(Window*, Image*);
 void           wscrdraw(Window*);
 void           wscroll(Window*, int);
 void           wselect(Window*);
+void           wsend(Window*);
 void           wsendctlmesg(Window*, int, Rectangle, void*);
 void           wsetcursor(Window*, int);
 void           wsetname(Window*);
index 883132a07244021d76e852dfafa99ce69ab50233..a42721fac920cb94d7559c9807bcd66198b86d24 100644 (file)
@@ -775,21 +775,7 @@ button2menu(Window *w)
                break;
 
        case Send:
-               getsnarf();
-               wsnarf(w);
-               if(nsnarf == 0)
-                       break;
-               if(w->rawing){
-                       waddraw(w, snarf, nsnarf);
-                       if(snarf[nsnarf-1]!='\n' && snarf[nsnarf-1]!='\004')
-                               waddraw(w, L"\n", 1);
-               }else{
-                       winsert(w, snarf, nsnarf, w->nr);
-                       if(snarf[nsnarf-1]!='\n' && snarf[nsnarf-1]!='\004')
-                               winsert(w, L"\n", 1, w->nr);
-               }
-               wsetselect(w, w->nr, w->nr);
-               wshow(w, w->nr);
+               wsend(w);
                break;
 
        case Scroll:
index 2aa3dd71551b83f0fec6aaabc1d385ff66db4924..8081838179a8f467db46decbadf8c62612cfd485 100644 (file)
@@ -1798,3 +1798,23 @@ wcontents(Window *w, int *ip)
 {
        return runetobyte(w->r, w->nr, ip);
 }
+
+void
+wsend(Window *w)
+{
+       getsnarf();
+       wsnarf(w);
+       if(nsnarf == 0)
+               return;
+       if(w->rawing){
+               waddraw(w, snarf, nsnarf);
+               if(snarf[nsnarf-1]!='\n' && snarf[nsnarf-1]!='\004')
+                       waddraw(w, L"\n", 1);
+       }else{
+               winsert(w, snarf, nsnarf, w->nr);
+               if(snarf[nsnarf-1]!='\n' && snarf[nsnarf-1]!='\004')
+                       winsert(w, L"\n", 1, w->nr);
+       }
+       wsetselect(w, w->nr, w->nr);
+       wshow(w, w->nr);
+}