SMOLNET PORTAL home about changes
iIntroduce a hint to only slide file if needed. - catpoint - Catpoint simple presenting software.	Err	bitreich.org	70
hgit clone git://bitreich.org/catpoint/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/catpoint/	URL:git://bitreich.org/catpoint/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/catpoint/	bitreich.org	70
1Log	/scm/catpoint/log.gph	bitreich.org	70
1Files	/scm/catpoint/files.gph	bitreich.org	70
1Refs	/scm/catpoint/refs.gph	bitreich.org	70
1Tags	/scm/catpoint/tag	bitreich.org	70
1README	/scm/catpoint/file/README.md.gph	bitreich.org	70
1LICENSE	/scm/catpoint/file/LICENSE.gph	bitreich.org	70
i---	Err	bitreich.org	70
1commit 68ef54b661d4e28bb74d67b1bdf81d997abb08db	/scm/catpoint/commit/68ef54b661d4e28bb74d67b1bdf81d997abb08db.gph	bitreich.org	70
1parent cd4fd87b2fc9d10ac71b55d9b1ea503fdad037b0	/scm/catpoint/commit/cd4fd87b2fc9d10ac71b55d9b1ea503fdad037b0.gph	bitreich.org	70
hAuthor: Christoph Lohmann <20h@r-36.net>	URL:mailto:20h@r-36.net	bitreich.org	70
iDate:   Mon, 28 Dec 2020 15:08:19 +0100	Err	bitreich.org	70
i	Err	bitreich.org	70
iIntroduce a hint to only slide file if needed.	Err	bitreich.org	70
i	Err	bitreich.org	70
iDiffstat:	Err	bitreich.org	70
i  M catpoint.c                          |      20 ++++++++++++++++++--	Err	bitreich.org	70
i	Err	bitreich.org	70
i1 file changed, 18 insertions(+), 2 deletions(-)	Err	bitreich.org	70
i---	Err	bitreich.org	70
1diff --git a/catpoint.c b/catpoint.c	/scm/catpoint/file/catpoint.c.gph	bitreich.org	70
i@@ -17,6 +17,8 @@	Err	bitreich.org	70
i char *currentslidep, **slidefiles; /* the slides */	Err	bitreich.org	70
i int nslides, currentslide, currentslidelen, exitstatus = 1;	Err	bitreich.org	70
i 	Err	bitreich.org	70
i+volatile sig_atomic_t slidechanged = 1;	Err	bitreich.org	70
i+	Err	bitreich.org	70
i void	Err	bitreich.org	70
i unloadcurrentslide(void)	Err	bitreich.org	70
i {	Err	bitreich.org	70
i@@ -64,6 +66,11 @@ reloadcurrentslide(int sig)	Err	bitreich.org	70
i                 if (raise(SIGWINCH) < 0)	Err	bitreich.org	70
i                         err(1, "raise");	Err	bitreich.org	70
i         }	Err	bitreich.org	70
i+	Err	bitreich.org	70
i+        /*	Err	bitreich.org	70
i+         * Keep this out of SIGHUP, in case this is used somewhere else.	Err	bitreich.org	70
i+         */	Err	bitreich.org	70
i+        slidechanged = 1;	Err	bitreich.org	70
i }	Err	bitreich.org	70
i 	Err	bitreich.org	70
i void	Err	bitreich.org	70
i@@ -112,8 +119,11 @@ main(int argc, char *argv[])	Err	bitreich.org	70
i         curs_set(FALSE); /* hide cursor */	Err	bitreich.org	70
i 	Err	bitreich.org	70
i show:	Err	bitreich.org	70
i-        /* display slide */	Err	bitreich.org	70
i-        loadcurrentslide(slidefiles, currentslide);	Err	bitreich.org	70
i+        /* display slide if changed */	Err	bitreich.org	70
i+        if (slidechanged) {	Err	bitreich.org	70
i+                slidechanged = 0;	Err	bitreich.org	70
i+                loadcurrentslide(slidefiles, currentslide);	Err	bitreich.org	70
i+        }	Err	bitreich.org	70
i         clear();	Err	bitreich.org	70
i         refresh();	Err	bitreich.org	70
i         printw("%.*s", currentslidelen, currentslidep);	Err	bitreich.org	70
i@@ -135,6 +145,7 @@ again:	Err	bitreich.org	70
i         case KEY_DOWN:	Err	bitreich.org	70
i         case KEY_NPAGE:	Err	bitreich.org	70
i                 if (currentslide < nslides - 1) {	Err	bitreich.org	70
i+                        slidechanged = 1;	Err	bitreich.org	70
i                         currentslide++;	Err	bitreich.org	70
i                         goto show;	Err	bitreich.org	70
i                 }	Err	bitreich.org	70
i@@ -147,6 +158,7 @@ again:	Err	bitreich.org	70
i         case KEY_UP:	Err	bitreich.org	70
i         case KEY_PPAGE:	Err	bitreich.org	70
i                 if (currentslide > 0) {	Err	bitreich.org	70
i+                        slidechanged = 1;	Err	bitreich.org	70
i                         currentslide--;	Err	bitreich.org	70
i                         goto show;	Err	bitreich.org	70
i                 }	Err	bitreich.org	70
i@@ -157,11 +169,15 @@ again:	Err	bitreich.org	70
i         case 'u':	Err	bitreich.org	70
i         case KEY_BEG:	Err	bitreich.org	70
i         case KEY_HOME:	Err	bitreich.org	70
i+                if (currentslide != 0)	Err	bitreich.org	70
i+                        slidechanged = 1;	Err	bitreich.org	70
i                 currentslide = 0;	Err	bitreich.org	70
i                 goto show;	Err	bitreich.org	70
i         /* last */	Err	bitreich.org	70
i         case 'i':	Err	bitreich.org	70
i         case KEY_END:	Err	bitreich.org	70
i+                if (currentslide != (nslides - 1))	Err	bitreich.org	70
i+                        slidechanged = 1;	Err	bitreich.org	70
i                 currentslide = nslides - 1;	Err	bitreich.org	70
i                 goto show;	Err	bitreich.org	70
i         /* reload */	Err	bitreich.org	70
.
Response: text/plain
Original URLgopher://bitreich.org/0/scm/catpoint/commit/68ef54b661d4e...
Content-Typetext/plain; charset=utf-8