Index: Makefile.am
===================================================================
--- Makefile.am	(revision 8f9a0441beb143dc1f1b0be6e12fb2f0b733444d)
+++ Makefile.am	(revision ea7daa88a058dbbe1dfd9aa2f138f80d030b2f9c)
@@ -56,5 +56,5 @@
 BASE_SRCS = $(CODELIST_SRCS) $(NORMAL_SRCS)
 
-GEN_C = varstubs.c perlglue.c globalnotifier.c
+GEN_C = varstubs.c perlglue.c
 GEN_H = owl_prototypes.h
 
@@ -76,7 +76,4 @@
 	$(AM_V_GEN)perl $< $(sort $(filter-out $<,$+)) > $@
 
-globalnotifier.c: globalnotifiergen.pl variable.c
-	$(AM_V_GEN)perl $< $(sort $(filter-out $<,$+)) > $@
-
 owl_prototypes.h.new: codelist.pl varstubs.c $(CODELIST_SRCS)
 	$(AM_V_GEN)perl $< $(sort $(filter-out $<,$+)) > $@
Index: cmd.c
===================================================================
--- cmd.c	(revision 044f19f7c86e3f63b353e7fff2865f139319a45a)
+++ cmd.c	(revision ea7daa88a058dbbe1dfd9aa2f138f80d030b2f9c)
@@ -4,5 +4,4 @@
 #include <unistd.h>
 #include "owl.h"
-#include "globalnotifier.h"
 
 extern const owl_cmd commands_to_init[];
Index: doc/owl-window.txt
===================================================================
--- doc/owl-window.txt	(revision 4eee9482aeaa92aa1199b5d6ca4141afdf5f0791)
+++ doc/owl-window.txt	(revision ea7daa88a058dbbe1dfd9aa2f138f80d030b2f9c)
@@ -165,10 +165,4 @@
   init/cleanup/embed-in-struct.
 
-- There is a generated GObject that emits signals for all variables
-  and random other properties. It's currently not used much. It may be
-  useful later, or not. I think there is some value in having change
-  notifications for all our variables, although the initial port of
-  the mainwin and sepbar turned out not to use it.
-
 - The editwin and a few others are strange and keep track of signal
   ids. This is somewhat a side effect of us not using GObject
Index: global.c
===================================================================
--- global.c	(revision 044f19f7c86e3f63b353e7fff2865f139319a45a)
+++ global.c	(revision ea7daa88a058dbbe1dfd9aa2f138f80d030b2f9c)
@@ -8,5 +8,4 @@
 #include <time.h>
 #include "owl.h"
-#include "globalnotifier.h"
 
 #ifndef MAXHOSTNAMELEN
@@ -20,5 +19,4 @@
   char hostname[MAXHOSTNAMELEN];
   char *cd;
-  g->gn = owl_global_notifier_new(g);
 
   g->malloced=0;
@@ -241,5 +239,4 @@
 void owl_global_set_curmsg(owl_global *g, int i) {
   g->curmsg=i;
-  g_object_notify(G_OBJECT(g->gn), "curmsg");
   /* we will reset the vertical offset from here */
   /* we might want to move this out to the functions later */
@@ -340,6 +337,4 @@
 void owl_global_set_rightshift(owl_global *g, int i) {
   g->rightshift = i;
-  g_object_notify(G_OBJECT(g->gn), "rightshift");
-
   owl_mainwin_redisplay(owl_global_get_mainwin(g));
 }
@@ -563,5 +558,4 @@
 void owl_global_set_curmsg_vert_offset(owl_global *g, int i) {
   g->curmsg_vert_offset = i;
-  g_object_notify(G_OBJECT(g->gn), "curmsg-vert-offset");
 }
 
Index: obalnotifier.h
===================================================================
--- globalnotifier.h	(revision 94be4a8797dfa32dce0d43e0654cee6d842e0f44)
+++ 	(revision )
@@ -1,47 +1,0 @@
-#ifndef __BARNOWL_GLOBAL_NOTIFIER_H__
-#define __BARNOWL_GLOBAL_NOTIFIER_H__
-
-#include <glib-object.h>
-#include "owl.h"
-
-G_BEGIN_DECLS
-
-#define OWL_TYPE_GLOBAL_NOTIFIER owl_global_notifier_get_type()
-
-#define OWL_GLOBAL_NOTIFIER(obj) \
-    (G_TYPE_CHECK_INSTANCE_CAST ((obj), OWL_TYPE_GLOBAL_NOTIFIER, OwlGlobalNotifier))
-
-#define OWL_GLOBAL_NOTIFIER_CLASS(klass) \
-    (G_TYPE_CHECK_CLASS_CAST ((klass), OWL_TYPE_GLOBAL_NOTIFIER, OwlGlobalNotifierClass))
-
-#define OWL_IS_GLOBAL_NOTIFIER(obj) \
-    (G_TYPE_CHECK_INSTANCE_TYPE ((obj), OWL_TYPE_GLOBAL_NOTIFIER))
-
-#define OWL_IS_GLOBAL_NOTIFIER_CLASS(klass) \
-    (G_TYPE_CHECK_CLASS_TYPE ((klass), OWL_TYPE_GLOBAL_NOTIFIER))
-
-#define OWL_GLOBAL_NOTIFIER_GET_CLASS(obj) \
-    (G_TYPE_INSTANCE_GET_CLASS ((obj), OWL_TYPE_GLOBAL_NOTIFIER, OwlGlobalNotifierClass))
-
-typedef struct _OwlGlobalNotifierClass OwlGlobalNotifierClass;
-
-struct _OwlGlobalNotifier {
-    GObject parent;
-    owl_global *g;
-};
-
-struct _OwlGlobalNotifierClass {
-    GObjectClass parent_class;
-};
-
-GType owl_global_notifier_get_type (void);
-
-OwlGlobalNotifier* owl_global_notifier_new(owl_global *g);
-
-void owl_global_notifier_emit_view_changed(OwlGlobalNotifier *gn);
-void owl_global_notifier_emit_message_received(OwlGlobalNotifier *gn, owl_message *msg);
-void owl_global_notifier_emit_command_executed(OwlGlobalNotifier *gn);
-
-G_END_DECLS
-
-#endif /* __BARNOWL_GLOBAL_NOTIFIER_H__ */
Index: obalnotifiergen.pl
===================================================================
--- globalnotifiergen.pl	(revision 94be4a8797dfa32dce0d43e0654cee6d842e0f44)
+++ 	(revision )
@@ -1,296 +1,0 @@
-print qq(/* THIS FILE WAS AUTOGENERATED BY GLOBALNOTIFIERGEN.PL --- DO NOT EDIT BY HAND!!! */\n\n);
-
-my @vars = ();
-foreach $file (@ARGV) {
-    open(FILE, $file);
-
-    while (<FILE>) {
-      if (m|^\s*OWLVAR_([A-Z_0-9]+)\s*\(\s*"([^"]+)"\s*/\*\s*%OwlVarStub:?([a-z0-9_]+)?\s*\*/|) {   # "
-        my $vartype = $1;
-        my $varname = $2;
-        my $altvarname = $2;
-        $altvarname = $3 if ($3);
-
-        my $propname = $altvarname;
-        $propname =~ tr/a-z/A-Z/;
-        $propname = "PROP_$propname";
-
-        my $detailname = $altvarname;
-        $detailname =~ s/[^a-zA-Z0-9]/-/g;
-        $detailname =~ s/^[^a-zA-Z]+//;
-
-        push @vars, {type => $vartype,
-                     name => $varname,
-                     altname => $altvarname,
-                     propname => $propname,
-                     detailname => $detailname};
-      }
-    }
-    close(FILE);
-}
-
-print <<EOT;
-#include "globalnotifier.h"
-#include "owl.h"
-
-/* properties */
-enum {
-  PROP_NONE,
-  /* normal properties */
-  PROP_RIGHTSHIFT,
-  PROP_CURMSG,
-  PROP_CURMSG_VERT_OFFSET,
-  /* generated from variable listings */
-EOT
-
-for my $var (@vars) {
-  print "  " . $var->{propname} . ",\n";
-}
-
-print <<EOT;
-};
-
-/* signals */
-enum {
-  VIEW_CHANGED,
-  MESSAGE_RECEIVED,
-  COMMAND_EXECUTED,
-  LAST_SIGNAL
-};
-
-static guint notifier_signals[LAST_SIGNAL] = { 0 };
-
-G_DEFINE_TYPE(OwlGlobalNotifier, owl_global_notifier, G_TYPE_OBJECT)
-
-static void owl_global_notifier_set_property(GObject *object,
-                                             guint property_id,
-                                             const GValue *value,
-                                             GParamSpec *pspec)
-{
-  OwlGlobalNotifier *notifier = OWL_GLOBAL_NOTIFIER(object);
-
-  switch (property_id) {
-    /* normal properties */
-    case PROP_RIGHTSHIFT:
-      owl_global_set_rightshift(notifier->g, g_value_get_int(value));
-      break;
-    case PROP_CURMSG:
-      owl_global_set_curmsg(notifier->g, g_value_get_int(value));
-      break;
-    case PROP_CURMSG_VERT_OFFSET:
-      owl_global_set_curmsg_vert_offset(notifier->g, g_value_get_int(value));
-      break;
-    /* generated from variable listings */
-EOT
-
-for my $var (@vars) {
-    my $varname = $var->{name};
-    my $propname = $var->{propname};
-    print "    case $propname:\n";
-
-    if ($var->{type} =~ /^BOOL/) {
-      print <<EOT;
-      if (g_value_get_boolean(value)) {
-        owl_variable_set_bool_on(&notifier->g->vars, "$varname");
-      } else {
-        owl_variable_set_bool_off(&notifier->g->vars, "$varname");
-      }
-EOT
-    } elsif ($var->{type} =~ /^PATH/ or $var->{type} =~ /^STRING/) {
-      print "      owl_variable_set_string(&notifier->g->vars, \"$varname\", g_value_get_string(value));\n";
-    } elsif ($var->{type} =~ /^INT/ or $var->{type} =~ /^ENUM/) {
-      print "      owl_variable_set_int(&notifier->g->vars, \"$varname\", g_value_get_int(value));\n";
-    } 
-    print "      break;\n";
-}
-
-print <<EOT;
-    default:
-      G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec);
-  }
-}
-
-static void owl_global_notifier_get_property(GObject *object,
-                                             guint property_id,
-                                             GValue *value,
-                                             GParamSpec *pspec)
-{
-  OwlGlobalNotifier *notifier = OWL_GLOBAL_NOTIFIER(object);
-
-  switch (property_id) {
-    /* normal properties */
-    case PROP_RIGHTSHIFT:
-      g_value_set_int(value, owl_global_get_rightshift(notifier->g));
-      break;
-    case PROP_CURMSG:
-      g_value_set_int(value, owl_global_get_curmsg(notifier->g));
-      break;
-    case PROP_CURMSG_VERT_OFFSET:
-      g_value_set_int(value, owl_global_get_curmsg_vert_offset(notifier->g));
-      break;
-    /* generated from variable listings */
-EOT
-for my $var (@vars) {
-    my $varname = $var->{name};
-    my $propname = $var->{propname};
-    print "    case $propname:\n";
-
-    if ($var->{type} =~ /^BOOL/) {
-      print "      g_value_set_boolean(value, owl_variable_get_bool(&notifier->g->vars, \"$varname\"));\n";
-    } elsif ($var->{type} =~ /^PATH/ or $var->{type} =~ /^STRING/) {
-      print "      g_value_set_string(value, owl_variable_get_string(&notifier->g->vars, \"$varname\"));\n";
-    } elsif ($var->{type} =~ /^INT/ or $var->{type} =~ /^ENUM/) {
-      print "      g_value_set_int(value, owl_variable_get_int(&notifier->g->vars, \"$varname\"));\n";
-    } 
-    print "      break;\n";
-}
-print <<EOT;
-    default:
-      G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec);
-  }
-}
-
-static void owl_global_notifier_class_init(OwlGlobalNotifierClass *klass)
-{
-  GObjectClass *gobject_class = G_OBJECT_CLASS(klass);
-  GParamSpec *pspec;
-
-  gobject_class->get_property = owl_global_notifier_get_property;
-  gobject_class->set_property = owl_global_notifier_set_property;
-
-  /* Create signals */
-
-  notifier_signals[VIEW_CHANGED] =
-    g_signal_new("view-changed",
-                 G_TYPE_FROM_CLASS(gobject_class),
-                 G_SIGNAL_RUN_FIRST,
-                 0,
-                 NULL, NULL,
-                 g_cclosure_marshal_VOID__VOID,
-                 G_TYPE_NONE,
-                 0,
-                 NULL);
-
-  notifier_signals[MESSAGE_RECEIVED] =
-    g_signal_new("message-received",
-                 G_TYPE_FROM_CLASS(gobject_class),
-                 G_SIGNAL_RUN_FIRST,
-                 0,
-                 NULL, NULL,
-                 g_cclosure_marshal_VOID__POINTER,
-                 G_TYPE_NONE,
-                 1,
-                 G_TYPE_POINTER, NULL);
-
-  notifier_signals[COMMAND_EXECUTED] =
-    g_signal_new("command-executed",
-                 G_TYPE_FROM_CLASS(gobject_class),
-                 G_SIGNAL_RUN_FIRST,
-                 0,
-                 NULL, NULL,
-                 g_cclosure_marshal_VOID__VOID,
-                 G_TYPE_NONE,
-                 0,
-                 NULL);
-
-  /* Register properties */
-  
-  pspec = g_param_spec_int("rightshift",
-                           "rightshift",
-                           "How much we shift to the right",
-                           0,
-                           INT_MAX,
-                           0,
-                           G_PARAM_READABLE|G_PARAM_WRITABLE
-                          |G_PARAM_STATIC_NAME|G_PARAM_STATIC_NICK|G_PARAM_STATIC_BLURB);
-  g_object_class_install_property(gobject_class, PROP_RIGHTSHIFT, pspec);
-  
-  pspec = g_param_spec_int("curmsg",
-                           "curmsg",
-                           "The current message",
-                           0,
-                           INT_MAX,
-                           0,
-                           G_PARAM_READABLE|G_PARAM_WRITABLE
-                          |G_PARAM_STATIC_NAME|G_PARAM_STATIC_NICK|G_PARAM_STATIC_BLURB);
-  g_object_class_install_property(gobject_class, PROP_CURMSG, pspec);
-  
-  pspec = g_param_spec_int("curmsg-vert-offset",
-                           "curmsg_vert_offset",
-                           "How offset the current message is",
-                           0,
-                           INT_MAX,
-                           0,
-                           G_PARAM_READABLE|G_PARAM_WRITABLE
-                          |G_PARAM_STATIC_NAME|G_PARAM_STATIC_NICK|G_PARAM_STATIC_BLURB);
-  g_object_class_install_property(gobject_class, PROP_CURMSG_VERT_OFFSET, pspec);
-
-EOT
-for my $var (@vars) {
-    my $varname = $var->{name};
-    my $propname = $var->{propname};
-    my $detailname = $var->{detailname};
-    if ($var->{type} =~ /^BOOL/) {
-      print <<EOT
-  pspec = g_param_spec_boolean("$detailname",
-                               "$varname",
-                               "$varname", /* TODO: parse out the summary too */
-                               FALSE,
-                               G_PARAM_READABLE|G_PARAM_WRITABLE
-                              |G_PARAM_STATIC_NAME|G_PARAM_STATIC_NICK|G_PARAM_STATIC_BLURB);
-EOT
-    } elsif ($var->{type} =~ /^PATH/ or $var->{type} =~ /^STRING/) {
-      print <<EOT
-  pspec = g_param_spec_string("$detailname",
-                              "$varname",
-                              "$varname", /* TODO: parse out the summary too */
-                              "",
-                              G_PARAM_READABLE|G_PARAM_WRITABLE
-                             |G_PARAM_STATIC_NAME|G_PARAM_STATIC_NICK|G_PARAM_STATIC_BLURB);
-EOT
-    } elsif ($var->{type} =~ /^INT/ or $var->{type} =~ /^ENUM/) {
-      print <<EOT
-  pspec = g_param_spec_int("$detailname",
-                           "$varname",
-                           "$varname", /* TODO: parse out the summary too */
-                           INT_MIN,
-                           INT_MAX,
-                           0,
-                           G_PARAM_READABLE|G_PARAM_WRITABLE
-                          |G_PARAM_STATIC_NAME|G_PARAM_STATIC_NICK|G_PARAM_STATIC_BLURB);
-EOT
-    } 
-    print "  g_object_class_install_property(gobject_class, $propname, pspec);\n\n";
-}
-print <<EOT;
-}
-
-static void owl_global_notifier_init(OwlGlobalNotifier *self)
-{
-}
-
-OwlGlobalNotifier *owl_global_notifier_new(owl_global *g)
-{
-  OwlGlobalNotifier *gn;
-  
-  gn = g_object_new(OWL_TYPE_GLOBAL_NOTIFIER, NULL);
-  gn->g = g;
-  return gn;
-}
-
-void owl_global_notifier_emit_view_changed(OwlGlobalNotifier *gn)
-{
-  g_signal_emit(gn, notifier_signals[VIEW_CHANGED], 0);
-}
-
-void owl_global_notifier_emit_message_received(OwlGlobalNotifier *gn, owl_message *msg)
-{
-  g_signal_emit(gn, notifier_signals[MESSAGE_RECEIVED], 0, msg);
-}
-
-void owl_global_notifier_emit_command_executed(OwlGlobalNotifier *gn)
-{
-  g_signal_emit(gn, notifier_signals[COMMAND_EXECUTED], 0);
-}
-
-EOT
Index: owl.c
===================================================================
--- owl.c	(revision 044f19f7c86e3f63b353e7fff2865f139319a45a)
+++ owl.c	(revision ea7daa88a058dbbe1dfd9aa2f138f80d030b2f9c)
@@ -21,5 +21,4 @@
 #include <locale.h>
 #include "owl.h"
-#include "globalnotifier.h"
 
 
Index: owl.h
===================================================================
--- owl.h	(revision 07b59ea301a55bf3db1724aa9571e7048fe89857)
+++ owl.h	(revision ea7daa88a058dbbe1dfd9aa2f138f80d030b2f9c)
@@ -566,5 +566,4 @@
 
 typedef struct _owl_global {
-  OwlGlobalNotifier *gn;
   owl_mainwin mw;
   owl_popwin pw;
Index: stubgen.pl
===================================================================
--- stubgen.pl	(revision 5b80b8793a3d07ccd349cd2e447d6d6ba8ffea24)
+++ stubgen.pl	(revision ea7daa88a058dbbe1dfd9aa2f138f80d030b2f9c)
@@ -19,9 +19,7 @@
 void owl_global_set_${altvarname}_on(owl_global *g) {
   owl_variable_set_bool_on(&g->vars, "$altvarname");
-  g_object_notify(G_OBJECT(g->gn), "$detailname");
 }
 void owl_global_set_${altvarname}_off(owl_global *g) {
   owl_variable_set_bool_off(&g->vars, "$altvarname");
-  g_object_notify(G_OBJECT(g->gn), "$detailname");
 }
 int owl_global_is_$altvarname(const owl_global *g) {
@@ -33,5 +31,4 @@
 void owl_global_set_${altvarname}(owl_global *g, const char *text) {
   owl_variable_set_string(&g->vars, "$altvarname", text);
-  g_object_notify(G_OBJECT(g->gn), "$detailname");
 }
 const char *owl_global_get_$altvarname(const owl_global *g) {
@@ -43,5 +40,4 @@
 void owl_global_set_${altvarname}(owl_global *g, int n) {
   owl_variable_set_int(&g->vars, "$altvarname", n);
-  g_object_notify(G_OBJECT(g->gn), "$detailname");
 }
 int owl_global_get_$altvarname(const owl_global *g) {
