Fix slowdown and wrong font choosed by XSETTINGS changes. bug #5157.
authorJan Djärv <jan.h.d@swipnet.se>
Wed, 6 Jan 2010 19:38:39 +0000 (20:38 +0100)
committerJan Djärv <jan.h.d@swipnet.se>
Wed, 6 Jan 2010 19:38:39 +0000 (20:38 +0100)
commitd0cf45b70247fc1f4cfc6d74c1b5f6d4ca75f0fc
treeddbd3b141e6e402e77d48f601a9befdbccad8536
parentea2b370da2766fed12db4e7c0f33ddce12f9d0b4
Fix slowdown and wrong font choosed by XSETTINGS changes. bug #5157.

* font.c (font_open_entity): Enable chache and call cached_font_ok
for the driver if defined.
(QCuser_spec): New symbol.
(font_spec_from_name): Save name as user-spec.
(font_load_for_lface): Keep user-spec instead of name.
(font_open_by_name): Save name as user-spec.
(syms_of_font): Initialize QCuser_spec.

* xftfont.c (xftfont_open): Call xftfont_add_rendering_parameters.
(xftfont_add_rendering_parameters, xftfont_cached_font_ok): New.
(syms_of_xftfont): Initialize xftfont_driver.cached_font_ok.

* font.h (struct font_driver): Add cached_font_ok.

* font-setting.el (font-setting-change-default-font): Use user-spec
  instead of name.
lisp/ChangeLog
src/ChangeLog
src/font.c
src/font.h
src/xftfont.c