diff options
| author | Jan Djärv | 2012-09-10 23:01:45 +0200 |
|---|---|---|
| committer | Jan Djärv | 2012-09-10 23:01:45 +0200 |
| commit | 16130a58689c3e24a159dbbd7cab000a28511cc7 (patch) | |
| tree | e379e0baa57f3bcee1b24c773f0b980565d69de0 /src | |
| parent | 04e082b0dd7d290036e2e691f65c467d8ac606c0 (diff) | |
| download | emacs-16130a58689c3e24a159dbbd7cab000a28511cc7.tar.gz emacs-16130a58689c3e24a159dbbd7cab000a28511cc7.zip | |
* nsterm.m (ns_update_begin): Set clip path to whole view by using
NSBezierPath.
Fixes: debbugs:12131
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 5 | ||||
| -rw-r--r-- | src/nsterm.m | 9 |
2 files changed, 14 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 548c80b3b85..412321563ba 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,8 @@ | |||
| 1 | 2012-09-10 Jan Djärv <jan.h.d@swipnet.se> | ||
| 2 | |||
| 3 | * nsterm.m (ns_update_begin): Set clip path to whole view by using | ||
| 4 | NSBezierPath (Bug#12131). | ||
| 5 | |||
| 1 | 2012-09-10 Chong Yidong <cyd@gnu.org> | 6 | 2012-09-10 Chong Yidong <cyd@gnu.org> |
| 2 | 7 | ||
| 3 | * fns.c (Fdelq, Fdelete): Doc fix. | 8 | * fns.c (Fdelq, Fdelete): Doc fix. |
diff --git a/src/nsterm.m b/src/nsterm.m index 74a3d858710..798c9758376 100644 --- a/src/nsterm.m +++ b/src/nsterm.m | |||
| @@ -627,6 +627,8 @@ ns_update_begin (struct frame *f) | |||
| 627 | -------------------------------------------------------------------------- */ | 627 | -------------------------------------------------------------------------- */ |
| 628 | { | 628 | { |
| 629 | NSView *view = FRAME_NS_VIEW (f); | 629 | NSView *view = FRAME_NS_VIEW (f); |
| 630 | NSRect r = [view frame]; | ||
| 631 | NSBezierPath *bp = [NSBezierPath bezierPath]; | ||
| 630 | NSTRACE (ns_update_begin); | 632 | NSTRACE (ns_update_begin); |
| 631 | 633 | ||
| 632 | ns_update_auto_hide_menu_bar (); | 634 | ns_update_auto_hide_menu_bar (); |
| @@ -634,6 +636,13 @@ ns_update_begin (struct frame *f) | |||
| 634 | ns_updating_frame = f; | 636 | ns_updating_frame = f; |
| 635 | [view lockFocus]; | 637 | [view lockFocus]; |
| 636 | 638 | ||
| 639 | /* drawRect may have been called for say the minibuffer, and then clip path | ||
| 640 | is for the minibuffer. But the display engine may draw more because | ||
| 641 | we have set the frame as garbaged. So reset clip path to the whole | ||
| 642 | view. */ | ||
| 643 | [bp appendBezierPathWithRect: r]; | ||
| 644 | [bp setClip]; | ||
| 645 | |||
| 637 | #ifdef NS_IMPL_GNUSTEP | 646 | #ifdef NS_IMPL_GNUSTEP |
| 638 | uRect = NSMakeRect (0, 0, 0, 0); | 647 | uRect = NSMakeRect (0, 0, 0, 0); |
| 639 | #endif | 648 | #endif |