214
214
UnityWebappFetchFile* unity_webapp_fetch_file_construct (GType object_type, const char* uri);
215
215
static void unity_webapp_fetch_file_fetch_data_data_free (gpointer _data);
216
216
static void unity_webapp_fetch_file_fetch_data_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_);
217
static void unity_webapp_fetch_file_read_something_async (UnityWebappFetchFile* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
218
static void unity_webapp_fetch_file_read_something_finish (UnityWebappFetchFile* self, GAsyncResult* _res_);
217
219
void unity_webapp_fetch_file_fetch_data (UnityWebappFetchFile* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
218
220
void unity_webapp_fetch_file_fetch_data_finish (UnityWebappFetchFile* self, GAsyncResult* _res_);
219
221
static gboolean unity_webapp_fetch_file_fetch_data_co (UnityWebappFetchFileFetchDataData* data);
220
static void unity_webapp_fetch_file_read_something_async (UnityWebappFetchFile* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
221
static void unity_webapp_fetch_file_read_something_finish (UnityWebappFetchFile* self, GAsyncResult* _res_);
222
222
static void unity_webapp_fetch_file_read_something_async_data_free (gpointer _data);
223
223
static void unity_webapp_fetch_file_read_something_async_ready (GObject* source_object, GAsyncResult* _res_, gpointer _user_data_);
224
224
static gboolean unity_webapp_fetch_file_read_something_async_co (UnityWebappFetchFileReadSomethingAsyncData* data);
240
240
UnityWebappWebiconFetcher* unity_webapp_webicon_fetcher_new (const char* uri, const char* destination, const char* desktop_file);
241
241
UnityWebappWebiconFetcher* unity_webapp_webicon_fetcher_construct (GType object_type, const char* uri, const char* destination, const char* desktop_file);
242
const char* unity_webapp_webicon_fetcher_get_desktop_location (UnityWebappWebiconFetcher* self);
242
243
static void unity_webapp_webicon_fetcher_set_desktop_file_icon (UnityWebappWebiconFetcher* self, const char* iconname);
243
const char* unity_webapp_webicon_fetcher_get_desktop_location (UnityWebappWebiconFetcher* self);
244
void unity_webapp_webicon_fetcher_fetch_webapp_data (UnityWebappWebiconFetcher* self);
245
244
const char* unity_webapp_webicon_fetcher_get_uri (UnityWebappWebiconFetcher* self);
246
245
static void _lambda5_ (UnityWebappWebiconFetcher* self);
247
246
static void __lambda5__unity_webapp_fetch_file_failed (UnityWebappFetchFile* _sender, gpointer self);
248
247
static void unity_webapp_webicon_fetcher_on_fetcher_completed (UnityWebappWebiconFetcher* self, GByteArray* data);
249
248
static void _unity_webapp_webicon_fetcher_on_fetcher_completed_unity_webapp_fetch_file_completed (UnityWebappFetchFile* _sender, GByteArray* data, gpointer self);
249
void unity_webapp_webicon_fetcher_fetch_webapp_data (UnityWebappWebiconFetcher* self);
250
250
static GeePriorityQueue* unity_webapp_webicon_fetcher_extract_icon_from_html (UnityWebappWebiconFetcher* self, const char* html, gboolean preferred);
251
251
static void unity_webapp_webicon_fetcher_attempt_fetch_icon (UnityWebappWebiconFetcher* self);
252
252
const char* unity_webapp_webicon_fetcher_get_destination (UnityWebappWebiconFetcher* self);
253
static gboolean _lambda7_ (UnityWebappWebiconFetcher* self);
254
253
GType unity_shell_mode_get_type (void) G_GNUC_CONST;
255
254
GType unity_window_action_get_type (void) G_GNUC_CONST;
256
255
GType unity_shell_get_type (void) G_GNUC_CONST;
256
static gboolean _lambda7_ (UnityWebappWebiconFetcher* self);
257
257
static gboolean __lambda7__gsource_func (gpointer self);
258
258
static void unity_webapp_webicon_fetcher_on_fetcher_failed (UnityWebappWebiconFetcher* self);
259
259
static void _lambda6_ (UnityWebappWebiconFetcher* self);
527
data->_tmp0_ = g_file_read (data->self->priv->file, NULL, &data->_inner_error_);
529
data->_tmp0_ = g_file_read (data->self->priv->file, NULL, &data->_inner_error_);
530
if (data->_inner_error_ != NULL) {
531
goto __catch46_g_error;
533
data->self->priv->stream = (data->_tmp2_ = g_data_input_stream_new ((GInputStream*) (data->_tmp1_ = data->_tmp0_)), _g_object_unref0 (data->self->priv->stream), data->_tmp2_);
534
_g_object_unref0 (data->_tmp1_);
535
g_data_input_stream_set_byte_order (data->self->priv->stream, G_DATA_STREAM_BYTE_ORDER_LITTLE_ENDIAN);
540
data->e = data->_inner_error_;
541
data->_inner_error_ = NULL;
543
g_signal_emit_by_name (data->self, "failed");
544
_g_error_free0 (data->e);
528
548
if (data->_inner_error_ != NULL) {
529
goto __catch45_g_error;
531
data->self->priv->stream = (data->_tmp2_ = g_data_input_stream_new ((GInputStream*) (data->_tmp1_ = data->_tmp0_)), _g_object_unref0 (data->self->priv->stream), data->_tmp2_);
532
_g_object_unref0 (data->_tmp1_);
533
g_data_input_stream_set_byte_order (data->self->priv->stream, G_DATA_STREAM_BYTE_ORDER_LITTLE_ENDIAN);
538
data->e = data->_inner_error_;
539
data->_inner_error_ = NULL;
541
g_signal_emit_by_name (data->self, "failed");
542
_g_error_free0 (data->e);
546
if (data->_inner_error_ != NULL) {
547
g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, data->_inner_error_->message, g_quark_to_string (data->_inner_error_->domain), data->_inner_error_->code);
548
g_clear_error (&data->_inner_error_);
551
unity_webapp_fetch_file_read_something_async (data->self, NULL, NULL);
549
g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, data->_inner_error_->message, g_quark_to_string (data->_inner_error_->domain), data->_inner_error_->code);
550
g_clear_error (&data->_inner_error_);
553
unity_webapp_fetch_file_read_something_async (data->self, NULL, NULL);
553
556
if (data->_state_ == 0) {
554
557
g_simple_async_result_complete_in_idle (data->_async_result);
597
600
switch (data->_state_) {
601
606
g_assert_not_reached ();
606
data->size = (gssize) 1024;
607
data->buffer = (data->_tmp0_ = g_new0 (guint8, data->size), data->buffer_length1 = data->size, data->_buffer_size_ = data->buffer_length1, data->_tmp0_);
608
data->bufsize = (gssize) 1;
613
if (!(data->bufsize > 0)) {
617
data->_tmp1_ = FALSE;
620
g_input_stream_read_async ((GInputStream*) data->self->priv->stream, data->buffer, (gsize) data->size, G_PRIORITY_DEFAULT, NULL, unity_webapp_fetch_file_read_something_async_ready, data);
623
data->_tmp2_ = g_input_stream_read_finish ((GInputStream*) data->self->priv->stream, data->_res_, &data->_inner_error_);
610
data->size = (gssize) 1024;
611
data->buffer = (data->_tmp0_ = g_new0 (guint8, data->size), data->buffer_length1 = data->size, data->_buffer_size_ = data->buffer_length1, data->_tmp0_);
612
data->bufsize = (gssize) 1;
617
if (!(data->bufsize > 0)) {
621
data->_tmp1_ = FALSE;
624
g_input_stream_read_async ((GInputStream*) data->self->priv->stream, data->buffer, (gsize) data->size, G_PRIORITY_DEFAULT, NULL, unity_webapp_fetch_file_read_something_async_ready, data);
627
data->_tmp2_ = g_input_stream_read_finish ((GInputStream*) data->self->priv->stream, data->_res_, &data->_inner_error_);
628
if (data->_inner_error_ != NULL) {
629
goto __catch47_g_error;
631
data->bufsize = data->_tmp2_;
632
if (data->bufsize < 1) {
635
if (data->bufsize != data->size) {
636
data->cpybuf = (data->_tmp3_ = g_new0 (guint8, data->bufsize), data->cpybuf_length1 = data->bufsize, data->_cpybuf_size_ = data->cpybuf_length1, data->_tmp3_);
637
memcpy (data->cpybuf, data->buffer, (gsize) data->bufsize);
638
g_byte_array_append (data->self->priv->data, data->cpybuf, data->cpybuf_length1);
639
data->cpybuf = (g_free (data->cpybuf), NULL);
641
g_byte_array_append (data->self->priv->data, data->buffer, data->buffer_length1);
647
data->e = data->_inner_error_;
648
data->_inner_error_ = NULL;
650
g_signal_emit_by_name (data->self, "failed");
651
_g_error_free0 (data->e);
624
655
if (data->_inner_error_ != NULL) {
625
goto __catch46_g_error;
627
data->bufsize = data->_tmp2_;
628
if (data->bufsize < 1) {
631
if (data->bufsize != data->size) {
632
data->cpybuf = (data->_tmp3_ = g_new0 (guint8, data->bufsize), data->cpybuf_length1 = data->bufsize, data->_cpybuf_size_ = data->cpybuf_length1, data->_tmp3_);
633
memcpy (data->cpybuf, data->buffer, (gsize) data->bufsize);
634
g_byte_array_append (data->self->priv->data, data->cpybuf, data->cpybuf_length1);
635
data->cpybuf = (g_free (data->cpybuf), NULL);
637
g_byte_array_append (data->self->priv->data, data->buffer, data->buffer_length1);
643
data->e = data->_inner_error_;
644
data->_inner_error_ = NULL;
646
g_signal_emit_by_name (data->self, "failed");
647
_g_error_free0 (data->e);
651
if (data->_inner_error_ != NULL) {
652
data->buffer = (g_free (data->buffer), NULL);
653
g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, data->_inner_error_->message, g_quark_to_string (data->_inner_error_->domain), data->_inner_error_->code);
654
g_clear_error (&data->_inner_error_);
656
data->buffer = (g_free (data->buffer), NULL);
657
g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, data->_inner_error_->message, g_quark_to_string (data->_inner_error_->domain), data->_inner_error_->code);
658
g_clear_error (&data->_inner_error_);
663
g_signal_emit_by_name (data->self, "completed", data->self->priv->data);
664
data->buffer = (g_free (data->buffer), NULL);
659
g_signal_emit_by_name (data->self, "completed", data->self->priv->data);
660
data->buffer = (g_free (data->buffer), NULL);
662
667
if (data->_state_ == 0) {
663
668
g_simple_async_result_complete_in_idle (data->_async_result);
1034
1042
gdk_pixbuf_loader_write (loader, data->data, (gsize) data->len, &_inner_error_);
1035
1043
if (_inner_error_ != NULL) {
1036
1044
_g_object_unref0 (loader);
1037
goto __catch49_g_error;
1045
goto __catch50_g_error;
1039
1047
gdk_pixbuf_loader_close (loader, &_inner_error_);
1040
1048
if (_inner_error_ != NULL) {
1041
1049
_g_object_unref0 (loader);
1042
goto __catch49_g_error;
1050
goto __catch50_g_error;
1044
1052
icon = _g_object_ref0 (gdk_pixbuf_loader_get_pixbuf (loader));
1045
1053
gdk_pixbuf_save (icon, self->priv->_destination, "png", &_inner_error_, NULL);
1046
1054
if (_inner_error_ != NULL) {
1047
1055
_g_object_unref0 (icon);
1048
1056
_g_object_unref0 (loader);
1049
goto __catch49_g_error;
1057
goto __catch50_g_error;
1051
1059
_g_object_unref0 (icon);
1052
1060
_g_object_unref0 (loader);
1058
1066
e = _inner_error_;
1151
1159
matchinfo = NULL;
1152
1160
regex_array = (regex_array_length1 = 0, NULL);
1153
1161
if (preferred) {
1154
1163
GRegex** _tmp0_ = NULL;
1156
1164
regex_array = (_tmp1_ = (_tmp0_ = g_new0 (GRegex*, 2 + 1), _tmp0_[0] = _g_regex_ref0 (unity_webapp_primary_match_prefix), _tmp0_[1] = _g_regex_ref0 (unity_webapp_primary_match_suffix), _tmp0_), regex_array = (_vala_array_free (regex_array, regex_array_length1, (GDestroyNotify) g_regex_unref), NULL), regex_array_length1 = 2, _regex_array_size_ = regex_array_length1, _tmp1_);
1158
1167
GRegex** _tmp2_ = NULL;
1160
1168
regex_array = (_tmp3_ = (_tmp2_ = g_new0 (GRegex*, 2 + 1), _tmp2_[0] = _g_regex_ref0 (unity_webapp_secondary_match_prefix), _tmp2_[1] = _g_regex_ref0 (unity_webapp_secondary_match_suffix), _tmp2_), regex_array = (_vala_array_free (regex_array, regex_array_length1, (GDestroyNotify) g_regex_unref), NULL), regex_array_length1 = 2, _regex_array_size_ = regex_array_length1, _tmp3_);
1277
1283
GRegex* _tmp7_;
1278
1284
GRegex* _tmp8_;
1279
1285
GRegex* _tmp9_;
1280
_tmp0_ = g_regex_new (primary_match_prefix, G_REGEX_UNGREEDY, 0, &_inner_error_);
1281
if (_inner_error_ != NULL) {
1282
goto __catch50_g_error;
1284
unity_webapp_primary_match_prefix = (_tmp1_ = _tmp0_, _g_regex_unref0 (unity_webapp_primary_match_prefix), _tmp1_);
1285
_tmp2_ = g_regex_new (primary_match_suffix, G_REGEX_UNGREEDY, 0, &_inner_error_);
1286
if (_inner_error_ != NULL) {
1287
goto __catch50_g_error;
1289
unity_webapp_primary_match_suffix = (_tmp3_ = _tmp2_, _g_regex_unref0 (unity_webapp_primary_match_suffix), _tmp3_);
1290
_tmp4_ = g_regex_new (secondary_match_prefix, G_REGEX_UNGREEDY, 0, &_inner_error_);
1291
if (_inner_error_ != NULL) {
1292
goto __catch50_g_error;
1294
unity_webapp_secondary_match_prefix = (_tmp5_ = _tmp4_, _g_regex_unref0 (unity_webapp_secondary_match_prefix), _tmp5_);
1295
_tmp6_ = g_regex_new (secondary_match_suffix, G_REGEX_UNGREEDY, 0, &_inner_error_);
1296
if (_inner_error_ != NULL) {
1297
goto __catch50_g_error;
1299
unity_webapp_secondary_match_suffix = (_tmp7_ = _tmp6_, _g_regex_unref0 (unity_webapp_secondary_match_suffix), _tmp7_);
1300
_tmp8_ = g_regex_new (hostname_string, G_REGEX_UNGREEDY, 0, &_inner_error_);
1301
if (_inner_error_ != NULL) {
1302
goto __catch50_g_error;
1304
unity_webapp_hostname_match = (_tmp9_ = _tmp8_, _g_regex_unref0 (unity_webapp_hostname_match), _tmp9_);
1288
_tmp2_ = g_regex_new (primary_match_prefix, G_REGEX_UNGREEDY, 0, &_inner_error_);
1289
if (_inner_error_ != NULL) {
1290
goto __catch51_g_error;
1292
unity_webapp_primary_match_prefix = (_tmp3_ = _tmp2_, _g_regex_unref0 (unity_webapp_primary_match_prefix), _tmp3_);
1293
_tmp4_ = g_regex_new (primary_match_suffix, G_REGEX_UNGREEDY, 0, &_inner_error_);
1294
if (_inner_error_ != NULL) {
1295
goto __catch51_g_error;
1297
unity_webapp_primary_match_suffix = (_tmp5_ = _tmp4_, _g_regex_unref0 (unity_webapp_primary_match_suffix), _tmp5_);
1298
_tmp6_ = g_regex_new (secondary_match_prefix, G_REGEX_UNGREEDY, 0, &_inner_error_);
1299
if (_inner_error_ != NULL) {
1300
goto __catch51_g_error;
1302
unity_webapp_secondary_match_prefix = (_tmp7_ = _tmp6_, _g_regex_unref0 (unity_webapp_secondary_match_prefix), _tmp7_);
1303
_tmp8_ = g_regex_new (secondary_match_suffix, G_REGEX_UNGREEDY, 0, &_inner_error_);
1304
if (_inner_error_ != NULL) {
1305
goto __catch51_g_error;
1307
unity_webapp_secondary_match_suffix = (_tmp9_ = _tmp8_, _g_regex_unref0 (unity_webapp_secondary_match_suffix), _tmp9_);
1308
_tmp10_ = g_regex_new (hostname_string, G_REGEX_UNGREEDY, 0, &_inner_error_);
1309
if (_inner_error_ != NULL) {
1310
goto __catch51_g_error;
1312
unity_webapp_hostname_match = (_tmp11_ = _tmp10_, _g_regex_unref0 (unity_webapp_hostname_match), _tmp11_);
1310
1318
e = _inner_error_;
1328
1336
_g_free0 (primary_match_suffix);
1329
1337
_g_free0 (primary_match_prefix);
1331
self->priv->icon_uris = (_tmp10_ = (GeeList*) gee_array_list_new (G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, g_free, NULL), _g_object_unref0 (self->priv->icon_uris), _tmp10_);
1339
self->priv->icon_uris = (_tmp12_ = (GeeList*) gee_array_list_new (G_TYPE_STRING, (GBoxedCopyFunc) g_strdup, g_free, NULL), _g_object_unref0 (self->priv->icon_uris), _tmp12_);
1333
1341
GFile* make_file;
1334
GFileOutputStream* _tmp11_;
1342
GFileOutputStream* _tmp13_;
1335
1343
make_file = g_file_new_for_path (self->priv->_destination);
1336
_tmp11_ = g_file_create (make_file, G_FILE_CREATE_NONE, NULL, &_inner_error_);
1337
_g_object_unref0 (_tmp11_);
1344
_tmp13_ = g_file_create (make_file, G_FILE_CREATE_NONE, NULL, &_inner_error_);
1345
_g_object_unref0 (_tmp13_);
1338
1346
if (_inner_error_ != NULL) {
1339
1347
_g_object_unref0 (make_file);
1340
goto __catch51_g_error;
1348
goto __catch52_g_error;
1342
1350
_g_object_unref0 (make_file);
1348
1356
e = _inner_error_;