diff options
author | bors-servo <lbergstrom+bors@mozilla.com> | 2018-11-16 09:54:40 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-11-16 09:54:40 -0500 |
commit | a2937d948818665ecda16a06fe6c8fa751d265fd (patch) | |
tree | 7c925d0d1517807e56963847da4c3ca25d7b2626 /components/script/dom/audiocontext.rs | |
parent | 050b2bca70b09a84901de84b4538f19da3250eee (diff) | |
parent | 75eb94afcaae2f868ecccba5b5dcea4066998d7a (diff) | |
download | servo-a2937d948818665ecda16a06fe6c8fa751d265fd.tar.gz servo-a2937d948818665ecda16a06fe6c8fa751d265fd.zip |
Auto merge of #21804 - AgustinCB:unify-task-source-canceller-api, r=gterzian
Unify the task source and task canceller API
To do so, I created a struct `TaskManagement(TaskSource,
TaskCanceller)` and made `*_task_source` return that instead of just
the task source.
Next, I refactored all places in which `task_canceller` by basically
removing them in favour of a previously called `*_task_source`.
I tried to make `task_canceller` a private method in `Window`, with the
hope of enforcing the use of `*_task_source`. However, it's used in
components/script/dom/globalscope.rs:575 in such a way that will make it
harder to avoid. I decided to leave it that way.
It'd be possible to unify `*_task_source` in such a way that we would
have only one method. However, I decided not to do it because one of the
`TaskSource` implementations is special:
`history_traversal_task_source`. Not wanting to over complicate things,
I decided to leave the structure this way.
---
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [x] These changes fix #21154 (github issue number if applicable).
- [x] These changes do not require tests because it's refactoring code that should already be tested.
<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/21804)
<!-- Reviewable:end -->
Diffstat (limited to 'components/script/dom/audiocontext.rs')
-rw-r--r-- | components/script/dom/audiocontext.rs | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/components/script/dom/audiocontext.rs b/components/script/dom/audiocontext.rs index 03cdb516139..9bb4f16ce67 100644 --- a/components/script/dom/audiocontext.rs +++ b/components/script/dom/audiocontext.rs @@ -126,7 +126,7 @@ impl AudioContextMethods for AudioContext { // Steps 4 and 5. let window = DomRoot::downcast::<Window>(self.global()).unwrap(); - let task_source = window.dom_manipulation_task_source(); + let task_source = window.task_manager().dom_manipulation_task_source(); let trusted_promise = TrustedPromise::new(promise.clone()); match self.context.audio_context_impl().suspend() { Ok(_) => { @@ -141,7 +141,7 @@ impl AudioContextMethods for AudioContext { if base_context.State() != AudioContextState::Suspended { base_context.set_state_attribute(AudioContextState::Suspended); let window = DomRoot::downcast::<Window>(context.global()).unwrap(); - window.dom_manipulation_task_source().queue_simple_event( + window.task_manager().dom_manipulation_task_source().queue_simple_event( context.upcast(), atom!("statechange"), &window @@ -188,7 +188,7 @@ impl AudioContextMethods for AudioContext { // Steps 4 and 5. let window = DomRoot::downcast::<Window>(self.global()).unwrap(); - let task_source = window.dom_manipulation_task_source(); + let task_source = window.task_manager().dom_manipulation_task_source(); let trusted_promise = TrustedPromise::new(promise.clone()); match self.context.audio_context_impl().close() { Ok(_) => { @@ -203,7 +203,7 @@ impl AudioContextMethods for AudioContext { if base_context.State() != AudioContextState::Closed { base_context.set_state_attribute(AudioContextState::Closed); let window = DomRoot::downcast::<Window>(context.global()).unwrap(); - window.dom_manipulation_task_source().queue_simple_event( + window.task_manager().dom_manipulation_task_source().queue_simple_event( context.upcast(), atom!("statechange"), &window |