"Andy Piper" <andy(a)xemacs.org> writes:
> - M-x customize-face default
> Right-click on [State]. Select "Show all display specs"
> -> Invalid function: "Show all display specs"
I would guess that Jan's customize fixes are responsible for this. Stephen?
Seems unlikely to me.
> xemacs,
> - customization of Font Family of default face is not honored. I had
> previously customized it to "Letter Gothic MT". Under 21.4.5, it is
> displayed as "Letter Gothic MT". Under 21.4.6-rc1, it is displayed as
> "Courier New".
I don't have a windows build to reproduce this, however I can
reproduce the problem with 'gtk build.
In that case the problem is that customize is using font.el to do the
conversion and that does not recognize 'gtk as a device type and
silently fails.
Applying this fix makes it work
--- /local/xemacs/sunsite/xemacs-21.4/gtk/lisp/font.el~ Sun Nov 25 17:27:33 2001
+++ /local/xemacs/sunsite/xemacs-21.4/gtk/lisp/font.el Sun Nov 25 17:27:33 2001
@@ -99,6 +99,7 @@
(defconst font-window-system-mappings
'((x . (x-font-create-name x-font-create-object))
+ (gtk . (x-font-create-name x-font-create-object))
(ns . (ns-font-create-name ns-font-create-object))
(mswindows . (mswindows-font-create-name mswindows-font-create-object))
(pm . (x-font-create-name x-font-create-object)) ; Change? FIXME
Could something similar be happening for Windows?
If so, how did customize work before this?
The cleanest way to solve this is to have make-face-size and
make-face-family use a device type specific routine a long the lines
of make-face-italic. That way the use of font.el can be dropped.
I don't think "my patch" is really causing
When XEmacs 21.4.6rc1 is built on my system --with-gtk then default
faces are setup correctly to GTK values, but when they are changed with a
subsequent M-x customize-face or custom-set-faces form the change has no
visible effect.
either!
If the set-face-background forms within gtk-init-device-faces
aren't
passed the gtk device as the optional locale argument (see patch) then
everything is hunkydory and subsequent customization of the default
faces *do* have a visible effect.
There is something else weird going on with the face frobbing. I am
going to investigate.
[time passes]
I think the problem is entirely similar to the problem we had before
with 'italic'.
Customize might need to call frob-face-property as well.
Until then,
+ ;; Removed device locales - a naive attempt to keep Custom happy.
This seems like a good idea for the moment. Gtk doesn't support
multiple device anyway AFAIK. However,
(set-face-foreground 'highlight
- (nth prelight (plist-get style 'text))
- device)
+ (nth prelight (plist-get style 'text)))
+ ;device)
This not quite 100% right. It really should have been adding a '(gtk
default) tag set from the beginning, i.e. make it
(set-face-foreground 'highlight
(nth prelight (plist-get style 'text))
nil '(gtk default))
etc
Jan