/* runner-row.c generated by valac 0.56.19, the Vala compiler
 * generated from runner-row.vala, do not modify */

#include <adwaita.h>
#include <glib-object.h>
#include <glib.h>
#include <gtk/gtk.h>
#include <stdlib.h>
#include <string.h>
#include <gio/gio.h>
#include <glib/gi18n-lib.h>

#if !defined(VALA_STRICT_C)
#if !defined(__clang__) && defined(__GNUC__) && (__GNUC__ >= 14)
#pragma GCC diagnostic warning "-Wincompatible-pointer-types"
#elif defined(__clang__) && (__clang_major__ >= 16)
#pragma clang diagnostic ignored "-Wincompatible-function-pointer-types"
#pragma clang diagnostic ignored "-Wincompatible-pointer-types"
#endif
#endif
#if !defined(VALA_EXTERN)
#if defined(_MSC_VER)
#define VALA_EXTERN __declspec(dllexport) extern
#elif __GNUC__ >= 4
#define VALA_EXTERN __attribute__((visibility("default"))) extern
#else
#define VALA_EXTERN extern
#endif
#endif

#define PROTON_PLUS_WIDGETS_TYPE_RUNNER_ROW (proton_plus_widgets_runner_row_get_type ())
#define PROTON_PLUS_WIDGETS_RUNNER_ROW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PROTON_PLUS_WIDGETS_TYPE_RUNNER_ROW, ProtonPlusWidgetsRunnerRow))
#define PROTON_PLUS_WIDGETS_RUNNER_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PROTON_PLUS_WIDGETS_TYPE_RUNNER_ROW, ProtonPlusWidgetsRunnerRowClass))
#define PROTON_PLUS_WIDGETS_IS_RUNNER_ROW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PROTON_PLUS_WIDGETS_TYPE_RUNNER_ROW))
#define PROTON_PLUS_WIDGETS_IS_RUNNER_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PROTON_PLUS_WIDGETS_TYPE_RUNNER_ROW))
#define PROTON_PLUS_WIDGETS_RUNNER_ROW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PROTON_PLUS_WIDGETS_TYPE_RUNNER_ROW, ProtonPlusWidgetsRunnerRowClass))

typedef struct _ProtonPlusWidgetsRunnerRow ProtonPlusWidgetsRunnerRow;
typedef struct _ProtonPlusWidgetsRunnerRowClass ProtonPlusWidgetsRunnerRowClass;
typedef struct _ProtonPlusWidgetsRunnerRowPrivate ProtonPlusWidgetsRunnerRowPrivate;

#define PROTON_PLUS_WIDGETS_TYPE_RELEASE_ROW (proton_plus_widgets_release_row_get_type ())
#define PROTON_PLUS_WIDGETS_RELEASE_ROW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PROTON_PLUS_WIDGETS_TYPE_RELEASE_ROW, ProtonPlusWidgetsReleaseRow))
#define PROTON_PLUS_WIDGETS_RELEASE_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PROTON_PLUS_WIDGETS_TYPE_RELEASE_ROW, ProtonPlusWidgetsReleaseRowClass))
#define PROTON_PLUS_WIDGETS_IS_RELEASE_ROW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PROTON_PLUS_WIDGETS_TYPE_RELEASE_ROW))
#define PROTON_PLUS_WIDGETS_IS_RELEASE_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PROTON_PLUS_WIDGETS_TYPE_RELEASE_ROW))
#define PROTON_PLUS_WIDGETS_RELEASE_ROW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PROTON_PLUS_WIDGETS_TYPE_RELEASE_ROW, ProtonPlusWidgetsReleaseRowClass))

typedef struct _ProtonPlusWidgetsReleaseRow ProtonPlusWidgetsReleaseRow;
typedef struct _ProtonPlusWidgetsReleaseRowClass ProtonPlusWidgetsReleaseRowClass;

#define PROTON_PLUS_MODELS_TYPE_RUNNER (proton_plus_models_runner_get_type ())
#define PROTON_PLUS_MODELS_RUNNER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PROTON_PLUS_MODELS_TYPE_RUNNER, ProtonPlusModelsRunner))
#define PROTON_PLUS_MODELS_RUNNER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PROTON_PLUS_MODELS_TYPE_RUNNER, ProtonPlusModelsRunnerClass))
#define PROTON_PLUS_MODELS_IS_RUNNER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PROTON_PLUS_MODELS_TYPE_RUNNER))
#define PROTON_PLUS_MODELS_IS_RUNNER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PROTON_PLUS_MODELS_TYPE_RUNNER))
#define PROTON_PLUS_MODELS_RUNNER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PROTON_PLUS_MODELS_TYPE_RUNNER, ProtonPlusModelsRunnerClass))

typedef struct _ProtonPlusModelsRunner ProtonPlusModelsRunner;
typedef struct _ProtonPlusModelsRunnerClass ProtonPlusModelsRunnerClass;

#define PROTON_PLUS_WIDGETS_TYPE_LOAD_MORE_ROW (proton_plus_widgets_load_more_row_get_type ())
#define PROTON_PLUS_WIDGETS_LOAD_MORE_ROW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PROTON_PLUS_WIDGETS_TYPE_LOAD_MORE_ROW, ProtonPlusWidgetsLoadMoreRow))
#define PROTON_PLUS_WIDGETS_LOAD_MORE_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PROTON_PLUS_WIDGETS_TYPE_LOAD_MORE_ROW, ProtonPlusWidgetsLoadMoreRowClass))
#define PROTON_PLUS_WIDGETS_IS_LOAD_MORE_ROW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PROTON_PLUS_WIDGETS_TYPE_LOAD_MORE_ROW))
#define PROTON_PLUS_WIDGETS_IS_LOAD_MORE_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PROTON_PLUS_WIDGETS_TYPE_LOAD_MORE_ROW))
#define PROTON_PLUS_WIDGETS_LOAD_MORE_ROW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PROTON_PLUS_WIDGETS_TYPE_LOAD_MORE_ROW, ProtonPlusWidgetsLoadMoreRowClass))

typedef struct _ProtonPlusWidgetsLoadMoreRow ProtonPlusWidgetsLoadMoreRow;
typedef struct _ProtonPlusWidgetsLoadMoreRowClass ProtonPlusWidgetsLoadMoreRowClass;
enum  {
	PROTON_PLUS_WIDGETS_RUNNER_ROW_0_PROPERTY,
	PROTON_PLUS_WIDGETS_RUNNER_ROW_NUM_PROPERTIES
};
static GParamSpec* proton_plus_widgets_runner_row_properties[PROTON_PLUS_WIDGETS_RUNNER_ROW_NUM_PROPERTIES];
#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
#define _g_free0(var) (var = (g_free (var), NULL))
typedef struct _ProtonPlusModelsRunnerPrivate ProtonPlusModelsRunnerPrivate;

#define PROTON_PLUS_MODELS_TYPE_BASE_RELEASE (proton_plus_models_base_release_get_type ())
#define PROTON_PLUS_MODELS_BASE_RELEASE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PROTON_PLUS_MODELS_TYPE_BASE_RELEASE, ProtonPlusModelsBaseRelease))
#define PROTON_PLUS_MODELS_BASE_RELEASE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PROTON_PLUS_MODELS_TYPE_BASE_RELEASE, ProtonPlusModelsBaseReleaseClass))
#define PROTON_PLUS_MODELS_IS_BASE_RELEASE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PROTON_PLUS_MODELS_TYPE_BASE_RELEASE))
#define PROTON_PLUS_MODELS_IS_BASE_RELEASE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PROTON_PLUS_MODELS_TYPE_BASE_RELEASE))
#define PROTON_PLUS_MODELS_BASE_RELEASE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PROTON_PLUS_MODELS_TYPE_BASE_RELEASE, ProtonPlusModelsBaseReleaseClass))

typedef struct _ProtonPlusModelsBaseRelease ProtonPlusModelsBaseRelease;
typedef struct _ProtonPlusModelsBaseReleaseClass ProtonPlusModelsBaseReleaseClass;

#define PROTON_PLUS_MODELS_TYPE_RELEASE (proton_plus_models_release_get_type ())
#define PROTON_PLUS_MODELS_RELEASE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PROTON_PLUS_MODELS_TYPE_RELEASE, ProtonPlusModelsRelease))
#define PROTON_PLUS_MODELS_RELEASE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PROTON_PLUS_MODELS_TYPE_RELEASE, ProtonPlusModelsReleaseClass))
#define PROTON_PLUS_MODELS_IS_RELEASE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PROTON_PLUS_MODELS_TYPE_RELEASE))
#define PROTON_PLUS_MODELS_IS_RELEASE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PROTON_PLUS_MODELS_TYPE_RELEASE))
#define PROTON_PLUS_MODELS_RELEASE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PROTON_PLUS_MODELS_TYPE_RELEASE, ProtonPlusModelsReleaseClass))

typedef struct _ProtonPlusModelsRelease ProtonPlusModelsRelease;
typedef struct _ProtonPlusModelsReleaseClass ProtonPlusModelsReleaseClass;
typedef enum  {
	PROTON_PLUS_RETURN_CODE_UNKNOWN_ERROR,
	PROTON_PLUS_RETURN_CODE_RELEASES_LOADED,
	PROTON_PLUS_RETURN_CODE_NOTHING_TO_UPDATE,
	PROTON_PLUS_RETURN_CODE_RUNNERS_UPDATED,
	PROTON_PLUS_RETURN_CODE_RUNNER_UPDATED,
	PROTON_PLUS_RETURN_CODE_VALID_REQUEST,
	PROTON_PLUS_RETURN_CODE_CONNECTION_ISSUE,
	PROTON_PLUS_RETURN_CODE_CONNECTION_REFUSED,
	PROTON_PLUS_RETURN_CODE_CONNECTION_UNKNOWN,
	PROTON_PLUS_RETURN_CODE_API_LIMIT_REACHED,
	PROTON_PLUS_RETURN_CODE_INVALID_ACCESS_TOKEN
} ProtonPlusReturnCode;

#define PROTON_PLUS_TYPE_RETURN_CODE (proton_plus_return_code_get_type ())
typedef struct _Block2Data Block2Data;

#define PROTON_PLUS_WIDGETS_TYPE_WARNING_DIALOG (proton_plus_widgets_warning_dialog_get_type ())
#define PROTON_PLUS_WIDGETS_WARNING_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PROTON_PLUS_WIDGETS_TYPE_WARNING_DIALOG, ProtonPlusWidgetsWarningDialog))
#define PROTON_PLUS_WIDGETS_WARNING_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PROTON_PLUS_WIDGETS_TYPE_WARNING_DIALOG, ProtonPlusWidgetsWarningDialogClass))
#define PROTON_PLUS_WIDGETS_IS_WARNING_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PROTON_PLUS_WIDGETS_TYPE_WARNING_DIALOG))
#define PROTON_PLUS_WIDGETS_IS_WARNING_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PROTON_PLUS_WIDGETS_TYPE_WARNING_DIALOG))
#define PROTON_PLUS_WIDGETS_WARNING_DIALOG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PROTON_PLUS_WIDGETS_TYPE_WARNING_DIALOG, ProtonPlusWidgetsWarningDialogClass))

typedef struct _ProtonPlusWidgetsWarningDialog ProtonPlusWidgetsWarningDialog;
typedef struct _ProtonPlusWidgetsWarningDialogClass ProtonPlusWidgetsWarningDialogClass;

#define PROTON_PLUS_WIDGETS_TYPE_ERROR_DIALOG (proton_plus_widgets_error_dialog_get_type ())
#define PROTON_PLUS_WIDGETS_ERROR_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PROTON_PLUS_WIDGETS_TYPE_ERROR_DIALOG, ProtonPlusWidgetsErrorDialog))
#define PROTON_PLUS_WIDGETS_ERROR_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PROTON_PLUS_WIDGETS_TYPE_ERROR_DIALOG, ProtonPlusWidgetsErrorDialogClass))
#define PROTON_PLUS_WIDGETS_IS_ERROR_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PROTON_PLUS_WIDGETS_TYPE_ERROR_DIALOG))
#define PROTON_PLUS_WIDGETS_IS_ERROR_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PROTON_PLUS_WIDGETS_TYPE_ERROR_DIALOG))
#define PROTON_PLUS_WIDGETS_ERROR_DIALOG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PROTON_PLUS_WIDGETS_TYPE_ERROR_DIALOG, ProtonPlusWidgetsErrorDialogClass))

typedef struct _ProtonPlusWidgetsErrorDialog ProtonPlusWidgetsErrorDialog;
typedef struct _ProtonPlusWidgetsErrorDialogClass ProtonPlusWidgetsErrorDialogClass;

#define PROTON_PLUS_WIDGETS_TYPE_WINDOW (proton_plus_widgets_window_get_type ())
#define PROTON_PLUS_WIDGETS_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PROTON_PLUS_WIDGETS_TYPE_WINDOW, ProtonPlusWidgetsWindow))
#define PROTON_PLUS_WIDGETS_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PROTON_PLUS_WIDGETS_TYPE_WINDOW, ProtonPlusWidgetsWindowClass))
#define PROTON_PLUS_WIDGETS_IS_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PROTON_PLUS_WIDGETS_TYPE_WINDOW))
#define PROTON_PLUS_WIDGETS_IS_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PROTON_PLUS_WIDGETS_TYPE_WINDOW))
#define PROTON_PLUS_WIDGETS_WINDOW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PROTON_PLUS_WIDGETS_TYPE_WINDOW, ProtonPlusWidgetsWindowClass))

typedef struct _ProtonPlusWidgetsWindow ProtonPlusWidgetsWindow;
typedef struct _ProtonPlusWidgetsWindowClass ProtonPlusWidgetsWindowClass;

#define PROTON_PLUS_MODELS_RUNNERS_TYPE_BASIC (proton_plus_models_runners_basic_get_type ())
#define PROTON_PLUS_MODELS_RUNNERS_BASIC(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PROTON_PLUS_MODELS_RUNNERS_TYPE_BASIC, ProtonPlusModelsRunnersBasic))
#define PROTON_PLUS_MODELS_RUNNERS_BASIC_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PROTON_PLUS_MODELS_RUNNERS_TYPE_BASIC, ProtonPlusModelsRunnersBasicClass))
#define PROTON_PLUS_MODELS_RUNNERS_IS_BASIC(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PROTON_PLUS_MODELS_RUNNERS_TYPE_BASIC))
#define PROTON_PLUS_MODELS_RUNNERS_IS_BASIC_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PROTON_PLUS_MODELS_RUNNERS_TYPE_BASIC))
#define PROTON_PLUS_MODELS_RUNNERS_BASIC_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PROTON_PLUS_MODELS_RUNNERS_TYPE_BASIC, ProtonPlusModelsRunnersBasicClass))

typedef struct _ProtonPlusModelsRunnersBasic ProtonPlusModelsRunnersBasic;
typedef struct _ProtonPlusModelsRunnersBasicClass ProtonPlusModelsRunnersBasicClass;

#define PROTON_PLUS_MODELS_RELEASES_TYPE_BASIC (proton_plus_models_releases_basic_get_type ())
#define PROTON_PLUS_MODELS_RELEASES_BASIC(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PROTON_PLUS_MODELS_RELEASES_TYPE_BASIC, ProtonPlusModelsReleasesBasic))
#define PROTON_PLUS_MODELS_RELEASES_BASIC_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PROTON_PLUS_MODELS_RELEASES_TYPE_BASIC, ProtonPlusModelsReleasesBasicClass))
#define PROTON_PLUS_MODELS_RELEASES_IS_BASIC(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PROTON_PLUS_MODELS_RELEASES_TYPE_BASIC))
#define PROTON_PLUS_MODELS_RELEASES_IS_BASIC_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PROTON_PLUS_MODELS_RELEASES_TYPE_BASIC))
#define PROTON_PLUS_MODELS_RELEASES_BASIC_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PROTON_PLUS_MODELS_RELEASES_TYPE_BASIC, ProtonPlusModelsReleasesBasicClass))

typedef struct _ProtonPlusModelsReleasesBasic ProtonPlusModelsReleasesBasic;
typedef struct _ProtonPlusModelsReleasesBasicClass ProtonPlusModelsReleasesBasicClass;

#define PROTON_PLUS_MODELS_RELEASES_TYPE_LATEST (proton_plus_models_releases_latest_get_type ())
#define PROTON_PLUS_MODELS_RELEASES_LATEST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PROTON_PLUS_MODELS_RELEASES_TYPE_LATEST, ProtonPlusModelsReleasesLatest))
#define PROTON_PLUS_MODELS_RELEASES_LATEST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PROTON_PLUS_MODELS_RELEASES_TYPE_LATEST, ProtonPlusModelsReleasesLatestClass))
#define PROTON_PLUS_MODELS_RELEASES_IS_LATEST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PROTON_PLUS_MODELS_RELEASES_TYPE_LATEST))
#define PROTON_PLUS_MODELS_RELEASES_IS_LATEST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PROTON_PLUS_MODELS_RELEASES_TYPE_LATEST))
#define PROTON_PLUS_MODELS_RELEASES_LATEST_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PROTON_PLUS_MODELS_RELEASES_TYPE_LATEST, ProtonPlusModelsReleasesLatestClass))

typedef struct _ProtonPlusModelsReleasesLatest ProtonPlusModelsReleasesLatest;
typedef struct _ProtonPlusModelsReleasesLatestClass ProtonPlusModelsReleasesLatestClass;

#define PROTON_PLUS_MODELS_RELEASES_TYPE_GIT_HUB_ACTION (proton_plus_models_releases_git_hub_action_get_type ())
#define PROTON_PLUS_MODELS_RELEASES_GIT_HUB_ACTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PROTON_PLUS_MODELS_RELEASES_TYPE_GIT_HUB_ACTION, ProtonPlusModelsReleasesGitHubAction))
#define PROTON_PLUS_MODELS_RELEASES_GIT_HUB_ACTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PROTON_PLUS_MODELS_RELEASES_TYPE_GIT_HUB_ACTION, ProtonPlusModelsReleasesGitHubActionClass))
#define PROTON_PLUS_MODELS_RELEASES_IS_GIT_HUB_ACTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PROTON_PLUS_MODELS_RELEASES_TYPE_GIT_HUB_ACTION))
#define PROTON_PLUS_MODELS_RELEASES_IS_GIT_HUB_ACTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PROTON_PLUS_MODELS_RELEASES_TYPE_GIT_HUB_ACTION))
#define PROTON_PLUS_MODELS_RELEASES_GIT_HUB_ACTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PROTON_PLUS_MODELS_RELEASES_TYPE_GIT_HUB_ACTION, ProtonPlusModelsReleasesGitHubActionClass))

typedef struct _ProtonPlusModelsReleasesGitHubAction ProtonPlusModelsReleasesGitHubAction;
typedef struct _ProtonPlusModelsReleasesGitHubActionClass ProtonPlusModelsReleasesGitHubActionClass;

#define PROTON_PLUS_WIDGETS_TYPE_BASIC_ROW (proton_plus_widgets_basic_row_get_type ())
#define PROTON_PLUS_WIDGETS_BASIC_ROW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PROTON_PLUS_WIDGETS_TYPE_BASIC_ROW, ProtonPlusWidgetsBasicRow))
#define PROTON_PLUS_WIDGETS_BASIC_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PROTON_PLUS_WIDGETS_TYPE_BASIC_ROW, ProtonPlusWidgetsBasicRowClass))
#define PROTON_PLUS_WIDGETS_IS_BASIC_ROW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PROTON_PLUS_WIDGETS_TYPE_BASIC_ROW))
#define PROTON_PLUS_WIDGETS_IS_BASIC_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PROTON_PLUS_WIDGETS_TYPE_BASIC_ROW))
#define PROTON_PLUS_WIDGETS_BASIC_ROW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PROTON_PLUS_WIDGETS_TYPE_BASIC_ROW, ProtonPlusWidgetsBasicRowClass))

typedef struct _ProtonPlusWidgetsBasicRow ProtonPlusWidgetsBasicRow;
typedef struct _ProtonPlusWidgetsBasicRowClass ProtonPlusWidgetsBasicRowClass;

#define PROTON_PLUS_MODELS_RELEASES_TYPE_UPDATE (proton_plus_models_releases_update_get_type ())
#define PROTON_PLUS_MODELS_RELEASES_UPDATE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PROTON_PLUS_MODELS_RELEASES_TYPE_UPDATE, ProtonPlusModelsReleasesUpdate))
#define PROTON_PLUS_MODELS_RELEASES_UPDATE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PROTON_PLUS_MODELS_RELEASES_TYPE_UPDATE, ProtonPlusModelsReleasesUpdateClass))
#define PROTON_PLUS_MODELS_RELEASES_IS_UPDATE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PROTON_PLUS_MODELS_RELEASES_TYPE_UPDATE))
#define PROTON_PLUS_MODELS_RELEASES_IS_UPDATE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PROTON_PLUS_MODELS_RELEASES_TYPE_UPDATE))
#define PROTON_PLUS_MODELS_RELEASES_UPDATE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PROTON_PLUS_MODELS_RELEASES_TYPE_UPDATE, ProtonPlusModelsReleasesUpdateClass))

typedef struct _ProtonPlusModelsReleasesUpdate ProtonPlusModelsReleasesUpdate;
typedef struct _ProtonPlusModelsReleasesUpdateClass ProtonPlusModelsReleasesUpdateClass;

#define PROTON_PLUS_MODELS_RELEASES_TYPE_STEAM_TINKER_LAUNCH (proton_plus_models_releases_steam_tinker_launch_get_type ())
#define PROTON_PLUS_MODELS_RELEASES_STEAM_TINKER_LAUNCH(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PROTON_PLUS_MODELS_RELEASES_TYPE_STEAM_TINKER_LAUNCH, ProtonPlusModelsReleasesSteamTinkerLaunch))
#define PROTON_PLUS_MODELS_RELEASES_STEAM_TINKER_LAUNCH_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PROTON_PLUS_MODELS_RELEASES_TYPE_STEAM_TINKER_LAUNCH, ProtonPlusModelsReleasesSteamTinkerLaunchClass))
#define PROTON_PLUS_MODELS_RELEASES_IS_STEAM_TINKER_LAUNCH(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PROTON_PLUS_MODELS_RELEASES_TYPE_STEAM_TINKER_LAUNCH))
#define PROTON_PLUS_MODELS_RELEASES_IS_STEAM_TINKER_LAUNCH_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PROTON_PLUS_MODELS_RELEASES_TYPE_STEAM_TINKER_LAUNCH))
#define PROTON_PLUS_MODELS_RELEASES_STEAM_TINKER_LAUNCH_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PROTON_PLUS_MODELS_RELEASES_TYPE_STEAM_TINKER_LAUNCH, ProtonPlusModelsReleasesSteamTinkerLaunchClass))

typedef struct _ProtonPlusModelsReleasesSteamTinkerLaunch ProtonPlusModelsReleasesSteamTinkerLaunch;
typedef struct _ProtonPlusModelsReleasesSteamTinkerLaunchClass ProtonPlusModelsReleasesSteamTinkerLaunchClass;

#define PROTON_PLUS_WIDGETS_TYPE_STEAM_TINKER_LAUNCH_ROW (proton_plus_widgets_steam_tinker_launch_row_get_type ())
#define PROTON_PLUS_WIDGETS_STEAM_TINKER_LAUNCH_ROW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PROTON_PLUS_WIDGETS_TYPE_STEAM_TINKER_LAUNCH_ROW, ProtonPlusWidgetsSteamTinkerLaunchRow))
#define PROTON_PLUS_WIDGETS_STEAM_TINKER_LAUNCH_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PROTON_PLUS_WIDGETS_TYPE_STEAM_TINKER_LAUNCH_ROW, ProtonPlusWidgetsSteamTinkerLaunchRowClass))
#define PROTON_PLUS_WIDGETS_IS_STEAM_TINKER_LAUNCH_ROW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PROTON_PLUS_WIDGETS_TYPE_STEAM_TINKER_LAUNCH_ROW))
#define PROTON_PLUS_WIDGETS_IS_STEAM_TINKER_LAUNCH_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PROTON_PLUS_WIDGETS_TYPE_STEAM_TINKER_LAUNCH_ROW))
#define PROTON_PLUS_WIDGETS_STEAM_TINKER_LAUNCH_ROW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PROTON_PLUS_WIDGETS_TYPE_STEAM_TINKER_LAUNCH_ROW, ProtonPlusWidgetsSteamTinkerLaunchRowClass))

typedef struct _ProtonPlusWidgetsSteamTinkerLaunchRow ProtonPlusWidgetsSteamTinkerLaunchRow;
typedef struct _ProtonPlusWidgetsSteamTinkerLaunchRowClass ProtonPlusWidgetsSteamTinkerLaunchRowClass;

#define PROTON_PLUS_WIDGETS_TYPE_SCROLL_CONTROLLER (proton_plus_widgets_scroll_controller_get_type ())
#define PROTON_PLUS_WIDGETS_SCROLL_CONTROLLER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PROTON_PLUS_WIDGETS_TYPE_SCROLL_CONTROLLER, ProtonPlusWidgetsScrollController))
#define PROTON_PLUS_WIDGETS_SCROLL_CONTROLLER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PROTON_PLUS_WIDGETS_TYPE_SCROLL_CONTROLLER, ProtonPlusWidgetsScrollControllerClass))
#define PROTON_PLUS_WIDGETS_IS_SCROLL_CONTROLLER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PROTON_PLUS_WIDGETS_TYPE_SCROLL_CONTROLLER))
#define PROTON_PLUS_WIDGETS_IS_SCROLL_CONTROLLER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PROTON_PLUS_WIDGETS_TYPE_SCROLL_CONTROLLER))
#define PROTON_PLUS_WIDGETS_SCROLL_CONTROLLER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PROTON_PLUS_WIDGETS_TYPE_SCROLL_CONTROLLER, ProtonPlusWidgetsScrollControllerClass))

typedef struct _ProtonPlusWidgetsScrollController ProtonPlusWidgetsScrollController;
typedef struct _ProtonPlusWidgetsScrollControllerClass ProtonPlusWidgetsScrollControllerClass;
typedef struct _Block3Data Block3Data;

struct _ProtonPlusWidgetsRunnerRow {
	AdwExpanderRow parent_instance;
	ProtonPlusWidgetsRunnerRowPrivate * priv;
	GList* rows;
};

struct _ProtonPlusWidgetsRunnerRowClass {
	AdwExpanderRowClass parent_class;
};

struct _ProtonPlusWidgetsRunnerRowPrivate {
	gint count;
	ProtonPlusModelsRunner* runner;
	GtkSpinner* spinner;
	ProtonPlusWidgetsLoadMoreRow* load_more_row;
};

struct _ProtonPlusModelsRunner {
	GObject parent_instance;
	ProtonPlusModelsRunnerPrivate * priv;
	GList* releases;
};

struct _ProtonPlusModelsRunnerClass {
	GObjectClass parent_class;
	void (*load) (ProtonPlusModelsRunner* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
	ProtonPlusReturnCode (*load_finish) (ProtonPlusModelsRunner* self, GAsyncResult* _res_, GList** releases);
};

struct _Block2Data {
	int _ref_count_;
	ProtonPlusWidgetsRunnerRow* self;
	GList* releases;
};

struct _Block3Data {
	int _ref_count_;
	ProtonPlusWidgetsRunnerRow* self;
	ProtonPlusWidgetsScrollController* scroll_ctrl;
};

static gint ProtonPlusWidgetsRunnerRow_private_offset;
static gpointer proton_plus_widgets_runner_row_parent_class = NULL;
VALA_EXTERN GList* proton_plus_globals_HWCAPS;
VALA_EXTERN ProtonPlusWidgetsWindow* proton_plus_widgets_application_window;

VALA_EXTERN GType proton_plus_widgets_runner_row_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ProtonPlusWidgetsRunnerRow, g_object_unref)
VALA_EXTERN GType proton_plus_widgets_release_row_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ProtonPlusWidgetsReleaseRow, g_object_unref)
VALA_EXTERN GType proton_plus_models_runner_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ProtonPlusModelsRunner, g_object_unref)
VALA_EXTERN GType proton_plus_widgets_load_more_row_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ProtonPlusWidgetsLoadMoreRow, g_object_unref)
static void _g_object_unref0_ (gpointer var);
static inline void _g_list_free__g_object_unref0_ (GList* self);
VALA_EXTERN ProtonPlusWidgetsRunnerRow* proton_plus_widgets_runner_row_new (ProtonPlusModelsRunner* runner);
VALA_EXTERN ProtonPlusWidgetsRunnerRow* proton_plus_widgets_runner_row_construct (GType object_type,
                                                                      ProtonPlusModelsRunner* runner);
VALA_EXTERN ProtonPlusWidgetsLoadMoreRow* proton_plus_widgets_load_more_row_new (void);
VALA_EXTERN ProtonPlusWidgetsLoadMoreRow* proton_plus_widgets_load_more_row_construct (GType object_type);
static void proton_plus_widgets_runner_row_load_more_row_activated (ProtonPlusWidgetsRunnerRow* self);
static void _proton_plus_widgets_runner_row_load_more_row_activated_adw_action_row_activated (AdwActionRow* _sender,
                                                                                       gpointer self);
static void __lambda34_ (ProtonPlusWidgetsRunnerRow* self);
static void proton_plus_widgets_runner_row_expanded_changed (ProtonPlusWidgetsRunnerRow* self,
                                                      gboolean force_load);
static void ___lambda34__g_object_notify (GObject* _sender,
                                   GParamSpec* pspec,
                                   gpointer self);
VALA_EXTERN const gchar* proton_plus_models_runner_get_title (ProtonPlusModelsRunner* self);
VALA_EXTERN const gchar* proton_plus_models_runner_get_description (ProtonPlusModelsRunner* self);
VALA_EXTERN GType proton_plus_models_base_release_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ProtonPlusModelsBaseRelease, g_object_unref)
VALA_EXTERN GType proton_plus_models_release_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ProtonPlusModelsRelease, g_object_unref)
VALA_EXTERN GType proton_plus_return_code_get_type (void) G_GNUC_CONST ;
static Block2Data* block2_data_ref (Block2Data* _data2_);
static void block2_data_unref (void * _userdata_);
VALA_EXTERN void proton_plus_models_runner_load (ProtonPlusModelsRunner* self,
                                     GAsyncReadyCallback _callback_,
                                     gpointer _user_data_);
VALA_EXTERN ProtonPlusReturnCode proton_plus_models_runner_load_finish (ProtonPlusModelsRunner* self,
                                                            GAsyncResult* _res_,
                                                            GList** releases);
static void _____lambda23_ (Block2Data* _data2_,
                     GObject* obj,
                     GAsyncResult* res);
VALA_EXTERN ProtonPlusWidgetsWarningDialog* proton_plus_widgets_warning_dialog_new (const gchar* heading,
                                                                        const gchar* body);
VALA_EXTERN ProtonPlusWidgetsWarningDialog* proton_plus_widgets_warning_dialog_construct (GType object_type,
                                                                              const gchar* heading,
                                                                              const gchar* body);
VALA_EXTERN GType proton_plus_widgets_warning_dialog_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ProtonPlusWidgetsWarningDialog, g_object_unref)
VALA_EXTERN ProtonPlusWidgetsErrorDialog* proton_plus_widgets_error_dialog_new (const gchar* heading,
                                                                    const gchar* body);
VALA_EXTERN ProtonPlusWidgetsErrorDialog* proton_plus_widgets_error_dialog_construct (GType object_type,
                                                                          const gchar* heading,
                                                                          const gchar* body);
VALA_EXTERN GType proton_plus_widgets_error_dialog_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ProtonPlusWidgetsErrorDialog, g_object_unref)
VALA_EXTERN GType proton_plus_widgets_window_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ProtonPlusWidgetsWindow, g_object_unref)
VALA_EXTERN GType proton_plus_models_runners_basic_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ProtonPlusModelsRunnersBasic, g_object_unref)
VALA_EXTERN gboolean proton_plus_models_runner_get_has_latest_support (ProtonPlusModelsRunner* self);
VALA_EXTERN GType proton_plus_models_releases_basic_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ProtonPlusModelsReleasesBasic, g_object_unref)
VALA_EXTERN GType proton_plus_models_releases_latest_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ProtonPlusModelsReleasesLatest, g_object_unref)
VALA_EXTERN const gchar* proton_plus_models_base_release_get_description (ProtonPlusModelsBaseRelease* self);
VALA_EXTERN const gchar* proton_plus_models_base_release_get_release_date (ProtonPlusModelsBaseRelease* self);
VALA_EXTERN const gchar* proton_plus_models_base_release_get_download_url (ProtonPlusModelsBaseRelease* self);
VALA_EXTERN const gchar* proton_plus_models_base_release_get_page_url (ProtonPlusModelsBaseRelease* self);
VALA_EXTERN ProtonPlusModelsReleasesLatest* proton_plus_models_releases_latest_new (ProtonPlusModelsRunnersBasic* runner,
                                                                        const gchar* title,
                                                                        const gchar* description,
                                                                        const gchar* release_date,
                                                                        const gchar* download_url,
                                                                        const gchar* page_url);
VALA_EXTERN ProtonPlusModelsReleasesLatest* proton_plus_models_releases_latest_construct (GType object_type,
                                                                              ProtonPlusModelsRunnersBasic* runner,
                                                                              const gchar* title,
                                                                              const gchar* description,
                                                                              const gchar* release_date,
                                                                              const gchar* download_url,
                                                                              const gchar* page_url);
static void proton_plus_widgets_runner_row_insert_loaded_releases (ProtonPlusWidgetsRunnerRow* self,
                                                            GList* releases);
static void ______lambda23__gasync_ready_callback (GObject* source_object,
                                            GAsyncResult* res,
                                            gpointer self);
VALA_EXTERN GType proton_plus_models_releases_git_hub_action_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ProtonPlusModelsReleasesGitHubAction, g_object_unref)
VALA_EXTERN GType proton_plus_widgets_basic_row_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ProtonPlusWidgetsBasicRow, g_object_unref)
VALA_EXTERN ProtonPlusWidgetsBasicRow* proton_plus_widgets_basic_row_new (ProtonPlusModelsReleasesBasic* release);
VALA_EXTERN ProtonPlusWidgetsBasicRow* proton_plus_widgets_basic_row_construct (GType object_type,
                                                                    ProtonPlusModelsReleasesBasic* release);
VALA_EXTERN GType proton_plus_models_releases_update_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ProtonPlusModelsReleasesUpdate, g_object_unref)
VALA_EXTERN GType proton_plus_models_releases_steam_tinker_launch_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ProtonPlusModelsReleasesSteamTinkerLaunch, g_object_unref)
VALA_EXTERN GType proton_plus_widgets_steam_tinker_launch_row_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ProtonPlusWidgetsSteamTinkerLaunchRow, g_object_unref)
VALA_EXTERN ProtonPlusWidgetsSteamTinkerLaunchRow* proton_plus_widgets_steam_tinker_launch_row_new (ProtonPlusModelsReleasesSteamTinkerLaunch* release);
VALA_EXTERN ProtonPlusWidgetsSteamTinkerLaunchRow* proton_plus_widgets_steam_tinker_launch_row_construct (GType object_type,
                                                                                              ProtonPlusModelsReleasesSteamTinkerLaunch* release);
VALA_EXTERN gboolean proton_plus_models_runner_get_has_more (ProtonPlusModelsRunner* self);
VALA_EXTERN GType proton_plus_widgets_scroll_controller_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (ProtonPlusWidgetsScrollController, g_object_unref)
static Block3Data* block3_data_ref (Block3Data* _data3_);
static void block3_data_unref (void * _userdata_);
VALA_EXTERN ProtonPlusWidgetsScrollController* proton_plus_widgets_scroll_controller_new (GtkScrolledWindow* window);
VALA_EXTERN ProtonPlusWidgetsScrollController* proton_plus_widgets_scroll_controller_construct (GType object_type,
                                                                                    GtkScrolledWindow* window);
VALA_EXTERN void proton_plus_widgets_scroll_controller_save (ProtonPlusWidgetsScrollController* self);
static gboolean __lambda22_ (Block3Data* _data3_);
VALA_EXTERN void proton_plus_widgets_scroll_controller_restore (ProtonPlusWidgetsScrollController* self,
                                                    gint delay_ms);
static gboolean ___lambda22__gsource_func (gpointer self);
static void proton_plus_widgets_runner_row_finalize (GObject * obj);
static GType proton_plus_widgets_runner_row_get_type_once (void);

static inline gpointer
proton_plus_widgets_runner_row_get_instance_private (ProtonPlusWidgetsRunnerRow* self)
{
	return G_STRUCT_MEMBER_P (self, ProtonPlusWidgetsRunnerRow_private_offset);
}

static void
_g_object_unref0_ (gpointer var)
{
	(var == NULL) ? NULL : (var = (g_object_unref (var), NULL));
}

static inline void
_g_list_free__g_object_unref0_ (GList* self)
{
	g_list_free_full (self, (GDestroyNotify) _g_object_unref0_);
}

static gpointer
_g_object_ref0 (gpointer self)
{
	return self ? g_object_ref (self) : NULL;
}

static void
_proton_plus_widgets_runner_row_load_more_row_activated_adw_action_row_activated (AdwActionRow* _sender,
                                                                                  gpointer self)
{
	proton_plus_widgets_runner_row_load_more_row_activated ((ProtonPlusWidgetsRunnerRow*) self);
}

static void
__lambda34_ (ProtonPlusWidgetsRunnerRow* self)
{
	proton_plus_widgets_runner_row_expanded_changed (self, FALSE);
}

static void
___lambda34__g_object_notify (GObject* _sender,
                              GParamSpec* pspec,
                              gpointer self)
{
	__lambda34_ ((ProtonPlusWidgetsRunnerRow*) self);
}

ProtonPlusWidgetsRunnerRow*
proton_plus_widgets_runner_row_construct (GType object_type,
                                          ProtonPlusModelsRunner* runner)
{
	ProtonPlusWidgetsRunnerRow * self = NULL;
	ProtonPlusModelsRunner* _tmp0_;
	ProtonPlusWidgetsLoadMoreRow* _tmp1_;
	ProtonPlusWidgetsLoadMoreRow* _tmp2_;
	GtkSpinner* _tmp3_;
	GtkSpinner* _tmp4_;
	const gchar* _tmp5_;
	const gchar* _tmp6_;
	const gchar* _tmp7_;
	const gchar* _tmp8_;
	GtkSpinner* _tmp9_;
	const gchar* _tmp10_;
	const gchar* _tmp11_;
	g_return_val_if_fail (runner != NULL, NULL);
	self = (ProtonPlusWidgetsRunnerRow*) g_object_new (object_type, NULL);
	_tmp0_ = _g_object_ref0 (runner);
	_g_object_unref0 (self->priv->runner);
	self->priv->runner = _tmp0_;
	self->priv->count = 0;
	(self->rows == NULL) ? NULL : (self->rows = (_g_list_free__g_object_unref0_ (self->rows), NULL));
	self->rows = NULL;
	_tmp1_ = proton_plus_widgets_load_more_row_new ();
	g_object_ref_sink (_tmp1_);
	_g_object_unref0 (self->priv->load_more_row);
	self->priv->load_more_row = _tmp1_;
	_tmp2_ = self->priv->load_more_row;
	g_signal_connect_object ((AdwActionRow*) _tmp2_, "activated", (GCallback) _proton_plus_widgets_runner_row_load_more_row_activated_adw_action_row_activated, self, 0);
	_tmp3_ = (GtkSpinner*) gtk_spinner_new ();
	g_object_ref_sink (_tmp3_);
	_g_object_unref0 (self->priv->spinner);
	self->priv->spinner = _tmp3_;
	_tmp4_ = self->priv->spinner;
	gtk_widget_set_visible ((GtkWidget*) _tmp4_, FALSE);
	g_signal_connect_object ((GObject*) self, "notify::expanded", (GCallback) ___lambda34__g_object_notify, self, 0);
	_tmp5_ = proton_plus_models_runner_get_title (runner);
	_tmp6_ = _tmp5_;
	adw_preferences_row_set_title ((AdwPreferencesRow*) self, _tmp6_);
	_tmp7_ = proton_plus_models_runner_get_description (runner);
	_tmp8_ = _tmp7_;
	adw_expander_row_set_subtitle ((AdwExpanderRow*) self, _tmp8_);
	_tmp9_ = self->priv->spinner;
	adw_expander_row_add_suffix ((AdwExpanderRow*) self, (GtkWidget*) _tmp9_);
	_tmp10_ = proton_plus_models_runner_get_title (runner);
	_tmp11_ = _tmp10_;
	if (g_strcmp0 (_tmp11_, "Proton-CachyOS") == 0) {
		const gchar* _tmp12_;
		const gchar* _tmp13_;
		GList* _tmp14_;
		gconstpointer _tmp15_;
		gchar* _tmp16_;
		gchar* _tmp17_;
		gchar* _tmp18_;
		gchar* _tmp19_;
		_tmp12_ = adw_preferences_row_get_title ((AdwPreferencesRow*) self);
		_tmp13_ = _tmp12_;
		_tmp14_ = proton_plus_globals_HWCAPS;
		_tmp15_ = g_list_nth_data (_tmp14_, (guint) 0);
		_tmp16_ = g_strdup_printf (" (%s)", (const gchar*) _tmp15_);
		_tmp17_ = _tmp16_;
		_tmp18_ = g_strconcat (_tmp13_, _tmp17_, NULL);
		_tmp19_ = _tmp18_;
		adw_preferences_row_set_title ((AdwPreferencesRow*) self, _tmp19_);
		_g_free0 (_tmp19_);
		_g_free0 (_tmp17_);
	}
	return self;
}

ProtonPlusWidgetsRunnerRow*
proton_plus_widgets_runner_row_new (ProtonPlusModelsRunner* runner)
{
	return proton_plus_widgets_runner_row_construct (PROTON_PLUS_WIDGETS_TYPE_RUNNER_ROW, runner);
}

static Block2Data*
block2_data_ref (Block2Data* _data2_)
{
	g_atomic_int_inc (&_data2_->_ref_count_);
	return _data2_;
}

static void
block2_data_unref (void * _userdata_)
{
	Block2Data* _data2_;
	_data2_ = (Block2Data*) _userdata_;
	if (g_atomic_int_dec_and_test (&_data2_->_ref_count_)) {
		ProtonPlusWidgetsRunnerRow* self;
		self = _data2_->self;
		(_data2_->releases == NULL) ? NULL : (_data2_->releases = (_g_list_free__g_object_unref0_ (_data2_->releases), NULL));
		_g_object_unref0 (self);
		g_slice_free (Block2Data, _data2_);
	}
}

static void
_____lambda23_ (Block2Data* _data2_,
                GObject* obj,
                GAsyncResult* res)
{
	ProtonPlusWidgetsRunnerRow* self;
	ProtonPlusReturnCode code = 0;
	ProtonPlusModelsRunner* _tmp0_;
	GList* _tmp1_ = NULL;
	ProtonPlusReturnCode _tmp2_;
	GList* _tmp44_;
	ProtonPlusModelsRunner* _tmp45_;
	GList* _tmp46_;
	GList* _tmp49_;
	self = _data2_->self;
	g_return_if_fail (res != NULL);
	_tmp0_ = self->priv->runner;
	_tmp2_ = proton_plus_models_runner_load_finish (_tmp0_, res, &_tmp1_);
	(_data2_->releases == NULL) ? NULL : (_data2_->releases = (_g_list_free__g_object_unref0_ (_data2_->releases), NULL));
	_data2_->releases = _tmp1_;
	code = _tmp2_;
	if (code != PROTON_PLUS_RETURN_CODE_RELEASES_LOADED) {
		AdwAlertDialog* dialog = NULL;
		AdwAlertDialog* _tmp9_;
		ProtonPlusWidgetsWindow* _tmp10_;
		if (self->priv->count == 0) {
			adw_expander_row_set_expanded ((AdwExpanderRow*) self, FALSE);
		}
		switch (code) {
			case PROTON_PLUS_RETURN_CODE_API_LIMIT_REACHED:
			{
				ProtonPlusWidgetsWarningDialog* _tmp3_;
				_tmp3_ = proton_plus_widgets_warning_dialog_new (_ ("API limit reached"), _ ("Try again in a few minutes."));
				g_object_ref_sink (_tmp3_);
				_g_object_unref0 (dialog);
				dialog = (AdwAlertDialog*) _tmp3_;
				break;
			}
			case PROTON_PLUS_RETURN_CODE_CONNECTION_ISSUE:
			{
				ProtonPlusWidgetsWarningDialog* _tmp4_;
				_tmp4_ = proton_plus_widgets_warning_dialog_new (_ ("Unable to reach the API"), _ ("Make sure you're connected to the internet."));
				g_object_ref_sink (_tmp4_);
				_g_object_unref0 (dialog);
				dialog = (AdwAlertDialog*) _tmp4_;
				break;
			}
			case PROTON_PLUS_RETURN_CODE_CONNECTION_REFUSED:
			{
				ProtonPlusWidgetsWarningDialog* _tmp5_;
				_tmp5_ = proton_plus_widgets_warning_dialog_new (_ ("Unable to reach the API"), _ ("Make sure your DNS is not blocking this."));
				g_object_ref_sink (_tmp5_);
				_g_object_unref0 (dialog);
				dialog = (AdwAlertDialog*) _tmp5_;
				break;
			}
			case PROTON_PLUS_RETURN_CODE_CONNECTION_UNKNOWN:
			{
				ProtonPlusWidgetsWarningDialog* _tmp6_;
				_tmp6_ = proton_plus_widgets_warning_dialog_new (_ ("Unable to reach the API"), _ ("The requested website does not seem to be valid."));
				g_object_ref_sink (_tmp6_);
				_g_object_unref0 (dialog);
				dialog = (AdwAlertDialog*) _tmp6_;
				break;
			}
			case PROTON_PLUS_RETURN_CODE_INVALID_ACCESS_TOKEN:
			{
				ProtonPlusWidgetsWarningDialog* _tmp7_;
				_tmp7_ = proton_plus_widgets_warning_dialog_new (_ ("Invalid access token"), _ ("Make sure the access token you provided is valid."));
				g_object_ref_sink (_tmp7_);
				_g_object_unref0 (dialog);
				dialog = (AdwAlertDialog*) _tmp7_;
				break;
			}
			default:
			{
				ProtonPlusWidgetsErrorDialog* _tmp8_;
				_tmp8_ = proton_plus_widgets_error_dialog_new (_ ("Unknown error"), _ ("Please report this issue on GitHub."));
				g_object_ref_sink (_tmp8_);
				_g_object_unref0 (dialog);
				dialog = (AdwAlertDialog*) _tmp8_;
				break;
			}
		}
		_tmp9_ = dialog;
		_tmp10_ = proton_plus_widgets_application_window;
		adw_dialog_present ((AdwDialog*) _tmp9_, (GtkWidget*) _tmp10_);
		_g_object_unref0 (dialog);
	} else {
		gboolean _tmp11_ = FALSE;
		gboolean _tmp12_ = FALSE;
		gboolean _tmp13_ = FALSE;
		ProtonPlusModelsRunner* _tmp14_;
		_tmp14_ = self->priv->runner;
		if (PROTON_PLUS_MODELS_RUNNERS_IS_BASIC (_tmp14_)) {
			GList* _tmp15_;
			_tmp15_ = _data2_->releases;
			_tmp13_ = g_list_length (_tmp15_) > ((guint) 0);
		} else {
			_tmp13_ = FALSE;
		}
		if (_tmp13_) {
			_tmp12_ = self->priv->count == 0;
		} else {
			_tmp12_ = FALSE;
		}
		if (_tmp12_) {
			ProtonPlusModelsRunner* _tmp16_;
			gboolean _tmp17_;
			gboolean _tmp18_;
			_tmp16_ = self->priv->runner;
			_tmp17_ = proton_plus_models_runner_get_has_latest_support (_tmp16_);
			_tmp18_ = _tmp17_;
			_tmp11_ = _tmp18_;
		} else {
			_tmp11_ = FALSE;
		}
		if (_tmp11_) {
			ProtonPlusModelsRelease* latest_release = NULL;
			GList* _tmp19_;
			gconstpointer _tmp20_;
			ProtonPlusModelsRelease* _tmp21_;
			ProtonPlusModelsReleasesLatest* release = NULL;
			ProtonPlusModelsRunner* _tmp22_;
			ProtonPlusModelsRunner* _tmp23_;
			const gchar* _tmp24_;
			const gchar* _tmp25_;
			gchar* _tmp26_;
			gchar* _tmp27_;
			ProtonPlusModelsRelease* _tmp28_;
			const gchar* _tmp29_;
			const gchar* _tmp30_;
			ProtonPlusModelsRelease* _tmp31_;
			const gchar* _tmp32_;
			const gchar* _tmp33_;
			ProtonPlusModelsRelease* _tmp34_;
			const gchar* _tmp35_;
			const gchar* _tmp36_;
			ProtonPlusModelsRelease* _tmp37_;
			const gchar* _tmp38_;
			const gchar* _tmp39_;
			ProtonPlusModelsReleasesLatest* _tmp40_;
			ProtonPlusModelsReleasesLatest* _tmp41_;
			ProtonPlusModelsReleasesLatest* _tmp42_;
			ProtonPlusModelsRelease* _tmp43_;
			_tmp19_ = _data2_->releases;
			_tmp20_ = g_list_nth_data (_tmp19_, (guint) 0);
			_tmp21_ = _g_object_ref0 ((ProtonPlusModelsRelease*) _tmp20_);
			latest_release = _tmp21_;
			_tmp22_ = self->priv->runner;
			_tmp23_ = self->priv->runner;
			_tmp24_ = proton_plus_models_runner_get_title (_tmp23_);
			_tmp25_ = _tmp24_;
			_tmp26_ = g_strdup_printf ("%s Latest", _tmp25_);
			_tmp27_ = _tmp26_;
			_tmp28_ = latest_release;
			_tmp29_ = proton_plus_models_base_release_get_description ((ProtonPlusModelsBaseRelease*) _tmp28_);
			_tmp30_ = _tmp29_;
			_tmp31_ = latest_release;
			_tmp32_ = proton_plus_models_base_release_get_release_date ((ProtonPlusModelsBaseRelease*) _tmp31_);
			_tmp33_ = _tmp32_;
			_tmp34_ = latest_release;
			_tmp35_ = proton_plus_models_base_release_get_download_url ((ProtonPlusModelsBaseRelease*) _tmp34_);
			_tmp36_ = _tmp35_;
			_tmp37_ = latest_release;
			_tmp38_ = proton_plus_models_base_release_get_page_url ((ProtonPlusModelsBaseRelease*) _tmp37_);
			_tmp39_ = _tmp38_;
			_tmp40_ = proton_plus_models_releases_latest_new (PROTON_PLUS_MODELS_RUNNERS_IS_BASIC (_tmp22_) ? ((ProtonPlusModelsRunnersBasic*) _tmp22_) : NULL, _tmp27_, _tmp30_, _tmp33_, _tmp36_, _tmp39_);
			_tmp41_ = _tmp40_;
			_g_free0 (_tmp27_);
			release = _tmp41_;
			_tmp42_ = release;
			_tmp43_ = _g_object_ref0 ((ProtonPlusModelsRelease*) _tmp42_);
			_data2_->releases = g_list_prepend (_data2_->releases, _tmp43_);
			_g_object_unref0 (release);
			_g_object_unref0 (latest_release);
		}
	}
	_tmp44_ = _data2_->releases;
	_tmp45_ = self->priv->runner;
	_tmp46_ = _tmp45_->releases;
	if ((g_list_length (_tmp44_) + g_list_length (_tmp46_)) == ((guint) self->priv->count)) {
		GtkSpinner* _tmp47_;
		GtkSpinner* _tmp48_;
		_tmp47_ = self->priv->spinner;
		gtk_spinner_stop (_tmp47_);
		_tmp48_ = self->priv->spinner;
		gtk_widget_set_visible ((GtkWidget*) _tmp48_, FALSE);
		return;
	}
	_tmp49_ = _data2_->releases;
	proton_plus_widgets_runner_row_insert_loaded_releases (self, _tmp49_);
}

static void
______lambda23__gasync_ready_callback (GObject* source_object,
                                       GAsyncResult* res,
                                       gpointer self)
{
	_____lambda23_ (self, source_object, res);
	block2_data_unref (self);
}

static void
proton_plus_widgets_runner_row_expanded_changed (ProtonPlusWidgetsRunnerRow* self,
                                                 gboolean force_load)
{
	g_return_if_fail (self != NULL);
	if (adw_expander_row_get_expanded ((AdwExpanderRow*) self)) {
		gboolean _tmp0_ = FALSE;
		ProtonPlusModelsRunner* _tmp1_;
		GList* _tmp2_;
		gboolean a = FALSE;
		gboolean _tmp3_ = FALSE;
		ProtonPlusModelsRunner* _tmp4_;
		GList* _tmp5_;
		gboolean b = FALSE;
		gboolean _tmp6_ = FALSE;
		_tmp1_ = self->priv->runner;
		_tmp2_ = _tmp1_->releases;
		if (g_list_length (_tmp2_) == ((guint) 0)) {
			_tmp0_ = TRUE;
		} else {
			_tmp0_ = force_load;
		}
		a = _tmp0_;
		_tmp4_ = self->priv->runner;
		_tmp5_ = _tmp4_->releases;
		if (g_list_length (_tmp5_) >= ((guint) 0)) {
			_tmp3_ = self->priv->count == 0;
		} else {
			_tmp3_ = FALSE;
		}
		b = _tmp3_;
		if (a) {
			_tmp6_ = TRUE;
		} else {
			_tmp6_ = b;
		}
		if (_tmp6_) {
			GtkSpinner* _tmp7_;
			GtkSpinner* _tmp8_;
			_tmp7_ = self->priv->spinner;
			gtk_spinner_start (_tmp7_);
			_tmp8_ = self->priv->spinner;
			gtk_widget_set_visible ((GtkWidget*) _tmp8_, TRUE);
			if (a) {
				Block2Data* _data2_;
				ProtonPlusModelsRunner* _tmp9_;
				_data2_ = g_slice_new0 (Block2Data);
				_data2_->_ref_count_ = 1;
				_data2_->self = g_object_ref (self);
				_data2_->releases = NULL;
				_tmp9_ = self->priv->runner;
				proton_plus_models_runner_load (_tmp9_, ______lambda23__gasync_ready_callback, block2_data_ref (_data2_));
				block2_data_unref (_data2_);
				_data2_ = NULL;
			} else {
				if (b) {
					ProtonPlusModelsRunner* _tmp10_;
					GList* _tmp11_;
					_tmp10_ = self->priv->runner;
					_tmp11_ = _tmp10_->releases;
					proton_plus_widgets_runner_row_insert_loaded_releases (self, _tmp11_);
				}
			}
		}
	}
}

static void
proton_plus_widgets_runner_row_insert_loaded_releases (ProtonPlusWidgetsRunnerRow* self,
                                                       GList* releases)
{
	ProtonPlusModelsRunner* _tmp16_;
	gboolean _tmp17_;
	gboolean _tmp18_;
	GtkSpinner* _tmp20_;
	GtkSpinner* _tmp21_;
	g_return_if_fail (self != NULL);
	{
		GList* release_collection = NULL;
		GList* release_it = NULL;
		release_collection = releases;
		for (release_it = release_collection; release_it != NULL; release_it = release_it->next) {
			ProtonPlusModelsRelease* _tmp0_;
			ProtonPlusModelsRelease* release = NULL;
			_tmp0_ = _g_object_ref0 ((ProtonPlusModelsRelease*) release_it->data);
			release = _tmp0_;
			{
				gboolean _tmp1_ = FALSE;
				ProtonPlusModelsRelease* _tmp2_;
				gint _tmp15_;
				_tmp2_ = release;
				if (PROTON_PLUS_MODELS_RELEASES_IS_BASIC (_tmp2_)) {
					_tmp1_ = TRUE;
				} else {
					ProtonPlusModelsRelease* _tmp3_;
					_tmp3_ = release;
					_tmp1_ = PROTON_PLUS_MODELS_RELEASES_IS_GIT_HUB_ACTION (_tmp3_);
				}
				if (_tmp1_) {
					ProtonPlusWidgetsBasicRow* row = NULL;
					ProtonPlusModelsRelease* _tmp4_;
					ProtonPlusWidgetsBasicRow* _tmp5_;
					ProtonPlusWidgetsBasicRow* _tmp6_;
					ProtonPlusWidgetsBasicRow* _tmp7_;
					ProtonPlusWidgetsReleaseRow* _tmp8_;
					_tmp4_ = release;
					_tmp5_ = proton_plus_widgets_basic_row_new (G_TYPE_CHECK_INSTANCE_CAST (_tmp4_, PROTON_PLUS_MODELS_RELEASES_TYPE_BASIC, ProtonPlusModelsReleasesBasic));
					g_object_ref_sink (_tmp5_);
					row = _tmp5_;
					_tmp6_ = row;
					adw_expander_row_add_row ((AdwExpanderRow*) self, (GtkWidget*) _tmp6_);
					_tmp7_ = row;
					_tmp8_ = _g_object_ref0 ((ProtonPlusWidgetsReleaseRow*) _tmp7_);
					self->rows = g_list_append (self->rows, _tmp8_);
					_g_object_unref0 (row);
				} else {
					ProtonPlusModelsRelease* _tmp9_;
					_tmp9_ = release;
					if (PROTON_PLUS_MODELS_RELEASES_IS_STEAM_TINKER_LAUNCH (_tmp9_)) {
						ProtonPlusWidgetsSteamTinkerLaunchRow* row = NULL;
						ProtonPlusModelsRelease* _tmp10_;
						ProtonPlusWidgetsSteamTinkerLaunchRow* _tmp11_;
						ProtonPlusWidgetsSteamTinkerLaunchRow* _tmp12_;
						ProtonPlusWidgetsSteamTinkerLaunchRow* _tmp13_;
						ProtonPlusWidgetsReleaseRow* _tmp14_;
						_tmp10_ = release;
						_tmp11_ = proton_plus_widgets_steam_tinker_launch_row_new (G_TYPE_CHECK_INSTANCE_CAST (_tmp10_, PROTON_PLUS_MODELS_RELEASES_TYPE_STEAM_TINKER_LAUNCH, ProtonPlusModelsReleasesSteamTinkerLaunch));
						g_object_ref_sink (_tmp11_);
						row = _tmp11_;
						_tmp12_ = row;
						adw_expander_row_add_row ((AdwExpanderRow*) self, (GtkWidget*) _tmp12_);
						_tmp13_ = row;
						_tmp14_ = _g_object_ref0 ((ProtonPlusWidgetsReleaseRow*) _tmp13_);
						self->rows = g_list_append (self->rows, _tmp14_);
						_g_object_unref0 (row);
					} else {
						_g_object_unref0 (release);
						continue;
					}
				}
				_tmp15_ = self->priv->count;
				self->priv->count = _tmp15_ + 1;
				_g_object_unref0 (release);
			}
		}
	}
	_tmp16_ = self->priv->runner;
	_tmp17_ = proton_plus_models_runner_get_has_more (_tmp16_);
	_tmp18_ = _tmp17_;
	if (_tmp18_) {
		ProtonPlusWidgetsLoadMoreRow* _tmp19_;
		_tmp19_ = self->priv->load_more_row;
		adw_expander_row_add_row ((AdwExpanderRow*) self, (GtkWidget*) _tmp19_);
	}
	_tmp20_ = self->priv->spinner;
	gtk_spinner_stop (_tmp20_);
	_tmp21_ = self->priv->spinner;
	gtk_widget_set_visible ((GtkWidget*) _tmp21_, FALSE);
}

static Block3Data*
block3_data_ref (Block3Data* _data3_)
{
	g_atomic_int_inc (&_data3_->_ref_count_);
	return _data3_;
}

static void
block3_data_unref (void * _userdata_)
{
	Block3Data* _data3_;
	_data3_ = (Block3Data*) _userdata_;
	if (g_atomic_int_dec_and_test (&_data3_->_ref_count_)) {
		ProtonPlusWidgetsRunnerRow* self;
		self = _data3_->self;
		_g_object_unref0 (_data3_->scroll_ctrl);
		_g_object_unref0 (self);
		g_slice_free (Block3Data, _data3_);
	}
}

static gboolean
__lambda22_ (Block3Data* _data3_)
{
	ProtonPlusWidgetsRunnerRow* self;
	ProtonPlusWidgetsLoadMoreRow* _tmp0_;
	gboolean result;
	self = _data3_->self;
	_tmp0_ = self->priv->load_more_row;
	adw_expander_row_remove ((AdwExpanderRow*) self, (GtkWidget*) _tmp0_);
	proton_plus_widgets_runner_row_expanded_changed (self, TRUE);
	proton_plus_widgets_scroll_controller_restore (_data3_->scroll_ctrl, 10);
	result = FALSE;
	return result;
}

static gboolean
___lambda22__gsource_func (gpointer self)
{
	gboolean result;
	result = __lambda22_ (self);
	return result;
}

static void
proton_plus_widgets_runner_row_load_more_row_activated (ProtonPlusWidgetsRunnerRow* self)
{
	Block3Data* _data3_;
	GtkWidget* _tmp0_;
	ProtonPlusWidgetsScrollController* _tmp1_;
	g_return_if_fail (self != NULL);
	_data3_ = g_slice_new0 (Block3Data);
	_data3_->_ref_count_ = 1;
	_data3_->self = g_object_ref (self);
	_tmp0_ = gtk_widget_get_ancestor ((GtkWidget*) self, gtk_scrolled_window_get_type ());
	_tmp1_ = proton_plus_widgets_scroll_controller_new (G_TYPE_CHECK_INSTANCE_TYPE (_tmp0_, gtk_scrolled_window_get_type ()) ? ((GtkScrolledWindow*) _tmp0_) : NULL);
	_data3_->scroll_ctrl = _tmp1_;
	proton_plus_widgets_scroll_controller_save (_data3_->scroll_ctrl);
	g_idle_add_full (G_PRIORITY_DEFAULT_IDLE, ___lambda22__gsource_func, block3_data_ref (_data3_), block3_data_unref);
	block3_data_unref (_data3_);
	_data3_ = NULL;
}

static void
proton_plus_widgets_runner_row_class_init (ProtonPlusWidgetsRunnerRowClass * klass,
                                           gpointer klass_data)
{
	proton_plus_widgets_runner_row_parent_class = g_type_class_peek_parent (klass);
	g_type_class_adjust_private_offset (klass, &ProtonPlusWidgetsRunnerRow_private_offset);
	G_OBJECT_CLASS (klass)->finalize = proton_plus_widgets_runner_row_finalize;
}

static void
proton_plus_widgets_runner_row_instance_init (ProtonPlusWidgetsRunnerRow * self,
                                              gpointer klass)
{
	self->priv = proton_plus_widgets_runner_row_get_instance_private (self);
}

static void
proton_plus_widgets_runner_row_finalize (GObject * obj)
{
	ProtonPlusWidgetsRunnerRow * self;
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, PROTON_PLUS_WIDGETS_TYPE_RUNNER_ROW, ProtonPlusWidgetsRunnerRow);
	(self->rows == NULL) ? NULL : (self->rows = (_g_list_free__g_object_unref0_ (self->rows), NULL));
	_g_object_unref0 (self->priv->runner);
	_g_object_unref0 (self->priv->spinner);
	_g_object_unref0 (self->priv->load_more_row);
	G_OBJECT_CLASS (proton_plus_widgets_runner_row_parent_class)->finalize (obj);
}

static GType
proton_plus_widgets_runner_row_get_type_once (void)
{
	static const GTypeInfo g_define_type_info = { sizeof (ProtonPlusWidgetsRunnerRowClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) proton_plus_widgets_runner_row_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (ProtonPlusWidgetsRunnerRow), 0, (GInstanceInitFunc) proton_plus_widgets_runner_row_instance_init, NULL };
	GType proton_plus_widgets_runner_row_type_id;
	proton_plus_widgets_runner_row_type_id = g_type_register_static (adw_expander_row_get_type (), "ProtonPlusWidgetsRunnerRow", &g_define_type_info, 0);
	ProtonPlusWidgetsRunnerRow_private_offset = g_type_add_instance_private (proton_plus_widgets_runner_row_type_id, sizeof (ProtonPlusWidgetsRunnerRowPrivate));
	return proton_plus_widgets_runner_row_type_id;
}

GType
proton_plus_widgets_runner_row_get_type (void)
{
	static volatile gsize proton_plus_widgets_runner_row_type_id__once = 0;
	if (g_once_init_enter (&proton_plus_widgets_runner_row_type_id__once)) {
		GType proton_plus_widgets_runner_row_type_id;
		proton_plus_widgets_runner_row_type_id = proton_plus_widgets_runner_row_get_type_once ();
		g_once_init_leave (&proton_plus_widgets_runner_row_type_id__once, proton_plus_widgets_runner_row_type_id);
	}
	return proton_plus_widgets_runner_row_type_id__once;
}

