* nsterm.m (init): Replace OSX 10.9 check with IMPL_COCOA.
(run): Ditto. Only use non-system event loop if OSX version is
exactly 10.9 (Bug#18993).
+ (ns_set_vertical_scroll_bar): Don't call bar setPosition: unless
+ needed (Bug#18757).
2014-11-07 Michael Albinus <michael.albinus@gmx.de>
int top, left, height, width, sb_width, sb_left;
EmacsScroller *bar;
BOOL fringe_extended_p;
+ BOOL update_p = YES;
/* optimization; display engine sends WAY too many of these.. */
if (!NILP (window->vertical_scroll_bar))
}
else
view->scrollbarsNeedingUpdate--;
+ update_p = NO;
}
}
bar = [[EmacsScroller alloc] initFrame: r window: win];
wset_vertical_scroll_bar (window, make_save_ptr (bar));
+ update_p = YES;
}
else
{
if (oldRect.origin.x != r.origin.x)
ns_clear_frame_area (f, sb_left, top, width, height);
[bar setFrame: r];
+ update_p = YES;
}
}
- [bar setPosition: position portion: portion whole: whole];
+ if (update_p)
+ [bar setPosition: position portion: portion whole: whole];
unblock_input ();
}