]> git.eshelyaron.com Git - emacs.git/commitdiff
fixes so xwidgets doesnt pollute a non xwidget build
authorJoakim Verona <joakim@verona.se>
Sun, 8 Jul 2012 15:42:57 +0000 (17:42 +0200)
committerJoakim Verona <joakim@verona.se>
Sun, 8 Jul 2012 15:42:57 +0000 (17:42 +0200)
lisp/xwidget.el
src/xdisp.c
src/xwidget.c

index d90dca3f75576b4e03f46fba0b9d37a4259fec7c..38b404586e6dc81a10a8c4b449b8d0a96dea00f9 100644 (file)
@@ -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:
index 87e079f8ab182e3bb0b98d9a65e4a51873303610..c06d822de2f127d9158f5d18ef80321654a5086a 100644 (file)
@@ -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:
index b43cc14a791d6e2b0c1dea7b4e936a2ab177306c..6718f4a14c7a503509d70a8d8c4946839b02ca41 100644 (file)
@@ -1,3 +1,4 @@
+#ifdef HAVE_XWIDGETS
 #include <config.h>
 
 #include <signal.h>
@@ -1451,3 +1452,4 @@ xwidget_end_redisplay (struct window *w, struct glyph_matrix *matrix)
         }
     }
 }
+#endif