gfx/skia/trunk/include/utils/SkPathUtils.h

Sat, 03 Jan 2015 20:18:00 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Sat, 03 Jan 2015 20:18:00 +0100
branch
TOR_BUG_3246
changeset 7
129ffea94266
permissions
-rw-r--r--

Conditionally enable double key logic according to:
private browsing mode or privacy.thirdparty.isolate preference and
implement in GetCookieStringCommon and FindCookie where it counts...
With some reservations of how to convince FindCookie users to test
condition and pass a nullptr when disabling double key logic.

     1 /*
     2  *  CAUTION: EXPERIMENTAL CODE
     3  *
     4  *  This code is not to be used and will not be supported
     5  *  if it fails on you. DO NOT USE!
     6  *
     7  */
     9 #ifndef SkPathUtils_DEFINED
    10 #define SkPathUtils_DEFINED
    12 #include "SkPath.h"
    14 /*
    15  * The following methods return the boundary path given a 1-bit bitmap, specified
    16  * by width/height and stride. The bits are interpreted as 1 being "in" the path,
    17  * and 0 being "out". The bits are interpreted as MSB on the left, and LSB on the right.
    18  */
    20 class SK_API SkPathUtils {
    21 public:
    22     /**
    23        This variation iterates the binary data sequentially (as in scanline fashion)
    24        and will add each run of 1's to the path as a rectangular path. Upon parsing
    25        all binary data the path is simplified using the PathOps::Simplify() method.
    26     */
    27     static void BitsToPath_Path(SkPath* path, const char* bitmap,
    28                             int w, int h, int rowBytes);
    30     /**
    31        This variation utilizes the SkRegion class to generate paths, adding
    32        each run of 1's to the SkRegion as an SkIRect. Upon parsing the entirety
    33        of the binary the SkRegion is converted to a Path via getBoundaryPath().
    34     */
    35     static void BitsToPath_Region(SkPath* path, const char* bitmap,
    36                                    int w, int h, int rowBytes);
    38 };
    40 #endif

mercurial