Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(547)

Side by Side Diff: third_party/WebKit/Source/core/css/MediaList.cpp

Issue 1858753003: Remove RawPtr from core/css (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * (C) 1999-2003 Lars Knoll (knoll@kde.org) 2 * (C) 1999-2003 Lars Knoll (knoll@kde.org)
3 * Copyright (C) 2004, 2006, 2010, 2012 Apple Inc. All rights reserved. 3 * Copyright (C) 2004, 2006, 2010, 2012 Apple Inc. All rights reserved.
4 * 4 *
5 * This library is free software; you can redistribute it and/or 5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Library General Public 6 * modify it under the terms of the GNU Library General Public
7 * License as published by the Free Software Foundation; either 7 * License as published by the Free Software Foundation; either
8 * version 2 of the License, or (at your option) any later version. 8 * version 2 of the License, or (at your option) any later version.
9 * 9 *
10 * This library is distributed in the hope that it will be useful, 10 * This library is distributed in the hope that it will be useful,
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
52 { 52 {
53 } 53 }
54 54
55 MediaQuerySet::MediaQuerySet(const MediaQuerySet& o) 55 MediaQuerySet::MediaQuerySet(const MediaQuerySet& o)
56 : m_queries(o.m_queries.size()) 56 : m_queries(o.m_queries.size())
57 { 57 {
58 for (unsigned i = 0; i < m_queries.size(); ++i) 58 for (unsigned i = 0; i < m_queries.size(); ++i)
59 m_queries[i] = o.m_queries[i]->copy(); 59 m_queries[i] = o.m_queries[i]->copy();
60 } 60 }
61 61
62 RawPtr<MediaQuerySet> MediaQuerySet::create(const String& mediaString) 62 MediaQuerySet* MediaQuerySet::create(const String& mediaString)
63 { 63 {
64 if (mediaString.isEmpty()) 64 if (mediaString.isEmpty())
65 return MediaQuerySet::create(); 65 return MediaQuerySet::create();
66 66
67 return MediaQueryParser::parseMediaQuerySet(mediaString); 67 return MediaQueryParser::parseMediaQuerySet(mediaString);
68 } 68 }
69 69
70 RawPtr<MediaQuerySet> MediaQuerySet::createOffMainThread(const String& mediaStri ng) 70 MediaQuerySet* MediaQuerySet::createOffMainThread(const String& mediaString)
71 { 71 {
72 if (mediaString.isEmpty()) 72 if (mediaString.isEmpty())
73 return MediaQuerySet::create(); 73 return MediaQuerySet::create();
74 74
75 return MediaQueryParser::parseMediaQuerySet(mediaString); 75 return MediaQueryParser::parseMediaQuerySet(mediaString);
76 } 76 }
77 77
78 bool MediaQuerySet::set(const String& mediaString) 78 bool MediaQuerySet::set(const String& mediaString)
79 { 79 {
80 RawPtr<MediaQuerySet> result = create(mediaString); 80 MediaQuerySet* result = create(mediaString);
81 m_queries.swap(result->m_queries); 81 m_queries.swap(result->m_queries);
82 return true; 82 return true;
83 } 83 }
84 84
85 bool MediaQuerySet::add(const String& queryString) 85 bool MediaQuerySet::add(const String& queryString)
86 { 86 {
87 // To "parse a media query" for a given string means to follow "the parse 87 // To "parse a media query" for a given string means to follow "the parse
88 // a media query list" steps and return "null" if more than one media query 88 // a media query list" steps and return "null" if more than one media query
89 // is returned, or else the returned media query. 89 // is returned, or else the returned media query.
90 RawPtr<MediaQuerySet> result = create(queryString); 90 MediaQuerySet* result = create(queryString);
91 91
92 // Only continue if exactly one media query is found, as described above. 92 // Only continue if exactly one media query is found, as described above.
93 if (result->m_queries.size() != 1) 93 if (result->m_queries.size() != 1)
94 return true; 94 return true;
95 95
96 RawPtr<MediaQuery> newQuery = result->m_queries[0].release(); 96 MediaQuery* newQuery = result->m_queries[0].release();
97 ASSERT(newQuery); 97 ASSERT(newQuery);
98 98
99 // If comparing with any of the media queries in the collection of media 99 // If comparing with any of the media queries in the collection of media
100 // queries returns true terminate these steps. 100 // queries returns true terminate these steps.
101 for (size_t i = 0; i < m_queries.size(); ++i) { 101 for (size_t i = 0; i < m_queries.size(); ++i) {
102 MediaQuery* query = m_queries[i].get(); 102 MediaQuery* query = m_queries[i].get();
103 if (*query == *newQuery) 103 if (*query == *newQuery)
104 return true; 104 return true;
105 } 105 }
106 106
107 m_queries.append(newQuery.release()); 107 m_queries.append(newQuery);
108 return true; 108 return true;
109 } 109 }
110 110
111 bool MediaQuerySet::remove(const String& queryStringToRemove) 111 bool MediaQuerySet::remove(const String& queryStringToRemove)
112 { 112 {
113 // To "parse a media query" for a given string means to follow "the parse 113 // To "parse a media query" for a given string means to follow "the parse
114 // a media query list" steps and return "null" if more than one media query 114 // a media query list" steps and return "null" if more than one media query
115 // is returned, or else the returned media query. 115 // is returned, or else the returned media query.
116 RawPtr<MediaQuerySet> result = create(queryStringToRemove); 116 MediaQuerySet* result = create(queryStringToRemove);
117 117
118 // Only continue if exactly one media query is found, as described above. 118 // Only continue if exactly one media query is found, as described above.
119 if (result->m_queries.size() != 1) 119 if (result->m_queries.size() != 1)
120 return true; 120 return true;
121 121
122 RawPtr<MediaQuery> newQuery = result->m_queries[0].release(); 122 MediaQuery* newQuery = result->m_queries[0].release();
123 ASSERT(newQuery); 123 ASSERT(newQuery);
124 124
125 // Remove any media query from the collection of media queries for which 125 // Remove any media query from the collection of media queries for which
126 // comparing with the media query returns true. 126 // comparing with the media query returns true.
127 bool found = false; 127 bool found = false;
128 for (size_t i = 0; i < m_queries.size(); ++i) { 128 for (size_t i = 0; i < m_queries.size(); ++i) {
129 MediaQuery* query = m_queries[i].get(); 129 MediaQuery* query = m_queries[i].get();
130 if (*query == *newQuery) { 130 if (*query == *newQuery) {
131 m_queries.remove(i); 131 m_queries.remove(i);
132 --i; 132 --i;
133 found = true; 133 found = true;
134 } 134 }
135 } 135 }
136 136
137 return found; 137 return found;
138 } 138 }
139 139
140 void MediaQuerySet::addMediaQuery(RawPtr<MediaQuery> mediaQuery) 140 void MediaQuerySet::addMediaQuery(MediaQuery* mediaQuery)
141 { 141 {
142 m_queries.append(mediaQuery); 142 m_queries.append(mediaQuery);
143 } 143 }
144 144
145 String MediaQuerySet::mediaText() const 145 String MediaQuerySet::mediaText() const
146 { 146 {
147 StringBuilder text; 147 StringBuilder text;
148 148
149 bool first = true; 149 bool first = true;
150 for (size_t i = 0; i < m_queries.size(); ++i) { 150 for (size_t i = 0; i < m_queries.size(); ++i) {
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after
230 } 230 }
231 231
232 DEFINE_TRACE(MediaList) 232 DEFINE_TRACE(MediaList)
233 { 233 {
234 visitor->trace(m_mediaQueries); 234 visitor->trace(m_mediaQueries);
235 visitor->trace(m_parentStyleSheet); 235 visitor->trace(m_parentStyleSheet);
236 visitor->trace(m_parentRule); 236 visitor->trace(m_parentRule);
237 } 237 }
238 238
239 } // namespace blink 239 } // namespace blink
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/core/css/MediaList.h ('k') | third_party/WebKit/Source/core/css/MediaQuery.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698