Fixing the selection issue in altscreens. - st - Simple Terminal
       
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
 (DIR) commit 0851f2be2ab48ee3a67ef2287c09bd67622dcd8e
 (DIR) parent 011c0f9e5bb87838afa90f2a33ba68920681e3ce
 (HTM) Author: Christoph Lohmann <20h@r-36.net>
       Date:   Wed, 24 Apr 2013 21:30:59 +0200
       
       Fixing the selection issue in altscreens.
       
       Diffstat:
         st.c                                |       6 +++---
       
       1 file changed, 3 insertions(+), 3 deletions(-)
       ---
 (DIR) diff --git a/st.c b/st.c
       @@ -1410,7 +1410,7 @@ tsetchar(char *c, Glyph *attr, int x, int y) {
        
        void
        ttclearregion(int x1, int y1, int x2, int y2) {
       -        int x, y, temp, mask;
       +        int x, y, temp;
        
                if(x1 > x2)
                        temp = x1, x1 = x2, x2 = temp;
       @@ -1425,9 +1425,9 @@ tclearregion(int x1, int y1, int x2, int y2) {
                for(y = y1; y <= y2; y++) {
                        term.dirty[y] = 1;
                        for(x = x1; x <= x2; x++) {
       -                        mask = selected(x, y) ? ATTR_REVERSE : 0;
       +                        if(selected(x, y))
       +                                selclear(NULL);
                                term.line[y][x] = term.c.attr;
       -                        term.line[y][x].mode ^= mask;
                                memcpy(term.line[y][x].c, " ", 2);
                        }
                }