aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJan Djärv <[email protected]>2013-07-07 10:41:09 +0200
committerJan Djärv <[email protected]>2013-07-07 10:41:09 +0200
commit0da857ddacb50219c6988bb68457e70dbe555826 (patch)
tree168467314a2f1feca6e0f36f55937c754eef6f44
parent5f86adcd2c79e58c6ceeb30fb26c44e830b26a3e (diff)
*** empty log message ***
-rw-r--r--src/ChangeLog5
-rw-r--r--src/nsterm.m10
2 files changed, 15 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index f8221e2fd3..069d39ce6b 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,8 @@
+2013-07-07 Jan Djärv <[email protected]>
+
+ * nsterm.m (sendEvent:): Propagate keyboard events to modal windows
+ for NS_IMPL_GNUSTEP.
+
2013-07-07 Paul Eggert <[email protected]>
Fix openp errno handling.
diff --git a/src/nsterm.m b/src/nsterm.m
index 97a6313489..dfb82edd73 100644
--- a/src/nsterm.m
+++ b/src/nsterm.m
@@ -4419,6 +4419,16 @@ ns_term_shutdown (int sig)
/* NSTRACE (sendEvent); */
/*fprintf (stderr, "received event of type %d\t%d\n", type);*/
+#ifdef NS_IMPL_GNUSTEP
+ // Keyboard events aren't propagated to file dialogs for some reason.
+ if ([NSApp modalWindow] != nil &&
+ (type == NSKeyDown || type == NSKeyUp || type == NSFlagsChanged))
+ {
+ [[NSApp modalWindow] sendEvent: theEvent];
+ return;
+ }
+#endif
+
if (type == NSApplicationDefined)
{
switch ([theEvent data2])