calling Ffind_face. */
Lisp_Object Vdefault_face, Vmodeline_face, Vgui_element_face;
Lisp_Object Vleft_margin_face, Vright_margin_face, Vtext_cursor_face;
-Lisp_Object Vpointer_face, Vvertical_divider_face, Vtoolbar_face;
+Lisp_Object Vpointer_face, Vvertical_divider_face, Vtoolbar_face, Vwidget_face;
/* Qdefault, Qhighlight defined in general.c */
Lisp_Object Qmodeline, Qgui_element, Qleft_margin, Qright_margin, Qtext_cursor;
void
syms_of_faces (void)
{
- /* Qdefault defined in general.c */
+ /* Qdefault & Qwidget defined in general.c */
defsymbol (&Qmodeline, "modeline");
defsymbol (&Qgui_element, "gui-element");
defsymbol (&Qleft_margin, "left-margin");
Vdefault_face = Qnil;
staticpro (&Vgui_element_face);
Vgui_element_face = Qnil;
+ staticpro (&Vwidget_face);
+ Vwidget_face = Qnil;
staticpro (&Vmodeline_face);
Vmodeline_face = Qnil;
staticpro (&Vtoolbar_face);
Fget (Vgui_element_face, Qbackground_pixmap,
Qunbound));
+ /* widget is another gui element */
+ Vwidget_face = Fmake_face (Qwidget,
+ build_string ("widget face"),
+ Qnil);
+ set_specifier_fallback (Fget (Vwidget_face, Qforeground, Qunbound),
+ Fget (Vgui_element_face, Qforeground, Qunbound));
+ set_specifier_fallback (Fget (Vwidget_face, Qbackground, Qunbound),
+ Fget (Vgui_element_face, Qbackground, Qunbound));
+ set_specifier_fallback (Fget (Vwidget_face, Qbackground_pixmap, Qnil),
+ Fget (Vgui_element_face, Qbackground_pixmap,
+ Qunbound));
+
Vleft_margin_face = Fmake_face (Qleft_margin,
build_string ("left margin face"),
Qnil);