Don't unnecessarily resize windows in sk_app on X
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2182163002

Review-Url: https://codereview.chromium.org/2182163002
diff --git a/tools/viewer/sk_app/Window.h b/tools/viewer/sk_app/Window.h
index 9ced747..eab8c1d 100644
--- a/tools/viewer/sk_app/Window.h
+++ b/tools/viewer/sk_app/Window.h
@@ -158,8 +158,8 @@
     void onPaint();
     void onResize(uint32_t width, uint32_t height);
 
-    uint32_t width() { return fWidth; }
-    uint32_t height() { return fHeight;  }
+    int width() { return fWidth; }
+    int height() { return fHeight;  }
 
     virtual const DisplayParams& getDisplayParams();
     void setDisplayParams(const DisplayParams& params);
@@ -170,8 +170,8 @@
 protected:
     Window();
 
-    uint32_t     fWidth;
-    uint32_t     fHeight;
+    int          fWidth;
+    int          fHeight;
 
     OnCharFunc   fCharFunc;
     void*        fCharUserData;
diff --git a/tools/viewer/sk_app/unix/Window_unix.h b/tools/viewer/sk_app/unix/Window_unix.h
index fb6b22d..b6d40e6 100644
--- a/tools/viewer/sk_app/unix/Window_unix.h
+++ b/tools/viewer/sk_app/unix/Window_unix.h
@@ -63,10 +63,12 @@
         }
     }
 
-    void markPendingResize(int width, int height) { 
-        fPendingWidth = width; 
-        fPendingHeight = height;
-        fPendingResize = true;
+    void markPendingResize(int width, int height) {
+        if (width != fWidth || height != fHeight){
+            fPendingResize = true;
+            fPendingWidth = width;
+            fPendingHeight = height;
+        }
     }
     void finishResize() { 
         if (fPendingResize) {