call GtkWidget's key_press_event callback for keys, in case GtkWidget has
authorNalin Dahyabhai <nalin@src.gnome.org>
Tue, 20 Apr 2004 05:18:45 +0000 (05:18 +0000)
committerNalin Dahyabhai <nalin@src.gnome.org>
Tue, 20 Apr 2004 05:18:45 +0000 (05:18 +0000)
* src/vte.c(vte_terminal_key_press): call GtkWidget's key_press_event callback
for keys, in case GtkWidget has pre-programmed behavior for that key
(#133878).
* configure.in, gnome-pty-helper/configure.in: quote names of defined functions
(#133222).
* configure.in: make compilation of gnome-pty-helper actually conditional
(#133077).
* src/vte.c(vte_terminal_process_incoming): Doh #132610, actually call
vte_terminal_emit_contents_changed() when the contents change.

ChangeLog
Makefile.am
acinclude.m4
configure.in
gnome-pty-helper/acinclude.m4
python/vtemodule.c
src/Makefile.am
src/vte.c

index ae6afae..c98df39 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2004-04-19 nalin
+       * src/vte.c(vte_terminal_key_press): call GtkWidget's key_press_event
+       callback for keys, in case GtkWidget has pre-programmed behavior for
+       that key (#133878).
+       * configure.in, gnome-pty-helper/configure.in: quote names of defined
+       functions (#133222).
+       * configure.in: make compilation of gnome-pty-helper actually
+       conditional (#133077).
+       * src/vte.c(vte_terminal_process_incoming): Doh #132610, actually
+       call vte_terminal_emit_contents_changed() when the contents change.
+
 2004-04-19 nalin
        * src/vte.h, src/vte.c (vte_terminal_set_font_full): Add (#134429).
        * src/vteglyph.c(_vte_glyph_cache_set_font_description): take a
index 292f374..d268053 100644 (file)
@@ -1,5 +1,8 @@
-SUBDIRS = src gnome-pty-helper python termcaps po doc
+SUBDIRS = src python termcaps po doc
 EXTRA_DIST = HACKING vte.spec vte.pc.in MESSAGE-OF-DOOM
+if BUILD_GNOME_PTY_HELPER
+SUBDIRS += gnome-pty-helper
+endif
 
 pkgconfigdir = $(libdir)/pkgconfig
 pkgconfig_DATA = vte.pc
index 20a5487..a139d45 100644 (file)
@@ -44,7 +44,7 @@ dnl
 dnl @version $Id$
 dml @author  Guido Draheim <guidod@gmx.de>
 
-AC_DEFUN(AC_CHECK_CC_OPT,
+AC_DEFUN([AC_CHECK_CC_OPT],
 [AC_CACHE_CHECK(whether ${CC-cc} accepts [$1], [$2],
 [AC_SUBST($2)
 echo 'void f(){}' > conftest.c
@@ -63,7 +63,7 @@ rm -f conftest*
 dnl VTE_CHECK_FT2([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
 dnl Test for FreeType2, and define FT2_CFLAGS and FT2_LIBS
 dnl
-AC_DEFUN(VTE_CHECK_FT2,
+AC_DEFUN([VTE_CHECK_FT2],
 [dnl
 dnl Get the cflags and libraries from the freetype-config script
 dnl
index c6c08a7..5d5fa9a 100644 (file)
@@ -408,6 +408,7 @@ if test "$enable_gnome_pty_helper" != no; then
        AC_DEFINE(VTE_USE_GNOME_PTY_HELPER,1,[Define if you intend to use gnome-pty-helper.])
        AC_CONFIG_SUBDIRS(gnome-pty-helper)
 fi
+AM_CONDITIONAL(BUILD_GNOME_PTY_HELPER,[test "$enable_gnome_pty_helper" != no])
 
 ################################################################################
 
index c0794ab..6e8eadb 100644 (file)
@@ -9,7 +9,7 @@ dnl GPH_CHECK_UTMP()
 dnl Test for presence of the field and define HAVE_UT_UT_field macro
 dnl
 
-AC_DEFUN(GPH_CHECK_UTMP,[
+AC_DEFUN([GPH_CHECK_UTMP],[
 
 AC_CHECK_HEADERS(sys/time.h utmp.h utmpx.h)
 AC_HEADER_TIME
index a58c8ed..1171f13 100644 (file)
@@ -31,14 +31,14 @@ extern PyMethodDef pyvte_functions[];
 extern DL_EXPORT(void) initvte(void);
 
 DL_EXPORT(void)
-initvte(void)
+init_vte(void)
 {
        PyObject *m, *d;
 
        init_pygobject();
        init_pygtk();
 
-       m = Py_InitModule("vte", pyvte_functions);
+       m = Py_InitModule("_vte", pyvte_functions);
        d = PyModule_GetDict(m);
 
        pyvte_register_classes(d);
index 29933b9..4ce4aab 100644 (file)
@@ -97,6 +97,7 @@ VERSION_CURRENT=6
 # must be reset to 0 when this happens.
 VERSION_AGE=2
 libvte_la_LDFLAGS = @LDFLAGS@ -version-info $(VERSION_CURRENT):$(VERSION_REVISION):$(VERSION_AGE)
+libvte_la_LIBADD = @LIBS@ @VTE_LIBS@ @X_LIBS@
 
 CLEANFILES = marshal.c marshal.h
 
index 25a487b..2765e02 100644 (file)
--- a/src/vte.c
+++ b/src/vte.c
@@ -7604,6 +7604,7 @@ vte_terminal_process_incoming(gpointer data)
        if (modified || (screen != terminal->pvt->screen)) {
                /* Signal that the visible contents changed. */
                vte_terminal_match_contents_clear(terminal);
+               vte_terminal_emit_contents_changed(terminal);
        }
 
        if ((cursor.col != terminal->pvt->screen->cursor_current.col) ||
@@ -8182,11 +8183,22 @@ vte_terminal_key_press(GtkWidget *widget, GdkEventKey *event)
        gunichar keychar = 0;
        char keybuf[VTE_UTF8_BPC];
        GdkModifierType modifiers;
+       GtkWidgetClass *widget_class;
 
        g_return_val_if_fail(widget != NULL, TRUE);
        g_return_val_if_fail(VTE_IS_TERMINAL(widget), TRUE);
        terminal = VTE_TERMINAL(widget);
 
+       /* First, check if GtkWidget's behavior already does something with
+        * this key. */
+       widget_class = g_type_class_peek(GTK_TYPE_WIDGET);
+       if (GTK_WIDGET_CLASS(widget_class)->key_press_event) {
+               if ((GTK_WIDGET_CLASS(widget_class))->key_press_event(widget,
+                                                                     event)) {
+                       return TRUE;
+               }
+       }
+
        /* If it's a keypress, record that we got the event, in case the
         * input method takes the event from us. */
        if (event->type == GDK_KEY_PRESS) {