commit 5623925
uint
·
2026-06-13 12:40:50 +0000 UTC
parent 7371d39
basic-window: resize window only once per frame
1 files changed,
+13,
-1
+13,
-1
1@@ -11,6 +11,9 @@ bool cur_locked = false;
2 bool mb1_pressed = false;
3 char txtbuf[4096] = {'\0'};
4 int current_char = 0;
5+bool resize = false;
6+int rszw;
7+int rszh;
8
9 void handle_ev(Maus* mw, MausEvent* ev)
10 {
11@@ -67,7 +70,9 @@ void handle_ev(Maus* mw, MausEvent* ev)
12
13 } break;
14 case MAUS_EV_RESIZE: {
15- maus_resize(mw, ev->resize.width, ev->resize.height);
16+ resize = true;
17+ rszw = ev->resize.width;
18+ rszh = ev->resize.height;
19 } break;
20 case MAUS_EV_NONE:
21 break;
22@@ -90,6 +95,13 @@ int main(void)
23 for (;;) {
24 while (maus_event_poll(mw, &ev))
25 (void) handle_ev(mw, &ev);
26+
27+ /* only resize window once per fram */
28+ if (resize) {
29+ maus_resize(mw, rszw, rszh);
30+ resize = false;
31+ }
32+
33 maus_fb_clear(mw, MAUS_COL_RGBA(255, 255, 255, 255));
34
35 if (mx >= 0 && my >= 0 &&