Blame ui/gtk3/candidatepanel.c

Packit Service 1d8f1c
/* candidatepanel.c generated by valac 0.40.8, the Vala compiler
Packit Service 1d8f1c
 * generated from candidatepanel.vala, do not modify */
Packit Service 1d8f1c
Packit Service 1d8f1c
/* vim:set et sts=4 sw=4:
Packit Service 1d8f1c
 *
Packit Service 1d8f1c
 * ibus - The Input Bus
Packit Service 1d8f1c
 *
Packit Service 1d8f1c
 * Copyright(c) 2011-2015 Peng Huang <shawn.p.huang@gmail.com>
Packit Service 1d8f1c
 * Copyright(c) 2015-2018 Takao Fujiwara <takao.fujiwara1@gmail.com>
Packit Service 1d8f1c
 *
Packit Service 1d8f1c
 * This library is free software; you can redistribute it and/or
Packit Service 1d8f1c
 * modify it under the terms of the GNU Lesser General Public
Packit Service 1d8f1c
 * License as published by the Free Software Foundation; either
Packit Service 1d8f1c
 * version 2.1 of the License, or (at your option) any later version.
Packit Service 1d8f1c
 *
Packit Service 1d8f1c
 * This library is distributed in the hope that it will be useful,
Packit Service 1d8f1c
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
Packit Service 1d8f1c
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
Packit Service 1d8f1c
 * Lesser General Public License for more details.
Packit Service 1d8f1c
 *
Packit Service 1d8f1c
 * You should have received a copy of the GNU Lesser General Public
Packit Service 1d8f1c
 * License along with this library; if not, write to the Free Software
Packit Service 1d8f1c
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301
Packit Service 1d8f1c
 * USA
Packit Service 1d8f1c
 */
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
#include <glib.h>
Packit Service 1d8f1c
#include <glib-object.h>
Packit Service 1d8f1c
#include <gtk/gtk.h>
Packit Service 1d8f1c
#include <gdk/gdk.h>
Packit Service 1d8f1c
#include <ibus.h>
Packit Service 1d8f1c
#include <string.h>
Packit Service 1d8f1c
#include <cairo.h>
Packit Service 1d8f1c
#include <pango/pango.h>
Packit Service 1d8f1c
#include <stdlib.h>
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
#define TYPE_CANDIDATE_PANEL (candidate_panel_get_type ())
Packit Service 1d8f1c
#define CANDIDATE_PANEL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_CANDIDATE_PANEL, CandidatePanel))
Packit Service 1d8f1c
#define CANDIDATE_PANEL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_CANDIDATE_PANEL, CandidatePanelClass))
Packit Service 1d8f1c
#define IS_CANDIDATE_PANEL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_CANDIDATE_PANEL))
Packit Service 1d8f1c
#define IS_CANDIDATE_PANEL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_CANDIDATE_PANEL))
Packit Service 1d8f1c
#define CANDIDATE_PANEL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_CANDIDATE_PANEL, CandidatePanelClass))
Packit Service 1d8f1c
Packit Service 1d8f1c
typedef struct _CandidatePanel CandidatePanel;
Packit Service 1d8f1c
typedef struct _CandidatePanelClass CandidatePanelClass;
Packit Service 1d8f1c
typedef struct _CandidatePanelPrivate CandidatePanelPrivate;
Packit Service 1d8f1c
Packit Service 1d8f1c
#define TYPE_CANDIDATE_AREA (candidate_area_get_type ())
Packit Service 1d8f1c
#define CANDIDATE_AREA(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_CANDIDATE_AREA, CandidateArea))
Packit Service 1d8f1c
#define CANDIDATE_AREA_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_CANDIDATE_AREA, CandidateAreaClass))
Packit Service 1d8f1c
#define IS_CANDIDATE_AREA(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_CANDIDATE_AREA))
Packit Service 1d8f1c
#define IS_CANDIDATE_AREA_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_CANDIDATE_AREA))
Packit Service 1d8f1c
#define CANDIDATE_AREA_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_CANDIDATE_AREA, CandidateAreaClass))
Packit Service 1d8f1c
Packit Service 1d8f1c
typedef struct _CandidateArea CandidateArea;
Packit Service 1d8f1c
typedef struct _CandidateAreaClass CandidateAreaClass;
Packit Service 1d8f1c
Packit Service 1d8f1c
#define TYPE_HSEPARATOR (hseparator_get_type ())
Packit Service 1d8f1c
#define HSEPARATOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_HSEPARATOR, HSeparator))
Packit Service 1d8f1c
#define HSEPARATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_HSEPARATOR, HSeparatorClass))
Packit Service 1d8f1c
#define IS_HSEPARATOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_HSEPARATOR))
Packit Service 1d8f1c
#define IS_HSEPARATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_HSEPARATOR))
Packit Service 1d8f1c
#define HSEPARATOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_HSEPARATOR, HSeparatorClass))
Packit Service 1d8f1c
Packit Service 1d8f1c
typedef struct _HSeparator HSeparator;
Packit Service 1d8f1c
typedef struct _HSeparatorClass HSeparatorClass;
Packit Service 1d8f1c
enum  {
Packit Service 1d8f1c
	CANDIDATE_PANEL_0_PROPERTY,
Packit Service 1d8f1c
	CANDIDATE_PANEL_NUM_PROPERTIES
Packit Service 1d8f1c
};
Packit Service 1d8f1c
static GParamSpec* candidate_panel_properties[CANDIDATE_PANEL_NUM_PROPERTIES];
Packit Service 1d8f1c
#define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
Packit Service 1d8f1c
Packit Service 1d8f1c
#define TYPE_HANDLE (handle_get_type ())
Packit Service 1d8f1c
#define HANDLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_HANDLE, Handle))
Packit Service 1d8f1c
#define HANDLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_HANDLE, HandleClass))
Packit Service 1d8f1c
#define IS_HANDLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_HANDLE))
Packit Service 1d8f1c
#define IS_HANDLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_HANDLE))
Packit Service 1d8f1c
#define HANDLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_HANDLE, HandleClass))
Packit Service 1d8f1c
Packit Service 1d8f1c
typedef struct _Handle Handle;
Packit Service 1d8f1c
typedef struct _HandleClass HandleClass;
Packit Service 1d8f1c
#define _pango_attribute_destroy0(var) ((var == NULL) ? NULL : (var = (pango_attribute_destroy (var), NULL)))
Packit Service 1d8f1c
#define _pango_attr_list_unref0(var) ((var == NULL) ? NULL : (var = (pango_attr_list_unref (var), NULL)))
Packit Service 1d8f1c
#define _g_free0(var) (var = (g_free (var), NULL))
Packit Service 1d8f1c
enum  {
Packit Service 1d8f1c
	CANDIDATE_PANEL_CURSOR_UP_SIGNAL,
Packit Service 1d8f1c
	CANDIDATE_PANEL_CURSOR_DOWN_SIGNAL,
Packit Service 1d8f1c
	CANDIDATE_PANEL_PAGE_UP_SIGNAL,
Packit Service 1d8f1c
	CANDIDATE_PANEL_PAGE_DOWN_SIGNAL,
Packit Service 1d8f1c
	CANDIDATE_PANEL_CANDIDATE_CLICKED_SIGNAL,
Packit Service 1d8f1c
	CANDIDATE_PANEL_NUM_SIGNALS
Packit Service 1d8f1c
};
Packit Service 1d8f1c
static guint candidate_panel_signals[CANDIDATE_PANEL_NUM_SIGNALS] = {0};
Packit Service 1d8f1c
Packit Service 1d8f1c
struct _CandidatePanel {
Packit Service 1d8f1c
	GtkBox parent_instance;
Packit Service 1d8f1c
	CandidatePanelPrivate * priv;
Packit Service 1d8f1c
};
Packit Service 1d8f1c
Packit Service 1d8f1c
struct _CandidatePanelClass {
Packit Service 1d8f1c
	GtkBoxClass parent_class;
Packit Service 1d8f1c
};
Packit Service 1d8f1c
Packit Service 1d8f1c
struct _CandidatePanelPrivate {
Packit Service 1d8f1c
	gboolean m_vertical_panel_system;
Packit Service 1d8f1c
	gboolean m_vertical_writing;
Packit Service 1d8f1c
	GtkWindow* m_toplevel;
Packit Service 1d8f1c
	GtkBox* m_vbox;
Packit Service 1d8f1c
	GtkLabel* m_preedit_label;
Packit Service 1d8f1c
	GtkLabel* m_aux_label;
Packit Service 1d8f1c
	CandidateArea* m_candidate_area;
Packit Service 1d8f1c
	HSeparator* m_hseparator;
Packit Service 1d8f1c
	GdkRectangle m_cursor_location;
Packit Service 1d8f1c
};
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
static gpointer candidate_panel_parent_class = NULL;
Packit Service 1d8f1c
Packit Service 1d8f1c
GType candidate_panel_get_type (void) G_GNUC_CONST;
Packit Service 1d8f1c
GType candidate_area_get_type (void) G_GNUC_CONST;
Packit Service 1d8f1c
GType hseparator_get_type (void) G_GNUC_CONST;
Packit Service 1d8f1c
#define CANDIDATE_PANEL_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TYPE_CANDIDATE_PANEL, CandidatePanelPrivate))
Packit Service 1d8f1c
CandidatePanel* candidate_panel_new (void);
Packit Service 1d8f1c
CandidatePanel* candidate_panel_construct (GType object_type);
Packit Service 1d8f1c
static gboolean __lambda13_ (CandidatePanel* self,
Packit Service 1d8f1c
                      GtkWidget* w,
Packit Service 1d8f1c
                      GdkEventButton* e);
Packit Service 1d8f1c
void candidate_panel_set_vertical (CandidatePanel* self,
Packit Service 1d8f1c
                                   gboolean vertical);
Packit Service 1d8f1c
static gboolean ___lambda13__gtk_widget_button_press_event (GtkWidget* _sender,
Packit Service 1d8f1c
                                                     GdkEventButton* event,
Packit Service 1d8f1c
                                                     gpointer self);
Packit Service 1d8f1c
static void __lambda14_ (CandidatePanel* self,
Packit Service 1d8f1c
                  GtkWidget* w,
Packit Service 1d8f1c
                  GtkAllocation* a);
Packit Service 1d8f1c
static void candidate_panel_adjust_window_position (CandidatePanel* self);
Packit Service 1d8f1c
static void ___lambda14__gtk_widget_size_allocate (GtkWidget* _sender,
Packit Service 1d8f1c
                                            GtkAllocation* allocation,
Packit Service 1d8f1c
                                            gpointer self);
Packit Service 1d8f1c
GType handle_get_type (void) G_GNUC_CONST;
Packit Service 1d8f1c
Handle* handle_new (void);
Packit Service 1d8f1c
Handle* handle_construct (GType object_type);
Packit Service 1d8f1c
static void candidate_panel_create_ui (CandidatePanel* self);
Packit Service 1d8f1c
void candidate_area_set_vertical (CandidateArea* self,
Packit Service 1d8f1c
                                  gboolean vertical,
Packit Service 1d8f1c
                                  gboolean force);
Packit Service 1d8f1c
static void candidate_panel_set_orientation (CandidatePanel* self,
Packit Service 1d8f1c
                                      IBusOrientation orientation);
Packit Service 1d8f1c
void candidate_panel_set_cursor_location (CandidatePanel* self,
Packit Service 1d8f1c
                                          gint x,
Packit Service 1d8f1c
                                          gint y,
Packit Service 1d8f1c
                                          gint width,
Packit Service 1d8f1c
                                          gint height);
Packit Service 1d8f1c
static gboolean _cairo_rectangle_int_equal (const cairo_rectangle_int_t * s1,
Packit Service 1d8f1c
                                     const cairo_rectangle_int_t * s2);
Packit Service 1d8f1c
static void candidate_panel_set_labels (CandidatePanel* self,
Packit Service 1d8f1c
                                 IBusText** labels,
Packit Service 1d8f1c
                                 int labels_length1);
Packit Service 1d8f1c
void candidate_area_set_labels (CandidateArea* self,
Packit Service 1d8f1c
                                IBusText** labels,
Packit Service 1d8f1c
                                int labels_length1);
Packit Service 1d8f1c
static void candidate_panel_set_attributes (CandidatePanel* self,
Packit Service 1d8f1c
                                     GtkLabel* label,
Packit Service 1d8f1c
                                     IBusText* text);
Packit Service 1d8f1c
PangoAttrList* get_pango_attr_list_from_ibus_text (IBusText* text);
Packit Service 1d8f1c
void candidate_panel_set_preedit_text (CandidatePanel* self,
Packit Service 1d8f1c
                                       IBusText* text,
Packit Service 1d8f1c
                                       guint cursor);
Packit Service 1d8f1c
static void candidate_panel_update (CandidatePanel* self);
Packit Service 1d8f1c
void candidate_panel_set_auxiliary_text (CandidatePanel* self,
Packit Service 1d8f1c
                                         IBusText* text);
Packit Service 1d8f1c
void candidate_panel_set_lookup_table (CandidatePanel* self,
Packit Service 1d8f1c
                                       IBusLookupTable* table);
Packit Service 1d8f1c
static void _vala_array_add8 (IBusText** * array,
Packit Service 1d8f1c
                       int* length,
Packit Service 1d8f1c
                       int* size,
Packit Service 1d8f1c
                       IBusText* value);
Packit Service 1d8f1c
static void _vala_array_add9 (IBusText** * array,
Packit Service 1d8f1c
                       int* length,
Packit Service 1d8f1c
                       int* size,
Packit Service 1d8f1c
                       IBusText* value);
Packit Service 1d8f1c
void candidate_area_set_candidates (CandidateArea* self,
Packit Service 1d8f1c
                                    IBusText** candidates,
Packit Service 1d8f1c
                                    int candidates_length1,
Packit Service 1d8f1c
                                    guint focus_candidate,
Packit Service 1d8f1c
                                    gboolean show_cursor);
Packit Service 1d8f1c
void candidate_panel_set_content_type (CandidatePanel* self,
Packit Service 1d8f1c
                                       guint purpose,
Packit Service 1d8f1c
                                       guint hints);
Packit Service 1d8f1c
CandidateArea* candidate_area_new (gboolean vertical);
Packit Service 1d8f1c
CandidateArea* candidate_area_construct (GType object_type,
Packit Service 1d8f1c
                                         gboolean vertical);
Packit Service 1d8f1c
static void __lambda15_ (CandidatePanel* self,
Packit Service 1d8f1c
                  CandidateArea* w,
Packit Service 1d8f1c
                  guint i,
Packit Service 1d8f1c
                  guint b,
Packit Service 1d8f1c
                  guint s);
Packit Service 1d8f1c
static void ___lambda15__candidate_area_candidate_clicked (CandidateArea* _sender,
Packit Service 1d8f1c
                                                    guint index,
Packit Service 1d8f1c
                                                    guint button,
Packit Service 1d8f1c
                                                    guint state,
Packit Service 1d8f1c
                                                    gpointer self);
Packit Service 1d8f1c
static void __lambda16_ (CandidatePanel* self,
Packit Service 1d8f1c
                  CandidateArea* c);
Packit Service 1d8f1c
static void ___lambda16__candidate_area_page_up (CandidateArea* _sender,
Packit Service 1d8f1c
                                          gpointer self);
Packit Service 1d8f1c
static void __lambda17_ (CandidatePanel* self,
Packit Service 1d8f1c
                  CandidateArea* c);
Packit Service 1d8f1c
static void ___lambda17__candidate_area_page_down (CandidateArea* _sender,
Packit Service 1d8f1c
                                            gpointer self);
Packit Service 1d8f1c
static void __lambda18_ (CandidatePanel* self,
Packit Service 1d8f1c
                  CandidateArea* c);
Packit Service 1d8f1c
static void ___lambda18__candidate_area_cursor_up (CandidateArea* _sender,
Packit Service 1d8f1c
                                            gpointer self);
Packit Service 1d8f1c
static void __lambda19_ (CandidatePanel* self,
Packit Service 1d8f1c
                  CandidateArea* c);
Packit Service 1d8f1c
static void ___lambda19__candidate_area_cursor_down (CandidateArea* _sender,
Packit Service 1d8f1c
                                              gpointer self);
Packit Service 1d8f1c
HSeparator* hseparator_new (void);
Packit Service 1d8f1c
HSeparator* hseparator_construct (GType object_type);
Packit Service 1d8f1c
static void candidate_panel_pack_all_widgets (CandidatePanel* self);
Packit Service 1d8f1c
void candidate_panel_show (CandidatePanel* self);
Packit Service 1d8f1c
void candidate_panel_hide (CandidatePanel* self);
Packit Service 1d8f1c
static void candidate_panel_move (CandidatePanel* self,
Packit Service 1d8f1c
                           gint x,
Packit Service 1d8f1c
                           gint y);
Packit Service 1d8f1c
static void candidate_panel_adjust_window_position_horizontal (CandidatePanel* self);
Packit Service 1d8f1c
static void candidate_panel_adjust_window_position_vertical (CandidatePanel* self);
Packit Service 1d8f1c
static void candidate_panel_get_monitor_geometry (CandidatePanel* self,
Packit Service 1d8f1c
                                           GdkRectangle* result);
Packit Service 1d8f1c
gboolean candidate_area_get_vertical (CandidateArea* self);
Packit Service 1d8f1c
static void g_cclosure_user_marshal_VOID__UINT_UINT_UINT (GClosure * closure,
Packit Service 1d8f1c
                                                   GValue * return_value,
Packit Service 1d8f1c
                                                   guint n_param_values,
Packit Service 1d8f1c
                                                   const GValue * param_values,
Packit Service 1d8f1c
                                                   gpointer invocation_hint,
Packit Service 1d8f1c
                                                   gpointer marshal_data);
Packit Service 1d8f1c
static void candidate_panel_finalize (GObject * obj);
Packit Service 1d8f1c
static void _vala_array_destroy (gpointer array,
Packit Service 1d8f1c
                          gint array_length,
Packit Service 1d8f1c
                          GDestroyNotify destroy_func);
Packit Service 1d8f1c
static void _vala_array_free (gpointer array,
Packit Service 1d8f1c
                       gint array_length,
Packit Service 1d8f1c
                       GDestroyNotify destroy_func);
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
static gboolean
Packit Service 1d8f1c
__lambda13_ (CandidatePanel* self,
Packit Service 1d8f1c
             GtkWidget* w,
Packit Service 1d8f1c
             GdkEventButton* e)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	gboolean result = FALSE;
Packit Service 1d8f1c
	gboolean _tmp0_ = FALSE;
Packit Service 1d8f1c
	guint _tmp1_;
Packit Service 1d8f1c
	gboolean _tmp3_;
Packit Service 1d8f1c
	g_return_val_if_fail (w != NULL, FALSE);
Packit Service 1d8f1c
	g_return_val_if_fail (e != NULL, FALSE);
Packit Service 1d8f1c
	_tmp1_ = e->button;
Packit Service 1d8f1c
	if (_tmp1_ != ((guint) 1)) {
Packit Service 1d8f1c
		_tmp0_ = TRUE;
Packit Service 1d8f1c
	} else {
Packit Service 1d8f1c
		GdkModifierType _tmp2_;
Packit Service 1d8f1c
		_tmp2_ = e->state;
Packit Service 1d8f1c
		_tmp0_ = (_tmp2_ & GDK_CONTROL_MASK) == 0;
Packit Service 1d8f1c
	}
Packit Service 1d8f1c
	if (_tmp0_) {
Packit Service 1d8f1c
		result = FALSE;
Packit Service 1d8f1c
		return result;
Packit Service 1d8f1c
	}
Packit Service 1d8f1c
	_tmp3_ = self->priv->m_vertical_panel_system;
Packit Service 1d8f1c
	candidate_panel_set_vertical (self, !_tmp3_);
Packit Service 1d8f1c
	result = TRUE;
Packit Service 1d8f1c
	return result;
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
static gboolean
Packit Service 1d8f1c
___lambda13__gtk_widget_button_press_event (GtkWidget* _sender,
Packit Service 1d8f1c
                                            GdkEventButton* event,
Packit Service 1d8f1c
                                            gpointer self)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	gboolean result;
Packit Service 1d8f1c
	result = __lambda13_ ((CandidatePanel*) self, _sender, event);
Packit Service 1d8f1c
	return result;
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
static void
Packit Service 1d8f1c
__lambda14_ (CandidatePanel* self,
Packit Service 1d8f1c
             GtkWidget* w,
Packit Service 1d8f1c
             GtkAllocation* a)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	g_return_if_fail (w != NULL);
Packit Service 1d8f1c
	g_return_if_fail (a != NULL);
Packit Service 1d8f1c
	candidate_panel_adjust_window_position (self);
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
static void
Packit Service 1d8f1c
___lambda14__gtk_widget_size_allocate (GtkWidget* _sender,
Packit Service 1d8f1c
                                       GtkAllocation* allocation,
Packit Service 1d8f1c
                                       gpointer self)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	__lambda14_ ((CandidatePanel*) self, _sender, allocation);
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
CandidatePanel*
Packit Service 1d8f1c
candidate_panel_construct (GType object_type)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	CandidatePanel * self = NULL;
Packit Service 1d8f1c
	GtkWindow* _tmp0_;
Packit Service 1d8f1c
	GtkWindow* _tmp1_;
Packit Service 1d8f1c
	GtkWindow* _tmp2_;
Packit Service 1d8f1c
	GtkWindow* _tmp3_;
Packit Service 1d8f1c
	Handle* handle = NULL;
Packit Service 1d8f1c
	Handle* _tmp4_;
Packit Service 1d8f1c
	GtkBox* _tmp5_;
Packit Service 1d8f1c
	GtkBox* _tmp6_;
Packit Service 1d8f1c
	GtkBox* _tmp7_;
Packit Service 1d8f1c
	GtkWindow* _tmp8_;
Packit Service 1d8f1c
	self = (CandidatePanel*) g_object_new (object_type, "name", "IBusCandidate", "orientation", GTK_ORIENTATION_HORIZONTAL, "visible", TRUE, NULL);
Packit Service 1d8f1c
	_tmp0_ = (GtkWindow*) gtk_window_new (GTK_WINDOW_POPUP);
Packit Service 1d8f1c
	g_object_ref_sink (_tmp0_);
Packit Service 1d8f1c
	_g_object_unref0 (self->priv->m_toplevel);
Packit Service 1d8f1c
	self->priv->m_toplevel = _tmp0_;
Packit Service 1d8f1c
	_tmp1_ = self->priv->m_toplevel;
Packit Service 1d8f1c
	gtk_widget_add_events ((GtkWidget*) _tmp1_, (gint) GDK_BUTTON_PRESS_MASK);
Packit Service 1d8f1c
	_tmp2_ = self->priv->m_toplevel;
Packit Service 1d8f1c
	g_signal_connect_object ((GtkWidget*) _tmp2_, "button-press-event", (GCallback) ___lambda13__gtk_widget_button_press_event, self, 0);
Packit Service 1d8f1c
	_tmp3_ = self->priv->m_toplevel;
Packit Service 1d8f1c
	g_signal_connect_object ((GtkWidget*) _tmp3_, "size-allocate", (GCallback) ___lambda14__gtk_widget_size_allocate, self, 0);
Packit Service 1d8f1c
	_tmp4_ = handle_new ();
Packit Service 1d8f1c
	g_object_ref_sink (_tmp4_);
Packit Service 1d8f1c
	handle = _tmp4_;
Packit Service 1d8f1c
	gtk_widget_set_visible ((GtkWidget*) handle, TRUE);
Packit Service 1d8f1c
	gtk_box_pack_start ((GtkBox*) self, (GtkWidget*) handle, FALSE, FALSE, (guint) 0);
Packit Service 1d8f1c
	_tmp5_ = (GtkBox*) gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
Packit Service 1d8f1c
	g_object_ref_sink (_tmp5_);
Packit Service 1d8f1c
	_g_object_unref0 (self->priv->m_vbox);
Packit Service 1d8f1c
	self->priv->m_vbox = _tmp5_;
Packit Service 1d8f1c
	_tmp6_ = self->priv->m_vbox;
Packit Service 1d8f1c
	gtk_widget_set_visible ((GtkWidget*) _tmp6_, TRUE);
Packit Service 1d8f1c
	_tmp7_ = self->priv->m_vbox;
Packit Service 1d8f1c
	gtk_box_pack_start ((GtkBox*) self, (GtkWidget*) _tmp7_, FALSE, FALSE, (guint) 0);
Packit Service 1d8f1c
	_tmp8_ = self->priv->m_toplevel;
Packit Service 1d8f1c
	gtk_container_add ((GtkContainer*) _tmp8_, (GtkWidget*) self);
Packit Service 1d8f1c
	candidate_panel_create_ui (self);
Packit Service 1d8f1c
	_g_object_unref0 (handle);
Packit Service 1d8f1c
	return self;
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
CandidatePanel*
Packit Service 1d8f1c
candidate_panel_new (void)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	return candidate_panel_construct (TYPE_CANDIDATE_PANEL);
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
void
Packit Service 1d8f1c
candidate_panel_set_vertical (CandidatePanel* self,
Packit Service 1d8f1c
                              gboolean vertical)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	gboolean _tmp0_;
Packit Service 1d8f1c
	CandidateArea* _tmp1_;
Packit Service 1d8f1c
	g_return_if_fail (self != NULL);
Packit Service 1d8f1c
	_tmp0_ = self->priv->m_vertical_panel_system;
Packit Service 1d8f1c
	if (_tmp0_ == vertical) {
Packit Service 1d8f1c
		return;
Packit Service 1d8f1c
	}
Packit Service 1d8f1c
	self->priv->m_vertical_panel_system = vertical;
Packit Service 1d8f1c
	_tmp1_ = self->priv->m_candidate_area;
Packit Service 1d8f1c
	candidate_area_set_vertical (_tmp1_, vertical, FALSE);
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
static void
Packit Service 1d8f1c
candidate_panel_set_orientation (CandidatePanel* self,
Packit Service 1d8f1c
                                 IBusOrientation orientation)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	g_return_if_fail (self != NULL);
Packit Service 1d8f1c
	switch (orientation) {
Packit Service 1d8f1c
		case IBUS_ORIENTATION_VERTICAL:
Packit Service 1d8f1c
		{
Packit Service 1d8f1c
			CandidateArea* _tmp0_;
Packit Service 1d8f1c
			_tmp0_ = self->priv->m_candidate_area;
Packit Service 1d8f1c
			candidate_area_set_vertical (_tmp0_, TRUE, FALSE);
Packit Service 1d8f1c
			break;
Packit Service 1d8f1c
		}
Packit Service 1d8f1c
		case IBUS_ORIENTATION_HORIZONTAL:
Packit Service 1d8f1c
		{
Packit Service 1d8f1c
			CandidateArea* _tmp1_;
Packit Service 1d8f1c
			_tmp1_ = self->priv->m_candidate_area;
Packit Service 1d8f1c
			candidate_area_set_vertical (_tmp1_, FALSE, FALSE);
Packit Service 1d8f1c
			break;
Packit Service 1d8f1c
		}
Packit Service 1d8f1c
		case IBUS_ORIENTATION_SYSTEM:
Packit Service 1d8f1c
		{
Packit Service 1d8f1c
			CandidateArea* _tmp2_;
Packit Service 1d8f1c
			gboolean _tmp3_;
Packit Service 1d8f1c
			_tmp2_ = self->priv->m_candidate_area;
Packit Service 1d8f1c
			_tmp3_ = self->priv->m_vertical_panel_system;
Packit Service 1d8f1c
			candidate_area_set_vertical (_tmp2_, _tmp3_, FALSE);
Packit Service 1d8f1c
			break;
Packit Service 1d8f1c
		}
Packit Service 1d8f1c
		default:
Packit Service 1d8f1c
		break;
Packit Service 1d8f1c
	}
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
static gboolean
Packit Service 1d8f1c
_cairo_rectangle_int_equal (const cairo_rectangle_int_t * s1,
Packit Service 1d8f1c
                            const cairo_rectangle_int_t * s2)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	if (s1 == s2) {
Packit Service 1d8f1c
		return TRUE;
Packit Service 1d8f1c
	}
Packit Service 1d8f1c
	if (s1 == NULL) {
Packit Service 1d8f1c
		return FALSE;
Packit Service 1d8f1c
	}
Packit Service 1d8f1c
	if (s2 == NULL) {
Packit Service 1d8f1c
		return FALSE;
Packit Service 1d8f1c
	}
Packit Service 1d8f1c
	if (s1->x != s2->x) {
Packit Service 1d8f1c
		return FALSE;
Packit Service 1d8f1c
	}
Packit Service 1d8f1c
	if (s1->y != s2->y) {
Packit Service 1d8f1c
		return FALSE;
Packit Service 1d8f1c
	}
Packit Service 1d8f1c
	if (s1->width != s2->width) {
Packit Service 1d8f1c
		return FALSE;
Packit Service 1d8f1c
	}
Packit Service 1d8f1c
	if (s1->height != s2->height) {
Packit Service 1d8f1c
		return FALSE;
Packit Service 1d8f1c
	}
Packit Service 1d8f1c
	return TRUE;
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
void
Packit Service 1d8f1c
candidate_panel_set_cursor_location (CandidatePanel* self,
Packit Service 1d8f1c
                                     gint x,
Packit Service 1d8f1c
                                     gint y,
Packit Service 1d8f1c
                                     gint width,
Packit Service 1d8f1c
                                     gint height)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	GdkRectangle location = {0};
Packit Service 1d8f1c
	GdkRectangle _tmp0_ = {0};
Packit Service 1d8f1c
	GdkRectangle _tmp1_;
Packit Service 1d8f1c
	GdkRectangle _tmp2_;
Packit Service 1d8f1c
	GdkRectangle _tmp3_;
Packit Service 1d8f1c
	g_return_if_fail (self != NULL);
Packit Service 1d8f1c
	memset (&_tmp0_, 0, sizeof (GdkRectangle));
Packit Service 1d8f1c
	_tmp0_.x = x;
Packit Service 1d8f1c
	_tmp0_.y = y;
Packit Service 1d8f1c
	_tmp0_.width = width;
Packit Service 1d8f1c
	_tmp0_.height = height;
Packit Service 1d8f1c
	location = _tmp0_;
Packit Service 1d8f1c
	_tmp1_ = self->priv->m_cursor_location;
Packit Service 1d8f1c
	_tmp2_ = location;
Packit Service 1d8f1c
	if (_cairo_rectangle_int_equal (&_tmp1_, &_tmp2_) == TRUE) {
Packit Service 1d8f1c
		return;
Packit Service 1d8f1c
	}
Packit Service 1d8f1c
	_tmp3_ = location;
Packit Service 1d8f1c
	self->priv->m_cursor_location = _tmp3_;
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
static void
Packit Service 1d8f1c
candidate_panel_set_labels (CandidatePanel* self,
Packit Service 1d8f1c
                            IBusText** labels,
Packit Service 1d8f1c
                            int labels_length1)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	CandidateArea* _tmp0_;
Packit Service 1d8f1c
	g_return_if_fail (self != NULL);
Packit Service 1d8f1c
	_tmp0_ = self->priv->m_candidate_area;
Packit Service 1d8f1c
	candidate_area_set_labels (_tmp0_, labels, labels_length1);
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
static gpointer
Packit Service 1d8f1c
_g_object_ref0 (gpointer self)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	return self ? g_object_ref (self) : NULL;
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
static void
Packit Service 1d8f1c
candidate_panel_set_attributes (CandidatePanel* self,
Packit Service 1d8f1c
                                GtkLabel* label,
Packit Service 1d8f1c
                                IBusText* text)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	PangoAttrList* attrs = NULL;
Packit Service 1d8f1c
	PangoAttrList* _tmp0_;
Packit Service 1d8f1c
	GtkStyleContext* context = NULL;
Packit Service 1d8f1c
	GtkStyleContext* _tmp1_;
Packit Service 1d8f1c
	GtkStyleContext* _tmp2_;
Packit Service 1d8f1c
	GdkRGBA color = {0};
Packit Service 1d8f1c
	GtkStyleContext* _tmp3_;
Packit Service 1d8f1c
	GdkRGBA _tmp4_ = {0};
Packit Service 1d8f1c
	gboolean _tmp5_;
Packit Service 1d8f1c
	PangoAttrList* _tmp20_;
Packit Service 1d8f1c
	g_return_if_fail (self != NULL);
Packit Service 1d8f1c
	g_return_if_fail (label != NULL);
Packit Service 1d8f1c
	g_return_if_fail (text != NULL);
Packit Service 1d8f1c
	_tmp0_ = get_pango_attr_list_from_ibus_text (text);
Packit Service 1d8f1c
	attrs = _tmp0_;
Packit Service 1d8f1c
	_tmp1_ = gtk_widget_get_style_context ((GtkWidget*) label);
Packit Service 1d8f1c
	_tmp2_ = _g_object_ref0 (_tmp1_);
Packit Service 1d8f1c
	context = _tmp2_;
Packit Service 1d8f1c
	_tmp3_ = context;
Packit Service 1d8f1c
	_tmp5_ = gtk_style_context_lookup_color (_tmp3_, "placeholder_text_color", &_tmp4_);
Packit Service 1d8f1c
	color = _tmp4_;
Packit Service 1d8f1c
	if (_tmp5_) {
Packit Service 1d8f1c
		PangoAttribute* pango_attr = NULL;
Packit Service 1d8f1c
		GdkRGBA _tmp6_;
Packit Service 1d8f1c
		gdouble _tmp7_;
Packit Service 1d8f1c
		GdkRGBA _tmp8_;
Packit Service 1d8f1c
		gdouble _tmp9_;
Packit Service 1d8f1c
		GdkRGBA _tmp10_;
Packit Service 1d8f1c
		gdouble _tmp11_;
Packit Service 1d8f1c
		PangoAttribute* _tmp12_;
Packit Service 1d8f1c
		PangoAttribute* _tmp13_;
Packit Service 1d8f1c
		PangoAttribute* _tmp14_;
Packit Service 1d8f1c
		const gchar* _tmp15_;
Packit Service 1d8f1c
		gint _tmp16_;
Packit Service 1d8f1c
		gint _tmp17_;
Packit Service 1d8f1c
		PangoAttrList* _tmp18_;
Packit Service 1d8f1c
		PangoAttribute* _tmp19_;
Packit Service 1d8f1c
		_tmp6_ = color;
Packit Service 1d8f1c
		_tmp7_ = _tmp6_.red;
Packit Service 1d8f1c
		_tmp8_ = color;
Packit Service 1d8f1c
		_tmp9_ = _tmp8_.green;
Packit Service 1d8f1c
		_tmp10_ = color;
Packit Service 1d8f1c
		_tmp11_ = _tmp10_.blue;
Packit Service 1d8f1c
		_tmp12_ = pango_attr_foreground_new ((guint16) (_tmp7_ * G_MAXUINT16), (guint16) (_tmp9_ * G_MAXUINT16), (guint16) (_tmp11_ * G_MAXUINT16));
Packit Service 1d8f1c
		pango_attr = _tmp12_;
Packit Service 1d8f1c
		_tmp13_ = pango_attr;
Packit Service 1d8f1c
		_tmp13_->start_index = (guint) 0;
Packit Service 1d8f1c
		_tmp14_ = pango_attr;
Packit Service 1d8f1c
		_tmp15_ = gtk_label_get_text (label);
Packit Service 1d8f1c
		_tmp16_ = strlen (_tmp15_);
Packit Service 1d8f1c
		_tmp17_ = _tmp16_;
Packit Service 1d8f1c
		_tmp14_->end_index = (guint) _tmp17_;
Packit Service 1d8f1c
		_tmp18_ = attrs;
Packit Service 1d8f1c
		_tmp19_ = pango_attr;
Packit Service 1d8f1c
		pango_attr = NULL;
Packit Service 1d8f1c
		pango_attr_list_insert (_tmp18_, _tmp19_);
Packit Service 1d8f1c
		_pango_attribute_destroy0 (pango_attr);
Packit Service 1d8f1c
	}
Packit Service 1d8f1c
	_tmp20_ = attrs;
Packit Service 1d8f1c
	gtk_label_set_attributes (label, _tmp20_);
Packit Service 1d8f1c
	_g_object_unref0 (context);
Packit Service 1d8f1c
	_pango_attr_list_unref0 (attrs);
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
void
Packit Service 1d8f1c
candidate_panel_set_preedit_text (CandidatePanel* self,
Packit Service 1d8f1c
                                  IBusText* text,
Packit Service 1d8f1c
                                  guint cursor)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	g_return_if_fail (self != NULL);
Packit Service 1d8f1c
	if (text != NULL) {
Packit Service 1d8f1c
		gchar* str = NULL;
Packit Service 1d8f1c
		const gchar* _tmp0_;
Packit Service 1d8f1c
		gchar* _tmp1_;
Packit Service 1d8f1c
		const gchar* _tmp2_;
Packit Service 1d8f1c
		gint _tmp3_;
Packit Service 1d8f1c
		gint _tmp4_;
Packit Service 1d8f1c
		_tmp0_ = ibus_text_get_text (text);
Packit Service 1d8f1c
		_tmp1_ = g_strdup (_tmp0_);
Packit Service 1d8f1c
		str = _tmp1_;
Packit Service 1d8f1c
		_tmp2_ = str;
Packit Service 1d8f1c
		_tmp3_ = strlen (_tmp2_);
Packit Service 1d8f1c
		_tmp4_ = _tmp3_;
Packit Service 1d8f1c
		if (_tmp4_ > 0) {
Packit Service 1d8f1c
			GtkLabel* _tmp5_;
Packit Service 1d8f1c
			const gchar* _tmp6_;
Packit Service 1d8f1c
			GtkLabel* _tmp7_;
Packit Service 1d8f1c
			GtkLabel* _tmp8_;
Packit Service 1d8f1c
			_tmp5_ = self->priv->m_preedit_label;
Packit Service 1d8f1c
			_tmp6_ = str;
Packit Service 1d8f1c
			gtk_label_set_text (_tmp5_, _tmp6_);
Packit Service 1d8f1c
			_tmp7_ = self->priv->m_preedit_label;
Packit Service 1d8f1c
			gtk_widget_show ((GtkWidget*) _tmp7_);
Packit Service 1d8f1c
			_tmp8_ = self->priv->m_preedit_label;
Packit Service 1d8f1c
			candidate_panel_set_attributes (self, _tmp8_, text);
Packit Service 1d8f1c
		} else {
Packit Service 1d8f1c
			GtkLabel* _tmp9_;
Packit Service 1d8f1c
			GtkLabel* _tmp10_;
Packit Service 1d8f1c
			_tmp9_ = self->priv->m_preedit_label;
Packit Service 1d8f1c
			gtk_label_set_text (_tmp9_, "");
Packit Service 1d8f1c
			_tmp10_ = self->priv->m_preedit_label;
Packit Service 1d8f1c
			gtk_widget_hide ((GtkWidget*) _tmp10_);
Packit Service 1d8f1c
		}
Packit Service 1d8f1c
		_g_free0 (str);
Packit Service 1d8f1c
	} else {
Packit Service 1d8f1c
		GtkLabel* _tmp11_;
Packit Service 1d8f1c
		GtkLabel* _tmp12_;
Packit Service 1d8f1c
		_tmp11_ = self->priv->m_preedit_label;
Packit Service 1d8f1c
		gtk_label_set_text (_tmp11_, "");
Packit Service 1d8f1c
		_tmp12_ = self->priv->m_preedit_label;
Packit Service 1d8f1c
		gtk_widget_hide ((GtkWidget*) _tmp12_);
Packit Service 1d8f1c
	}
Packit Service 1d8f1c
	candidate_panel_update (self);
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
void
Packit Service 1d8f1c
candidate_panel_set_auxiliary_text (CandidatePanel* self,
Packit Service 1d8f1c
                                    IBusText* text)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	g_return_if_fail (self != NULL);
Packit Service 1d8f1c
	if (text != NULL) {
Packit Service 1d8f1c
		GtkLabel* _tmp0_;
Packit Service 1d8f1c
		const gchar* _tmp1_;
Packit Service 1d8f1c
		PangoAttrList* attrs = NULL;
Packit Service 1d8f1c
		PangoAttrList* _tmp2_;
Packit Service 1d8f1c
		GtkLabel* _tmp3_;
Packit Service 1d8f1c
		PangoAttrList* _tmp4_;
Packit Service 1d8f1c
		GtkLabel* _tmp5_;
Packit Service 1d8f1c
		_tmp0_ = self->priv->m_aux_label;
Packit Service 1d8f1c
		_tmp1_ = ibus_text_get_text (text);
Packit Service 1d8f1c
		gtk_label_set_text (_tmp0_, _tmp1_);
Packit Service 1d8f1c
		_tmp2_ = get_pango_attr_list_from_ibus_text (text);
Packit Service 1d8f1c
		attrs = _tmp2_;
Packit Service 1d8f1c
		_tmp3_ = self->priv->m_aux_label;
Packit Service 1d8f1c
		_tmp4_ = attrs;
Packit Service 1d8f1c
		gtk_label_set_attributes (_tmp3_, _tmp4_);
Packit Service 1d8f1c
		_tmp5_ = self->priv->m_aux_label;
Packit Service 1d8f1c
		gtk_widget_show ((GtkWidget*) _tmp5_);
Packit Service 1d8f1c
		_pango_attr_list_unref0 (attrs);
Packit Service 1d8f1c
	} else {
Packit Service 1d8f1c
		GtkLabel* _tmp6_;
Packit Service 1d8f1c
		GtkLabel* _tmp7_;
Packit Service 1d8f1c
		_tmp6_ = self->priv->m_aux_label;
Packit Service 1d8f1c
		gtk_label_set_text (_tmp6_, "");
Packit Service 1d8f1c
		_tmp7_ = self->priv->m_aux_label;
Packit Service 1d8f1c
		gtk_widget_hide ((GtkWidget*) _tmp7_);
Packit Service 1d8f1c
	}
Packit Service 1d8f1c
	candidate_panel_update (self);
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
static void
Packit Service 1d8f1c
_vala_array_add8 (IBusText** * array,
Packit Service 1d8f1c
                  int* length,
Packit Service 1d8f1c
                  int* size,
Packit Service 1d8f1c
                  IBusText* value)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	if ((*length) == (*size)) {
Packit Service 1d8f1c
		*size = (*size) ? (2 * (*size)) : 4;
Packit Service 1d8f1c
		*array = g_renew (IBusText*, *array, (*size) + 1);
Packit Service 1d8f1c
	}
Packit Service 1d8f1c
	(*array)[(*length)++] = value;
Packit Service 1d8f1c
	(*array)[*length] = NULL;
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
static void
Packit Service 1d8f1c
_vala_array_add9 (IBusText** * array,
Packit Service 1d8f1c
                  int* length,
Packit Service 1d8f1c
                  int* size,
Packit Service 1d8f1c
                  IBusText* value)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	if ((*length) == (*size)) {
Packit Service 1d8f1c
		*size = (*size) ? (2 * (*size)) : 4;
Packit Service 1d8f1c
		*array = g_renew (IBusText*, *array, (*size) + 1);
Packit Service 1d8f1c
	}
Packit Service 1d8f1c
	(*array)[(*length)++] = value;
Packit Service 1d8f1c
	(*array)[*length] = NULL;
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
void
Packit Service 1d8f1c
candidate_panel_set_lookup_table (CandidatePanel* self,
Packit Service 1d8f1c
                                  IBusLookupTable* table)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	IBusText** candidates = NULL;
Packit Service 1d8f1c
	IBusText** _tmp0_;
Packit Service 1d8f1c
	gint candidates_length1;
Packit Service 1d8f1c
	gint _candidates_size_;
Packit Service 1d8f1c
	guint cursor_in_page = 0U;
Packit Service 1d8f1c
	gboolean show_cursor = FALSE;
Packit Service 1d8f1c
	IBusText** labels = NULL;
Packit Service 1d8f1c
	IBusText** _tmp1_;
Packit Service 1d8f1c
	gint labels_length1;
Packit Service 1d8f1c
	gint _labels_size_;
Packit Service 1d8f1c
	IBusOrientation orientation = 0;
Packit Service 1d8f1c
	CandidateArea* _tmp28_;
Packit Service 1d8f1c
	IBusText** _tmp29_;
Packit Service 1d8f1c
	gint _tmp29__length1;
Packit Service 1d8f1c
	guint _tmp30_;
Packit Service 1d8f1c
	gboolean _tmp31_;
Packit Service 1d8f1c
	IBusText** _tmp32_;
Packit Service 1d8f1c
	gint _tmp32__length1;
Packit Service 1d8f1c
	IBusText** _tmp34_;
Packit Service 1d8f1c
	gint _tmp34__length1;
Packit Service 1d8f1c
	g_return_if_fail (self != NULL);
Packit Service 1d8f1c
	_tmp0_ = g_new0 (IBusText*, 0 + 1);
Packit Service 1d8f1c
	candidates = _tmp0_;
Packit Service 1d8f1c
	candidates_length1 = 0;
Packit Service 1d8f1c
	_candidates_size_ = candidates_length1;
Packit Service 1d8f1c
	cursor_in_page = (guint) 0;
Packit Service 1d8f1c
	show_cursor = TRUE;
Packit Service 1d8f1c
	_tmp1_ = g_new0 (IBusText*, 0 + 1);
Packit Service 1d8f1c
	labels = _tmp1_;
Packit Service 1d8f1c
	labels_length1 = 0;
Packit Service 1d8f1c
	_labels_size_ = labels_length1;
Packit Service 1d8f1c
	orientation = IBUS_ORIENTATION_SYSTEM;
Packit Service 1d8f1c
	if (table != NULL) {
Packit Service 1d8f1c
		guint page_size = 0U;
Packit Service 1d8f1c
		guint ncandidates = 0U;
Packit Service 1d8f1c
		guint cursor = 0U;
Packit Service 1d8f1c
		guint page_start_pos = 0U;
Packit Service 1d8f1c
		guint _tmp2_;
Packit Service 1d8f1c
		guint _tmp3_;
Packit Service 1d8f1c
		guint _tmp4_;
Packit Service 1d8f1c
		guint page_end_pos = 0U;
Packit Service 1d8f1c
		guint _tmp5_;
Packit Service 1d8f1c
		guint _tmp6_;
Packit Service 1d8f1c
		guint _tmp7_;
Packit Service 1d8f1c
		page_size = ibus_lookup_table_get_page_size (table);
Packit Service 1d8f1c
		ncandidates = ibus_lookup_table_get_number_of_candidates (table);
Packit Service 1d8f1c
		cursor = ibus_lookup_table_get_cursor_pos (table);
Packit Service 1d8f1c
		cursor_in_page = ibus_lookup_table_get_cursor_in_page (table);
Packit Service 1d8f1c
		show_cursor = ibus_lookup_table_is_cursor_visible (table);
Packit Service 1d8f1c
		_tmp2_ = cursor;
Packit Service 1d8f1c
		_tmp3_ = page_size;
Packit Service 1d8f1c
		_tmp4_ = page_size;
Packit Service 1d8f1c
		page_start_pos = (_tmp2_ / _tmp3_) * _tmp4_;
Packit Service 1d8f1c
		_tmp5_ = page_start_pos;
Packit Service 1d8f1c
		_tmp6_ = page_size;
Packit Service 1d8f1c
		_tmp7_ = ncandidates;
Packit Service 1d8f1c
		page_end_pos = MIN (_tmp5_ + _tmp6_, _tmp7_);
Packit Service 1d8f1c
		{
Packit Service 1d8f1c
			guint i = 0U;
Packit Service 1d8f1c
			guint _tmp8_;
Packit Service 1d8f1c
			_tmp8_ = page_start_pos;
Packit Service 1d8f1c
			i = _tmp8_;
Packit Service 1d8f1c
			{
Packit Service 1d8f1c
				gboolean _tmp9_ = FALSE;
Packit Service 1d8f1c
				_tmp9_ = TRUE;
Packit Service 1d8f1c
				while (TRUE) {
Packit Service 1d8f1c
					guint _tmp11_;
Packit Service 1d8f1c
					guint _tmp12_;
Packit Service 1d8f1c
					IBusText** _tmp13_;
Packit Service 1d8f1c
					gint _tmp13__length1;
Packit Service 1d8f1c
					guint _tmp14_;
Packit Service 1d8f1c
					IBusText* _tmp15_;
Packit Service 1d8f1c
					IBusText* _tmp16_;
Packit Service 1d8f1c
					if (!_tmp9_) {
Packit Service 1d8f1c
						guint _tmp10_;
Packit Service 1d8f1c
						_tmp10_ = i;
Packit Service 1d8f1c
						i = _tmp10_ + 1;
Packit Service 1d8f1c
					}
Packit Service 1d8f1c
					_tmp9_ = FALSE;
Packit Service 1d8f1c
					_tmp11_ = i;
Packit Service 1d8f1c
					_tmp12_ = page_end_pos;
Packit Service 1d8f1c
					if (!(_tmp11_ < _tmp12_)) {
Packit Service 1d8f1c
						break;
Packit Service 1d8f1c
					}
Packit Service 1d8f1c
					_tmp13_ = candidates;
Packit Service 1d8f1c
					_tmp13__length1 = candidates_length1;
Packit Service 1d8f1c
					_tmp14_ = i;
Packit Service 1d8f1c
					_tmp15_ = ibus_lookup_table_get_candidate (table, _tmp14_);
Packit Service 1d8f1c
					_tmp16_ = _g_object_ref0 (_tmp15_);
Packit Service 1d8f1c
					_vala_array_add8 (&candidates, &candidates_length1, &_candidates_size_, _tmp16_);
Packit Service 1d8f1c
				}
Packit Service 1d8f1c
			}
Packit Service 1d8f1c
		}
Packit Service 1d8f1c
		{
Packit Service 1d8f1c
			guint i = 0U;
Packit Service 1d8f1c
			i = (guint) 0;
Packit Service 1d8f1c
			{
Packit Service 1d8f1c
				gboolean _tmp17_ = FALSE;
Packit Service 1d8f1c
				_tmp17_ = TRUE;
Packit Service 1d8f1c
				while (TRUE) {
Packit Service 1d8f1c
					guint _tmp19_;
Packit Service 1d8f1c
					guint _tmp20_;
Packit Service 1d8f1c
					IBusText* label = NULL;
Packit Service 1d8f1c
					guint _tmp21_;
Packit Service 1d8f1c
					IBusText* _tmp22_;
Packit Service 1d8f1c
					IBusText* _tmp23_;
Packit Service 1d8f1c
					IBusText* _tmp24_;
Packit Service 1d8f1c
					if (!_tmp17_) {
Packit Service 1d8f1c
						guint _tmp18_;
Packit Service 1d8f1c
						_tmp18_ = i;
Packit Service 1d8f1c
						i = _tmp18_ + 1;
Packit Service 1d8f1c
					}
Packit Service 1d8f1c
					_tmp17_ = FALSE;
Packit Service 1d8f1c
					_tmp19_ = i;
Packit Service 1d8f1c
					_tmp20_ = page_size;
Packit Service 1d8f1c
					if (!(_tmp19_ < _tmp20_)) {
Packit Service 1d8f1c
						break;
Packit Service 1d8f1c
					}
Packit Service 1d8f1c
					_tmp21_ = i;
Packit Service 1d8f1c
					_tmp22_ = ibus_lookup_table_get_label (table, _tmp21_);
Packit Service 1d8f1c
					_tmp23_ = _g_object_ref0 (_tmp22_);
Packit Service 1d8f1c
					label = _tmp23_;
Packit Service 1d8f1c
					_tmp24_ = label;
Packit Service 1d8f1c
					if (_tmp24_ != NULL) {
Packit Service 1d8f1c
						IBusText** _tmp25_;
Packit Service 1d8f1c
						gint _tmp25__length1;
Packit Service 1d8f1c
						IBusText* _tmp26_;
Packit Service 1d8f1c
						IBusText* _tmp27_;
Packit Service 1d8f1c
						_tmp25_ = labels;
Packit Service 1d8f1c
						_tmp25__length1 = labels_length1;
Packit Service 1d8f1c
						_tmp26_ = label;
Packit Service 1d8f1c
						_tmp27_ = _g_object_ref0 (_tmp26_);
Packit Service 1d8f1c
						_vala_array_add9 (&labels, &labels_length1, &_labels_size_, _tmp27_);
Packit Service 1d8f1c
					}
Packit Service 1d8f1c
					_g_object_unref0 (label);
Packit Service 1d8f1c
				}
Packit Service 1d8f1c
			}
Packit Service 1d8f1c
		}
Packit Service 1d8f1c
		orientation = (IBusOrientation) ibus_lookup_table_get_orientation (table);
Packit Service 1d8f1c
	}
Packit Service 1d8f1c
	_tmp28_ = self->priv->m_candidate_area;
Packit Service 1d8f1c
	_tmp29_ = candidates;
Packit Service 1d8f1c
	_tmp29__length1 = candidates_length1;
Packit Service 1d8f1c
	_tmp30_ = cursor_in_page;
Packit Service 1d8f1c
	_tmp31_ = show_cursor;
Packit Service 1d8f1c
	candidate_area_set_candidates (_tmp28_, _tmp29_, _tmp29__length1, _tmp30_, _tmp31_);
Packit Service 1d8f1c
	_tmp32_ = labels;
Packit Service 1d8f1c
	_tmp32__length1 = labels_length1;
Packit Service 1d8f1c
	candidate_panel_set_labels (self, _tmp32_, _tmp32__length1);
Packit Service 1d8f1c
	if (table != NULL) {
Packit Service 1d8f1c
		IBusOrientation _tmp33_;
Packit Service 1d8f1c
		_tmp33_ = orientation;
Packit Service 1d8f1c
		candidate_panel_set_orientation (self, _tmp33_);
Packit Service 1d8f1c
	}
Packit Service 1d8f1c
	_tmp34_ = candidates;
Packit Service 1d8f1c
	_tmp34__length1 = candidates_length1;
Packit Service 1d8f1c
	if (_tmp34__length1 != 0) {
Packit Service 1d8f1c
		CandidateArea* _tmp35_;
Packit Service 1d8f1c
		_tmp35_ = self->priv->m_candidate_area;
Packit Service 1d8f1c
		gtk_widget_show_all ((GtkWidget*) _tmp35_);
Packit Service 1d8f1c
	} else {
Packit Service 1d8f1c
		CandidateArea* _tmp36_;
Packit Service 1d8f1c
		_tmp36_ = self->priv->m_candidate_area;
Packit Service 1d8f1c
		gtk_widget_hide ((GtkWidget*) _tmp36_);
Packit Service 1d8f1c
	}
Packit Service 1d8f1c
	candidate_panel_update (self);
Packit Service 1d8f1c
	labels = (_vala_array_free (labels, labels_length1, (GDestroyNotify) g_object_unref), NULL);
Packit Service 1d8f1c
	candidates = (_vala_array_free (candidates, candidates_length1, (GDestroyNotify) g_object_unref), NULL);
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
void
Packit Service 1d8f1c
candidate_panel_set_content_type (CandidatePanel* self,
Packit Service 1d8f1c
                                  guint purpose,
Packit Service 1d8f1c
                                  guint hints)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	g_return_if_fail (self != NULL);
Packit Service 1d8f1c
	self->priv->m_vertical_writing = (hints & IBUS_INPUT_HINT_VERTICAL_WRITING) != ((guint) 0);
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
static void
Packit Service 1d8f1c
candidate_panel_update (CandidatePanel* self)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	GtkWindow* _tmp0_;
Packit Service 1d8f1c
	gboolean _tmp1_ = FALSE;
Packit Service 1d8f1c
	gboolean _tmp2_ = FALSE;
Packit Service 1d8f1c
	CandidateArea* _tmp3_;
Packit Service 1d8f1c
	gboolean _tmp8_ = FALSE;
Packit Service 1d8f1c
	GtkLabel* _tmp9_;
Packit Service 1d8f1c
	g_return_if_fail (self != NULL);
Packit Service 1d8f1c
	_tmp0_ = self->priv->m_toplevel;
Packit Service 1d8f1c
	gtk_window_resize (_tmp0_, 1, 1);
Packit Service 1d8f1c
	_tmp3_ = self->priv->m_candidate_area;
Packit Service 1d8f1c
	if (gtk_widget_get_visible ((GtkWidget*) _tmp3_)) {
Packit Service 1d8f1c
		_tmp2_ = TRUE;
Packit Service 1d8f1c
	} else {
Packit Service 1d8f1c
		GtkLabel* _tmp4_;
Packit Service 1d8f1c
		_tmp4_ = self->priv->m_preedit_label;
Packit Service 1d8f1c
		_tmp2_ = gtk_widget_get_visible ((GtkWidget*) _tmp4_);
Packit Service 1d8f1c
	}
Packit Service 1d8f1c
	if (_tmp2_) {
Packit Service 1d8f1c
		_tmp1_ = TRUE;
Packit Service 1d8f1c
	} else {
Packit Service 1d8f1c
		GtkLabel* _tmp5_;
Packit Service 1d8f1c
		_tmp5_ = self->priv->m_aux_label;
Packit Service 1d8f1c
		_tmp1_ = gtk_widget_get_visible ((GtkWidget*) _tmp5_);
Packit Service 1d8f1c
	}
Packit Service 1d8f1c
	if (_tmp1_) {
Packit Service 1d8f1c
		GtkWindow* _tmp6_;
Packit Service 1d8f1c
		_tmp6_ = self->priv->m_toplevel;
Packit Service 1d8f1c
		gtk_widget_show ((GtkWidget*) _tmp6_);
Packit Service 1d8f1c
	} else {
Packit Service 1d8f1c
		GtkWindow* _tmp7_;
Packit Service 1d8f1c
		_tmp7_ = self->priv->m_toplevel;
Packit Service 1d8f1c
		gtk_widget_hide ((GtkWidget*) _tmp7_);
Packit Service 1d8f1c
	}
Packit Service 1d8f1c
	_tmp9_ = self->priv->m_aux_label;
Packit Service 1d8f1c
	if (gtk_widget_get_visible ((GtkWidget*) _tmp9_)) {
Packit Service 1d8f1c
		gboolean _tmp10_ = FALSE;
Packit Service 1d8f1c
		CandidateArea* _tmp11_;
Packit Service 1d8f1c
		_tmp11_ = self->priv->m_candidate_area;
Packit Service 1d8f1c
		if (gtk_widget_get_visible ((GtkWidget*) _tmp11_)) {
Packit Service 1d8f1c
			_tmp10_ = TRUE;
Packit Service 1d8f1c
		} else {
Packit Service 1d8f1c
			GtkLabel* _tmp12_;
Packit Service 1d8f1c
			_tmp12_ = self->priv->m_preedit_label;
Packit Service 1d8f1c
			_tmp10_ = gtk_widget_get_visible ((GtkWidget*) _tmp12_);
Packit Service 1d8f1c
		}
Packit Service 1d8f1c
		_tmp8_ = _tmp10_;
Packit Service 1d8f1c
	} else {
Packit Service 1d8f1c
		_tmp8_ = FALSE;
Packit Service 1d8f1c
	}
Packit Service 1d8f1c
	if (_tmp8_) {
Packit Service 1d8f1c
		HSeparator* _tmp13_;
Packit Service 1d8f1c
		_tmp13_ = self->priv->m_hseparator;
Packit Service 1d8f1c
		gtk_widget_show ((GtkWidget*) _tmp13_);
Packit Service 1d8f1c
	} else {
Packit Service 1d8f1c
		HSeparator* _tmp14_;
Packit Service 1d8f1c
		_tmp14_ = self->priv->m_hseparator;
Packit Service 1d8f1c
		gtk_widget_hide ((GtkWidget*) _tmp14_);
Packit Service 1d8f1c
	}
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
static void
Packit Service 1d8f1c
__lambda15_ (CandidatePanel* self,
Packit Service 1d8f1c
             CandidateArea* w,
Packit Service 1d8f1c
             guint i,
Packit Service 1d8f1c
             guint b,
Packit Service 1d8f1c
             guint s)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	g_return_if_fail (w != NULL);
Packit Service 1d8f1c
	g_signal_emit (self, candidate_panel_signals[CANDIDATE_PANEL_CANDIDATE_CLICKED_SIGNAL], 0, i, b, s);
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
static void
Packit Service 1d8f1c
___lambda15__candidate_area_candidate_clicked (CandidateArea* _sender,
Packit Service 1d8f1c
                                               guint index,
Packit Service 1d8f1c
                                               guint button,
Packit Service 1d8f1c
                                               guint state,
Packit Service 1d8f1c
                                               gpointer self)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	__lambda15_ ((CandidatePanel*) self, _sender, index, button, state);
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
static void
Packit Service 1d8f1c
__lambda16_ (CandidatePanel* self,
Packit Service 1d8f1c
             CandidateArea* c)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	g_return_if_fail (c != NULL);
Packit Service 1d8f1c
	g_signal_emit (self, candidate_panel_signals[CANDIDATE_PANEL_PAGE_UP_SIGNAL], 0);
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
static void
Packit Service 1d8f1c
___lambda16__candidate_area_page_up (CandidateArea* _sender,
Packit Service 1d8f1c
                                     gpointer self)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	__lambda16_ ((CandidatePanel*) self, _sender);
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
static void
Packit Service 1d8f1c
__lambda17_ (CandidatePanel* self,
Packit Service 1d8f1c
             CandidateArea* c)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	g_return_if_fail (c != NULL);
Packit Service 1d8f1c
	g_signal_emit (self, candidate_panel_signals[CANDIDATE_PANEL_PAGE_DOWN_SIGNAL], 0);
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
static void
Packit Service 1d8f1c
___lambda17__candidate_area_page_down (CandidateArea* _sender,
Packit Service 1d8f1c
                                       gpointer self)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	__lambda17_ ((CandidatePanel*) self, _sender);
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
static void
Packit Service 1d8f1c
__lambda18_ (CandidatePanel* self,
Packit Service 1d8f1c
             CandidateArea* c)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	g_return_if_fail (c != NULL);
Packit Service 1d8f1c
	g_signal_emit (self, candidate_panel_signals[CANDIDATE_PANEL_CURSOR_UP_SIGNAL], 0);
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
static void
Packit Service 1d8f1c
___lambda18__candidate_area_cursor_up (CandidateArea* _sender,
Packit Service 1d8f1c
                                       gpointer self)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	__lambda18_ ((CandidatePanel*) self, _sender);
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
static void
Packit Service 1d8f1c
__lambda19_ (CandidatePanel* self,
Packit Service 1d8f1c
             CandidateArea* c)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	g_return_if_fail (c != NULL);
Packit Service 1d8f1c
	g_signal_emit (self, candidate_panel_signals[CANDIDATE_PANEL_CURSOR_DOWN_SIGNAL], 0);
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
static void
Packit Service 1d8f1c
___lambda19__candidate_area_cursor_down (CandidateArea* _sender,
Packit Service 1d8f1c
                                         gpointer self)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	__lambda19_ ((CandidatePanel*) self, _sender);
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
static void
Packit Service 1d8f1c
candidate_panel_create_ui (CandidatePanel* self)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	GtkLabel* _tmp0_;
Packit Service 1d8f1c
	GtkLabel* _tmp1_;
Packit Service 1d8f1c
	GtkLabel* _tmp2_;
Packit Service 1d8f1c
	GtkLabel* _tmp3_;
Packit Service 1d8f1c
	GtkLabel* _tmp4_;
Packit Service 1d8f1c
	GtkLabel* _tmp5_;
Packit Service 1d8f1c
	GtkLabel* _tmp6_;
Packit Service 1d8f1c
	GtkLabel* _tmp7_;
Packit Service 1d8f1c
	GtkLabel* _tmp8_;
Packit Service 1d8f1c
	GtkLabel* _tmp9_;
Packit Service 1d8f1c
	GtkLabel* _tmp10_;
Packit Service 1d8f1c
	GtkLabel* _tmp11_;
Packit Service 1d8f1c
	gboolean _tmp12_;
Packit Service 1d8f1c
	CandidateArea* _tmp13_;
Packit Service 1d8f1c
	CandidateArea* _tmp14_;
Packit Service 1d8f1c
	CandidateArea* _tmp15_;
Packit Service 1d8f1c
	CandidateArea* _tmp16_;
Packit Service 1d8f1c
	CandidateArea* _tmp17_;
Packit Service 1d8f1c
	CandidateArea* _tmp18_;
Packit Service 1d8f1c
	HSeparator* _tmp19_;
Packit Service 1d8f1c
	HSeparator* _tmp20_;
Packit Service 1d8f1c
	g_return_if_fail (self != NULL);
Packit Service 1d8f1c
	_tmp0_ = (GtkLabel*) gtk_label_new (NULL);
Packit Service 1d8f1c
	g_object_ref_sink (_tmp0_);
Packit Service 1d8f1c
	_g_object_unref0 (self->priv->m_preedit_label);
Packit Service 1d8f1c
	self->priv->m_preedit_label = _tmp0_;
Packit Service 1d8f1c
	_tmp1_ = self->priv->m_preedit_label;
Packit Service 1d8f1c
	gtk_widget_set_size_request ((GtkWidget*) _tmp1_, 20, -1);
Packit Service 1d8f1c
	_tmp2_ = self->priv->m_preedit_label;
Packit Service 1d8f1c
	gtk_widget_set_halign ((GtkWidget*) _tmp2_, GTK_ALIGN_START);
Packit Service 1d8f1c
	_tmp3_ = self->priv->m_preedit_label;
Packit Service 1d8f1c
	gtk_widget_set_valign ((GtkWidget*) _tmp3_, GTK_ALIGN_CENTER);
Packit Service 1d8f1c
	_tmp4_ = self->priv->m_preedit_label;
Packit Service 1d8f1c
	gtk_misc_set_padding ((GtkMisc*) _tmp4_, 8, 0);
Packit Service 1d8f1c
	_tmp5_ = self->priv->m_preedit_label;
Packit Service 1d8f1c
	gtk_widget_set_no_show_all ((GtkWidget*) _tmp5_, TRUE);
Packit Service 1d8f1c
	_tmp6_ = (GtkLabel*) gtk_label_new (NULL);
Packit Service 1d8f1c
	g_object_ref_sink (_tmp6_);
Packit Service 1d8f1c
	_g_object_unref0 (self->priv->m_aux_label);
Packit Service 1d8f1c
	self->priv->m_aux_label = _tmp6_;
Packit Service 1d8f1c
	_tmp7_ = self->priv->m_aux_label;
Packit Service 1d8f1c
	gtk_widget_set_size_request ((GtkWidget*) _tmp7_, 20, -1);
Packit Service 1d8f1c
	_tmp8_ = self->priv->m_aux_label;
Packit Service 1d8f1c
	gtk_widget_set_halign ((GtkWidget*) _tmp8_, GTK_ALIGN_START);
Packit Service 1d8f1c
	_tmp9_ = self->priv->m_aux_label;
Packit Service 1d8f1c
	gtk_widget_set_valign ((GtkWidget*) _tmp9_, GTK_ALIGN_CENTER);
Packit Service 1d8f1c
	_tmp10_ = self->priv->m_aux_label;
Packit Service 1d8f1c
	gtk_misc_set_padding ((GtkMisc*) _tmp10_, 8, 0);
Packit Service 1d8f1c
	_tmp11_ = self->priv->m_aux_label;
Packit Service 1d8f1c
	gtk_widget_set_no_show_all ((GtkWidget*) _tmp11_, TRUE);
Packit Service 1d8f1c
	_tmp12_ = self->priv->m_vertical_panel_system;
Packit Service 1d8f1c
	_tmp13_ = candidate_area_new (_tmp12_);
Packit Service 1d8f1c
	g_object_ref_sink (_tmp13_);
Packit Service 1d8f1c
	_g_object_unref0 (self->priv->m_candidate_area);
Packit Service 1d8f1c
	self->priv->m_candidate_area = _tmp13_;
Packit Service 1d8f1c
	_tmp14_ = self->priv->m_candidate_area;
Packit Service 1d8f1c
	g_signal_connect_object (_tmp14_, "candidate-clicked", (GCallback) ___lambda15__candidate_area_candidate_clicked, self, 0);
Packit Service 1d8f1c
	_tmp15_ = self->priv->m_candidate_area;
Packit Service 1d8f1c
	g_signal_connect_object (_tmp15_, "page-up", (GCallback) ___lambda16__candidate_area_page_up, self, 0);
Packit Service 1d8f1c
	_tmp16_ = self->priv->m_candidate_area;
Packit Service 1d8f1c
	g_signal_connect_object (_tmp16_, "page-down", (GCallback) ___lambda17__candidate_area_page_down, self, 0);
Packit Service 1d8f1c
	_tmp17_ = self->priv->m_candidate_area;
Packit Service 1d8f1c
	g_signal_connect_object (_tmp17_, "cursor-up", (GCallback) ___lambda18__candidate_area_cursor_up, self, 0);
Packit Service 1d8f1c
	_tmp18_ = self->priv->m_candidate_area;
Packit Service 1d8f1c
	g_signal_connect_object (_tmp18_, "cursor-down", (GCallback) ___lambda19__candidate_area_cursor_down, self, 0);
Packit Service 1d8f1c
	_tmp19_ = hseparator_new ();
Packit Service 1d8f1c
	g_object_ref_sink (_tmp19_);
Packit Service 1d8f1c
	_g_object_unref0 (self->priv->m_hseparator);
Packit Service 1d8f1c
	self->priv->m_hseparator = _tmp19_;
Packit Service 1d8f1c
	_tmp20_ = self->priv->m_hseparator;
Packit Service 1d8f1c
	gtk_widget_set_visible ((GtkWidget*) _tmp20_, TRUE);
Packit Service 1d8f1c
	candidate_panel_pack_all_widgets (self);
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
static void
Packit Service 1d8f1c
candidate_panel_pack_all_widgets (CandidatePanel* self)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	GtkBox* _tmp0_;
Packit Service 1d8f1c
	GtkLabel* _tmp1_;
Packit Service 1d8f1c
	GtkBox* _tmp2_;
Packit Service 1d8f1c
	GtkLabel* _tmp3_;
Packit Service 1d8f1c
	GtkBox* _tmp4_;
Packit Service 1d8f1c
	HSeparator* _tmp5_;
Packit Service 1d8f1c
	GtkBox* _tmp6_;
Packit Service 1d8f1c
	CandidateArea* _tmp7_;
Packit Service 1d8f1c
	g_return_if_fail (self != NULL);
Packit Service 1d8f1c
	_tmp0_ = self->priv->m_vbox;
Packit Service 1d8f1c
	_tmp1_ = self->priv->m_preedit_label;
Packit Service 1d8f1c
	gtk_box_pack_start (_tmp0_, (GtkWidget*) _tmp1_, FALSE, FALSE, (guint) 4);
Packit Service 1d8f1c
	_tmp2_ = self->priv->m_vbox;
Packit Service 1d8f1c
	_tmp3_ = self->priv->m_aux_label;
Packit Service 1d8f1c
	gtk_box_pack_start (_tmp2_, (GtkWidget*) _tmp3_, FALSE, FALSE, (guint) 4);
Packit Service 1d8f1c
	_tmp4_ = self->priv->m_vbox;
Packit Service 1d8f1c
	_tmp5_ = self->priv->m_hseparator;
Packit Service 1d8f1c
	gtk_box_pack_start (_tmp4_, (GtkWidget*) _tmp5_, FALSE, FALSE, (guint) 0);
Packit Service 1d8f1c
	_tmp6_ = self->priv->m_vbox;
Packit Service 1d8f1c
	_tmp7_ = self->priv->m_candidate_area;
Packit Service 1d8f1c
	gtk_box_pack_start (_tmp6_, (GtkWidget*) _tmp7_, FALSE, FALSE, (guint) 0);
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
void
Packit Service 1d8f1c
candidate_panel_show (CandidatePanel* self)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	GtkWindow* _tmp0_;
Packit Service 1d8f1c
	g_return_if_fail (self != NULL);
Packit Service 1d8f1c
	_tmp0_ = self->priv->m_toplevel;
Packit Service 1d8f1c
	gtk_widget_show_all ((GtkWidget*) _tmp0_);
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
void
Packit Service 1d8f1c
candidate_panel_hide (CandidatePanel* self)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	GtkWindow* _tmp0_;
Packit Service 1d8f1c
	g_return_if_fail (self != NULL);
Packit Service 1d8f1c
	_tmp0_ = self->priv->m_toplevel;
Packit Service 1d8f1c
	gtk_widget_hide ((GtkWidget*) _tmp0_);
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
static void
Packit Service 1d8f1c
candidate_panel_move (CandidatePanel* self,
Packit Service 1d8f1c
                      gint x,
Packit Service 1d8f1c
                      gint y)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	GtkWindow* _tmp0_;
Packit Service 1d8f1c
	g_return_if_fail (self != NULL);
Packit Service 1d8f1c
	_tmp0_ = self->priv->m_toplevel;
Packit Service 1d8f1c
	gtk_window_move (_tmp0_, x, y);
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
static void
Packit Service 1d8f1c
candidate_panel_adjust_window_position (CandidatePanel* self)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	gboolean _tmp0_;
Packit Service 1d8f1c
	g_return_if_fail (self != NULL);
Packit Service 1d8f1c
	_tmp0_ = self->priv->m_vertical_writing;
Packit Service 1d8f1c
	if (!_tmp0_) {
Packit Service 1d8f1c
		candidate_panel_adjust_window_position_horizontal (self);
Packit Service 1d8f1c
	} else {
Packit Service 1d8f1c
		candidate_panel_adjust_window_position_vertical (self);
Packit Service 1d8f1c
	}
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
static void
Packit Service 1d8f1c
candidate_panel_get_monitor_geometry (CandidatePanel* self,
Packit Service 1d8f1c
                                      GdkRectangle* result)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	GdkRectangle monitor_area = {0};
Packit Service 1d8f1c
	GdkRectangle _tmp0_ = {0};
Packit Service 1d8f1c
	GdkMonitor* monitor = NULL;
Packit Service 1d8f1c
	GdkDisplay* _tmp1_;
Packit Service 1d8f1c
	GdkRectangle _tmp2_;
Packit Service 1d8f1c
	gint _tmp3_;
Packit Service 1d8f1c
	GdkRectangle _tmp4_;
Packit Service 1d8f1c
	gint _tmp5_;
Packit Service 1d8f1c
	GdkMonitor* _tmp6_;
Packit Service 1d8f1c
	GdkMonitor* _tmp7_;
Packit Service 1d8f1c
	GdkRectangle _tmp8_ = {0};
Packit Service 1d8f1c
	g_return_if_fail (self != NULL);
Packit Service 1d8f1c
	_tmp0_.x = 0;
Packit Service 1d8f1c
	monitor_area = _tmp0_;
Packit Service 1d8f1c
	_tmp1_ = gdk_display_get_default ();
Packit Service 1d8f1c
	_tmp2_ = self->priv->m_cursor_location;
Packit Service 1d8f1c
	_tmp3_ = _tmp2_.x;
Packit Service 1d8f1c
	_tmp4_ = self->priv->m_cursor_location;
Packit Service 1d8f1c
	_tmp5_ = _tmp4_.y;
Packit Service 1d8f1c
	_tmp6_ = gdk_display_get_monitor_at_point (_tmp1_, _tmp3_, _tmp5_);
Packit Service 1d8f1c
	_tmp7_ = _g_object_ref0 (_tmp6_);
Packit Service 1d8f1c
	monitor = _tmp7_;
Packit Service 1d8f1c
	gdk_monitor_get_geometry (monitor, &_tmp8_);
Packit Service 1d8f1c
	monitor_area = _tmp8_;
Packit Service 1d8f1c
	*result = monitor_area;
Packit Service 1d8f1c
	_g_object_unref0 (monitor);
Packit Service 1d8f1c
	return;
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
static void
Packit Service 1d8f1c
candidate_panel_adjust_window_position_horizontal (CandidatePanel* self)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	GdkPoint cursor_right_bottom = {0};
Packit Service 1d8f1c
	GdkRectangle _tmp0_;
Packit Service 1d8f1c
	gint _tmp1_;
Packit Service 1d8f1c
	GdkRectangle _tmp2_;
Packit Service 1d8f1c
	gint _tmp3_;
Packit Service 1d8f1c
	GdkRectangle _tmp4_;
Packit Service 1d8f1c
	gint _tmp5_;
Packit Service 1d8f1c
	GdkPoint _tmp6_ = {0};
Packit Service 1d8f1c
	GtkAllocation allocation = {0};
Packit Service 1d8f1c
	GtkWindow* _tmp7_;
Packit Service 1d8f1c
	GtkAllocation _tmp8_ = {0};
Packit Service 1d8f1c
	GdkPoint window_right_bottom = {0};
Packit Service 1d8f1c
	GdkPoint _tmp9_;
Packit Service 1d8f1c
	gint _tmp10_;
Packit Service 1d8f1c
	GtkAllocation _tmp11_;
Packit Service 1d8f1c
	gint _tmp12_;
Packit Service 1d8f1c
	GdkPoint _tmp13_;
Packit Service 1d8f1c
	gint _tmp14_;
Packit Service 1d8f1c
	GtkAllocation _tmp15_;
Packit Service 1d8f1c
	gint _tmp16_;
Packit Service 1d8f1c
	GdkPoint _tmp17_ = {0};
Packit Service 1d8f1c
	GdkRectangle monitor_area = {0};
Packit Service 1d8f1c
	GdkRectangle _tmp18_ = {0};
Packit Service 1d8f1c
	gint monitor_right = 0;
Packit Service 1d8f1c
	GdkRectangle _tmp19_;
Packit Service 1d8f1c
	gint _tmp20_;
Packit Service 1d8f1c
	GdkRectangle _tmp21_;
Packit Service 1d8f1c
	gint _tmp22_;
Packit Service 1d8f1c
	gint monitor_bottom = 0;
Packit Service 1d8f1c
	GdkRectangle _tmp23_;
Packit Service 1d8f1c
	gint _tmp24_;
Packit Service 1d8f1c
	GdkRectangle _tmp25_;
Packit Service 1d8f1c
	gint _tmp26_;
Packit Service 1d8f1c
	gint x = 0;
Packit Service 1d8f1c
	gint y = 0;
Packit Service 1d8f1c
	GdkPoint _tmp27_;
Packit Service 1d8f1c
	gint _tmp28_;
Packit Service 1d8f1c
	gint _tmp29_;
Packit Service 1d8f1c
	gint _tmp35_;
Packit Service 1d8f1c
	GdkPoint _tmp36_;
Packit Service 1d8f1c
	gint _tmp37_;
Packit Service 1d8f1c
	gint _tmp38_;
Packit Service 1d8f1c
	gint _tmp45_;
Packit Service 1d8f1c
	gint _tmp46_;
Packit Service 1d8f1c
	gint _tmp47_;
Packit Service 1d8f1c
	g_return_if_fail (self != NULL);
Packit Service 1d8f1c
	_tmp0_ = self->priv->m_cursor_location;
Packit Service 1d8f1c
	_tmp1_ = _tmp0_.x;
Packit Service 1d8f1c
	_tmp2_ = self->priv->m_cursor_location;
Packit Service 1d8f1c
	_tmp3_ = _tmp2_.y;
Packit Service 1d8f1c
	_tmp4_ = self->priv->m_cursor_location;
Packit Service 1d8f1c
	_tmp5_ = _tmp4_.height;
Packit Service 1d8f1c
	_tmp6_.x = _tmp1_;
Packit Service 1d8f1c
	_tmp6_.y = _tmp3_ + _tmp5_;
Packit Service 1d8f1c
	cursor_right_bottom = _tmp6_;
Packit Service 1d8f1c
	_tmp7_ = self->priv->m_toplevel;
Packit Service 1d8f1c
	gtk_widget_get_allocation ((GtkWidget*) _tmp7_, &_tmp8_);
Packit Service 1d8f1c
	allocation = _tmp8_;
Packit Service 1d8f1c
	_tmp9_ = cursor_right_bottom;
Packit Service 1d8f1c
	_tmp10_ = _tmp9_.x;
Packit Service 1d8f1c
	_tmp11_ = allocation;
Packit Service 1d8f1c
	_tmp12_ = _tmp11_.width;
Packit Service 1d8f1c
	_tmp13_ = cursor_right_bottom;
Packit Service 1d8f1c
	_tmp14_ = _tmp13_.y;
Packit Service 1d8f1c
	_tmp15_ = allocation;
Packit Service 1d8f1c
	_tmp16_ = _tmp15_.height;
Packit Service 1d8f1c
	_tmp17_.x = _tmp10_ + _tmp12_;
Packit Service 1d8f1c
	_tmp17_.y = _tmp14_ + _tmp16_;
Packit Service 1d8f1c
	window_right_bottom = _tmp17_;
Packit Service 1d8f1c
	candidate_panel_get_monitor_geometry (self, &_tmp18_);
Packit Service 1d8f1c
	monitor_area = _tmp18_;
Packit Service 1d8f1c
	_tmp19_ = monitor_area;
Packit Service 1d8f1c
	_tmp20_ = _tmp19_.x;
Packit Service 1d8f1c
	_tmp21_ = monitor_area;
Packit Service 1d8f1c
	_tmp22_ = _tmp21_.width;
Packit Service 1d8f1c
	monitor_right = _tmp20_ + _tmp22_;
Packit Service 1d8f1c
	_tmp23_ = monitor_area;
Packit Service 1d8f1c
	_tmp24_ = _tmp23_.y;
Packit Service 1d8f1c
	_tmp25_ = monitor_area;
Packit Service 1d8f1c
	_tmp26_ = _tmp25_.height;
Packit Service 1d8f1c
	monitor_bottom = _tmp24_ + _tmp26_;
Packit Service 1d8f1c
	_tmp27_ = window_right_bottom;
Packit Service 1d8f1c
	_tmp28_ = _tmp27_.x;
Packit Service 1d8f1c
	_tmp29_ = monitor_right;
Packit Service 1d8f1c
	if (_tmp28_ > _tmp29_) {
Packit Service 1d8f1c
		gint _tmp30_;
Packit Service 1d8f1c
		GtkAllocation _tmp31_;
Packit Service 1d8f1c
		gint _tmp32_;
Packit Service 1d8f1c
		_tmp30_ = monitor_right;
Packit Service 1d8f1c
		_tmp31_ = allocation;
Packit Service 1d8f1c
		_tmp32_ = _tmp31_.width;
Packit Service 1d8f1c
		x = _tmp30_ - _tmp32_;
Packit Service 1d8f1c
	} else {
Packit Service 1d8f1c
		GdkPoint _tmp33_;
Packit Service 1d8f1c
		gint _tmp34_;
Packit Service 1d8f1c
		_tmp33_ = cursor_right_bottom;
Packit Service 1d8f1c
		_tmp34_ = _tmp33_.x;
Packit Service 1d8f1c
		x = _tmp34_;
Packit Service 1d8f1c
	}
Packit Service 1d8f1c
	_tmp35_ = x;
Packit Service 1d8f1c
	if (_tmp35_ < 0) {
Packit Service 1d8f1c
		x = 0;
Packit Service 1d8f1c
	}
Packit Service 1d8f1c
	_tmp36_ = window_right_bottom;
Packit Service 1d8f1c
	_tmp37_ = _tmp36_.y;
Packit Service 1d8f1c
	_tmp38_ = monitor_bottom;
Packit Service 1d8f1c
	if (_tmp37_ > _tmp38_) {
Packit Service 1d8f1c
		GdkRectangle _tmp39_;
Packit Service 1d8f1c
		gint _tmp40_;
Packit Service 1d8f1c
		GtkAllocation _tmp41_;
Packit Service 1d8f1c
		gint _tmp42_;
Packit Service 1d8f1c
		_tmp39_ = self->priv->m_cursor_location;
Packit Service 1d8f1c
		_tmp40_ = _tmp39_.y;
Packit Service 1d8f1c
		_tmp41_ = allocation;
Packit Service 1d8f1c
		_tmp42_ = _tmp41_.height;
Packit Service 1d8f1c
		y = _tmp40_ - _tmp42_;
Packit Service 1d8f1c
	} else {
Packit Service 1d8f1c
		GdkPoint _tmp43_;
Packit Service 1d8f1c
		gint _tmp44_;
Packit Service 1d8f1c
		_tmp43_ = cursor_right_bottom;
Packit Service 1d8f1c
		_tmp44_ = _tmp43_.y;
Packit Service 1d8f1c
		y = _tmp44_;
Packit Service 1d8f1c
	}
Packit Service 1d8f1c
	_tmp45_ = y;
Packit Service 1d8f1c
	if (_tmp45_ < 0) {
Packit Service 1d8f1c
		y = 0;
Packit Service 1d8f1c
	}
Packit Service 1d8f1c
	_tmp46_ = x;
Packit Service 1d8f1c
	_tmp47_ = y;
Packit Service 1d8f1c
	candidate_panel_move (self, _tmp46_, _tmp47_);
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
static void
Packit Service 1d8f1c
candidate_panel_adjust_window_position_vertical (CandidatePanel* self)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	gint char_size = 0;
Packit Service 1d8f1c
	GdkRectangle _tmp0_;
Packit Service 1d8f1c
	gint _tmp1_;
Packit Service 1d8f1c
	GdkRectangle _tmp2_;
Packit Service 1d8f1c
	gint _tmp3_;
Packit Service 1d8f1c
	GdkPoint cursor_right_bottom = {0};
Packit Service 1d8f1c
	GdkRectangle _tmp4_;
Packit Service 1d8f1c
	gint _tmp5_;
Packit Service 1d8f1c
	gint _tmp6_;
Packit Service 1d8f1c
	GdkRectangle _tmp7_;
Packit Service 1d8f1c
	gint _tmp8_;
Packit Service 1d8f1c
	gint _tmp9_;
Packit Service 1d8f1c
	GdkPoint _tmp10_ = {0};
Packit Service 1d8f1c
	GtkAllocation allocation = {0};
Packit Service 1d8f1c
	GtkWindow* _tmp11_;
Packit Service 1d8f1c
	GtkAllocation _tmp12_ = {0};
Packit Service 1d8f1c
	GdkPoint hwindow_right_bottom = {0};
Packit Service 1d8f1c
	GdkRectangle _tmp13_;
Packit Service 1d8f1c
	gint _tmp14_;
Packit Service 1d8f1c
	GtkAllocation _tmp15_;
Packit Service 1d8f1c
	gint _tmp16_;
Packit Service 1d8f1c
	GdkPoint _tmp17_;
Packit Service 1d8f1c
	gint _tmp18_;
Packit Service 1d8f1c
	GtkAllocation _tmp19_;
Packit Service 1d8f1c
	gint _tmp20_;
Packit Service 1d8f1c
	GdkPoint _tmp21_ = {0};
Packit Service 1d8f1c
	GdkPoint vwindow_left_bottom = {0};
Packit Service 1d8f1c
	GdkRectangle _tmp22_;
Packit Service 1d8f1c
	gint _tmp23_;
Packit Service 1d8f1c
	GtkAllocation _tmp24_;
Packit Service 1d8f1c
	gint _tmp25_;
Packit Service 1d8f1c
	GdkRectangle _tmp26_;
Packit Service 1d8f1c
	gint _tmp27_;
Packit Service 1d8f1c
	GtkAllocation _tmp28_;
Packit Service 1d8f1c
	gint _tmp29_;
Packit Service 1d8f1c
	GdkPoint _tmp30_ = {0};
Packit Service 1d8f1c
	GdkRectangle monitor_area = {0};
Packit Service 1d8f1c
	GdkRectangle _tmp31_ = {0};
Packit Service 1d8f1c
	gint monitor_right = 0;
Packit Service 1d8f1c
	GdkRectangle _tmp32_;
Packit Service 1d8f1c
	gint _tmp33_;
Packit Service 1d8f1c
	GdkRectangle _tmp34_;
Packit Service 1d8f1c
	gint _tmp35_;
Packit Service 1d8f1c
	gint monitor_bottom = 0;
Packit Service 1d8f1c
	GdkRectangle _tmp36_;
Packit Service 1d8f1c
	gint _tmp37_;
Packit Service 1d8f1c
	GdkRectangle _tmp38_;
Packit Service 1d8f1c
	gint _tmp39_;
Packit Service 1d8f1c
	gint x = 0;
Packit Service 1d8f1c
	gint y = 0;
Packit Service 1d8f1c
	CandidateArea* _tmp40_;
Packit Service 1d8f1c
	gint _tmp78_;
Packit Service 1d8f1c
	gint _tmp79_;
Packit Service 1d8f1c
	gint _tmp80_;
Packit Service 1d8f1c
	gint _tmp81_;
Packit Service 1d8f1c
	g_return_if_fail (self != NULL);
Packit Service 1d8f1c
	_tmp0_ = self->priv->m_cursor_location;
Packit Service 1d8f1c
	_tmp1_ = _tmp0_.width;
Packit Service 1d8f1c
	_tmp2_ = self->priv->m_cursor_location;
Packit Service 1d8f1c
	_tmp3_ = _tmp2_.height;
Packit Service 1d8f1c
	char_size = MAX (_tmp1_, _tmp3_);
Packit Service 1d8f1c
	_tmp4_ = self->priv->m_cursor_location;
Packit Service 1d8f1c
	_tmp5_ = _tmp4_.x;
Packit Service 1d8f1c
	_tmp6_ = char_size;
Packit Service 1d8f1c
	_tmp7_ = self->priv->m_cursor_location;
Packit Service 1d8f1c
	_tmp8_ = _tmp7_.y;
Packit Service 1d8f1c
	_tmp9_ = char_size;
Packit Service 1d8f1c
	_tmp10_.x = _tmp5_ + _tmp6_;
Packit Service 1d8f1c
	_tmp10_.y = _tmp8_ + _tmp9_;
Packit Service 1d8f1c
	cursor_right_bottom = _tmp10_;
Packit Service 1d8f1c
	_tmp11_ = self->priv->m_toplevel;
Packit Service 1d8f1c
	gtk_widget_get_allocation ((GtkWidget*) _tmp11_, &_tmp12_);
Packit Service 1d8f1c
	allocation = _tmp12_;
Packit Service 1d8f1c
	_tmp13_ = self->priv->m_cursor_location;
Packit Service 1d8f1c
	_tmp14_ = _tmp13_.x;
Packit Service 1d8f1c
	_tmp15_ = allocation;
Packit Service 1d8f1c
	_tmp16_ = _tmp15_.width;
Packit Service 1d8f1c
	_tmp17_ = cursor_right_bottom;
Packit Service 1d8f1c
	_tmp18_ = _tmp17_.y;
Packit Service 1d8f1c
	_tmp19_ = allocation;
Packit Service 1d8f1c
	_tmp20_ = _tmp19_.height;
Packit Service 1d8f1c
	_tmp21_.x = _tmp14_ + _tmp16_;
Packit Service 1d8f1c
	_tmp21_.y = _tmp18_ + _tmp20_;
Packit Service 1d8f1c
	hwindow_right_bottom = _tmp21_;
Packit Service 1d8f1c
	_tmp22_ = self->priv->m_cursor_location;
Packit Service 1d8f1c
	_tmp23_ = _tmp22_.x;
Packit Service 1d8f1c
	_tmp24_ = allocation;
Packit Service 1d8f1c
	_tmp25_ = _tmp24_.width;
Packit Service 1d8f1c
	_tmp26_ = self->priv->m_cursor_location;
Packit Service 1d8f1c
	_tmp27_ = _tmp26_.y;
Packit Service 1d8f1c
	_tmp28_ = allocation;
Packit Service 1d8f1c
	_tmp29_ = _tmp28_.height;
Packit Service 1d8f1c
	_tmp30_.x = _tmp23_ - _tmp25_;
Packit Service 1d8f1c
	_tmp30_.y = _tmp27_ + _tmp29_;
Packit Service 1d8f1c
	vwindow_left_bottom = _tmp30_;
Packit Service 1d8f1c
	candidate_panel_get_monitor_geometry (self, &_tmp31_);
Packit Service 1d8f1c
	monitor_area = _tmp31_;
Packit Service 1d8f1c
	_tmp32_ = monitor_area;
Packit Service 1d8f1c
	_tmp33_ = _tmp32_.x;
Packit Service 1d8f1c
	_tmp34_ = monitor_area;
Packit Service 1d8f1c
	_tmp35_ = _tmp34_.width;
Packit Service 1d8f1c
	monitor_right = _tmp33_ + _tmp35_;
Packit Service 1d8f1c
	_tmp36_ = monitor_area;
Packit Service 1d8f1c
	_tmp37_ = _tmp36_.y;
Packit Service 1d8f1c
	_tmp38_ = monitor_area;
Packit Service 1d8f1c
	_tmp39_ = _tmp38_.height;
Packit Service 1d8f1c
	monitor_bottom = _tmp37_ + _tmp39_;
Packit Service 1d8f1c
	_tmp40_ = self->priv->m_candidate_area;
Packit Service 1d8f1c
	if (!candidate_area_get_vertical (_tmp40_)) {
Packit Service 1d8f1c
		GdkPoint _tmp41_;
Packit Service 1d8f1c
		gint _tmp42_;
Packit Service 1d8f1c
		gint _tmp43_;
Packit Service 1d8f1c
		GdkPoint _tmp49_;
Packit Service 1d8f1c
		gint _tmp50_;
Packit Service 1d8f1c
		gint _tmp51_;
Packit Service 1d8f1c
		_tmp41_ = hwindow_right_bottom;
Packit Service 1d8f1c
		_tmp42_ = _tmp41_.x;
Packit Service 1d8f1c
		_tmp43_ = monitor_right;
Packit Service 1d8f1c
		if (_tmp42_ > _tmp43_) {
Packit Service 1d8f1c
			gint _tmp44_;
Packit Service 1d8f1c
			GtkAllocation _tmp45_;
Packit Service 1d8f1c
			gint _tmp46_;
Packit Service 1d8f1c
			_tmp44_ = monitor_right;
Packit Service 1d8f1c
			_tmp45_ = allocation;
Packit Service 1d8f1c
			_tmp46_ = _tmp45_.width;
Packit Service 1d8f1c
			x = _tmp44_ - _tmp46_;
Packit Service 1d8f1c
		} else {
Packit Service 1d8f1c
			GdkRectangle _tmp47_;
Packit Service 1d8f1c
			gint _tmp48_;
Packit Service 1d8f1c
			_tmp47_ = self->priv->m_cursor_location;
Packit Service 1d8f1c
			_tmp48_ = _tmp47_.x;
Packit Service 1d8f1c
			x = _tmp48_;
Packit Service 1d8f1c
		}
Packit Service 1d8f1c
		_tmp49_ = hwindow_right_bottom;
Packit Service 1d8f1c
		_tmp50_ = _tmp49_.y;
Packit Service 1d8f1c
		_tmp51_ = monitor_bottom;
Packit Service 1d8f1c
		if (_tmp50_ > _tmp51_) {
Packit Service 1d8f1c
			GdkRectangle _tmp52_;
Packit Service 1d8f1c
			gint _tmp53_;
Packit Service 1d8f1c
			GtkAllocation _tmp54_;
Packit Service 1d8f1c
			gint _tmp55_;
Packit Service 1d8f1c
			_tmp52_ = self->priv->m_cursor_location;
Packit Service 1d8f1c
			_tmp53_ = _tmp52_.y;
Packit Service 1d8f1c
			_tmp54_ = allocation;
Packit Service 1d8f1c
			_tmp55_ = _tmp54_.height;
Packit Service 1d8f1c
			y = _tmp53_ - _tmp55_;
Packit Service 1d8f1c
		} else {
Packit Service 1d8f1c
			GdkPoint _tmp56_;
Packit Service 1d8f1c
			gint _tmp57_;
Packit Service 1d8f1c
			_tmp56_ = cursor_right_bottom;
Packit Service 1d8f1c
			_tmp57_ = _tmp56_.y;
Packit Service 1d8f1c
			y = _tmp57_;
Packit Service 1d8f1c
		}
Packit Service 1d8f1c
	} else {
Packit Service 1d8f1c
		GdkPoint _tmp58_;
Packit Service 1d8f1c
		gint _tmp59_;
Packit Service 1d8f1c
		gint _tmp60_;
Packit Service 1d8f1c
		GdkPoint _tmp70_;
Packit Service 1d8f1c
		gint _tmp71_;
Packit Service 1d8f1c
		gint _tmp72_;
Packit Service 1d8f1c
		_tmp58_ = vwindow_left_bottom;
Packit Service 1d8f1c
		_tmp59_ = _tmp58_.x;
Packit Service 1d8f1c
		_tmp60_ = monitor_right;
Packit Service 1d8f1c
		if (_tmp59_ > _tmp60_) {
Packit Service 1d8f1c
			gint _tmp61_;
Packit Service 1d8f1c
			GtkAllocation _tmp62_;
Packit Service 1d8f1c
			gint _tmp63_;
Packit Service 1d8f1c
			_tmp61_ = monitor_right;
Packit Service 1d8f1c
			_tmp62_ = allocation;
Packit Service 1d8f1c
			_tmp63_ = _tmp62_.width;
Packit Service 1d8f1c
			x = _tmp61_ - _tmp63_;
Packit Service 1d8f1c
		} else {
Packit Service 1d8f1c
			GdkPoint _tmp64_;
Packit Service 1d8f1c
			gint _tmp65_;
Packit Service 1d8f1c
			_tmp64_ = vwindow_left_bottom;
Packit Service 1d8f1c
			_tmp65_ = _tmp64_.x;
Packit Service 1d8f1c
			if (_tmp65_ < 0) {
Packit Service 1d8f1c
				GdkPoint _tmp66_;
Packit Service 1d8f1c
				gint _tmp67_;
Packit Service 1d8f1c
				_tmp66_ = cursor_right_bottom;
Packit Service 1d8f1c
				_tmp67_ = _tmp66_.x;
Packit Service 1d8f1c
				x = _tmp67_;
Packit Service 1d8f1c
			} else {
Packit Service 1d8f1c
				GdkPoint _tmp68_;
Packit Service 1d8f1c
				gint _tmp69_;
Packit Service 1d8f1c
				_tmp68_ = vwindow_left_bottom;
Packit Service 1d8f1c
				_tmp69_ = _tmp68_.x;
Packit Service 1d8f1c
				x = _tmp69_;
Packit Service 1d8f1c
			}
Packit Service 1d8f1c
		}
Packit Service 1d8f1c
		_tmp70_ = vwindow_left_bottom;
Packit Service 1d8f1c
		_tmp71_ = _tmp70_.y;
Packit Service 1d8f1c
		_tmp72_ = monitor_bottom;
Packit Service 1d8f1c
		if (_tmp71_ > _tmp72_) {
Packit Service 1d8f1c
			gint _tmp73_;
Packit Service 1d8f1c
			GtkAllocation _tmp74_;
Packit Service 1d8f1c
			gint _tmp75_;
Packit Service 1d8f1c
			_tmp73_ = monitor_bottom;
Packit Service 1d8f1c
			_tmp74_ = allocation;
Packit Service 1d8f1c
			_tmp75_ = _tmp74_.height;
Packit Service 1d8f1c
			y = _tmp73_ - _tmp75_;
Packit Service 1d8f1c
		} else {
Packit Service 1d8f1c
			GdkRectangle _tmp76_;
Packit Service 1d8f1c
			gint _tmp77_;
Packit Service 1d8f1c
			_tmp76_ = self->priv->m_cursor_location;
Packit Service 1d8f1c
			_tmp77_ = _tmp76_.y;
Packit Service 1d8f1c
			y = _tmp77_;
Packit Service 1d8f1c
		}
Packit Service 1d8f1c
	}
Packit Service 1d8f1c
	_tmp78_ = x;
Packit Service 1d8f1c
	if (_tmp78_ < 0) {
Packit Service 1d8f1c
		x = 0;
Packit Service 1d8f1c
	}
Packit Service 1d8f1c
	_tmp79_ = y;
Packit Service 1d8f1c
	if (_tmp79_ < 0) {
Packit Service 1d8f1c
		y = 0;
Packit Service 1d8f1c
	}
Packit Service 1d8f1c
	_tmp80_ = x;
Packit Service 1d8f1c
	_tmp81_ = y;
Packit Service 1d8f1c
	candidate_panel_move (self, _tmp80_, _tmp81_);
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
static void
Packit Service 1d8f1c
g_cclosure_user_marshal_VOID__UINT_UINT_UINT (GClosure * closure,
Packit Service 1d8f1c
                                              GValue * return_value,
Packit Service 1d8f1c
                                              guint n_param_values,
Packit Service 1d8f1c
                                              const GValue * param_values,
Packit Service 1d8f1c
                                              gpointer invocation_hint,
Packit Service 1d8f1c
                                              gpointer marshal_data)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	typedef void (*GMarshalFunc_VOID__UINT_UINT_UINT) (gpointer data1, guint arg_1, guint arg_2, guint arg_3, gpointer data2);
Packit Service 1d8f1c
	register GMarshalFunc_VOID__UINT_UINT_UINT callback;
Packit Service 1d8f1c
	register GCClosure * cc;
Packit Service 1d8f1c
	register gpointer data1;
Packit Service 1d8f1c
	register gpointer data2;
Packit Service 1d8f1c
	cc = (GCClosure *) closure;
Packit Service 1d8f1c
	g_return_if_fail (n_param_values == 4);
Packit Service 1d8f1c
	if (G_CCLOSURE_SWAP_DATA (closure)) {
Packit Service 1d8f1c
		data1 = closure->data;
Packit Service 1d8f1c
		data2 = param_values->data[0].v_pointer;
Packit Service 1d8f1c
	} else {
Packit Service 1d8f1c
		data1 = param_values->data[0].v_pointer;
Packit Service 1d8f1c
		data2 = closure->data;
Packit Service 1d8f1c
	}
Packit Service 1d8f1c
	callback = (GMarshalFunc_VOID__UINT_UINT_UINT) (marshal_data ? marshal_data : cc->callback);
Packit Service 1d8f1c
	callback (data1, g_value_get_uint (param_values + 1), g_value_get_uint (param_values + 2), g_value_get_uint (param_values + 3), data2);
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
static void
Packit Service 1d8f1c
candidate_panel_class_init (CandidatePanelClass * klass)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	candidate_panel_parent_class = g_type_class_peek_parent (klass);
Packit Service 1d8f1c
	g_type_class_add_private (klass, sizeof (CandidatePanelPrivate));
Packit Service 1d8f1c
	G_OBJECT_CLASS (klass)->finalize = candidate_panel_finalize;
Packit Service 1d8f1c
	candidate_panel_signals[CANDIDATE_PANEL_CURSOR_UP_SIGNAL] = g_signal_new ("cursor-up", TYPE_CANDIDATE_PANEL, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);
Packit Service 1d8f1c
	candidate_panel_signals[CANDIDATE_PANEL_CURSOR_DOWN_SIGNAL] = g_signal_new ("cursor-down", TYPE_CANDIDATE_PANEL, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);
Packit Service 1d8f1c
	candidate_panel_signals[CANDIDATE_PANEL_PAGE_UP_SIGNAL] = g_signal_new ("page-up", TYPE_CANDIDATE_PANEL, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);
Packit Service 1d8f1c
	candidate_panel_signals[CANDIDATE_PANEL_PAGE_DOWN_SIGNAL] = g_signal_new ("page-down", TYPE_CANDIDATE_PANEL, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);
Packit Service 1d8f1c
	candidate_panel_signals[CANDIDATE_PANEL_CANDIDATE_CLICKED_SIGNAL] = g_signal_new ("candidate-clicked", TYPE_CANDIDATE_PANEL, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_user_marshal_VOID__UINT_UINT_UINT, G_TYPE_NONE, 3, G_TYPE_UINT, G_TYPE_UINT, G_TYPE_UINT);
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
static void
Packit Service 1d8f1c
candidate_panel_instance_init (CandidatePanel * self)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	self->priv = CANDIDATE_PANEL_GET_PRIVATE (self);
Packit Service 1d8f1c
	self->priv->m_vertical_panel_system = TRUE;
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
static void
Packit Service 1d8f1c
candidate_panel_finalize (GObject * obj)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	CandidatePanel * self;
Packit Service 1d8f1c
	self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_CANDIDATE_PANEL, CandidatePanel);
Packit Service 1d8f1c
	_g_object_unref0 (self->priv->m_toplevel);
Packit Service 1d8f1c
	_g_object_unref0 (self->priv->m_vbox);
Packit Service 1d8f1c
	_g_object_unref0 (self->priv->m_preedit_label);
Packit Service 1d8f1c
	_g_object_unref0 (self->priv->m_aux_label);
Packit Service 1d8f1c
	_g_object_unref0 (self->priv->m_candidate_area);
Packit Service 1d8f1c
	_g_object_unref0 (self->priv->m_hseparator);
Packit Service 1d8f1c
	G_OBJECT_CLASS (candidate_panel_parent_class)->finalize (obj);
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
GType
Packit Service 1d8f1c
candidate_panel_get_type (void)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	static volatile gsize candidate_panel_type_id__volatile = 0;
Packit Service 1d8f1c
	if (g_once_init_enter (&candidate_panel_type_id__volatile)) {
Packit Service 1d8f1c
		static const GTypeInfo g_define_type_info = { sizeof (CandidatePanelClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) candidate_panel_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (CandidatePanel), 0, (GInstanceInitFunc) candidate_panel_instance_init, NULL };
Packit Service 1d8f1c
		GType candidate_panel_type_id;
Packit Service 1d8f1c
		candidate_panel_type_id = g_type_register_static (gtk_box_get_type (), "CandidatePanel", &g_define_type_info, 0);
Packit Service 1d8f1c
		g_once_init_leave (&candidate_panel_type_id__volatile, candidate_panel_type_id);
Packit Service 1d8f1c
	}
Packit Service 1d8f1c
	return candidate_panel_type_id__volatile;
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
static void
Packit Service 1d8f1c
_vala_array_destroy (gpointer array,
Packit Service 1d8f1c
                     gint array_length,
Packit Service 1d8f1c
                     GDestroyNotify destroy_func)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	if ((array != NULL) && (destroy_func != NULL)) {
Packit Service 1d8f1c
		int i;
Packit Service 1d8f1c
		for (i = 0; i < array_length; i = i + 1) {
Packit Service 1d8f1c
			if (((gpointer*) array)[i] != NULL) {
Packit Service 1d8f1c
				destroy_func (((gpointer*) array)[i]);
Packit Service 1d8f1c
			}
Packit Service 1d8f1c
		}
Packit Service 1d8f1c
	}
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c
static void
Packit Service 1d8f1c
_vala_array_free (gpointer array,
Packit Service 1d8f1c
                  gint array_length,
Packit Service 1d8f1c
                  GDestroyNotify destroy_func)
Packit Service 1d8f1c
{
Packit Service 1d8f1c
	_vala_array_destroy (array, array_length, destroy_func);
Packit Service 1d8f1c
	g_free (array);
Packit Service 1d8f1c
}
Packit Service 1d8f1c
Packit Service 1d8f1c
Packit Service 1d8f1c