Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/__init__.py2
-rw-r--r--src/hulahop-browser.cpp8
-rw-r--r--src/hulahop-browser.h1
-rw-r--r--src/hulahop.defs5
-rw-r--r--tests/test-browser.py5
5 files changed, 21 insertions, 0 deletions
diff --git a/src/__init__.py b/src/__init__.py
index 1cdfa48..d0b465f 100644
--- a/src/__init__.py
+++ b/src/__init__.py
@@ -1,5 +1,7 @@
from hulahop import _hulahop
+from _hulahop import shutdown
+
_hulahop.startup()
from xpcom import components
diff --git a/src/hulahop-browser.cpp b/src/hulahop-browser.cpp
index 94f9f1a..bfafdbe 100644
--- a/src/hulahop-browser.cpp
+++ b/src/hulahop-browser.cpp
@@ -72,9 +72,17 @@ hulahop_startup()
&kDirectoryProvider), nsnull, 0);
NS_ENSURE_SUCCESS(rv, FALSE);
+ XRE_NotifyProfile();
+
return TRUE;
}
+void
+hulahop_shutdown()
+{
+ XRE_TermEmbedding();
+}
+
static GtkWidget *
hulahop_browser_get_offscreen_window(HulahopBrowser *browser)
{
diff --git a/src/hulahop-browser.h b/src/hulahop-browser.h
index 7116999..a9e00c4 100644
--- a/src/hulahop-browser.h
+++ b/src/hulahop-browser.h
@@ -36,6 +36,7 @@ typedef struct _HulahopBrowserClass HulahopBrowserClass;
#define HULAHOP_BROWSER_GET_CLASS(object) (G_TYPE_INSTANCE_GET_CLASS((object), HULAHOP_TYPE_BROWSER, HulahopBrowserClass))
gboolean hulahop_startup (void);
+void hulahop_shutdown (void);
GType hulahop_browser_get_type (void);
PyObject *hulahop_browser_get_browser (HulahopBrowser *browser);
diff --git a/src/hulahop.defs b/src/hulahop.defs
index ff7017f..cee5e28 100644
--- a/src/hulahop.defs
+++ b/src/hulahop.defs
@@ -15,3 +15,8 @@
(c-name "hulahop_startup")
(return-type "gboolean")
)
+
+(define-function shutdown
+ (c-name "hulahop_shutdown")
+ (return-type "none")
+)
diff --git a/tests/test-browser.py b/tests/test-browser.py
index 3dd5622..396045f 100644
--- a/tests/test-browser.py
+++ b/tests/test-browser.py
@@ -1,7 +1,12 @@
import gtk
import hulahop
+def _quit(window):
+ hulahop.shutdown()
+ gtk.main_quit()
+
window = gtk.Window()
+window.connect("destroy", _quit)
browser = hulahop.Browser()
window.add(browser)