From: Joakim Verona Date: Sun, 8 Jul 2012 15:42:57 +0000 (+0200) Subject: fixes so xwidgets doesnt pollute a non xwidget build X-Git-Tag: emacs-25.0.90~3300 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=08ab3a852d01cd7a1530657d099cd5066d747dd5;p=emacs.git fixes so xwidgets doesnt pollute a non xwidget build --- diff --git a/lisp/xwidget.el b/lisp/xwidget.el index d90dca3f755..38b404586e6 100644 --- a/lisp/xwidget.el +++ b/lisp/xwidget.el @@ -5,7 +5,8 @@ ;;; Commentary: ;; -(require 'xwidget-internal) +;;TODO this breaks compilation when we dont have xwidgets +;;(require 'xwidget-internal) ;;TODO model after make-text-button instead! ;;; Code: diff --git a/src/xdisp.c b/src/xdisp.c index 87e079f8ab1..c06d822de2f 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -23264,7 +23264,7 @@ compute_overhangs_and_x (struct glyph_string *s, int x, int backward_p) to allocate glyph strings (because draw_glyphs can be called asynchronously). */ -#define BUILD_GLYPH_STRINGS(START, END, HEAD, TAIL, HL, X, LAST_X) \ +#define BUILD_GLYPH_STRINGS_1(START, END, HEAD, TAIL, HL, X, LAST_X) \ do \ { \ HEAD = TAIL = NULL; \ @@ -23295,13 +23295,15 @@ compute_overhangs_and_x (struct glyph_string *s, int x, int backward_p) case IMAGE_GLYPH: \ BUILD_IMAGE_GLYPH_STRING (START, END, HEAD, TAIL, \ HL, X, LAST_X); \ - break; \ + break; + +#define BUILD_GLYPH_STRINGS_XW(START, END, HEAD, TAIL, HL, X, LAST_X) \ case XWIDGET_GLYPH: \ BUILD_XWIDGET_GLYPH_STRING (START, END, HEAD, TAIL, \ HL, X, LAST_X); \ - break; \ - \ - \ + break; + +#define BUILD_GLYPH_STRINGS_2(START, END, HEAD, TAIL, HL, X, LAST_X) \ case GLYPHLESS_GLYPH: \ BUILD_GLYPHLESS_GLYPH_STRING (START, END, HEAD, TAIL, \ HL, X, LAST_X); \ @@ -23320,6 +23322,18 @@ compute_overhangs_and_x (struct glyph_string *s, int x, int backward_p) } while (0) +#ifdef HAVE_XWIDGETS +#define BUILD_GLYPH_STRINGS(START, END, HEAD, TAIL, HL, X, LAST_X) \ +BUILD_GLYPH_STRINGS_1(START, END, HEAD, TAIL, HL, X, LAST_X) \ +BUILD_GLYPH_STRINGS_XW(START, END, HEAD, TAIL, HL, X, LAST_X) \ +BUILD_GLYPH_STRINGS_2(START, END, HEAD, TAIL, HL, X, LAST_X) +#else +#define BUILD_GLYPH_STRINGS(START, END, HEAD, TAIL, HL, X, LAST_X) \ +BUILD_GLYPH_STRINGS_1(START, END, HEAD, TAIL, HL, X, LAST_X) \ +BUILD_GLYPH_STRINGS_2(START, END, HEAD, TAIL, HL, X, LAST_X) +#endif + + /* Draw glyphs between START and END in AREA of ROW on window W, starting at x-position X. X is relative to AREA in W. HL is a face-override with the following meaning: diff --git a/src/xwidget.c b/src/xwidget.c index b43cc14a791..6718f4a14c7 100644 --- a/src/xwidget.c +++ b/src/xwidget.c @@ -1,3 +1,4 @@ +#ifdef HAVE_XWIDGETS #include #include @@ -1451,3 +1452,4 @@ xwidget_end_redisplay (struct window *w, struct glyph_matrix *matrix) } } } +#endif