diff options
author | Caolán McNamara <caolanm@redhat.com> | 2021-11-15 10:44:20 +0000 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2021-11-15 13:38:37 +0100 |
commit | 97c59688a074dc24092c2887ed665b6940f4c97f (patch) | |
tree | 7056509abe16418534fd95cac621d9cdaed00915 /vcl/unx | |
parent | e3f9e4beae47a168416f032f1354a26cb2be0d67 (diff) |
gtk4: fill in some missing parts of Widget::draw
Change-Id: I43af62289369b846f332d350a1a8caa56b6cbe20
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125227
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'vcl/unx')
-rw-r--r-- | vcl/unx/gtk3/gtkinst.cxx | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/vcl/unx/gtk3/gtkinst.cxx b/vcl/unx/gtk3/gtkinst.cxx index 2d4e2c4fb8b9..27429d2db702 100644 --- a/vcl/unx/gtk3/gtkinst.cxx +++ b/vcl/unx/gtk3/gtkinst.cxx @@ -4428,6 +4428,13 @@ public: #if !GTK_CHECK_VERSION(4, 0, 0) gtk_widget_draw(m_pWidget, cr); +#else + GtkSnapshot* pSnapshot = gtk_snapshot_new(); + GtkWidgetClass* pWidgetClass = GTK_WIDGET_GET_CLASS(m_pWidget); + pWidgetClass->snapshot(m_pWidget, pSnapshot); + GskRenderNode* pNode = gtk_snapshot_free_to_node(pSnapshot); + gsk_render_node_draw(pNode, cr); + gsk_render_node_unref(pNode); #endif cairo_destroy(cr); |