Flutter Engine
The Flutter Engine
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
Functions
fl_renderer_gdk.h File Reference
#include "flutter/shell/platform/linux/fl_renderer.h"

Go to the source code of this file.

Functions

G_BEGIN_DECLS G_DECLARE_FINAL_TYPE (FlRendererGdk, fl_renderer_gdk, FL, RENDERER_GDK, FlRenderer) FlRendererGdk *fl_renderer_gdk_new(GdkWindow *window)
 
gboolean fl_renderer_gdk_create_contexts (FlRendererGdk *renderer, GError **error)
 
GdkGLContext * fl_renderer_gdk_get_context (FlRendererGdk *renderer)
 

Function Documentation

◆ fl_renderer_gdk_create_contexts()

gboolean fl_renderer_gdk_create_contexts ( FlRendererGdk *  renderer,
GError **  error 
)

fl_renderer_gdk_create_contexts: @renderer: an #FlRendererGdk. @error: (allow-none): #GError location to store the error occurring, or NULL to ignore.

Create rendering contexts.

Returns: TRUE if contexts were created, FALSE if there was an error.

Definition at line 88 of file fl_renderer_gdk.cc.

88 {
89 self->gdk_context = gdk_window_create_gl_context(self->window, error);
90 if (self->gdk_context == nullptr) {
91 return FALSE;
92 }
93 if (!gdk_gl_context_realize(self->gdk_context, error)) {
94 return FALSE;
95 }
96
97 self->main_context = gdk_window_create_gl_context(self->window, error);
98 if (self->main_context == nullptr) {
99 return FALSE;
100 }
101 if (!gdk_gl_context_realize(self->main_context, error)) {
102 return FALSE;
103 }
104
105 self->resource_context = gdk_window_create_gl_context(self->window, error);
106 if (self->resource_context == nullptr) {
107 return FALSE;
108 }
109 if (!gdk_gl_context_realize(self->resource_context, error)) {
110 return FALSE;
111 }
112
113 return TRUE;
114}
const uint8_t uint32_t uint32_t GError ** error
return FALSE

◆ fl_renderer_gdk_get_context()

GdkGLContext * fl_renderer_gdk_get_context ( FlRendererGdk *  renderer)

fl_renderer_gdk_get_context: @renderer: an #FlRendererGdk.

Returns: the main context used for rendering.

Definition at line 116 of file fl_renderer_gdk.cc.

116 {
117 g_return_val_if_fail(FL_IS_RENDERER_GDK(self), nullptr);
118 return self->gdk_context;
119}

◆ G_DECLARE_FINAL_TYPE()

G_BEGIN_DECLS G_DECLARE_FINAL_TYPE ( FlRendererGdk  ,
fl_renderer_gdk  ,
FL  ,
RENDERER_GDK  ,
FlRenderer   
)

FlRendererGdk:

#FlRendererGdk is an implementation of #FlRenderer that renders by OpenGL ES. fl_renderer_gdk_new: @window: the window that is being rendered on.

Creates an object that allows Flutter to render by OpenGL ES.

Returns: a new #FlRendererGdk.