[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
scratch/ns/refactor 7b255dc 07/12: Fix some macOS problems
From: |
Alan Third |
Subject: |
scratch/ns/refactor 7b255dc 07/12: Fix some macOS problems |
Date: |
Sat, 24 Jul 2021 11:40:04 -0400 (EDT) |
branch: scratch/ns/refactor
commit 7b255dc9093c95b1dffd854fad4c885cb3e6516e
Author: Alan Third <alan@idiocy.org>
Commit: Alan Third <alan@idiocy.org>
Fix some macOS problems
* src/nsmenu.m (update_frame_tool_bar): Make sure the toolbar isn't
displayed when it's not supposed to be.
* src/nsterm.m ([EmacsView layoutSublayersOfLayer:]): Reinstate code
intended to prevent a crash when running redisplay.
---
src/nsmenu.m | 4 ++--
src/nsterm.m | 17 ++++++-----------
2 files changed, 8 insertions(+), 13 deletions(-)
diff --git a/src/nsmenu.m b/src/nsmenu.m
index 673c042..bb0dd26 100644
--- a/src/nsmenu.m
+++ b/src/nsmenu.m
@@ -1089,10 +1089,10 @@ update_frame_tool_bar (struct frame *f)
#undef TOOLPROP
}
- if (![toolbar isVisible])
+ if ([toolbar isVisible] != FRAME_EXTERNAL_TOOL_BAR (f))
{
f->output_data.ns->in_animation = 1;
- [toolbar setVisible: YES];
+ [toolbar setVisible: FRAME_EXTERNAL_TOOL_BAR (f)];
f->output_data.ns->in_animation = 0;
}
diff --git a/src/nsterm.m b/src/nsterm.m
index d721377..18b6b9f 100644
--- a/src/nsterm.m
+++ b/src/nsterm.m
@@ -7965,20 +7965,15 @@ not_in_argv (NSString *arg)
crashes. I think it's because this code will always be run
within the run loop and for whatever reason processing input
is dangerous. This technique was stolen wholesale from
- nsmenu.m and seems to work.
-
- FIXME: I can't provoke a crash using layoutSublayersOfLayer,
- however I can't understand why it would be different from
- viewWillDraw. I'll leave this commented out for now, but if
- nobody reports a crash it can be removed. */
- // bool owfi = waiting_for_input;
- // waiting_for_input = 0;
- // block_input ();
+ nsmenu.m and seems to work. */
+ bool owfi = waiting_for_input;
+ waiting_for_input = 0;
+ block_input ();
redisplay ();
- // unblock_input ();
- // waiting_for_input = owfi;
+ unblock_input ();
+ waiting_for_input = owfi;
}
}
#endif
- branch scratch/ns/refactor created (now 0132e0a), Alan Third, 2021/07/24
- scratch/ns/refactor db055f9 01/12: Simplify macOS drawing code, Alan Third, 2021/07/24
- scratch/ns/refactor 361d043 11/12: Convert fringe bitmaps to vectors on NS port, Alan Third, 2021/07/24
- scratch/ns/refactor 7b255dc 07/12: Fix some macOS problems,
Alan Third <=
- scratch/ns/refactor dee3be7 08/12: * src/nsterm.m (ns_set_frame_alpha): Enable alpha on GNUstep., Alan Third, 2021/07/24
- scratch/ns/refactor d9fd86c2 02/12: Tidy up NS port OS window handling, Alan Third, 2021/07/24
- scratch/ns/refactor 94b4470 06/12: Move parent frame setting code into EmacsWindow, Alan Third, 2021/07/24
- scratch/ns/refactor 8d0fb51 04/12: Fix macOS live resize drawing, Alan Third, 2021/07/24
- scratch/ns/refactor df9a612 03/12: Change NS port resize detection, Alan Third, 2021/07/24
- scratch/ns/refactor 0132e0a 12/12: Fix image crash on macOS (bug#49688), Alan Third, 2021/07/24
- scratch/ns/refactor 93b18cc 09/12: Simplify NS sizing and positioning code, Alan Third, 2021/07/24
- scratch/ns/refactor 6f4f66d 05/12: Move NS port toolbar handling to the window, Alan Third, 2021/07/24
- scratch/ns/refactor 8d34954 10/12: Fix NS inset rectangle corners, Alan Third, 2021/07/24