[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] emacs-24 r117694: * nsterm.h (EmacsScroller): judge return
From: |
Jan D. |
Subject: |
[Emacs-diffs] emacs-24 r117694: * nsterm.h (EmacsScroller): judge returns bool. |
Date: |
Sun, 09 Nov 2014 13:47:07 +0000 |
User-agent: |
Bazaar (2.6b2) |
------------------------------------------------------------
revno: 117694
revision-id: address@hidden
parent: address@hidden
fixes bug: http://debbugs.gnu.org/18757
committer: Jan D. <address@hidden>
branch nick: emacs-24
timestamp: Sun 2014-11-09 14:47:02 +0100
message:
* nsterm.h (EmacsScroller): judge returns bool.
* nsterm.m (ns_set_vertical_scroll_bar): Release bar.
(ns_judge_scroll_bars): Only set removed if judge returns true.
(judge): Returns bool == condemned. Remove self from window.
(setPosition:portion:whole:): Remove raise SIGIO.
modified:
src/ChangeLog changelog-20091113204419-o5vbwnq5f7feedwu-1438
src/nsterm.h nsterm.h-20091113204419-o5vbwnq5f7feedwu-8746
src/nsterm.m nsterm.m-20091113204419-o5vbwnq5f7feedwu-8747
=== modified file 'src/ChangeLog'
--- a/src/ChangeLog 2014-11-08 19:40:17 +0000
+++ b/src/ChangeLog 2014-11-09 13:47:02 +0000
@@ -1,3 +1,12 @@
+2014-11-09 Jan Djärv <address@hidden>
+
+ * nsterm.h (EmacsScroller): judge returns bool.
+
+ * nsterm.m (ns_set_vertical_scroll_bar): Release bar.
+ (ns_judge_scroll_bars): Only set removed if judge returns true.
+ (judge): Returns bool == condemned. Remove self from window.
+ (setPosition:portion:whole:): Remove raise SIGIO (Bug#18757).
+
2014-11-08 Jan Djärv <address@hidden>
* nsterm.m (init): Replace OSX 10.9 check with IMPL_COCOA.
=== modified file 'src/nsterm.h'
--- a/src/nsterm.h 2014-11-08 16:32:37 +0000
+++ b/src/nsterm.h 2014-11-09 13:47:02 +0000
@@ -422,7 +422,7 @@
- repeatScroll: (NSTimer *)sender;
- condemn;
- reprieve;
-- judge;
+- (bool)judge;
@end
=== modified file 'src/nsterm.m'
--- a/src/nsterm.m 2014-11-08 19:40:17 +0000
+++ b/src/nsterm.m 2014-11-09 13:47:02 +0000
@@ -3853,6 +3853,7 @@
bar = XNS_SCROLL_BAR (window->vertical_scroll_bar);
[bar removeFromSuperview];
wset_vertical_scroll_bar (window, Qnil);
+ [bar release];
}
ns_clear_frame_area (f, sb_left, top, width, height);
unblock_input ();
@@ -3951,8 +3952,8 @@
{
view = [subviews objectAtIndex: i];
if (![view isKindOfClass: [EmacsScroller class]]) continue;
- [view judge];
- removed = YES;
+ if ([view judge])
+ removed = YES;
}
if (removed)
@@ -7189,9 +7190,10 @@
}
-- judge
+-(bool)judge
{
NSTRACE (judge);
+ bool ret = condemned;
if (condemned)
{
EmacsView *view;
@@ -7200,11 +7202,14 @@
view = (EmacsView *)FRAME_NS_VIEW (frame);
if (view != nil)
view->scrollbarsNeedingUpdate++;
+ if (window)
+ wset_vertical_scroll_bar (window, Qnil);
+ window = 0;
[self removeFromSuperview];
[self release];
unblock_input ();
}
- return self;
+ return ret;
}
@@ -7259,11 +7264,6 @@
#endif
}
- /* Events may come here even if the event loop is not running.
- If we don't enter the event loop, the scroll bar will not update.
- So send SIGIO to ourselves. */
- if (apploopnr == 0) raise (SIGIO);
-
return self;
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] emacs-24 r117694: * nsterm.h (EmacsScroller): judge returns bool.,
Jan D. <=