Re: cairo / xlib not updating window content
Pavel Petrovic <[email protected]> Sun, 29 Jul 2018 17:01:34 +0200
| Newsgroups | gmane.comp.lib.cairo |
|---|---|
| Message-ID | <CA+B5pJnjprC2HtPp-UokjUHi+yGwvtDfD5aUD44PkwtS7RF1XQ@mail.gmail.com> |
Hi Uli, >> I am also responding to resizing of the window now >> with resizing back to this fixed size, although I did not go >> into preventing maximizing, which seems more tricky. > > You are now in violation of ICCCM ยง 4.2.4. Thank you for pointing it out. It sounds very German. I was afraid it has something to do with some legal rights. I have put a line about that into the source. I will consider that idea one day. :-) For now, I am happy with a window that keeps its size when somebody accidentally changes it. > Also, please take a look at size hints where you can set a maximum and > minimum size. Setting both to the same value makes the window unresizable. Yes, maybe, in some window managers, yet, they can maximize, oh, I do not need perfection here, only something that works for me. It is a joke that one size fits all in this case paradoxically requires that one size does not fit all. :-) > Cedric's solution... I'm not quite sure what it does. It fixes some > flickering that is not there? It does double buffering, too, but only > uses a temporary buffer that loses its content afterwards? I felt like > you want your windows to actually retain old content, which that > temporary group does not do... I think that is the magic of the push_group / pop_group that it does retain the old content. When it is pushed, then a copy is created, so you add new content to the previous one, and then paint it back to the visible surface with pop. So both solutions solved all issues. Pavel. -- cairo mailing list [email protected] https://lists.cairographics.org/mailman/listinfo/cairo