Home | History | Annotate | Download | only in window
      1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 #include "ui/views/window/window_shape.h"
      6 
      7 #include "ui/gfx/path.h"
      8 #include "ui/gfx/size.h"
      9 
     10 namespace views {
     11 
     12 void GetDefaultWindowMask(const gfx::Size &size, gfx::Path *window_mask) {
     13   // Redefine the window visible region for the new size.
     14   window_mask->moveTo(0, 3);
     15   window_mask->lineTo(1, 2);
     16   window_mask->lineTo(1, 1);
     17   window_mask->lineTo(2, 1);
     18   window_mask->lineTo(3, 0);
     19 
     20   window_mask->lineTo(SkIntToScalar(size.width() - 3), 0);
     21   window_mask->lineTo(SkIntToScalar(size.width() - 2), 1);
     22   window_mask->lineTo(SkIntToScalar(size.width() - 1), 1);
     23   window_mask->lineTo(SkIntToScalar(size.width() - 1), 2);
     24   window_mask->lineTo(SkIntToScalar(size.width()), 3);
     25 
     26   window_mask->lineTo(SkIntToScalar(size.width()),
     27                       SkIntToScalar(size.height() - 3));
     28   window_mask->lineTo(SkIntToScalar(size.width() - 1),
     29                       SkIntToScalar(size.height() - 3));
     30   window_mask->lineTo(SkIntToScalar(size.width() - 1),
     31                       SkIntToScalar(size.height() - 1));
     32   window_mask->lineTo(SkIntToScalar(size.width() - 3),
     33                       SkIntToScalar(size.height() - 2));
     34   window_mask->lineTo(SkIntToScalar(size.width() - 3),
     35                       SkIntToScalar(size.height()));
     36 
     37   window_mask->lineTo(3, SkIntToScalar(size.height()));
     38   window_mask->lineTo(2, SkIntToScalar(size.height() - 2));
     39   window_mask->lineTo(1, SkIntToScalar(size.height() - 1));
     40   window_mask->lineTo(1, SkIntToScalar(size.height() - 3));
     41   window_mask->lineTo(0, SkIntToScalar(size.height() - 3));
     42 
     43   window_mask->close();
     44 }
     45 
     46 } // namespace views
     47