Branch: refs/heads/master Author: Colomban Wendling ban@herbesfolles.org Committer: Colomban Wendling ban@herbesfolles.org Date: Tue, 27 May 2014 15:55:00 UTC Commit: 46f01bff59073905a01c799219fd0118c041f9c7 https://github.com/geany/geany/commit/46f01bff59073905a01c799219fd0118c041f9...
Log Message: ----------- Properly mirror document_get_from_page() in document_get_notebook_page()
Now document_get_from_page() supports arbitrary nesting inside the notebook page, update document_get_notebook_page() to support it also, by searching up for the direct notebook child rather than assuming it is the ScintillaWidget's direct parent.
Modified Paths: -------------- src/document.c
Modified: src/document.c 13 lines changed, 10 insertions(+), 3 deletions(-) =================================================================== @@ -222,13 +222,20 @@ GeanyDocument *document_find_by_sci(ScintillaObject *sci) gint document_get_notebook_page(GeanyDocument *doc) { GtkWidget *parent; + GtkWidget *child;
g_return_val_if_fail(doc != NULL, -1);
- parent = gtk_widget_get_parent(GTK_WIDGET(doc->editor->sci)); - g_return_val_if_fail(GTK_IS_BOX(parent), -1); + child = GTK_WIDGET(doc->editor->sci); + parent = gtk_widget_get_parent(child); + /* search for the direct notebook child, mirroring document_get_from_page() */ + while (parent && ! GTK_IS_NOTEBOOK(parent)) + { + child = parent; + parent = gtk_widget_get_parent(child); + }
- return gtk_notebook_page_num(GTK_NOTEBOOK(main_widgets.notebook), parent); + return gtk_notebook_page_num(GTK_NOTEBOOK(main_widgets.notebook), child); }
-------------- This E-Mail was brought to you by github_commit_mail.py (Source: https://github.com/geany/infrastructure).