aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYuqian Yang <crupest@crupest.life>2025-10-11 23:24:27 +0800
committerYuqian Yang <crupest@crupest.life>2025-10-11 23:24:27 +0800
commit3d7fde8886f906274ff1b0f3bea1aeef0e59f73e (patch)
tree2e87d790614c1be8c925758dbc71eae3a556cd24
parentea80856073d4896da5df78d60369b327346a0b56 (diff)
downloadcru-3d7fde8886f906274ff1b0f3bea1aeef0e59f73e.tar.gz
cru-3d7fde8886f906274ff1b0f3bea1aeef0e59f73e.tar.bz2
cru-3d7fde8886f906274ff1b0f3bea1aeef0e59f73e.zip
Fix window not updated.
-rw-r--r--src/platform/graphics/cairo/CairoPainter.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/platform/graphics/cairo/CairoPainter.cpp b/src/platform/graphics/cairo/CairoPainter.cpp
index 3178876c..b9babaa2 100644
--- a/src/platform/graphics/cairo/CairoPainter.cpp
+++ b/src/platform/graphics/cairo/CairoPainter.cpp
@@ -10,6 +10,7 @@
#include "cru/platform/graphics/cairo/CairoResource.h"
#include "cru/platform/graphics/cairo/PangoTextLayout.h"
+#include <cairo.h>
#include <pango/pangocairo.h>
namespace cru::platform::graphics::cairo {
@@ -240,6 +241,10 @@ void CairoPainter::EndDraw() {
if (cairo_surface_ != nullptr) {
CRU_LOG_TAG_DEBUG("Flush cairo painter.");
cairo_surface_flush(cairo_surface_);
+ cairo_device_t* device = cairo_surface_get_device(cairo_surface_);
+ if (device) {
+ cairo_device_flush(device);
+ }
}
valid_ = false;
}