patches: apply all maintainer review fixes (review pass 2)
All 9 patches now apply cleanly with git am on Linux (git 2.43.0). Root cause of previous failures: hunk offsets were systematically wrong by 7-40 lines; macOS git fuzzy-matched them, Linux did not. Patches regenerated via git format-patch after applying all changes. Fixes applied: - P0000: unbind_to on no-candidate fall-through path; hunk regenerated - P0001: block_input + record_unwind_protect_void in ns_ax_buffer_text - P0003: [trims release] MRC memory leak; block_input already present - P0004: mojibake comment (--- not UTF-8 em-dash) - P0006: texinfo dangling semicolons -> periods in GNUstep paragraph - P0007: em-dash fixes removed (content was already --- from P0004/P0005) - P0008: childFrameLastBuffer -> BVAR(b,name) for GC safety; BUF_OVERLAY_MODIFF removed from ensureTextCache (hl-line-mode O(N) rebuild regression); block_input in ns_ax_buffer_text (P0001 scope); voiceoverSetPoint and childFrameLastBuffer explicit init in initFrameFromEmacs:; cachedOverlayModiffForText ivar removed
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
From edb3a37f853fc9b98dfc96a7ba0434e87e1fdc3e Mon Sep 17 00:00:00 2001
|
||||
From cc35459697126cf2fe7d152978170fa1e152b11d Mon Sep 17 00:00:00 2001
|
||||
From: Martin Sukany <martin@sukany.cz>
|
||||
Date: Sat, 28 Feb 2026 22:39:35 +0100
|
||||
Subject: [PATCH 0/8] ns: integrate with macOS Zoom for cursor tracking
|
||||
Subject: [PATCH 1/9] ns: integrate with macOS Zoom for cursor tracking
|
||||
|
||||
Inform macOS Zoom of the text cursor position so the zoomed viewport
|
||||
follows keyboard focus in Emacs. Also track completion candidates so
|
||||
@@ -28,11 +28,11 @@ to the selected completion candidate after normal cursor tracking.
|
||||
---
|
||||
etc/NEWS | 11 ++
|
||||
src/nsterm.h | 6 +
|
||||
src/nsterm.m | 353 +++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
3 files changed, 370 insertions(+)
|
||||
src/nsterm.m | 354 +++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
3 files changed, 371 insertions(+)
|
||||
|
||||
diff --git a/etc/NEWS b/etc/NEWS
|
||||
index ef36df5..80661a9 100644
|
||||
index 7367e3ccbd..4c149e41d6 100644
|
||||
--- a/etc/NEWS
|
||||
+++ b/etc/NEWS
|
||||
@@ -82,6 +82,17 @@ other directory on your system. You can also invoke the
|
||||
@@ -54,7 +54,7 @@ index ef36df5..80661a9 100644
|
||||
** 'line-spacing' now supports specifying spacing above the line.
|
||||
Previously, only spacing below the line could be specified. The user
|
||||
diff --git a/src/nsterm.h b/src/nsterm.h
|
||||
index 7c1ee4c..ea6e7ba 100644
|
||||
index 7c1ee4cf53..ea6e7ba4f5 100644
|
||||
--- a/src/nsterm.h
|
||||
+++ b/src/nsterm.h
|
||||
@@ -484,6 +484,12 @@ enum ns_return_frame_mode
|
||||
@@ -71,7 +71,7 @@ index 7c1ee4c..ea6e7ba 100644
|
||||
}
|
||||
|
||||
diff --git a/src/nsterm.m b/src/nsterm.m
|
||||
index 74e4ad5..fc75910 100644
|
||||
index 932d209f56..88c9251c18 100644
|
||||
--- a/src/nsterm.m
|
||||
+++ b/src/nsterm.m
|
||||
@@ -71,6 +71,11 @@ Updated by Christian Limpach (chris@nice.ch)
|
||||
@@ -86,7 +86,7 @@ index 74e4ad5..fc75910 100644
|
||||
#endif
|
||||
|
||||
static EmacsMenu *dockMenu;
|
||||
@@ -1081,6 +1086,280 @@ static NSRect constrain_frame_rect(NSRect frameRect, bool isFullscreen)
|
||||
@@ -1081,6 +1086,281 @@ static NSRect constrain_frame_rect(NSRect frameRect, bool isFullscreen)
|
||||
}
|
||||
|
||||
|
||||
@@ -359,6 +359,7 @@ index 74e4ad5..fc75910 100644
|
||||
+ UAZoomChangeFocus (&cgRect, &cgRect,
|
||||
+ kUAZoomFocusTypeInsertionPoint);
|
||||
+ }
|
||||
+ unbind_to (count, Qnil);
|
||||
+}
|
||||
+
|
||||
+#endif /* MAC_OS_X_VERSION_MIN_REQUIRED >= 101000 */
|
||||
@@ -367,7 +368,7 @@ index 74e4ad5..fc75910 100644
|
||||
static void
|
||||
ns_update_end (struct frame *f)
|
||||
/* --------------------------------------------------------------------------
|
||||
@@ -1104,6 +1383,41 @@ static NSRect constrain_frame_rect(NSRect frameRect, bool isFullscreen)
|
||||
@@ -1104,6 +1384,41 @@ static NSRect constrain_frame_rect(NSRect frameRect, bool isFullscreen)
|
||||
|
||||
unblock_input ();
|
||||
ns_updating_frame = NULL;
|
||||
@@ -409,7 +410,7 @@ index 74e4ad5..fc75910 100644
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -3232,6 +3546,45 @@ Note that CURSOR_WIDTH is meaningful only for (h)bar cursors.
|
||||
@@ -3232,6 +3547,45 @@ Note that CURSOR_WIDTH is meaningful only for (h)bar cursors.
|
||||
/* Prevent the cursor from being drawn outside the text area. */
|
||||
r = NSIntersectionRect (r, ns_row_rect (w, glyph_row, TEXT_AREA));
|
||||
|
||||
|
||||
Reference in New Issue
Block a user