emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

master 5b7ab89 35/35: Fix build on nextstep


From: Lars Ingebrigtsen
Subject: master 5b7ab89 35/35: Fix build on nextstep
Date: Sat, 6 Nov 2021 22:02:01 -0400 (EDT)

branch: master
commit 5b7ab895e1c9a8ddf82cc6d4946dd40c1b720ff0
Author: Po Lu <luangruo@yahoo.com>
Commit: Lars Ingebrigtsen <larsi@gnus.org>

    Fix build on nextstep
    
    * src/xwidget.h: Make some prototypes conditional to X-Windows.
    (struct xwidget): Move find_text field out of GTK conditional.
    
    * src/xwidget.c (Fmake_xwidget): Move find_text out of GTK
    conditional.
    * src/print.c (print_vectorlike): Print correct pointer on macOS.
---
 src/print.c   | 6 ++++++
 src/xwidget.c | 2 +-
 src/xwidget.h | 9 ++++++---
 3 files changed, 13 insertions(+), 4 deletions(-)

diff --git a/src/print.c b/src/print.c
index eca3891..adadb28 100644
--- a/src/print.c
+++ b/src/print.c
@@ -1524,9 +1524,15 @@ print_vectorlike (Lisp_Object obj, Lisp_Object 
printcharfun, bool escapeflag,
     case PVEC_XWIDGET:
 #ifdef HAVE_XWIDGETS
       {
+#ifdef USE_GTK
        int len = sprintf (buf, "#<xwidget %u %p>",
                           XXWIDGET (obj)->xwidget_id,
                           XXWIDGET (obj)->widget_osr);
+#else
+       int len = sprintf (buf, "#<xwidget %u %p>",
+                          XXWIDGET (obj)->xwidget_id,
+                          XXWIDGET (obj)->xwWidget);
+#endif
        strout (buf, len, len, printcharfun);
        break;
       }
diff --git a/src/xwidget.c b/src/xwidget.c
index 90aac4e..78a3860 100644
--- a/src/xwidget.c
+++ b/src/xwidget.c
@@ -139,6 +139,7 @@ fails.  */)
   Vxwidget_list = Fcons (val, Vxwidget_list);
   xw->plist = Qnil;
   xw->xwidget_id = ++xwidget_counter;
+  xw->find_text = NULL;
 
   Fputhash (make_fixnum (xw->xwidget_id), val, id_to_xwidget_map);
 
@@ -146,7 +147,6 @@ fails.  */)
   xw->widgetwindow_osr = NULL;
   xw->widget_osr = NULL;
   xw->hit_result = 0;
-  xw->find_text = NULL;
   if (EQ (xw->type, Qwebkit))
     {
       block_input ();
diff --git a/src/xwidget.h b/src/xwidget.h
index 3bab6d5..ad8b7c0 100644
--- a/src/xwidget.h
+++ b/src/xwidget.h
@@ -62,13 +62,13 @@ struct xwidget
   int height;
   int width;
   uint32_t xwidget_id;
+  char *find_text;
 
 #if defined (USE_GTK)
   /* For offscreen widgets, unused if not osr.  */
   GtkWidget *widget_osr;
   GtkWidget *widgetwindow_osr;
   guint hit_result;
-  gchar *find_text;
 #elif defined (NS_IMPL_COCOA)
 # ifdef __OBJC__
   /* For offscreen widgets, unused if not osr.  */
@@ -171,15 +171,18 @@ void store_xwidget_download_callback_event (struct 
xwidget *xw,
 void store_xwidget_js_callback_event (struct xwidget *xw,
                                       Lisp_Object proc,
                                       Lisp_Object argument);
-struct xwidget_view *xwidget_view_from_window (Window wdesc);
-void xwidget_expose (struct xwidget_view *xv);
 
 extern struct xwidget *xwidget_from_id (uint32_t id);
+
+#ifdef HAVE_X_WINDOWS
+struct xwidget_view *xwidget_view_from_window (Window wdesc);
+void xwidget_expose (struct xwidget_view *xv);
 extern void kill_frame_xwidget_views (struct frame *f);
 extern void xwidget_button (struct xwidget_view *, bool, int,
                            int, int, int, Time);
 extern void xwidget_motion_or_crossing (struct xwidget_view *,
                                        const XEvent *);
+#endif
 #else
 INLINE_HEADER_BEGIN
 INLINE void syms_of_xwidget (void) {}



reply via email to

[Prev in Thread] Current Thread [Next in Thread]