Implement DOM page onvisibilitychange.

This commit is contained in:
janekptacijarabaci 2017-08-17 20:21:38 +02:00 • committed by Roy Tam
commit 3a4e49d048
5 changed files with 15 additions and 2 deletions

View file

@ -950,6 +950,7 @@ GK_ATOM(onupdateready, "onupdateready")
GK_ATOM(onupgradeneeded, "onupgradeneeded")
GK_ATOM(onussdreceived, "onussdreceived")
GK_ATOM(onversionchange, "onversionchange")
GK_ATOM(onvisibilitychange, "onvisibilitychange")
GK_ATOM(onvoicechange, "onvoicechange")
GK_ATOM(onvoiceschanged, "onvoiceschanged")
GK_ATOM(onvrdisplayconnect, "onvrdisplayconnect")

View file

@ -674,6 +674,10 @@ DOCUMENT_ONLY_EVENT(selectionchange,
eSelectionChange,
EventNameType_HTMLXUL,
eBasicEventClass)
DOCUMENT_ONLY_EVENT(visibilitychange,
eVisibilityChange,
EventNameType_HTMLXUL,
eBasicEventClass)
NON_IDL_EVENT(MozMouseHittest,
eMouseHitTest,

View file

@ -275,10 +275,11 @@ partial interface Document {
object registerElement(DOMString name, optional ElementRegistrationOptions options);
};
// http://dvcs.w3.org/hg/webperf/raw-file/tip/specs/PageVisibility/Overview.html#sec-document-interface
// https://w3c.github.io/page-visibility/#extensions-to-the-document-interface
partial interface Document {
readonly attribute boolean hidden;
readonly attribute VisibilityState visibilityState;
attribute EventHandler onvisibilitychange;
};
// http://dev.w3.org/csswg/cssom/#extensions-to-the-document-interface

View file

@ -4,7 +4,7 @@
<meta charset="utf-8">
<title>Page Visibility IDL tests</title>
<link rel="author" title="W3C" href="http://www.w3.org/" />
<link rel="help" href="http://www.w3.org/TR/page-visibility/#sec-document-interface"/>
<link rel="help" href="https://w3c.github.io/page-visibility/"/>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/WebIDLParser.js"></script>
@ -16,6 +16,10 @@
<pre id='untested_idl' style='display:none'>
interface Document {
};
[TreatNonObjectAsNull]
callback EventHandlerNonNull = any (Event event);
typedef EventHandlerNonNull? EventHandler;
</pre>
<pre id='idl'>

View file

@ -448,6 +448,9 @@ NS_EVENT_MESSAGE(eEditorInput)
NS_EVENT_MESSAGE(eSelectStart)
NS_EVENT_MESSAGE(eSelectionChange)
// visibility change
NS_EVENT_MESSAGE(eVisibilityChange)
// Details element events.
NS_EVENT_MESSAGE(eToggle)