blob: e2b3f7bb1f96184f07c91413d8d563462468647b [file] [log] [blame]
// Copyright 2013 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef FLUTTER_SHELL_PLATFORM_LINUX_FL_RENDERER_GDK_H_
#define FLUTTER_SHELL_PLATFORM_LINUX_FL_RENDERER_GDK_H_
#include "flutter/shell/platform/linux/fl_renderer.h"
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.
*/
FlRendererGdk* fl_renderer_gdk_new(GdkWindow* window);
/**
* 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.
*/
gboolean fl_renderer_gdk_create_contexts(FlRendererGdk* renderer,
GError** error);
/**
* fl_renderer_gdk_get_context:
* @renderer: an #FlRendererGdk.
*
* Returns: the main context used for rendering.
*/
GdkGLContext* fl_renderer_gdk_get_context(FlRendererGdk* renderer);
G_END_DECLS
#endif // FLUTTER_SHELL_PLATFORM_LINUX_FL_RENDERER_GDK_H_