| OLD | NEW | 
|---|
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be | 
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. | 
| 4 | 4 | 
| 5 #include "content/common/cc_messages.h" | 5 #include "content/common/cc_messages.h" | 
| 6 | 6 | 
| 7 #include "cc/output/compositor_frame.h" | 7 #include "cc/output/compositor_frame.h" | 
|  | 8 #include "cc/output/filter_operations.h" | 
| 8 #include "content/public/common/common_param_traits.h" | 9 #include "content/public/common/common_param_traits.h" | 
| 9 #include "third_party/WebKit/public/platform/WebFilterOperations.h" |  | 
| 10 #include "ui/gfx/transform.h" | 10 #include "ui/gfx/transform.h" | 
| 11 | 11 | 
| 12 namespace IPC { | 12 namespace IPC { | 
| 13 | 13 | 
| 14 void ParamTraits<WebKit::WebFilterOperation>::Write( | 14 void ParamTraits<cc::FilterOperation>::Write( | 
| 15     Message* m, const param_type& p) { | 15     Message* m, const param_type& p) { | 
| 16   WriteParam(m, p.type()); | 16   WriteParam(m, p.type()); | 
| 17   switch (p.type()) { | 17   switch (p.type()) { | 
| 18     case WebKit::WebFilterOperation::FilterTypeGrayscale: | 18     case cc::FilterOperation::GRAYSCALE: | 
| 19     case WebKit::WebFilterOperation::FilterTypeSepia: | 19     case cc::FilterOperation::SEPIA: | 
| 20     case WebKit::WebFilterOperation::FilterTypeSaturate: | 20     case cc::FilterOperation::SATURATE: | 
| 21     case WebKit::WebFilterOperation::FilterTypeHueRotate: | 21     case cc::FilterOperation::HUE_ROTATE: | 
| 22     case WebKit::WebFilterOperation::FilterTypeInvert: | 22     case cc::FilterOperation::INVERT: | 
| 23     case WebKit::WebFilterOperation::FilterTypeBrightness: | 23     case cc::FilterOperation::BRIGHTNESS: | 
| 24     case WebKit::WebFilterOperation::FilterTypeSaturatingBrightness: | 24     case cc::FilterOperation::SATURATING_BRIGHTNESS: | 
| 25     case WebKit::WebFilterOperation::FilterTypeContrast: | 25     case cc::FilterOperation::CONTRAST: | 
| 26     case WebKit::WebFilterOperation::FilterTypeOpacity: | 26     case cc::FilterOperation::OPACITY: | 
| 27     case WebKit::WebFilterOperation::FilterTypeBlur: | 27     case cc::FilterOperation::BLUR: | 
| 28       WriteParam(m, p.amount()); | 28       WriteParam(m, p.amount()); | 
| 29       break; | 29       break; | 
| 30     case WebKit::WebFilterOperation::FilterTypeDropShadow: | 30     case cc::FilterOperation::DROP_SHADOW: | 
| 31       WriteParam(m, p.dropShadowOffset()); | 31       WriteParam(m, p.drop_shadow_offset()); | 
| 32       WriteParam(m, p.amount()); | 32       WriteParam(m, p.amount()); | 
| 33       WriteParam(m, p.dropShadowColor()); | 33       WriteParam(m, p.drop_shadow_color()); | 
| 34       break; | 34       break; | 
| 35     case WebKit::WebFilterOperation::FilterTypeColorMatrix: | 35     case cc::FilterOperation::COLOR_MATRIX: | 
| 36       for (int i = 0; i < 20; ++i) | 36       for (int i = 0; i < 20; ++i) | 
| 37         WriteParam(m, p.matrix()[i]); | 37         WriteParam(m, p.matrix()[i]); | 
| 38       break; | 38       break; | 
| 39     case WebKit::WebFilterOperation::FilterTypeZoom: | 39     case cc::FilterOperation::ZOOM: | 
| 40       WriteParam(m, p.amount()); | 40       WriteParam(m, p.amount()); | 
| 41       WriteParam(m, p.zoomInset()); | 41       WriteParam(m, p.zoom_inset()); | 
| 42       break; | 42       break; | 
| 43   } | 43   } | 
| 44 } | 44 } | 
| 45 | 45 | 
| 46 bool ParamTraits<WebKit::WebFilterOperation>::Read( | 46 bool ParamTraits<cc::FilterOperation>::Read( | 
| 47     const Message* m, PickleIterator* iter, param_type* r) { | 47     const Message* m, PickleIterator* iter, param_type* r) { | 
| 48   WebKit::WebFilterOperation::FilterType type; | 48   cc::FilterOperation::FilterType type; | 
| 49   float amount; | 49   float amount; | 
| 50   WebKit::WebPoint dropShadowOffset; | 50   gfx::Point drop_shadow_offset; | 
| 51   WebKit::WebColor dropShadowColor; | 51   SkColor drop_shadow_color; | 
| 52   SkScalar matrix[20]; | 52   SkScalar matrix[20]; | 
| 53   int zoom_inset; | 53   int zoom_inset; | 
| 54 | 54 | 
| 55   if (!ReadParam(m, iter, &type)) | 55   if (!ReadParam(m, iter, &type)) | 
| 56     return false; | 56     return false; | 
| 57   r->setType(type); | 57   r->set_type(type); | 
| 58 | 58 | 
| 59   bool success = false; | 59   bool success = false; | 
| 60   switch (type) { | 60   switch (type) { | 
| 61     case WebKit::WebFilterOperation::FilterTypeGrayscale: | 61     case cc::FilterOperation::GRAYSCALE: | 
| 62     case WebKit::WebFilterOperation::FilterTypeSepia: | 62     case cc::FilterOperation::SEPIA: | 
| 63     case WebKit::WebFilterOperation::FilterTypeSaturate: | 63     case cc::FilterOperation::SATURATE: | 
| 64     case WebKit::WebFilterOperation::FilterTypeHueRotate: | 64     case cc::FilterOperation::HUE_ROTATE: | 
| 65     case WebKit::WebFilterOperation::FilterTypeInvert: | 65     case cc::FilterOperation::INVERT: | 
| 66     case WebKit::WebFilterOperation::FilterTypeBrightness: | 66     case cc::FilterOperation::BRIGHTNESS: | 
| 67     case WebKit::WebFilterOperation::FilterTypeSaturatingBrightness: | 67     case cc::FilterOperation::SATURATING_BRIGHTNESS: | 
| 68     case WebKit::WebFilterOperation::FilterTypeContrast: | 68     case cc::FilterOperation::CONTRAST: | 
| 69     case WebKit::WebFilterOperation::FilterTypeOpacity: | 69     case cc::FilterOperation::OPACITY: | 
| 70     case WebKit::WebFilterOperation::FilterTypeBlur: | 70     case cc::FilterOperation::BLUR: | 
| 71       if (ReadParam(m, iter, &amount)) { | 71       if (ReadParam(m, iter, &amount)) { | 
| 72         r->setAmount(amount); | 72         r->set_amount(amount); | 
| 73         success = true; | 73         success = true; | 
| 74       } | 74       } | 
| 75       break; | 75       break; | 
| 76     case WebKit::WebFilterOperation::FilterTypeDropShadow: | 76     case cc::FilterOperation::DROP_SHADOW: | 
| 77       if (ReadParam(m, iter, &dropShadowOffset) && | 77       if (ReadParam(m, iter, &drop_shadow_offset) && | 
| 78           ReadParam(m, iter, &amount) && | 78           ReadParam(m, iter, &amount) && | 
| 79           ReadParam(m, iter, &dropShadowColor)) { | 79           ReadParam(m, iter, &drop_shadow_color)) { | 
| 80         r->setDropShadowOffset(dropShadowOffset); | 80         r->set_drop_shadow_offset(drop_shadow_offset); | 
| 81         r->setAmount(amount); | 81         r->set_amount(amount); | 
| 82         r->setDropShadowColor(dropShadowColor); | 82         r->set_drop_shadow_color(drop_shadow_color); | 
| 83         success = true; | 83         success = true; | 
| 84       } | 84       } | 
| 85       break; | 85       break; | 
| 86     case WebKit::WebFilterOperation::FilterTypeColorMatrix: { | 86     case cc::FilterOperation::COLOR_MATRIX: { | 
| 87       int i; | 87       int i; | 
| 88       for (i = 0; i < 20; ++i) { | 88       for (i = 0; i < 20; ++i) { | 
| 89         if (!ReadParam(m, iter, &matrix[i])) | 89         if (!ReadParam(m, iter, &matrix[i])) | 
| 90           break; | 90           break; | 
| 91       } | 91       } | 
| 92       if (i == 20) { | 92       if (i == 20) { | 
| 93         r->setMatrix(matrix); | 93         r->set_matrix(matrix); | 
| 94         success = true; | 94         success = true; | 
| 95       } | 95       } | 
| 96       break; | 96       break; | 
| 97     } | 97     } | 
| 98     case WebKit::WebFilterOperation::FilterTypeZoom: | 98     case cc::FilterOperation::ZOOM: | 
| 99       if (ReadParam(m, iter, &amount) && | 99       if (ReadParam(m, iter, &amount) && | 
| 100           ReadParam(m, iter, &zoom_inset) && | 100           ReadParam(m, iter, &zoom_inset) && | 
| 101           amount >= 0.f && | 101           amount >= 0.f && | 
| 102           zoom_inset >= 0) { | 102           zoom_inset >= 0) { | 
| 103         r->setAmount(amount); | 103         r->set_amount(amount); | 
| 104         r->setZoomInset(zoom_inset); | 104         r->set_zoom_inset(zoom_inset); | 
| 105         success = true; | 105         success = true; | 
| 106       } | 106       } | 
| 107       break; | 107       break; | 
| 108   } | 108   } | 
| 109   return success; | 109   return success; | 
| 110 } | 110 } | 
| 111 | 111 | 
| 112 void ParamTraits<WebKit::WebFilterOperation>::Log( | 112 void ParamTraits<cc::FilterOperation>::Log( | 
| 113     const param_type& p, std::string* l) { | 113     const param_type& p, std::string* l) { | 
| 114   l->append("("); | 114   l->append("("); | 
| 115   LogParam(static_cast<unsigned>(p.type()), l); | 115   LogParam(static_cast<unsigned>(p.type()), l); | 
| 116   l->append(", "); | 116   l->append(", "); | 
| 117 | 117 | 
| 118   switch (p.type()) { | 118   switch (p.type()) { | 
| 119     case WebKit::WebFilterOperation::FilterTypeGrayscale: | 119     case cc::FilterOperation::GRAYSCALE: | 
| 120     case WebKit::WebFilterOperation::FilterTypeSepia: | 120     case cc::FilterOperation::SEPIA: | 
| 121     case WebKit::WebFilterOperation::FilterTypeSaturate: | 121     case cc::FilterOperation::SATURATE: | 
| 122     case WebKit::WebFilterOperation::FilterTypeHueRotate: | 122     case cc::FilterOperation::HUE_ROTATE: | 
| 123     case WebKit::WebFilterOperation::FilterTypeInvert: | 123     case cc::FilterOperation::INVERT: | 
| 124     case WebKit::WebFilterOperation::FilterTypeBrightness: | 124     case cc::FilterOperation::BRIGHTNESS: | 
| 125     case WebKit::WebFilterOperation::FilterTypeSaturatingBrightness: | 125     case cc::FilterOperation::SATURATING_BRIGHTNESS: | 
| 126     case WebKit::WebFilterOperation::FilterTypeContrast: | 126     case cc::FilterOperation::CONTRAST: | 
| 127     case WebKit::WebFilterOperation::FilterTypeOpacity: | 127     case cc::FilterOperation::OPACITY: | 
| 128     case WebKit::WebFilterOperation::FilterTypeBlur: | 128     case cc::FilterOperation::BLUR: | 
| 129       LogParam(p.amount(), l); | 129       LogParam(p.amount(), l); | 
| 130       break; | 130       break; | 
| 131     case WebKit::WebFilterOperation::FilterTypeDropShadow: | 131     case cc::FilterOperation::DROP_SHADOW: | 
| 132       LogParam(p.dropShadowOffset(), l); | 132       LogParam(p.drop_shadow_offset(), l); | 
| 133       l->append(", "); | 133       l->append(", "); | 
| 134       LogParam(p.amount(), l); | 134       LogParam(p.amount(), l); | 
| 135       l->append(", "); | 135       l->append(", "); | 
| 136       LogParam(p.dropShadowColor(), l); | 136       LogParam(p.drop_shadow_color(), l); | 
| 137       break; | 137       break; | 
| 138     case WebKit::WebFilterOperation::FilterTypeColorMatrix: | 138     case cc::FilterOperation::COLOR_MATRIX: | 
| 139       for (int i = 0; i < 20; ++i) { | 139       for (int i = 0; i < 20; ++i) { | 
| 140         if (i) | 140         if (i) | 
| 141           l->append(", "); | 141           l->append(", "); | 
| 142         LogParam(p.matrix()[i], l); | 142         LogParam(p.matrix()[i], l); | 
| 143       } | 143       } | 
| 144       break; | 144       break; | 
| 145     case WebKit::WebFilterOperation::FilterTypeZoom: | 145     case cc::FilterOperation::ZOOM: | 
| 146       LogParam(p.amount(), l); | 146       LogParam(p.amount(), l); | 
| 147       l->append(", "); | 147       l->append(", "); | 
| 148       LogParam(p.zoomInset(), l); | 148       LogParam(p.zoom_inset(), l); | 
| 149       break; | 149       break; | 
| 150   } | 150   } | 
| 151   l->append(")"); | 151   l->append(")"); | 
| 152 } | 152 } | 
| 153 | 153 | 
| 154 void ParamTraits<WebKit::WebFilterOperations>::Write( | 154 void ParamTraits<cc::FilterOperations>::Write( | 
| 155     Message* m, const param_type& p) { | 155     Message* m, const param_type& p) { | 
| 156   WriteParam(m, p.size()); | 156   WriteParam(m, p.size()); | 
| 157   for (std::size_t i = 0; i < p.size(); ++i) { | 157   for (std::size_t i = 0; i < p.size(); ++i) { | 
| 158     WriteParam(m, p.at(i)); | 158     WriteParam(m, p.at(i)); | 
| 159   } | 159   } | 
| 160 } | 160 } | 
| 161 | 161 | 
| 162 bool ParamTraits<WebKit::WebFilterOperations>::Read( | 162 bool ParamTraits<cc::FilterOperations>::Read( | 
| 163     const Message* m, PickleIterator* iter, param_type* r) { | 163     const Message* m, PickleIterator* iter, param_type* r) { | 
| 164   size_t count; | 164   size_t count; | 
| 165   if (!ReadParam(m, iter, &count)) | 165   if (!ReadParam(m, iter, &count)) | 
| 166     return false; | 166     return false; | 
| 167 | 167 | 
| 168   for (std::size_t i = 0; i < count; ++i) { | 168   for (std::size_t i = 0; i < count; ++i) { | 
| 169     WebKit::WebFilterOperation op = | 169     cc::FilterOperation op = cc::FilterOperation::CreateEmptyFilter(); | 
| 170         WebKit::WebFilterOperation::createEmptyFilter(); |  | 
| 171     if (!ReadParam(m, iter, &op)) | 170     if (!ReadParam(m, iter, &op)) | 
| 172       return false; | 171       return false; | 
| 173     r->append(op); | 172     r->Append(op); | 
| 174   } | 173   } | 
| 175   return true; | 174   return true; | 
| 176 } | 175 } | 
| 177 | 176 | 
| 178 void ParamTraits<WebKit::WebFilterOperations>::Log( | 177 void ParamTraits<cc::FilterOperations>::Log( | 
| 179     const param_type& p, std::string* l) { | 178     const param_type& p, std::string* l) { | 
| 180   l->append("("); | 179   l->append("("); | 
| 181   for (std::size_t i = 0; i < p.size(); ++i) { | 180   for (std::size_t i = 0; i < p.size(); ++i) { | 
| 182     if (i) | 181     if (i) | 
| 183       l->append(", "); | 182       l->append(", "); | 
| 184     LogParam(p.at(i), l); | 183     LogParam(p.at(i), l); | 
| 185   } | 184   } | 
| 186   l->append(")"); | 185   l->append(")"); | 
| 187 } | 186 } | 
| 188 | 187 | 
| (...skipping 519 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 708   l->append(", ["); | 707   l->append(", ["); | 
| 709   for (size_t i = 0; i < p.render_pass_list.size(); ++i) { | 708   for (size_t i = 0; i < p.render_pass_list.size(); ++i) { | 
| 710     if (i) | 709     if (i) | 
| 711       l->append(", "); | 710       l->append(", "); | 
| 712     LogParam(*p.render_pass_list[i], l); | 711     LogParam(*p.render_pass_list[i], l); | 
| 713   } | 712   } | 
| 714   l->append("])"); | 713   l->append("])"); | 
| 715 } | 714 } | 
| 716 | 715 | 
| 717 }  // namespace IPC | 716 }  // namespace IPC | 
| OLD | NEW | 
|---|