diff options
author | Adam Conrad <422184+acconrad@users.noreply.github.com> | 2019-01-23 12:20:53 +0000 |
---|---|---|
committer | Ryan Dahl <ry@tinyclouds.org> | 2019-01-23 06:20:53 -0600 |
commit | e470f31d328884303e56f2f15a4121b8ffe097a6 (patch) | |
tree | 84e878d3c53db4f969c29357c7f5985b59c7d9f2 /js/event.ts | |
parent | 77114fbda49382e397095d8214bd76996b0cfb57 (diff) |
Web API: CustomEvent (#1505)
Diffstat (limited to 'js/event.ts')
-rw-r--r-- | js/event.ts | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/js/event.ts b/js/event.ts index b0d16ff0a..1cc711b32 100644 --- a/js/event.ts +++ b/js/event.ts @@ -22,6 +22,8 @@ export class EventInit implements domTypes.EventInit { export class Event implements domTypes.Event { // Each event has the following associated flags private _canceledFlag = false; + private _dispatchedFlag = false; + private _initializedFlag = false; private _inPassiveListenerFlag = false; private _stopImmediatePropagationFlag = false; private _stopPropagationFlag = false; @@ -30,6 +32,7 @@ export class Event implements domTypes.Event { private _path: domTypes.EventPath[] = []; constructor(type: string, eventInitDict: domTypes.EventInit = {}) { + this._initializedFlag = true; eventAttributes.set(this, { type, bubbles: eventInitDict.bubbles || false, @@ -71,14 +74,36 @@ export class Event implements domTypes.Event { return this._canceledFlag; } + get dispatched(): boolean { + return this._dispatchedFlag; + } + get eventPhase(): number { return getPrivateValue(this, eventAttributes, "eventPhase"); } + get initialized(): boolean { + return this._initializedFlag; + } + get isTrusted(): boolean { return getPrivateValue(this, eventAttributes, "isTrusted"); } + set isTrusted(value) { + eventAttributes.set(this, { + type: this.type, + bubbles: this.bubbles, + cancelable: this.cancelable, + composed: this.composed, + currentTarget: this.currentTarget, + eventPhase: this.eventPhase, + isTrusted: value, + target: this.target, + timeStamp: this.timeStamp + }); + } + get target(): domTypes.EventTarget { return getPrivateValue(this, eventAttributes, "target"); } |