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

Side by Side Diff: third_party/WebKit/Source/core/imagebitmap/ImageBitmapFactories.cpp

Issue 1912493004: Ship ImageBitmapOptions (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: clean up code 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 * Copyright (c) 2013, Google Inc. All rights reserved. 2 * Copyright (c) 2013, Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
64 if (value.isBlob()) 64 if (value.isBlob())
65 return value.getAsBlob(); 65 return value.getAsBlob();
66 if (value.isImageData()) 66 if (value.isImageData())
67 return value.getAsImageData(); 67 return value.getAsImageData();
68 if (value.isImageBitmap()) 68 if (value.isImageBitmap())
69 return value.getAsImageBitmap(); 69 return value.getAsImageBitmap();
70 ASSERT_NOT_REACHED(); 70 ASSERT_NOT_REACHED();
71 return nullptr; 71 return nullptr;
72 } 72 }
73 73
74 ScriptPromise ImageBitmapFactories::createImageBitmap(ScriptState* scriptState, EventTarget& eventTarget, const ImageBitmapSourceUnion& bitmapSource, ExceptionS tate& exceptionState)
75 {
76 UseCounter::Feature feature = UseCounter::CreateImageBitmap;
77 UseCounter::count(scriptState->getExecutionContext(), feature);
78 ImageBitmapOptions options;
79 return createImageBitmap(scriptState, eventTarget, bitmapSource, options, ex ceptionState);
80 }
81
82 ScriptPromise ImageBitmapFactories::createImageBitmap(ScriptState* scriptState, EventTarget& eventTarget, const ImageBitmapSourceUnion& bitmapSource, const Imag eBitmapOptions& options, ExceptionState& exceptionState) 74 ScriptPromise ImageBitmapFactories::createImageBitmap(ScriptState* scriptState, EventTarget& eventTarget, const ImageBitmapSourceUnion& bitmapSource, const Imag eBitmapOptions& options, ExceptionState& exceptionState)
83 { 75 {
76 UseCounter::Feature feature = UseCounter::CreateImageBitmap;
77 UseCounter::count(scriptState->getExecutionContext(), feature);
84 ImageBitmapSource* bitmapSourceInternal = toImageBitmapSourceInternal(bitmap Source); 78 ImageBitmapSource* bitmapSourceInternal = toImageBitmapSourceInternal(bitmap Source);
85 if (bitmapSourceInternal->isBlob()) { 79 if (bitmapSourceInternal->isBlob()) {
86 Blob* blob = static_cast<Blob*>(bitmapSourceInternal); 80 Blob* blob = static_cast<Blob*>(bitmapSourceInternal);
87 ImageBitmapLoader* loader = ImageBitmapFactories::ImageBitmapLoader::cre ate(from(eventTarget), IntRect(), options, scriptState); 81 ImageBitmapLoader* loader = ImageBitmapFactories::ImageBitmapLoader::cre ate(from(eventTarget), IntRect(), options, scriptState);
88 ScriptPromise promise = loader->promise(); 82 ScriptPromise promise = loader->promise();
89 from(eventTarget).addLoader(loader); 83 from(eventTarget).addLoader(loader);
90 loader->loadBlobAsync(eventTarget.getExecutionContext(), blob); 84 loader->loadBlobAsync(eventTarget.getExecutionContext(), blob);
91 return promise; 85 return promise;
92 } 86 }
93 IntSize srcSize = bitmapSourceInternal->bitmapSourceSize(); 87 IntSize srcSize = bitmapSourceInternal->bitmapSourceSize();
94 return createImageBitmap(scriptState, eventTarget, bitmapSourceInternal, 0, 0, srcSize.width(), srcSize.height(), options, exceptionState); 88 return createImageBitmap(scriptState, eventTarget, bitmapSourceInternal, 0, 0, srcSize.width(), srcSize.height(), options, exceptionState);
95 } 89 }
96 90
97 ScriptPromise ImageBitmapFactories::createImageBitmap(ScriptState* scriptState, EventTarget& eventTarget, const ImageBitmapSourceUnion& bitmapSource, int sx, in t sy, int sw, int sh, ExceptionState& exceptionState)
98 {
99 UseCounter::Feature feature = UseCounter::CreateImageBitmap;
100 UseCounter::count(scriptState->getExecutionContext(), feature);
101 ImageBitmapOptions options;
102 return createImageBitmap(scriptState, eventTarget, bitmapSource, sx, sy, sw, sh, options, exceptionState);
103 }
104
105 ScriptPromise ImageBitmapFactories::createImageBitmap(ScriptState* scriptState, EventTarget& eventTarget, const ImageBitmapSourceUnion& bitmapSource, int sx, in t sy, int sw, int sh, const ImageBitmapOptions& options, ExceptionState& excepti onState) 91 ScriptPromise ImageBitmapFactories::createImageBitmap(ScriptState* scriptState, EventTarget& eventTarget, const ImageBitmapSourceUnion& bitmapSource, int sx, in t sy, int sw, int sh, const ImageBitmapOptions& options, ExceptionState& excepti onState)
106 { 92 {
93 UseCounter::Feature feature = UseCounter::CreateImageBitmap;
94 UseCounter::count(scriptState->getExecutionContext(), feature);
107 ImageBitmapSource* bitmapSourceInternal = toImageBitmapSourceInternal(bitmap Source); 95 ImageBitmapSource* bitmapSourceInternal = toImageBitmapSourceInternal(bitmap Source);
108 return createImageBitmap(scriptState, eventTarget, bitmapSourceInternal, sx, sy, sw, sh, options, exceptionState); 96 return createImageBitmap(scriptState, eventTarget, bitmapSourceInternal, sx, sy, sw, sh, options, exceptionState);
109 } 97 }
110 98
111 ScriptPromise ImageBitmapFactories::createImageBitmap(ScriptState* scriptState, EventTarget& eventTarget, ImageBitmapSource* bitmapSource, int sx, int sy, int s w, int sh, const ImageBitmapOptions& options, ExceptionState& exceptionState) 99 ScriptPromise ImageBitmapFactories::createImageBitmap(ScriptState* scriptState, EventTarget& eventTarget, ImageBitmapSource* bitmapSource, int sx, int sy, int s w, int sh, const ImageBitmapOptions& options, ExceptionState& exceptionState)
112 { 100 {
113 if (bitmapSource->isBlob()) { 101 if (bitmapSource->isBlob()) {
114 if (!sw || !sh) { 102 if (!sw || !sh) {
115 exceptionState.throwDOMException(IndexSizeError, String::format("The source %s provided is 0.", sw ? "height" : "width")); 103 exceptionState.throwDOMException(IndexSizeError, String::format("The source %s provided is 0.", sw ? "height" : "width"));
116 return ScriptPromise(); 104 return ScriptPromise();
(...skipping 145 matching lines...) Expand 10 before | Expand all | Expand 10 after
262 m_factory->didFinishLoading(this); 250 m_factory->didFinishLoading(this);
263 } 251 }
264 252
265 DEFINE_TRACE(ImageBitmapFactories::ImageBitmapLoader) 253 DEFINE_TRACE(ImageBitmapFactories::ImageBitmapLoader)
266 { 254 {
267 visitor->trace(m_factory); 255 visitor->trace(m_factory);
268 visitor->trace(m_resolver); 256 visitor->trace(m_resolver);
269 } 257 }
270 258
271 } // namespace blink 259 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698