OLD | NEW |
1 /* | 1 /* |
2 * This file is part of Adblock Plus <https://adblockplus.org/>, | 2 * This file is part of Adblock Plus <https://adblockplus.org/>, |
3 * Copyright (C) 2006-2016 Eyeo GmbH | 3 * Copyright (C) 2006-2016 Eyeo GmbH |
4 * | 4 * |
5 * Adblock Plus is free software: you can redistribute it and/or modify | 5 * Adblock Plus is free software: you can redistribute it and/or modify |
6 * it under the terms of the GNU General Public License version 3 as | 6 * it under the terms of the GNU General Public License version 3 as |
7 * published by the Free Software Foundation. | 7 * published by the Free Software Foundation. |
8 * | 8 * |
9 * Adblock Plus is distributed in the hope that it will be useful, | 9 * Adblock Plus is distributed in the hope that it will be useful, |
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of | 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
47 else if (className == "ElemHideException") | 47 else if (className == "ElemHideException") |
48 return TYPE_ELEMHIDE_EXCEPTION; | 48 return TYPE_ELEMHIDE_EXCEPTION; |
49 else if (className == "CommentFilter") | 49 else if (className == "CommentFilter") |
50 return TYPE_COMMENT; | 50 return TYPE_COMMENT; |
51 else | 51 else |
52 return TYPE_INVALID; | 52 return TYPE_INVALID; |
53 } | 53 } |
54 | 54 |
55 bool Filter::IsListed() | 55 bool Filter::IsListed() |
56 { | 56 { |
57 JsValuePtr func = jsEngine->Evaluate("API.isListedFilter"); | 57 JsContext context(m_jsEngine); |
| 58 JsValuePtr func = context.jsEngine().Evaluate("API.isListedFilter"); |
58 JsValueList params; | 59 JsValueList params; |
59 params.push_back(shared_from_this()); | 60 params.push_back(shared_from_this()); |
60 return func->Call(params)->AsBool(); | 61 return func->Call(params)->AsBool(); |
61 } | 62 } |
62 | 63 |
63 void Filter::AddToList() | 64 void Filter::AddToList() |
64 { | 65 { |
65 JsValuePtr func = jsEngine->Evaluate("API.addFilterToList"); | 66 JsContext context(m_jsEngine); |
| 67 JsValuePtr func = context.jsEngine().Evaluate("API.addFilterToList"); |
66 JsValueList params; | 68 JsValueList params; |
67 params.push_back(shared_from_this()); | 69 params.push_back(shared_from_this()); |
68 func->Call(params); | 70 func->Call(params); |
69 } | 71 } |
70 | 72 |
71 void Filter::RemoveFromList() | 73 void Filter::RemoveFromList() |
72 { | 74 { |
73 JsValuePtr func = jsEngine->Evaluate("API.removeFilterFromList"); | 75 JsContext context(m_jsEngine); |
| 76 JsValuePtr func = context.jsEngine().Evaluate("API.removeFilterFromList"); |
74 JsValueList params; | 77 JsValueList params; |
75 params.push_back(shared_from_this()); | 78 params.push_back(shared_from_this()); |
76 func->Call(params); | 79 func->Call(params); |
77 } | 80 } |
78 | 81 |
79 bool Filter::operator==(const Filter& filter) const | 82 bool Filter::operator==(const Filter& filter) const |
80 { | 83 { |
81 return GetProperty("text")->AsString() == filter.GetProperty("text")->AsString
(); | 84 return GetProperty("text")->AsString() == filter.GetProperty("text")->AsString
(); |
82 } | 85 } |
83 | 86 |
84 Subscription::Subscription(JsValue&& value) | 87 Subscription::Subscription(JsValue&& value) |
85 : JsValue(std::move(value)) | 88 : JsValue(std::move(value)) |
86 { | 89 { |
87 if (!IsObject()) | 90 if (!IsObject()) |
88 throw std::runtime_error("JavaScript value is not an object"); | 91 throw std::runtime_error("JavaScript value is not an object"); |
89 } | 92 } |
90 | 93 |
91 bool Subscription::IsListed() | 94 bool Subscription::IsListed() |
92 { | 95 { |
93 JsValuePtr func = jsEngine->Evaluate("API.isListedSubscription"); | 96 JsContext context(m_jsEngine); |
| 97 JsValuePtr func = context.jsEngine().Evaluate("API.isListedSubscription"); |
94 JsValueList params; | 98 JsValueList params; |
95 params.push_back(shared_from_this()); | 99 params.push_back(shared_from_this()); |
96 return func->Call(params)->AsBool(); | 100 return func->Call(params)->AsBool(); |
97 } | 101 } |
98 | 102 |
99 void Subscription::AddToList() | 103 void Subscription::AddToList() |
100 { | 104 { |
101 JsValuePtr func = jsEngine->Evaluate("API.addSubscriptionToList"); | 105 JsContext context(m_jsEngine); |
| 106 JsValuePtr func = context.jsEngine().Evaluate("API.addSubscriptionToList"); |
102 JsValueList params; | 107 JsValueList params; |
103 params.push_back(shared_from_this()); | 108 params.push_back(shared_from_this()); |
104 func->Call(params); | 109 func->Call(params); |
105 } | 110 } |
106 | 111 |
107 void Subscription::RemoveFromList() | 112 void Subscription::RemoveFromList() |
108 { | 113 { |
109 JsValuePtr func = jsEngine->Evaluate("API.removeSubscriptionFromList"); | 114 JsContext context(m_jsEngine); |
| 115 JsValuePtr func = context.jsEngine().Evaluate("API.removeSubscriptionFromList"
); |
110 JsValueList params; | 116 JsValueList params; |
111 params.push_back(shared_from_this()); | 117 params.push_back(shared_from_this()); |
112 func->Call(params); | 118 func->Call(params); |
113 } | 119 } |
114 | 120 |
115 void Subscription::UpdateFilters() | 121 void Subscription::UpdateFilters() |
116 { | 122 { |
117 JsValuePtr func = jsEngine->Evaluate("API.updateSubscription"); | 123 JsContext context(m_jsEngine); |
| 124 JsValuePtr func = context.jsEngine().Evaluate("API.updateSubscription"); |
118 JsValueList params; | 125 JsValueList params; |
119 params.push_back(shared_from_this()); | 126 params.push_back(shared_from_this()); |
120 func->Call(params); | 127 func->Call(params); |
121 } | 128 } |
122 | 129 |
123 bool Subscription::IsUpdating() | 130 bool Subscription::IsUpdating() |
124 { | 131 { |
125 JsValuePtr func = jsEngine->Evaluate("API.isSubscriptionUpdating"); | 132 JsContext context(m_jsEngine); |
| 133 JsValuePtr func = context.jsEngine().Evaluate("API.isSubscriptionUpdating"); |
126 JsValueList params; | 134 JsValueList params; |
127 params.push_back(shared_from_this()); | 135 params.push_back(shared_from_this()); |
128 JsValuePtr result = func->Call(params); | 136 JsValuePtr result = func->Call(params); |
129 return result->AsBool(); | 137 return result->AsBool(); |
130 } | 138 } |
131 | 139 |
132 bool Subscription::operator==(const Subscription& subscription) const | 140 bool Subscription::operator==(const Subscription& subscription) const |
133 { | 141 { |
134 return GetProperty("url")->AsString() == subscription.GetProperty("url")->AsSt
ring(); | 142 return GetProperty("url")->AsString() == subscription.GetProperty("url")->AsSt
ring(); |
135 } | 143 } |
(...skipping 370 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
506 FilterPtr filter = GetWhitelistingFilter(currentUrl, contentTypeMask, parent
Url); | 514 FilterPtr filter = GetWhitelistingFilter(currentUrl, contentTypeMask, parent
Url); |
507 if (filter) | 515 if (filter) |
508 { | 516 { |
509 return filter; | 517 return filter; |
510 } | 518 } |
511 currentUrl = parentUrl; | 519 currentUrl = parentUrl; |
512 } | 520 } |
513 while (urlIterator != documentUrls.end()); | 521 while (urlIterator != documentUrls.end()); |
514 return FilterPtr(); | 522 return FilterPtr(); |
515 } | 523 } |
OLD | NEW |