/* revealer.c generated by valac 0.17.3.12-6a5ea3, the Vala compiler
 * generated from revealer.vala, do not modify */

/* This file is part of GNOME Boxes. License: LGPLv2+*/

#include <glib.h>
#include <glib-object.h>
#include <clutter/clutter.h>
#include <float.h>
#include <math.h>


#define BOXES_TYPE_REVEALER (boxes_revealer_get_type ())
#define BOXES_REVEALER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), BOXES_TYPE_REVEALER, BoxesRevealer))
#define BOXES_REVEALER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), BOXES_TYPE_REVEALER, BoxesRevealerClass))
#define BOXES_IS_REVEALER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), BOXES_TYPE_REVEALER))
#define BOXES_IS_REVEALER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), BOXES_TYPE_REVEALER))
#define BOXES_REVEALER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), BOXES_TYPE_REVEALER, BoxesRevealerClass))

typedef struct _BoxesRevealer BoxesRevealer;
typedef struct _BoxesRevealerClass BoxesRevealerClass;
typedef struct _BoxesRevealerPrivate BoxesRevealerPrivate;
#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
#define _g_list_free0(var) ((var == NULL) ? NULL : (var = (g_list_free (var), NULL)))
typedef struct _Block26Data Block26Data;

struct _BoxesRevealer {
	ClutterActor parent_instance;
	BoxesRevealerPrivate * priv;
	guint duration;
};

struct _BoxesRevealerClass {
	ClutterActorClass parent_class;
};

struct _BoxesRevealerPrivate {
	gboolean horizontal;
	gboolean revealed;
};

struct _Block26Data {
	int _ref_count_;
	BoxesRevealer * self;
	ClutterActor* child;
};


static gpointer boxes_revealer_parent_class = NULL;

GType boxes_revealer_get_type (void) G_GNUC_CONST;
#define BOXES_REVEALER_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), BOXES_TYPE_REVEALER, BoxesRevealerPrivate))
enum  {
	BOXES_REVEALER_DUMMY_PROPERTY
};
BoxesRevealer* boxes_revealer_new (gboolean horizontal);
BoxesRevealer* boxes_revealer_construct (GType object_type, gboolean horizontal);
static void __lambda36_ (BoxesRevealer* self, ClutterActor* child);
static void ___lambda36__clutter_container_actor_added (ClutterContainer* _sender, ClutterActor* actor, gpointer self);
void boxes_revealer_reveal (BoxesRevealer* self);
static void boxes_revealer_unreveal_child (BoxesRevealer* self, ClutterActor* child);
static Block26Data* block26_data_ref (Block26Data* _data26_);
static void block26_data_unref (void * _userdata_);
static void ___lambda37_ (Block26Data* _data26_);
static void ____lambda37__clutter_animation_completed (ClutterAnimation* _sender, gpointer self);
static void ___lambda38_ (Block26Data* _data26_);
static void ____lambda38__clutter_animation_completed (ClutterAnimation* _sender, gpointer self);
void boxes_revealer_unreveal (BoxesRevealer* self);
static void boxes_revealer_finalize (GObject* obj);


static void __lambda36_ (BoxesRevealer* self, ClutterActor* child) {
	gboolean _tmp0_;
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	g_return_if_fail (child != NULL);
#line 26 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	_tmp0_ = self->priv->revealed;
#line 26 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	if (_tmp0_) {
#line 81 "revealer.c"
		ClutterActor* _tmp1_;
#line 27 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		_tmp1_ = child;
#line 27 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		clutter_actor_show (_tmp1_);
#line 87 "revealer.c"
	} else {
		ClutterActor* _tmp2_;
#line 29 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		_tmp2_ = child;
#line 29 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		clutter_actor_hide (_tmp2_);
#line 94 "revealer.c"
	}
}


static void ___lambda36__clutter_container_actor_added (ClutterContainer* _sender, ClutterActor* actor, gpointer self) {
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	__lambda36_ (self, actor);
#line 102 "revealer.c"
}


BoxesRevealer* boxes_revealer_construct (GType object_type, gboolean horizontal) {
	BoxesRevealer * self = NULL;
	gboolean _tmp0_;
	gboolean _tmp1_;
#line 9 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	self = (BoxesRevealer*) g_object_new (object_type, NULL);
#line 10 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	_tmp0_ = horizontal;
#line 10 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	self->priv->horizontal = _tmp0_;
#line 11 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	clutter_actor_set_clip_to_allocation ((ClutterActor*) self, TRUE);
#line 12 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	self->priv->revealed = TRUE;
#line 13 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	self->duration = (guint) 250;
#line 15 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	_tmp1_ = horizontal;
#line 15 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	if (_tmp1_) {
#line 126 "revealer.c"
		ClutterBinLayout* _tmp2_;
		ClutterBinLayout* layout;
		ClutterBinLayout* _tmp3_;
#line 16 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		_tmp2_ = (ClutterBinLayout*) clutter_bin_layout_new (CLUTTER_BIN_ALIGNMENT_FILL, CLUTTER_BIN_ALIGNMENT_FIXED);
#line 16 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		g_object_ref_sink (_tmp2_);
#line 16 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		layout = _tmp2_;
#line 18 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		_tmp3_ = layout;
#line 18 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		clutter_actor_set_layout_manager ((ClutterActor*) self, (ClutterLayoutManager*) _tmp3_);
#line 15 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		_g_object_unref0 (layout);
#line 142 "revealer.c"
	} else {
		ClutterBinLayout* _tmp4_;
		ClutterBinLayout* layout;
		ClutterBinLayout* _tmp5_;
#line 20 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		_tmp4_ = (ClutterBinLayout*) clutter_bin_layout_new (CLUTTER_BIN_ALIGNMENT_FIXED, CLUTTER_BIN_ALIGNMENT_FILL);
#line 20 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		g_object_ref_sink (_tmp4_);
#line 20 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		layout = _tmp4_;
#line 22 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		_tmp5_ = layout;
#line 22 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		clutter_actor_set_layout_manager ((ClutterActor*) self, (ClutterLayoutManager*) _tmp5_);
#line 15 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		_g_object_unref0 (layout);
#line 159 "revealer.c"
	}
#line 25 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	g_signal_connect_object ((ClutterContainer*) self, "actor-added", (GCallback) ___lambda36__clutter_container_actor_added, self, 0);
#line 9 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	return self;
#line 165 "revealer.c"
}


BoxesRevealer* boxes_revealer_new (gboolean horizontal) {
#line 9 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	return boxes_revealer_construct (BOXES_TYPE_REVEALER, horizontal);
#line 172 "revealer.c"
}


void boxes_revealer_reveal (BoxesRevealer* self) {
	GList* _tmp0_ = NULL;
#line 33 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	g_return_if_fail (self != NULL);
#line 34 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	_tmp0_ = clutter_actor_get_children ((ClutterActor*) self);
#line 182 "revealer.c"
	{
		GList* child_collection = NULL;
		GList* child_it = NULL;
#line 34 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		child_collection = _tmp0_;
#line 34 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		for (child_it = child_collection; child_it != NULL; child_it = child_it->next) {
#line 190 "revealer.c"
			ClutterActor* child = NULL;
#line 34 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
			child = (ClutterActor*) child_it->data;
#line 194 "revealer.c"
			{
				gboolean _tmp1_;
				gboolean _tmp3_;
#line 35 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
				_tmp1_ = self->priv->revealed;
#line 35 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
				if (!_tmp1_) {
#line 202 "revealer.c"
					ClutterActor* _tmp2_;
#line 36 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
					_tmp2_ = child;
#line 36 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
					clutter_actor_show (_tmp2_);
#line 208 "revealer.c"
				}
#line 37 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
				_tmp3_ = self->priv->horizontal;
#line 37 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
				if (_tmp3_) {
#line 214 "revealer.c"
					gboolean _tmp4_;
					ClutterActor* _tmp9_;
					guint _tmp10_;
#line 38 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
					_tmp4_ = self->priv->revealed;
#line 38 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
					if (!_tmp4_) {
#line 222 "revealer.c"
						gfloat height = 0.0F;
						ClutterActor* _tmp5_;
						gfloat _tmp6_ = 0.0F;
						ClutterActor* _tmp7_;
						gfloat _tmp8_;
#line 40 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
						_tmp5_ = child;
#line 40 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
						clutter_actor_get_preferred_height (_tmp5_, (gfloat) (-1), NULL, &_tmp6_);
#line 40 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
						height = _tmp6_;
#line 41 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
						_tmp7_ = child;
#line 41 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
						_tmp8_ = height;
#line 41 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
						clutter_actor_set_y (_tmp7_, -_tmp8_);
#line 240 "revealer.c"
					}
#line 43 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
					_tmp9_ = child;
#line 43 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
					_tmp10_ = self->duration;
#line 43 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
					clutter_actor_animate (_tmp9_, (gulong) CLUTTER_EASE_IN_QUAD, _tmp10_, "y", 0.f, NULL);
#line 248 "revealer.c"
				} else {
					gboolean _tmp11_;
					ClutterActor* _tmp16_;
					guint _tmp17_;
#line 45 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
					_tmp11_ = self->priv->revealed;
#line 45 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
					if (!_tmp11_) {
#line 257 "revealer.c"
						gfloat width = 0.0F;
						ClutterActor* _tmp12_;
						gfloat _tmp13_ = 0.0F;
						ClutterActor* _tmp14_;
						gfloat _tmp15_;
#line 47 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
						_tmp12_ = child;
#line 47 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
						clutter_actor_get_preferred_width (_tmp12_, (gfloat) (-1), NULL, &_tmp13_);
#line 47 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
						width = _tmp13_;
#line 48 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
						_tmp14_ = child;
#line 48 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
						_tmp15_ = width;
#line 48 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
						clutter_actor_set_x (_tmp14_, -_tmp15_);
#line 275 "revealer.c"
					}
#line 50 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
					_tmp16_ = child;
#line 50 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
					_tmp17_ = self->duration;
#line 50 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
					clutter_actor_animate (_tmp16_, (gulong) CLUTTER_EASE_IN_QUAD, _tmp17_, "x", 0.f, NULL);
#line 283 "revealer.c"
				}
			}
		}
#line 34 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		_g_list_free0 (child_collection);
#line 289 "revealer.c"
	}
#line 53 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	self->priv->revealed = TRUE;
#line 293 "revealer.c"
}


static gpointer _g_object_ref0 (gpointer self) {
#line 56 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	return self ? g_object_ref (self) : NULL;
#line 300 "revealer.c"
}


static Block26Data* block26_data_ref (Block26Data* _data26_) {
#line 56 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	g_atomic_int_inc (&_data26_->_ref_count_);
#line 56 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	return _data26_;
#line 309 "revealer.c"
}


static void block26_data_unref (void * _userdata_) {
	Block26Data* _data26_;
	_data26_ = (Block26Data*) _userdata_;
#line 56 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	if (g_atomic_int_dec_and_test (&_data26_->_ref_count_)) {
#line 318 "revealer.c"
		BoxesRevealer * self;
#line 56 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		self = _data26_->self;
#line 56 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		_g_object_unref0 (_data26_->child);
#line 56 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		_g_object_unref0 (self);
#line 56 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		g_slice_free (Block26Data, _data26_);
#line 328 "revealer.c"
	}
}


static void ___lambda37_ (Block26Data* _data26_) {
	BoxesRevealer * self;
	ClutterActor* _tmp0_;
#line 61 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	self = _data26_->self;
#line 62 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	_tmp0_ = _data26_->child;
#line 62 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	clutter_actor_hide (_tmp0_);
#line 63 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	self->priv->revealed = FALSE;
#line 344 "revealer.c"
}


static void ____lambda37__clutter_animation_completed (ClutterAnimation* _sender, gpointer self) {
#line 61 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	___lambda37_ (self);
#line 351 "revealer.c"
}


static void ___lambda38_ (Block26Data* _data26_) {
	BoxesRevealer * self;
	ClutterActor* _tmp0_;
#line 69 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	self = _data26_->self;
#line 70 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	_tmp0_ = _data26_->child;
#line 70 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	clutter_actor_hide (_tmp0_);
#line 71 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	self->priv->revealed = FALSE;
#line 366 "revealer.c"
}


static void ____lambda38__clutter_animation_completed (ClutterAnimation* _sender, gpointer self) {
#line 69 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	___lambda38_ (self);
#line 373 "revealer.c"
}


static void boxes_revealer_unreveal_child (BoxesRevealer* self, ClutterActor* child) {
	Block26Data* _data26_;
	ClutterActor* _tmp0_;
	ClutterActor* _tmp1_;
	gboolean _tmp2_;
#line 56 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	g_return_if_fail (self != NULL);
#line 56 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	g_return_if_fail (child != NULL);
#line 56 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	_data26_ = g_slice_new0 (Block26Data);
#line 56 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	_data26_->_ref_count_ = 1;
#line 56 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	_data26_->self = g_object_ref (self);
#line 56 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	_tmp0_ = child;
#line 56 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	_tmp1_ = _g_object_ref0 (_tmp0_);
#line 56 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	_data26_->child = _tmp1_;
#line 57 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	_tmp2_ = self->priv->horizontal;
#line 57 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	if (_tmp2_) {
#line 402 "revealer.c"
		gfloat height = 0.0F;
		ClutterActor* _tmp3_;
		gfloat _tmp4_ = 0.0F;
		ClutterActor* _tmp5_;
		guint _tmp6_;
		gfloat _tmp7_;
		ClutterAnimation* _tmp8_ = NULL;
		ClutterAnimation* _tmp9_;
		ClutterAnimation* anim;
		ClutterAnimation* _tmp10_;
#line 59 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		_tmp3_ = _data26_->child;
#line 59 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		clutter_actor_get_preferred_height (_tmp3_, (gfloat) (-1), NULL, &_tmp4_);
#line 59 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		height = _tmp4_;
#line 60 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		_tmp5_ = _data26_->child;
#line 60 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		_tmp6_ = self->duration;
#line 60 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		_tmp7_ = height;
#line 60 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		_tmp8_ = clutter_actor_animate (_tmp5_, (gulong) CLUTTER_EASE_OUT_QUAD, _tmp6_, "y", -_tmp7_, NULL);
#line 60 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		_tmp9_ = _g_object_ref0 (_tmp8_);
#line 60 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		anim = _tmp9_;
#line 61 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		_tmp10_ = anim;
#line 61 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		g_signal_connect_data (_tmp10_, "completed", (GCallback) ____lambda37__clutter_animation_completed, block26_data_ref (_data26_), (GClosureNotify) block26_data_unref, 0);
#line 57 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		_g_object_unref0 (anim);
#line 437 "revealer.c"
	} else {
		gfloat width = 0.0F;
		ClutterActor* _tmp11_;
		gfloat _tmp12_ = 0.0F;
		ClutterActor* _tmp13_;
		guint _tmp14_;
		gfloat _tmp15_;
		ClutterAnimation* _tmp16_ = NULL;
		ClutterAnimation* _tmp17_;
		ClutterAnimation* anim;
		ClutterAnimation* _tmp18_;
#line 67 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		_tmp11_ = _data26_->child;
#line 67 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		clutter_actor_get_preferred_width (_tmp11_, (gfloat) (-1), NULL, &_tmp12_);
#line 67 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		width = _tmp12_;
#line 68 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		_tmp13_ = _data26_->child;
#line 68 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		_tmp14_ = self->duration;
#line 68 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		_tmp15_ = width;
#line 68 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		_tmp16_ = clutter_actor_animate (_tmp13_, (gulong) CLUTTER_EASE_OUT_QUAD, _tmp14_, "x", -_tmp15_, NULL);
#line 68 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		_tmp17_ = _g_object_ref0 (_tmp16_);
#line 68 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		anim = _tmp17_;
#line 69 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		_tmp18_ = anim;
#line 69 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		g_signal_connect_data (_tmp18_, "completed", (GCallback) ____lambda38__clutter_animation_completed, block26_data_ref (_data26_), (GClosureNotify) block26_data_unref, 0);
#line 57 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		_g_object_unref0 (anim);
#line 473 "revealer.c"
	}
#line 56 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	block26_data_unref (_data26_);
#line 56 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	_data26_ = NULL;
#line 479 "revealer.c"
}


void boxes_revealer_unreveal (BoxesRevealer* self) {
	gboolean _tmp0_;
	gboolean found_child;
	GList* _tmp1_ = NULL;
	gboolean _tmp3_;
#line 76 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	g_return_if_fail (self != NULL);
#line 77 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	_tmp0_ = self->priv->revealed;
#line 77 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	if (!_tmp0_) {
#line 78 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		return;
#line 496 "revealer.c"
	}
#line 80 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	found_child = FALSE;
#line 81 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	_tmp1_ = clutter_actor_get_children ((ClutterActor*) self);
#line 502 "revealer.c"
	{
		GList* child_collection = NULL;
		GList* child_it = NULL;
#line 81 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		child_collection = _tmp1_;
#line 81 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		for (child_it = child_collection; child_it != NULL; child_it = child_it->next) {
#line 510 "revealer.c"
			ClutterActor* child = NULL;
#line 81 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
			child = (ClutterActor*) child_it->data;
#line 514 "revealer.c"
			{
				ClutterActor* _tmp2_;
#line 82 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
				found_child = TRUE;
#line 83 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
				_tmp2_ = child;
#line 83 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
				boxes_revealer_unreveal_child (self, _tmp2_);
#line 523 "revealer.c"
			}
		}
#line 81 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		_g_list_free0 (child_collection);
#line 528 "revealer.c"
	}
#line 85 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	_tmp3_ = found_child;
#line 85 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	if (!_tmp3_) {
#line 86 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
		self->priv->revealed = FALSE;
#line 536 "revealer.c"
	}
}


static void boxes_revealer_class_init (BoxesRevealerClass * klass) {
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	boxes_revealer_parent_class = g_type_class_peek_parent (klass);
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	g_type_class_add_private (klass, sizeof (BoxesRevealerPrivate));
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	G_OBJECT_CLASS (klass)->finalize = boxes_revealer_finalize;
#line 548 "revealer.c"
}


static void boxes_revealer_instance_init (BoxesRevealer * self) {
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	self->priv = BOXES_REVEALER_GET_PRIVATE (self);
#line 555 "revealer.c"
}


static void boxes_revealer_finalize (GObject* obj) {
	BoxesRevealer * self;
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, BOXES_TYPE_REVEALER, BoxesRevealer);
#line 4 "/extra-data/checkout/gnome/gnome-boxes/src/revealer.vala"
	G_OBJECT_CLASS (boxes_revealer_parent_class)->finalize (obj);
#line 565 "revealer.c"
}


GType boxes_revealer_get_type (void) {
	static volatile gsize boxes_revealer_type_id__volatile = 0;
	if (g_once_init_enter (&boxes_revealer_type_id__volatile)) {
		static const GTypeInfo g_define_type_info = { sizeof (BoxesRevealerClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) boxes_revealer_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (BoxesRevealer), 0, (GInstanceInitFunc) boxes_revealer_instance_init, NULL };
		GType boxes_revealer_type_id;
		boxes_revealer_type_id = g_type_register_static (clutter_actor_get_type (), "BoxesRevealer", &g_define_type_info, 0);
		g_once_init_leave (&boxes_revealer_type_id__volatile, boxes_revealer_type_id);
	}
	return boxes_revealer_type_id__volatile;
}



