def __init__(self, parent):
     Gtk.Dialog.__init__(self)
     self.set_default_size(420, 400)
     self.set_transient_for(parent)
     self.set_title(_("Terms of Use"))
     # buttons
     self.add_button(_("Decline"), Gtk.ResponseType.NO)
     self.add_button(_("Accept"), Gtk.ResponseType.YES)
     # label
     self.label = Gtk.Label.new(_(u"One moment, please\u2026"))
     self.label.show()
     # add the label
     box = self.get_action_area()
     box.pack_start(self.label, False, False, 0)
     box.set_child_secondary(self.label, True)
     # hrm, hrm, there really should be a better way
     for itm in box.get_children():
         if itm.get_label() == _("Accept"):
             self.button_accept = itm
             break
     self.button_accept.set_sensitive(False)
     # webkit
     wb = ScrolledWebkitWindow()
     wb.show_all()
     self.webkit = wb.webkit
     self.webkit.connect(
         "notify::load-status", self._on_load_status_changed)
     # content
     content = self.get_content_area()
     self.spinner = SpinnerNotebook(wb)
     self.spinner.show_all()
     content.pack_start(self.spinner, True, True, 0)