xemacs-gtk branch published
Jeff Sparkes
jsparkes at gmail.com
Fri Jun 4 13:42:40 EDT 2010
> Mats, I’ve seen your error. It’s because the configure script built without
> GTK support, only with X support (check its output), and Jeff’s changes
> haven’t been sufficiently tested in that context. Update to a more recent
> version of his code (especially, one with my changes to configure.ac and
> configure) and things should work better.
>
I've posted my configure string in another message. I have been building
without the menubar, mainly because of the problem you mention below. I go
into a bit more detail in the other message to the list.
>
> Jeff, I still need at least this to get things close to running:
>
> diff -r 37f1870f3969 src/menubar-gtk.c
> --- a/src/menubar-gtk.c Fri Jun 04 15:31:10 2010 +0100
> +++ b/src/menubar-gtk.c Fri Jun 04 16:10:51 2010 +0100
> @@ -49,17 +49,11 @@
> #define SUBMENU_TYPE 1
> #define POPUP_TYPE 2
>
> -static GQuark XEMACS_MENU_DESCR_TAG =
> - g_quark_from_string ("xemacs::menu::description");
> -static GQuark XEMACS_MENU_FILTER_TAG =
> - g_quark_from_string ("xemacs::menu::filter");
> -static GQuark XEMACS_MENU_GUIID_TAG =
> - g_quark_from_string ("xemacs::menu::gui_id");
> -static GQuark XEMACS_MENU_FIRSTTIME_TAG =
> - g_quark_from_string ("xemacs::menu::first_time");
> -static GQuark XEMACS_MENU_FRAME_TAG =
> - g_quark_from_string ("xemacs::menu::frame");
> -
> +static GQuark XEMACS_MENU_DESCR_TAG;
> +static GQuark XEMACS_MENU_FILTER_TAG;
> +static GQuark XEMACS_MENU_GUIID_TAG;
> +static GQuark XEMACS_MENU_FIRSTTIME_TAG;
> +static GQuark XEMACS_MENU_FRAME_TAG;
>
> static GtkWidget *menu_descriptor_to_widget_1 (Lisp_Object descr,
> GtkAccelGroup* accel_group);
>
> @@ -1500,6 +1494,11 @@
> #ifdef TEAR_OFF_MENUS
> tear_off_menus = 1;
> #endif
> + XEMACS_MENU_DESCR_TAG = g_quark_from_string
> ("xemacs::menu::description");
> + XEMACS_MENU_FILTER_TAG = g_quark_from_string ("xemacs::menu::filter");
> + XEMACS_MENU_GUIID_TAG = g_quark_from_string ("xemacs::menu::gui_id");
> + XEMACS_MENU_FIRSTTIME_TAG = g_quark_from_string
> ("xemacs::menu::first_time");
> + XEMACS_MENU_FRAME_TAG = g_quark_from_string ("xemacs::menu::frame");
> }
>
I turned these back into #defines for now.
>
> void
> diff -r 37f1870f3969 src/ui-gtk.c
> --- a/src/ui-gtk.c Fri Jun 04 15:31:10 2010 +0100
> +++ b/src/ui-gtk.c Fri Jun 04 16:10:51 2010 +0100
> @@ -742,6 +742,7 @@
> CHECK_LIST (args);
>
> n_args = XINT (Flength (args));
> + memset (the_args, '\0', sizeof (the_args[0]) * (n_args + 1));
>
> #ifdef XEMACS_IS_SMARTER_THAN_THE_PROGRAMMER
> /* #### I think this is too dangerous to enable by default.
>
> I don't have to do this, but iI've checked it in.
> With this and with the most recent Mercurial version, XEmacs creates a
> frame, but this constantly resizes, making itself smaller, until finally
> only the menubar is visible. This is unusable.
> http://www.parhasard.net/xemacs/problems-20100604.log
> is what that build prints to standard error and standard output.
>
> There's a confusion between frame units and pixel somewhere in the frame
sizing code. It's probably blindingly obvious to someone else, but I've
been staring at the code too long.
--
Jeff Sparkes
jsparkes at gmail.com
More information about the XEmacs-Beta
mailing list