aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJan Djärv2013-08-08 19:52:00 +0200
committerJan Djärv2013-08-08 19:52:00 +0200
commit10bf7f5a3d084050215a0fda1d313c7818801c42 (patch)
tree09e80b10f4027b8c1793fbc941047d7044c35179 /src
parenta3738d206cf04ed2a0309267d1993a24e2b536d2 (diff)
downloademacs-10bf7f5a3d084050215a0fda1d313c7818801c42.tar.gz
emacs-10bf7f5a3d084050215a0fda1d313c7818801c42.zip
* nsterm.m (ns_update_begin): Don't change clip path if it would be
larger than the NSWindow. Fixes: debbugs:14934
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog5
-rw-r--r--src/nsterm.m19
2 files changed, 19 insertions, 5 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index caf7b034401..d57086f7141 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,8 @@
12013-08-08 Jan Djärv <jan.h.d@swipnet.se>
2
3 * nsterm.m (ns_update_begin): Don't change clip path if it would be
4 larger than the NSWindow (Bug#14934).
5
12013-08-08 Dmitry Antipov <dmantipov@yandex.ru> 62013-08-08 Dmitry Antipov <dmantipov@yandex.ru>
2 7
3 Redesign redisplay interface to drop global variable updated_window. 8 Redesign redisplay interface to drop global variable updated_window.
diff --git a/src/nsterm.m b/src/nsterm.m
index 56572d5b9f4..4a1c04ffb8f 100644
--- a/src/nsterm.m
+++ b/src/nsterm.m
@@ -691,9 +691,18 @@ ns_update_begin (struct frame *f)
691 { 691 {
692 NSBezierPath *bp; 692 NSBezierPath *bp;
693 NSRect r = [view frame]; 693 NSRect r = [view frame];
694 bp = [[NSBezierPath bezierPathWithRect: r] retain]; 694 NSRect cr = [[view window] frame];
695 [bp setClip]; 695 /* If a large frame size is set, r may be larger than the window frame
696 [bp release]; 696 before constrained. In that case don't change the clip path, as we
697 will clear in to the tool bar and title bar. */
698 if (r.size.height
699 + FRAME_NS_TITLEBAR_HEIGHT (f)
700 + FRAME_TOOLBAR_HEIGHT (f) <= cr.size.height)
701 {
702 bp = [[NSBezierPath bezierPathWithRect: r] retain];
703 [bp setClip];
704 [bp release];
705 }
697 } 706 }
698#endif 707#endif
699 708
@@ -784,9 +793,9 @@ ns_update_end (struct frame *f)
784 EmacsView *view = FRAME_NS_VIEW (f); 793 EmacsView *view = FRAME_NS_VIEW (f);
785 794
786/* if (f == MOUSE_HL_INFO (f)->mouse_face_mouse_frame) */ 795/* if (f == MOUSE_HL_INFO (f)->mouse_face_mouse_frame) */
787 MOUSE_HL_INFO (f)->mouse_face_defer = 0; 796 MOUSE_HL_INFO (f)->mouse_face_defer = 0;
788 797
789 block_input (); 798 block_input ();
790 799
791 [view unlockFocus]; 800 [view unlockFocus];
792 [[view window] flushWindow]; 801 [[view window] flushWindow];