| OLD | NEW | 
|---|
| 1 | 1 | 
| 2 /* | 2 /* | 
| 3  * Copyright 2011 Google Inc. | 3  * Copyright 2011 Google Inc. | 
| 4  * | 4  * | 
| 5  * Use of this source code is governed by a BSD-style license that can be | 5  * Use of this source code is governed by a BSD-style license that can be | 
| 6  * found in the LICENSE file. | 6  * found in the LICENSE file. | 
| 7  */ | 7  */ | 
| 8 #include "SkWindow.h" | 8 #include "SkWindow.h" | 
| 9 #include "SkCanvas.h" | 9 #include "SkCanvas.h" | 
| 10 #include "SkDevice.h" | 10 #include "SkDevice.h" | 
| 11 #include "SkOSMenu.h" | 11 #include "SkOSMenu.h" | 
| 12 #include "SkSystemEventTypes.h" | 12 #include "SkSystemEventTypes.h" | 
| 13 #include "SkTime.h" | 13 #include "SkTime.h" | 
| 14 | 14 | 
| 15 #define SK_EventDelayInval "\xd" "n" "\xa" "l" | 15 #define SK_EventDelayInval "\xd" "n" "\xa" "l" | 
| 16 | 16 | 
| 17 #define TEST_BOUNDERx |  | 
| 18 |  | 
| 19 #include "SkBounder.h" |  | 
| 20 class TestSkBounder : public SkBounder { |  | 
| 21 public: |  | 
| 22     explicit TestSkBounder(const SkBitmap& bm) : fCanvas(bm) {} |  | 
| 23 |  | 
| 24 protected: |  | 
| 25     virtual bool onIRect(const SkIRect& r) SK_OVERRIDE { |  | 
| 26         SkRect    rr; |  | 
| 27 |  | 
| 28         rr.set(SkIntToScalar(r.fLeft), SkIntToScalar(r.fTop), |  | 
| 29                 SkIntToScalar(r.fRight), SkIntToScalar(r.fBottom)); |  | 
| 30 |  | 
| 31         SkPaint    p; |  | 
| 32 |  | 
| 33         p.setStyle(SkPaint::kStroke_Style); |  | 
| 34         p.setColor(SK_ColorYELLOW); |  | 
| 35 |  | 
| 36 #if 0 |  | 
| 37         rr.inset(SK_ScalarHalf, SK_ScalarHalf); |  | 
| 38 #else |  | 
| 39         rr.inset(-SK_ScalarHalf, -SK_ScalarHalf); |  | 
| 40 #endif |  | 
| 41 |  | 
| 42         fCanvas.drawRect(rr, p); |  | 
| 43         return true; |  | 
| 44     } |  | 
| 45 private: |  | 
| 46     SkCanvas    fCanvas; |  | 
| 47 }; |  | 
| 48 |  | 
| 49 SkWindow::SkWindow() : fFocusView(NULL) { | 17 SkWindow::SkWindow() : fFocusView(NULL) { | 
| 50     fClicks.reset(); | 18     fClicks.reset(); | 
| 51     fWaitingOnInval = false; | 19     fWaitingOnInval = false; | 
| 52 | 20 | 
| 53 #ifdef SK_BUILD_FOR_WINCE | 21 #ifdef SK_BUILD_FOR_WINCE | 
| 54     fColorType = kRGB_565_SkColorType; | 22     fColorType = kRGB_565_SkColorType; | 
| 55 #else | 23 #else | 
| 56     fColorType = kN32_SkColorType; | 24     fColorType = kN32_SkColorType; | 
| 57 #endif | 25 #endif | 
| 58 | 26 | 
| (...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 164         if (updateArea) | 132         if (updateArea) | 
| 165             *updateArea = fDirtyRgn.getBounds(); | 133             *updateArea = fDirtyRgn.getBounds(); | 
| 166 | 134 | 
| 167         SkAutoCanvasRestore acr(canvas, true); | 135         SkAutoCanvasRestore acr(canvas, true); | 
| 168         canvas->concat(fMatrix); | 136         canvas->concat(fMatrix); | 
| 169 | 137 | 
| 170         // empty this now, so we can correctly record any inval calls that | 138         // empty this now, so we can correctly record any inval calls that | 
| 171         // might be made during the draw call. | 139         // might be made during the draw call. | 
| 172         fDirtyRgn.setEmpty(); | 140         fDirtyRgn.setEmpty(); | 
| 173 | 141 | 
| 174 #ifdef TEST_BOUNDER |  | 
| 175         TestSkBounder bounder(bm); |  | 
| 176         canvas->setBounder(&bounder); |  | 
| 177 #endif |  | 
| 178 #ifdef SK_SIMULATE_FAILED_MALLOC | 142 #ifdef SK_SIMULATE_FAILED_MALLOC | 
| 179         gEnableControlledThrow = true; | 143         gEnableControlledThrow = true; | 
| 180 #endif | 144 #endif | 
| 181 #ifdef SK_BUILD_FOR_WIN32 | 145 #ifdef SK_BUILD_FOR_WIN32 | 
| 182         //try { | 146         //try { | 
| 183             this->draw(canvas); | 147             this->draw(canvas); | 
| 184         //} | 148         //} | 
| 185         //catch (...) { | 149         //catch (...) { | 
| 186         //} | 150         //} | 
| 187 #else | 151 #else | 
| 188         this->draw(canvas); | 152         this->draw(canvas); | 
| 189 #endif | 153 #endif | 
| 190 #ifdef SK_SIMULATE_FAILED_MALLOC | 154 #ifdef SK_SIMULATE_FAILED_MALLOC | 
| 191         gEnableControlledThrow = false; | 155         gEnableControlledThrow = false; | 
| 192 #endif | 156 #endif | 
| 193 #ifdef TEST_BOUNDER |  | 
| 194         canvas->setBounder(NULL); |  | 
| 195 #endif |  | 
| 196 | 157 | 
| 197 #if defined(SK_BUILD_FOR_WINCE) && defined(USE_GX_SCREEN) | 158 #if defined(SK_BUILD_FOR_WINCE) && defined(USE_GX_SCREEN) | 
| 198         GXEndDraw(); | 159         GXEndDraw(); | 
| 199 #endif | 160 #endif | 
| 200 | 161 | 
| 201         return true; | 162         return true; | 
| 202     } | 163     } | 
| 203     return false; | 164     return false; | 
| 204 } | 165 } | 
| 205 | 166 | 
| (...skipping 162 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 368                 fClicks.remove(index); | 329                 fClicks.remove(index); | 
| 369                 handled = true; | 330                 handled = true; | 
| 370             } | 331             } | 
| 371             break; | 332             break; | 
| 372         default: | 333         default: | 
| 373             // Do nothing | 334             // Do nothing | 
| 374             break; | 335             break; | 
| 375     } | 336     } | 
| 376     return handled; | 337     return handled; | 
| 377 } | 338 } | 
| OLD | NEW | 
|---|