diff options
Diffstat (limited to 'components/script_traits')
-rw-r--r-- | components/script_traits/lib.rs | 5 | ||||
-rw-r--r-- | components/script_traits/script_msg.rs | 4 |
2 files changed, 9 insertions, 0 deletions
diff --git a/components/script_traits/lib.rs b/components/script_traits/lib.rs index 9db84516fde..b475a214cc1 100644 --- a/components/script_traits/lib.rs +++ b/components/script_traits/lib.rs @@ -60,6 +60,7 @@ use net_traits::{ReferrerPolicy, ResourceThreads}; use net_traits::image::base::Image; use net_traits::image_cache_thread::ImageCacheThread; use net_traits::response::HttpsState; +use net_traits::storage_thread::StorageType; use profile_traits::mem; use profile_traits::time as profile_time; use serde::{Deserialize, Deserializer, Serialize, Serializer}; @@ -244,6 +245,9 @@ pub enum ConstellationControlMsg { /// The pipeline that has completed loading. child: PipelineId, }, + /// Cause a `storage` event to be dispatched at the appropriate window. + /// The strings are key, old value and new value. + DispatchStorageEvent(PipelineId, StorageType, Url, Option<String>, Option<String>, Option<String>), /// Notifies a parent pipeline that one of its child frames is now active. /// PipelineId is for the parent, FrameId is the child frame. FramedContentChanged(PipelineId, FrameId), @@ -279,6 +283,7 @@ impl fmt::Debug for ConstellationControlMsg { TransitionEnd(..) => "TransitionEnd", WebFontLoaded(..) => "WebFontLoaded", DispatchFrameLoadEvent { .. } => "DispatchFrameLoadEvent", + DispatchStorageEvent(..) => "DispatchStorageEvent", FramedContentChanged(..) => "FramedContentChanged", ReportCSSError(..) => "ReportCSSError", Reload(..) => "Reload" diff --git a/components/script_traits/script_msg.rs b/components/script_traits/script_msg.rs index 7969218e5d3..434aa0011e6 100644 --- a/components/script_traits/script_msg.rs +++ b/components/script_traits/script_msg.rs @@ -18,6 +18,7 @@ use ipc_channel::ipc::IpcSender; use msg::constellation_msg::{Key, KeyModifiers, KeyState}; use msg::constellation_msg::{PipelineId, TraversalDirection}; use net_traits::CoreResourceMsg; +use net_traits::storage_thread::StorageType; use offscreen_gl_context::{GLContextAttributes, GLLimits}; use style_traits::cursor::Cursor; use style_traits::viewport::ViewportConstraints; @@ -59,6 +60,9 @@ pub enum LogEntry { /// Messages from the script to the constellation. #[derive(Deserialize, Serialize)] pub enum ScriptMsg { + /// Broadcast a storage event to every same-origin pipeline. + /// The strings are key, old value and new value. + BroadcastStorageEvent(PipelineId, StorageType, Url, Option<String>, Option<String>, Option<String>), /// Indicates whether this pipeline is currently running animations. ChangeRunningAnimationsState(PipelineId, AnimationState), /// Requests that a new 2D canvas thread be created. (This is done in the constellation because |