aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorPo Lu2022-09-07 09:07:59 +0800
committerPo Lu2022-09-07 09:52:35 +0800
commit976965eb5ed00ddc8806b2adcbd5761189823f2c (patch)
treed92eee273106350f182c55b70cfaf7b3e4054ada /src
parent5308a4e11e72804d6cae56b8ea13c51b3f523c51 (diff)
downloademacs-976965eb5ed00ddc8806b2adcbd5761189823f2c.tar.gz
emacs-976965eb5ed00ddc8806b2adcbd5761189823f2c.zip
Reenable reporting of frame movement on NS
* src/nsterm.m ([EmacsView windowDidMove:]): Restore code to generate MOVE_FRAME_EVENTS, and use kbd_buffer_store_event instead.
Diffstat (limited to 'src')
-rw-r--r--src/nsterm.m22
1 files changed, 14 insertions, 8 deletions
diff --git a/src/nsterm.m b/src/nsterm.m
index 6c6151701b8..d6290449b43 100644
--- a/src/nsterm.m
+++ b/src/nsterm.m
@@ -7912,22 +7912,28 @@ ns_create_font_panel_buttons (id target, SEL select, SEL cancel_action)
7912 NSRect r = [win frame]; 7912 NSRect r = [win frame];
7913 NSArray *screens = [NSScreen screens]; 7913 NSArray *screens = [NSScreen screens];
7914 NSScreen *screen = [screens objectAtIndex: 0]; 7914 NSScreen *screen = [screens objectAtIndex: 0];
7915 struct input_event ie;
7915 7916
7916 NSTRACE ("[EmacsView windowDidMove:]"); 7917 NSTRACE ("[EmacsView windowDidMove:]");
7917 7918
7918 if (!emacsframe->output_data.ns) 7919 if (!emacsframe->output_data.ns)
7919 return; 7920 return;
7921
7920 if (screen != nil) 7922 if (screen != nil)
7921 { 7923 {
7922 emacsframe->left_pos = NSMinX (r) - NS_PARENT_WINDOW_LEFT_POS (emacsframe); 7924 emacsframe->left_pos = (NSMinX (r)
7923 emacsframe->top_pos = NS_PARENT_WINDOW_TOP_POS (emacsframe) - NSMaxY (r); 7925 - NS_PARENT_WINDOW_LEFT_POS (emacsframe));
7926 emacsframe->top_pos = (NS_PARENT_WINDOW_TOP_POS (emacsframe)
7927 - NSMaxY (r));
7924 7928
7925 // FIXME: after event part below didExitFullScreen is not received 7929 if (emacs_event)
7926 // if (emacs_event) 7930 {
7927 // { 7931 ie.kind = MOVE_FRAME_EVENT;
7928 // emacs_event->kind = MOVE_FRAME_EVENT; 7932 XSETFRAME (ie.frame_or_window, emacsframe);
7929 // EV_TRAILER ((id)nil); 7933 XSETINT (ie.x, emacsframe->left_pos);
7930 // } 7934 XSETINT (ie.y, emacsframe->top_pos);
7935 kbd_buffer_store_event (&ie);
7936 }
7931 } 7937 }
7932} 7938}
7933 7939