Mercurial > emacs
comparison src/w32term.c @ 109431:799b50142743
Merge from mainline.
author | Katsumi Yamaoka <yamaoka@jpl.org> |
---|---|
date | Sun, 11 Jul 2010 22:57:47 +0000 |
parents | 60516122d066 |
children | d12162869c07 |
comparison
equal
deleted
inserted
replaced
109430:0b8608a36b55 | 109431:799b50142743 |
---|---|
735 struct draw_fringe_bitmap_params *p) | 735 struct draw_fringe_bitmap_params *p) |
736 { | 736 { |
737 struct frame *f = XFRAME (WINDOW_FRAME (w)); | 737 struct frame *f = XFRAME (WINDOW_FRAME (w)); |
738 HDC hdc; | 738 HDC hdc; |
739 struct face *face = p->face; | 739 struct face *face = p->face; |
740 int rowY; | |
741 | 740 |
742 hdc = get_frame_dc (f); | 741 hdc = get_frame_dc (f); |
743 | 742 |
744 if (!p->overlay_p) | 743 if (!p->overlay_p) |
745 { | 744 { |
794 if (bx >= 0 && nx > 0) | 793 if (bx >= 0 && nx > 0) |
795 w32_fill_area (f, hdc, face->background, bx, by, nx, ny); | 794 w32_fill_area (f, hdc, face->background, bx, by, nx, ny); |
796 } | 795 } |
797 | 796 |
798 /* Must clip because of partially visible lines. */ | 797 /* Must clip because of partially visible lines. */ |
799 rowY = WINDOW_TO_FRAME_PIXEL_Y (w, row->y); | 798 w32_clip_to_row (w, row, -1, hdc); |
800 if (p->y < rowY) | |
801 { | |
802 /* Adjust position of "bottom aligned" bitmap on partially | |
803 visible last row. */ | |
804 int oldY = row->y; | |
805 int oldVH = row->visible_height; | |
806 row->visible_height = p->h; | |
807 row->y -= rowY - p->y; | |
808 w32_clip_to_row (w, row, -1, hdc); | |
809 row->y = oldY; | |
810 row->visible_height = oldVH; | |
811 } | |
812 else | |
813 w32_clip_to_row (w, row, -1, hdc); | |
814 | 799 |
815 if (p->which && p->which < max_fringe_bmp) | 800 if (p->which && p->which < max_fringe_bmp) |
816 { | 801 { |
817 HBITMAP pixmap = fringe_bmp[p->which]; | 802 HBITMAP pixmap = fringe_bmp[p->which]; |
818 HDC compat_hdc; | 803 HDC compat_hdc; |