diff options
author | Igor Böhm <igor@9lab.org> | 2022-01-04 19:11:07 +0000 |
---|---|---|
committer | Igor Böhm <igor@9lab.org> | 2022-01-04 19:11:07 +0000 |
commit | 47b7dc5ccd77bc247ab15cfab3a7a8f955771c70 (patch) | |
tree | 659c75b40c289523ac430ac90fa579749cab520d /sys/src/cmd/acme/dat.h | |
parent | 369cba5f938d3f804210b6e09d36c6f7ecb017fa (diff) |
acme: fix window and scrollbar display glitches at bottom fringe of column
The following patch fixes acme display glitches at the bottom fringe
of columns when adding/moving/resizing windows.
Here an example of an easy to reproduce case:
• https://invidio.xamh.de/watch?v=iLekQrxycaM
…opening acme and resizing a column to the right is all that is needed.
The functions winresize(…) and textresize(…) are extended with an
additional parameter `fillfringe` to indicate if a window/tag shall
fill a potential fringe area that would otherwise remain white.
The changes have been inspired by the approach taken in plan9port
acme.
Diffstat (limited to 'sys/src/cmd/acme/dat.h')
-rw-r--r-- | sys/src/cmd/acme/dat.h | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/sys/src/cmd/acme/dat.h b/sys/src/cmd/acme/dat.h index dfdb2413c..1c1a57572 100644 --- a/sys/src/cmd/acme/dat.h +++ b/sys/src/cmd/acme/dat.h @@ -213,7 +213,7 @@ uint textload(Text*, uint, char*, int); Rune textreadc(Text*, uint); void textredraw(Text*, Rectangle, Font*, Image*, int); void textreset(Text*); -int textresize(Text*, Rectangle); +int textresize(Text*, Rectangle, int); void textscrdraw(Text*); void textscroll(Text*, int); void textselect(Text*); @@ -245,7 +245,6 @@ struct Window uchar dirty; uchar indent[NINDENT]; uchar showdel; - uint noredraw; int id; Range addr; Range limit; @@ -290,7 +289,7 @@ void winsetname(Window*, Rune*, int); void winsettag(Window*); void winsettag1(Window*); void wincommit(Window*, Text*); -int winresize(Window*, Rectangle, int); +int winresize(Window*, Rectangle, int, int); void winclose(Window*); void windelete(Window*); int winclean(Window*, int); |