diff --git a/patches/0001-ns-implement-AXBoundsForRange-for-macOS-Zoom-cursor-.patch b/patches/0001-ns-implement-AXBoundsForRange-for-macOS-Zoom-cursor-.patch index 89b24f4..564b668 100644 --- a/patches/0001-ns-implement-AXBoundsForRange-for-macOS-Zoom-cursor-.patch +++ b/patches/0001-ns-implement-AXBoundsForRange-for-macOS-Zoom-cursor-.patch @@ -90,7 +90,7 @@ index 7c1ee4c..855d302 100644 diff --git a/src/nsterm.m b/src/nsterm.m -index 932d209..45e480e 100644 +index 932d209..ca6b969 100644 --- a/src/nsterm.m +++ b/src/nsterm.m @@ -1104,6 +1104,11 @@ ns_update_end (struct frame *f) @@ -143,7 +143,7 @@ index 932d209..45e480e 100644 ns_focus (f, NULL, 0); NSGraphicsContext *ctx = [NSGraphicsContext currentContext]; -@@ -6849,265 +6885,1329 @@ ns_create_font_panel_buttons (id target, SEL select, SEL cancel_action) +@@ -6849,265 +6885,1333 @@ ns_create_font_panel_buttons (id target, SEL select, SEL cancel_action) /* ========================================================================== @@ -217,8 +217,6 @@ index 932d209..45e480e 100644 - EmacsLayer *layer = (EmacsLayer *)[self layer]; - [layer release]; -#endif -+ /* Temporarily switch to buffer b so TEXT_PROP_MEANS_INVISIBLE -+ can access its invisibility_spec. */ + struct buffer *oldb = current_buffer; + if (b != current_buffer) + set_buffer_internal_1 (b); @@ -246,7 +244,13 @@ index 932d209..45e480e 100644 + /* Check invisible property (text properties + overlays). */ + Lisp_Object invis = Fget_char_property (make_fixnum (pos), + Qinvisible, Qnil); -+ if (!NILP (invis) && TEXT_PROP_MEANS_INVISIBLE (invis)) ++ /* Check if invisible property means truly invisible. ++ TEXT_PROP_MEANS_INVISIBLE is defined only in xdisp.c, ++ so we replicate: EQ(invis, Qt), or invis is on the ++ buffer's invisibility-spec list. Simplified: any ++ non-nil invisible property hides the text. This matches ++ the common case (invisible t) and org-mode/dired usage. */ ++ if (!NILP (invis)) + { + /* Skip to the next position where invisible changes. */ + Lisp_Object next = Fnext_single_char_property_change ( @@ -1657,7 +1661,7 @@ index 932d209..45e480e 100644 0 : [[theEvent charactersIgnoringModifiers] characterAtIndex: 0]; /* Is it a "function key"? */ -@@ -8237,6 +9337,27 @@ ns_in_echo_area (void) +@@ -8237,6 +9341,27 @@ ns_in_echo_area (void) XSETFRAME (event.frame_or_window, emacsframe); kbd_buffer_store_event (&event); ns_send_appdefined (-1); // Kick main loop @@ -1685,7 +1689,7 @@ index 932d209..45e480e 100644 } -@@ -9474,6 +10595,297 @@ ns_in_echo_area (void) +@@ -9474,6 +10599,297 @@ ns_in_echo_area (void) return fs_state; } @@ -1983,7 +1987,7 @@ index 932d209..45e480e 100644 @end /* EmacsView */ -@@ -9941,6 +11353,14 @@ nswindow_orderedIndex_sort (id w1, id w2, void *c) +@@ -9941,6 +11357,14 @@ nswindow_orderedIndex_sort (id w1, id w2, void *c) return [super accessibilityAttributeValue:attribute]; }