gfx/skia/trunk/src/views/SkViewPriv.cpp

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.

     2 /*
     3  * Copyright 2011 Google Inc.
     4  *
     5  * Use of this source code is governed by a BSD-style license that can be
     6  * found in the LICENSE file.
     7  */
     8 #include "SkViewPriv.h"
    10 //////////////////////////////////////////////////////////////////////
    12 void SkView::Artist::draw(SkView* view, SkCanvas* canvas)
    13 {
    14     SkASSERT(view && canvas);
    15     this->onDraw(view, canvas);
    16 }
    18 void SkView::Artist::inflate(const SkDOM& dom, const SkDOM::Node* node)
    19 {
    20     SkASSERT(&dom && node);
    21     this->onInflate(dom, node);
    22 }
    24 void SkView::Artist::onInflate(const SkDOM&, const SkDOM::Node*)
    25 {
    26     // subclass should override this as needed
    27 }
    29 SkView::Artist* SkView::getArtist() const
    30 {
    31     Artist_SkTagList* rec = (Artist_SkTagList*)this->findTagList(kViewArtist_SkTagList);
    32     SkASSERT(rec == NULL || rec->fArtist != NULL);
    34     return rec ? rec->fArtist : NULL;
    35 }
    37 SkView::Artist* SkView::setArtist(Artist* obj)
    38 {
    39     if (obj == NULL)
    40     {
    41         this->removeTagList(kViewArtist_SkTagList);
    42     }
    43     else    // add/replace
    44     {
    45         Artist_SkTagList* rec = (Artist_SkTagList*)this->findTagList(kViewArtist_SkTagList);
    47         if (rec)
    48             SkRefCnt_SafeAssign(rec->fArtist, obj);
    49         else
    50             this->addTagList(new Artist_SkTagList(obj));
    51     }
    52     return obj;
    53 }
    55 ////////////////////////////////////////////////////////////////////////////////
    57 void SkView::Layout::layoutChildren(SkView* parent)
    58 {
    59     SkASSERT(parent);
    60     if (parent->width() > 0 && parent->height() > 0)
    61         this->onLayoutChildren(parent);
    62 }
    64 void SkView::Layout::inflate(const SkDOM& dom, const SkDOM::Node* node)
    65 {
    66     SkASSERT(&dom && node);
    67     this->onInflate(dom, node);
    68 }
    70 void SkView::Layout::onInflate(const SkDOM&, const SkDOM::Node*)
    71 {
    72     // subclass should override this as needed
    73 }
    75 SkView::Layout* SkView::getLayout() const
    76 {
    77     Layout_SkTagList* rec = (Layout_SkTagList*)this->findTagList(kViewLayout_SkTagList);
    78     SkASSERT(rec == NULL || rec->fLayout != NULL);
    80     return rec ? rec->fLayout : NULL;
    81 }
    83 SkView::Layout* SkView::setLayout(Layout* obj, bool invokeLayoutNow)
    84 {
    85     if (obj == NULL)
    86     {
    87         this->removeTagList(kViewLayout_SkTagList);
    88     }
    89     else    // add/replace
    90     {
    91         Layout_SkTagList* rec = (Layout_SkTagList*)this->findTagList(kViewLayout_SkTagList);
    93         if (rec)
    94             SkRefCnt_SafeAssign(rec->fLayout, obj);
    95         else
    96             this->addTagList(new Layout_SkTagList(obj));
    97     }
    99     if (invokeLayoutNow)
   100         this->invokeLayout();
   102     return obj;
   103 }

mercurial