~ubuntu-branches/ubuntu/trusty/gtksourceview3/trusty-proposed

« back to all changes in this revision

Viewing changes to gtksourceview/gtksourcecompletion.c

  • Committer: Package Import Robot
  • Author(s): Sebastien Bacher
  • Date: 2013-07-15 11:13:01 UTC
  • mfrom: (1.1.35)
  • Revision ID: package-import@ubuntu.com-20130715111301-og17vgxynxrgwl4w
Tags: 3.8.2-0ubuntu1
New upstream version

Show diffs side-by-side

added added

removed removed

Lines of Context:
192
192
        GtkTreePath *path;
193
193
        GtkTreeIter prev_iter = *iter;
194
194
 
195
 
        /* If we want to scroll to the first proposal of a provider, it's better
196
 
         * to show the header too, if there is a header. */
 
195
        path = gtk_tree_model_get_path (GTK_TREE_MODEL (completion->priv->model_proposals),
 
196
                                        iter);
 
197
 
 
198
        gtk_tree_view_scroll_to_cell (completion->priv->tree_view_proposals,
 
199
                                      path, NULL,
 
200
                                      FALSE, 0, 0);
 
201
        gtk_tree_path_free (path);
 
202
 
197
203
        if (gtk_source_completion_model_iter_previous (completion->priv->model_proposals, &prev_iter) &&
198
204
            gtk_source_completion_model_iter_is_header (completion->priv->model_proposals, &prev_iter))
199
205
        {
 
206
                /* If we want to scroll to the first proposal of a provider,
 
207
                 * it's better to show the header too, if there is a header.
 
208
                 * We first scroll to the proposal, and then to the
 
209
                 * header, so we are sure that the proposal is visible.
 
210
                 */
 
211
 
200
212
                path = gtk_tree_model_get_path (GTK_TREE_MODEL (completion->priv->model_proposals),
201
213
                                                &prev_iter);
202
 
        }
203
 
        else
204
 
        {
205
 
                path = gtk_tree_model_get_path (GTK_TREE_MODEL (completion->priv->model_proposals),
206
 
                                                iter);
207
 
        }
208
214
 
209
 
        gtk_tree_view_scroll_to_cell (completion->priv->tree_view_proposals,
210
 
                                      path,
211
 
                                      NULL,
212
 
                                      FALSE,
213
 
                                      0,
214
 
                                      0);
215
 
        gtk_tree_path_free (path);
 
215
                gtk_tree_view_scroll_to_cell (completion->priv->tree_view_proposals,
 
216
                                              path, NULL,
 
217
                                              FALSE, 0, 0);
 
218
                gtk_tree_path_free (path);
 
219
        }
216
220
}
217
221
 
218
222
/* Returns %TRUE if a proposal is selected.
953
957
        }
954
958
 
955
959
        gtk_tree_view_set_model (completion->priv->tree_view_proposals, NULL);
 
960
        gtk_tree_view_columns_autosize (completion->priv->tree_view_proposals);
956
961
 
957
962
        gtk_source_completion_model_set_visible_providers (completion->priv->model_proposals,
958
963
                                                           visible_providers);
1205
1210
 
1206
1211
        /* Create a new CompletionModel */
1207
1212
        gtk_tree_view_set_model (completion->priv->tree_view_proposals, NULL);
 
1213
        gtk_tree_view_columns_autosize (completion->priv->tree_view_proposals);
 
1214
 
1208
1215
        replace_model (completion);
1209
1216
 
1210
1217
        for (item = providers_copy; item != NULL; item = g_list_next (item))
1364
1371
 
1365
1372
        update_selection_label (completion);
1366
1373
 
 
1374
        if (!check_first_selected (completion))
 
1375
        {
 
1376
                update_window_position (completion);
 
1377
        }
 
1378
 
1367
1379
        if (!gtk_widget_get_visible (GTK_WIDGET (completion->priv->main_window)))
1368
1380
        {
1369
1381
                g_signal_emit (completion, signals[SHOW], 0);
1370
1382
        }
1371
 
 
1372
 
        if (!check_first_selected (completion))
1373
 
        {
1374
 
                update_window_position (completion);
1375
 
        }
1376
1383
}
1377
1384
 
1378
1385
static void
2146
2153
                                     WINDOW_WIDTH,
2147
2154
                                     WINDOW_HEIGHT);
2148
2155
 
2149
 
        g_signal_connect_after (completion->priv->main_window,
2150
 
                                "configure-event",
2151
 
                                G_CALLBACK (gtk_source_completion_configure_event),
2152
 
                                completion);
 
2156
        g_signal_connect (completion->priv->main_window,
 
2157
                          "configure-event",
 
2158
                          G_CALLBACK (gtk_source_completion_configure_event),
 
2159
                          completion);
2153
2160
 
2154
2161
        g_signal_connect (completion->priv->main_window,
2155
2162
                          "delete-event",