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

Side by Side Diff: third_party/WebKit/Source/modules/payments/PaymentRequest.cpp

Issue 2265873003: binding: Moves hasPendingActivity from ActiveScriptWrappable to ScriptWrappable. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Addressed review comments. Created 4 years, 4 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 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 "modules/payments/PaymentRequest.h" 5 #include "modules/payments/PaymentRequest.h"
6 6
7 #include "bindings/core/v8/ExceptionState.h" 7 #include "bindings/core/v8/ExceptionState.h"
8 #include "bindings/core/v8/JSONValuesForV8.h" 8 #include "bindings/core/v8/JSONValuesForV8.h"
9 #include "bindings/core/v8/ScriptPromiseResolver.h" 9 #include "bindings/core/v8/ScriptPromiseResolver.h"
10 #include "bindings/core/v8/ScriptState.h" 10 #include "bindings/core/v8/ScriptState.h"
(...skipping 390 matching lines...) Expand 10 before | Expand all | Expand 10 after
401 return ScriptPromise::rejectWithDOMException(scriptState, DOMException:: create(InvalidStateError, "Cannot abort() again until the previous abort() has r esolved or rejected")); 401 return ScriptPromise::rejectWithDOMException(scriptState, DOMException:: create(InvalidStateError, "Cannot abort() again until the previous abort() has r esolved or rejected"));
402 402
403 if (!m_showResolver) 403 if (!m_showResolver)
404 return ScriptPromise::rejectWithDOMException(scriptState, DOMException:: create(InvalidStateError, "Never called show(), so nothing to abort")); 404 return ScriptPromise::rejectWithDOMException(scriptState, DOMException:: create(InvalidStateError, "Never called show(), so nothing to abort"));
405 405
406 m_abortResolver = ScriptPromiseResolver::create(scriptState); 406 m_abortResolver = ScriptPromiseResolver::create(scriptState);
407 m_paymentProvider->Abort(); 407 m_paymentProvider->Abort();
408 return m_abortResolver->promise(); 408 return m_abortResolver->promise();
409 } 409 }
410 410
411 bool PaymentRequest::hasPendingActivity() const
412 {
413 return m_showResolver || m_completeResolver;
414 }
415
411 const AtomicString& PaymentRequest::interfaceName() const 416 const AtomicString& PaymentRequest::interfaceName() const
412 { 417 {
413 return EventTargetNames::PaymentRequest; 418 return EventTargetNames::PaymentRequest;
414 } 419 }
415 420
416 ExecutionContext* PaymentRequest::getExecutionContext() const 421 ExecutionContext* PaymentRequest::getExecutionContext() const
417 { 422 {
418 return ContextLifecycleObserver::getExecutionContext(); 423 return ContextLifecycleObserver::getExecutionContext();
419 } 424 }
420 425
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after
521 526
522 if (m_options.requestShipping()) 527 if (m_options.requestShipping())
523 m_shippingOption = getSelectedShippingOption(details); 528 m_shippingOption = getSelectedShippingOption(details);
524 } 529 }
525 530
526 void PaymentRequest::contextDestroyed() 531 void PaymentRequest::contextDestroyed()
527 { 532 {
528 clearResolversAndCloseMojoConnection(); 533 clearResolversAndCloseMojoConnection();
529 } 534 }
530 535
531 bool PaymentRequest::hasPendingActivity() const
532 {
533 return m_showResolver || m_completeResolver;
534 }
535
536 void PaymentRequest::OnShippingAddressChange(mojom::blink::PaymentAddressPtr add ress) 536 void PaymentRequest::OnShippingAddressChange(mojom::blink::PaymentAddressPtr add ress)
537 { 537 {
538 DCHECK(m_showResolver); 538 DCHECK(m_showResolver);
539 DCHECK(!m_completeResolver); 539 DCHECK(!m_completeResolver);
540 540
541 String errorMessage; 541 String errorMessage;
542 if (!PaymentsValidators::isValidShippingAddress(address, &errorMessage)) { 542 if (!PaymentsValidators::isValidShippingAddress(address, &errorMessage)) {
543 m_showResolver->reject(DOMException::create(SyntaxError, errorMessage)); 543 m_showResolver->reject(DOMException::create(SyntaxError, errorMessage));
544 clearResolversAndCloseMojoConnection(); 544 clearResolversAndCloseMojoConnection();
545 return; 545 return;
(...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after
697 m_completeTimer.stop(); 697 m_completeTimer.stop();
698 m_completeResolver.clear(); 698 m_completeResolver.clear();
699 m_showResolver.clear(); 699 m_showResolver.clear();
700 m_abortResolver.clear(); 700 m_abortResolver.clear();
701 if (m_clientBinding.is_bound()) 701 if (m_clientBinding.is_bound())
702 m_clientBinding.Close(); 702 m_clientBinding.Close();
703 m_paymentProvider.reset(); 703 m_paymentProvider.reset();
704 } 704 }
705 705
706 } // namespace blink 706 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698