summaryrefslogtreecommitdiff
path: root/gtk
diff options
context:
space:
mode:
authorVincent Sanders <vince@kyllikki.org>2014-08-23 17:10:39 -0700
committerVincent Sanders <vince@kyllikki.org>2014-08-23 17:10:39 -0700
commit91deff3797ac43a8f48cf8d2ec757e6b73a286fb (patch)
treebb3d00171856769f60dad1167211ea01dee47dfc /gtk
parenta57278f574465b5d9ddd32b7d6da54258f47aba4 (diff)
downloadnetsurf-91deff3797ac43a8f48cf8d2ec757e6b73a286fb.tar.gz
netsurf-91deff3797ac43a8f48cf8d2ec757e6b73a286fb.tar.bz2
fix menu and C-q gtk exiting (closes bug #2184)
Diffstat (limited to 'gtk')
-rw-r--r--gtk/gui.c1
-rw-r--r--gtk/scaffolding.c26
-rw-r--r--gtk/scaffolding.h5
3 files changed, 10 insertions, 22 deletions
diff --git a/gtk/gui.c b/gtk/gui.c
index bbe6cbaf2..6fb2a4125 100644
--- a/gtk/gui.c
+++ b/gtk/gui.c
@@ -539,7 +539,6 @@ static void gui_quit(void)
LOG(("Quitting GUI"));
/* Ensure all scaffoldings are destroyed before we go into exit */
- nsgtk_scaffolding_destroy();
nsgtk_download_destroy();
urldb_save_cookies(nsoption_charp(cookie_jar));
urldb_save(nsoption_charp(url_file));
diff --git a/gtk/scaffolding.c b/gtk/scaffolding.c
index 03a14e5dc..c8069c096 100644
--- a/gtk/scaffolding.c
+++ b/gtk/scaffolding.c
@@ -265,20 +265,6 @@ static gboolean scaffolding_window_delete_event(GtkWidget *widget,
return TRUE;
}
-/* exported interface documented in gtk_scaffold.h */
-void nsgtk_scaffolding_destroy(void)
-{
- struct nsgtk_scaffolding *gs;
-
- gs = scaf_list;
- while (gs != NULL) {
- LOG(("destroying scaffold: %p", gs));
- if (gtk_widget_in_destruction(GTK_WIDGET(gs->window)) != TRUE) {
- gtk_widget_destroy(GTK_WIDGET(gs->window));
- }
- }
-}
-
/**
* Update the back and forward button sensitivity.
*/
@@ -915,8 +901,16 @@ MULTIHANDLER(closewindow)
MULTIHANDLER(quit)
{
- if (nsgtk_check_for_downloads(g->window) == false)
- netsurf_quit = true;
+ struct nsgtk_scaffolding *gs;
+
+ if (nsgtk_check_for_downloads(g->window) == false) {
+ gs = scaf_list;
+ while (gs != NULL) {
+ gtk_widget_destroy(GTK_WIDGET(gs->window));
+ gs = gs->next;
+ }
+ }
+
return TRUE;
}
diff --git a/gtk/scaffolding.h b/gtk/scaffolding.h
index fcf6d3c9b..e7d945ebc 100644
--- a/gtk/scaffolding.h
+++ b/gtk/scaffolding.h
@@ -193,11 +193,6 @@ void nsgtk_scaffolding_toggle_search_bar_visibility(struct nsgtk_scaffolding *g)
void nsgtk_scaffolding_set_top_level(struct gui_window *g);
/**
- * Destroy all scaffolds.
- */
-void nsgtk_scaffolding_destroy(void);
-
-/**
* update the sensitivity of context sensitive UI elements
*
* widgets altered in arrays: