diff --git a/src/briar-gtk.in b/src/briar-gtk.in
index 0bd3f8e869649d7f9ecf2e5d95bc86e9c704167a..a0ab663418038381763817f013b1bcf5fc74790f 100755
--- a/src/briar-gtk.in
+++ b/src/briar-gtk.in
@@ -50,7 +50,7 @@ def prepare():
 
 def start_application():
     from briar.gtk.application import Application
-    sys.exit(Application("@VERSION@").run(sys.argv))
+    sys.exit(Application().run(sys.argv))
 
 if __name__ == '__main__':
     prepare()
diff --git a/src/briar/gtk/application.py b/src/briar/gtk/application.py
index ca2540299242a12271648fa236f626084a75c9da..ec5d00a88e12ec05484dfacd80d3fbf03fb7ccfc 100644
--- a/src/briar/gtk/application.py
+++ b/src/briar/gtk/application.py
@@ -10,45 +10,56 @@ from gi.repository import Gdk, Gio, GLib, Gtk
 
 from briar.api.api import Api
 
+from briar.gtk.define import APPLICATION_ID, APPLICATION_NAME
+from briar.gtk.define import BRIAR_HEADLESS_JAR
 from briar.gtk.window import Window
 
 
 class Application(Gtk.Application):
 
-    def __init__(self, version):
-        GLib.set_application_name("Briar")
-        GLib.set_prgname("Briar")
-        super().__init__(application_id='app.briar.gtk')
-        self.window = None
-        self._set_version(version)
+    def __init__(self):
+        Application._set_application_name()
+        super().__init__(application_id=APPLICATION_ID)
 
     # pylint: disable=arguments-differ
     def do_startup(self):
         Gtk.Application.do_startup(self)
+        Application._setup_styling()
+        self._setup_api()
 
+    # pylint: disable=arguments-differ
+    def do_activate(self):
+        self._setup_window()
+
+    # pylint: disable=arguments-differ
+    def quit(self):
+        self.api.stop()
+        self.window.hide()
+        Gio.Application.quit(self)
+
+    @staticmethod
+    def _set_application_name():
+        GLib.set_application_name(APPLICATION_NAME)
+        GLib.set_prgname(APPLICATION_NAME)
+
+    @staticmethod
+    def _setup_styling():
         css_provider_file = Gio.File.new_for_uri(
             "resource:///app/briar/gtk/ui/application.css")
         css_provider = Gtk.CssProvider()
         css_provider.load_from_file(css_provider_file)
+
         screen = Gdk.Screen.get_default()
         style_context = Gtk.StyleContext()
         style_context.add_provider_for_screen(screen, css_provider,
                                               Gtk.STYLE_PROVIDER_PRIORITY_USER)
 
-        self.api = Api('/app/briar/briar-headless.jar')
+    def _setup_api(self):
+        self.api = Api(BRIAR_HEADLESS_JAR)
 
-    # pylint: disable=arguments-differ
-    def do_activate(self):
-        if self.window is None:
+    # pylint: disable=access-member-before-definition
+    def _setup_window(self):
+        if not hasattr(self, "window") or self.window is None:
             self.window = Window()
             self.window.show()
         self.window.present()
-
-    # pylint: disable=arguments-differ
-    def quit(self):
-        self.api.stop()
-        self.window.hide()
-        Gio.Application.quit(self)
-
-    def _set_version(self, version):
-        self._version = version
diff --git a/src/briar/gtk/define.py b/src/briar/gtk/define.py
index 66ec252d66be6664fc771e379f8cb35806ddf35f..af9edb3e4624b621c5427be31adf90c91d8efdf1 100644
--- a/src/briar/gtk/define.py
+++ b/src/briar/gtk/define.py
@@ -8,4 +8,8 @@
 
 from gi.repository import Gio
 
+APPLICATION_ID = "app.briar.gtk"
+APPLICATION_NAME = "Briar"
+BRIAR_HEADLESS_JAR = "/app/briar/briar-headless.jar"
+
 App = Gio.Application.get_default  # pylint: disable=invalid-name