192
192
GtkTreePath *path;
193
193
GtkTreeIter prev_iter = *iter;
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),
198
gtk_tree_view_scroll_to_cell (completion->priv->tree_view_proposals,
201
gtk_tree_path_free (path);
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))
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.
200
212
path = gtk_tree_model_get_path (GTK_TREE_MODEL (completion->priv->model_proposals),
205
path = gtk_tree_model_get_path (GTK_TREE_MODEL (completion->priv->model_proposals),
209
gtk_tree_view_scroll_to_cell (completion->priv->tree_view_proposals,
215
gtk_tree_path_free (path);
215
gtk_tree_view_scroll_to_cell (completion->priv->tree_view_proposals,
218
gtk_tree_path_free (path);
218
222
/* Returns %TRUE if a proposal is selected.
955
959
gtk_tree_view_set_model (completion->priv->tree_view_proposals, NULL);
960
gtk_tree_view_columns_autosize (completion->priv->tree_view_proposals);
957
962
gtk_source_completion_model_set_visible_providers (completion->priv->model_proposals,
958
963
visible_providers);
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);
1208
1215
replace_model (completion);
1210
1217
for (item = providers_copy; item != NULL; item = g_list_next (item))
1365
1372
update_selection_label (completion);
1374
if (!check_first_selected (completion))
1376
update_window_position (completion);
1367
1379
if (!gtk_widget_get_visible (GTK_WIDGET (completion->priv->main_window)))
1369
1381
g_signal_emit (completion, signals[SHOW], 0);
1372
if (!check_first_selected (completion))
1374
update_window_position (completion);
2147
2154
WINDOW_HEIGHT);
2149
g_signal_connect_after (completion->priv->main_window,
2151
G_CALLBACK (gtk_source_completion_configure_event),
2156
g_signal_connect (completion->priv->main_window,
2158
G_CALLBACK (gtk_source_completion_configure_event),
2154
2161
g_signal_connect (completion->priv->main_window,
2155
2162
"delete-event",