OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2006, 2007, 2008 Apple Inc. All rights reserved. | 2 * Copyright (C) 2006, 2007, 2008 Apple Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
6 * are met: | 6 * are met: |
7 * 1. Redistributions of source code must retain the above copyright | 7 * 1. Redistributions of source code must retain the above copyright |
8 * notice, this list of conditions and the following disclaimer. | 8 * notice, this list of conditions and the following disclaimer. |
9 * 2. Redistributions in binary form must reproduce the above copyright | 9 * 2. Redistributions in binary form must reproduce the above copyright |
10 * notice, this list of conditions and the following disclaimer in the | 10 * notice, this list of conditions and the following disclaimer in the |
(...skipping 875 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
886 calculateAndPaintOverhangAreas(context, rect); | 886 calculateAndPaintOverhangAreas(context, rect); |
887 | 887 |
888 // Now paint the scrollbars. | 888 // Now paint the scrollbars. |
889 if (!m_scrollbarsSuppressed && (m_horizontalScrollbar || m_verticalScrollbar
)) { | 889 if (!m_scrollbarsSuppressed && (m_horizontalScrollbar || m_verticalScrollbar
)) { |
890 GraphicsContextStateSaver stateSaver(*context); | 890 GraphicsContextStateSaver stateSaver(*context); |
891 IntRect scrollViewDirtyRect = rect; | 891 IntRect scrollViewDirtyRect = rect; |
892 IntRect visibleAreaWithScrollbars(location(), visibleContentRect(Include
Scrollbars).size()); | 892 IntRect visibleAreaWithScrollbars(location(), visibleContentRect(Include
Scrollbars).size()); |
893 scrollViewDirtyRect.intersect(visibleAreaWithScrollbars); | 893 scrollViewDirtyRect.intersect(visibleAreaWithScrollbars); |
894 context->translate(x(), y()); | 894 context->translate(x(), y()); |
895 scrollViewDirtyRect.moveBy(-location()); | 895 scrollViewDirtyRect.moveBy(-location()); |
| 896 context->clip(IntRect(IntPoint(), visibleAreaWithScrollbars.size())); |
896 | 897 |
897 paintScrollbars(context, scrollViewDirtyRect); | 898 paintScrollbars(context, scrollViewDirtyRect); |
898 } | 899 } |
899 | 900 |
900 // Paint the panScroll Icon | 901 // Paint the panScroll Icon |
901 if (m_drawPanScrollIcon) | 902 if (m_drawPanScrollIcon) |
902 paintPanScrollIcon(context); | 903 paintPanScrollIcon(context); |
903 } | 904 } |
904 | 905 |
905 void ScrollView::calculateOverhangAreasForPainting(IntRect& horizontalOverhangRe
ct, IntRect& verticalOverhangRect) | 906 void ScrollView::calculateOverhangAreasForPainting(IntRect& horizontalOverhangRe
ct, IntRect& verticalOverhangRect) |
(...skipping 207 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1113 return; | 1114 return; |
1114 | 1115 |
1115 ScrollableArea::setScrollOrigin(origin); | 1116 ScrollableArea::setScrollOrigin(origin); |
1116 | 1117 |
1117 // Update if the scroll origin changes, since our position will be different
if the content size did not change. | 1118 // Update if the scroll origin changes, since our position will be different
if the content size did not change. |
1118 if (updatePositionAtAll && updatePositionSynchronously) | 1119 if (updatePositionAtAll && updatePositionSynchronously) |
1119 updateScrollbars(scrollOffset()); | 1120 updateScrollbars(scrollOffset()); |
1120 } | 1121 } |
1121 | 1122 |
1122 } // namespace WebCore | 1123 } // namespace WebCore |
OLD | NEW |