Mercurial > emacs
diff src/macterm.c @ 85114:5039706521c9
Merge from emacs--rel--22
Revision: emacs@sv.gnu.org/emacs--devo--0--patch-875
author | Miles Bader <miles@gnu.org> |
---|---|
date | Tue, 09 Oct 2007 08:52:57 +0000 |
parents | cd518430d431 c975fef407b4 |
children | 75ad106491dd bdb3fe0ba9fa |
line wrap: on
line diff
--- a/src/macterm.c Tue Oct 09 08:44:02 2007 +0000 +++ b/src/macterm.c Tue Oct 09 08:52:57 2007 +0000 @@ -2360,6 +2360,9 @@ for (i = 0; i < h; i++) bits[i] = ~bits[i]; + + BLOCK_INPUT; + provider = CGDataProviderCreateWithData (NULL, bits, sizeof (unsigned short) * h, NULL); if (provider) @@ -2369,6 +2372,8 @@ provider, NULL, 0); CGDataProviderRelease (provider); } + + UNBLOCK_INPUT; } static void @@ -2379,7 +2384,11 @@ return; if (fringe_bmp[which]) - CGImageRelease (fringe_bmp[which]); + { + BLOCK_INPUT; + CGImageRelease (fringe_bmp[which]); + UNBLOCK_INPUT; + } fringe_bmp[which] = 0; } #endif @@ -8757,7 +8766,7 @@ font_id = atsu_find_font_from_family_name (family); if (font_id == kATSUInvalidFontID) - return; + return NULL; size_fixed = Long2Fix (size); bold_p = (fontface & bold) != 0; italic_p = (fontface & italic) != 0; @@ -12148,7 +12157,13 @@ will be selected only when it is active. */ if (WINDOWP (window) && !EQ (window, last_window) - && !EQ (window, selected_window)) + && !EQ (window, selected_window) + /* For click-to-focus window managers + create event iff we don't leave the + selected frame. */ + && (focus_follows_mouse + || (EQ (XWINDOW (window)->frame, + XWINDOW (selected_window)->frame)))) { inev.kind = SELECT_WINDOW_EVENT; inev.frame_or_window = window;