Skip to content

Commit bfbbafb

Browse files
SylvainBoilardhhugo
authored andcommitted
1 parent 3d05b15 commit bfbbafb

File tree

3 files changed

+57
-4
lines changed

3 files changed

+57
-4
lines changed

CHANGES.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,7 @@
115115
* Runtime: reimplement the runtime of weak and ephemeron (#1707)
116116
* Lib: Modify Typed_array API for compatibility with WebAssembly
117117
* Lib: add details element and toggle event (#1728)
118+
* Lib: implement popover API (#1734)
118119
* Toplevel: no longer set globals for toplevel initialization
119120
* Runtime: precompute constants used in `caml_lxm_next` (#1730)
120121
* Runtime: cleanup runtime

lib/js_of_ocaml/dom_html.ml

Lines changed: 28 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -561,6 +561,10 @@ and eventTarget = object ('self)
561561

562562
method onpointerup : ('self t, pointerEvent t) event_listener writeonly_prop
563563

564+
method onbeforetoggle : ('self t, toggleEvent t) event_listener writeonly_prop
565+
566+
method ontoggle : ('self t, toggleEvent t) event_listener writeonly_prop
567+
564568
method dispatchEvent : event t -> bool t meth
565569
end
566570

@@ -739,6 +743,8 @@ and element = object
739743

740744
method scrollHeight : int prop
741745

746+
method popover : js_string t opt prop
747+
742748
method getClientRects : clientRectList t meth
743749

744750
method getBoundingClientRect : clientRect t meth
@@ -751,6 +757,18 @@ and element = object
751757

752758
method blur : unit meth
753759

760+
method hidePopover : unit meth
761+
762+
method showPopover : unit meth
763+
764+
method showPopover_options : _ -> unit meth
765+
766+
method togglePopover : bool t meth
767+
768+
method togglePopover_force : bool t -> bool t meth
769+
770+
method togglePopover_options : _ -> bool t meth
771+
754772
inherit eventTarget
755773
end
756774

@@ -971,6 +989,8 @@ module Event = struct
971989

972990
let waiting = Dom.Event.make "waiting"
973991

992+
let beforetoggle = Dom.Event.make "beforetoggle"
993+
974994
let toggle = Dom.Event.make "toggle"
975995

976996
let make = Dom.Event.make
@@ -1201,6 +1221,10 @@ class type inputElement = object ('self)
12011221

12021222
method selectionEnd : int prop
12031223

1224+
method popovertarget : element t opt prop
1225+
1226+
method popovertargetaction : js_string t prop
1227+
12041228
method onselect : ('self t, event t) event_listener prop
12051229

12061230
method onchange : ('self t, event t) event_listener prop
@@ -1276,6 +1300,10 @@ class type buttonElement = object
12761300
method _type : js_string t readonly_prop
12771301

12781302
method value : js_string t prop
1303+
1304+
method popovertarget : element t opt prop
1305+
1306+
method popovertargetaction : js_string t prop
12791307
end
12801308

12811309
class type labelElement = object
@@ -1392,8 +1420,6 @@ class type detailsElement = object ('self)
13921420
method open_ : bool t prop
13931421

13941422
method name : js_string t prop
1395-
1396-
method ontoggle : ('self t, toggleEvent t) event_listener prop
13971423
end
13981424

13991425
class type imageElement = object ('self)

lib/js_of_ocaml/dom_html.mli

Lines changed: 28 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -577,6 +577,10 @@ and eventTarget = object ('self)
577577

578578
method onpointerup : ('self t, pointerEvent t) event_listener writeonly_prop
579579

580+
method onbeforetoggle : ('self t, toggleEvent t) event_listener writeonly_prop
581+
582+
method ontoggle : ('self t, toggleEvent t) event_listener writeonly_prop
583+
580584
method dispatchEvent : event t -> bool t meth
581585
end
582586

@@ -759,6 +763,8 @@ and element = object
759763

760764
method scrollHeight : int prop
761765

766+
method popover : js_string t opt prop
767+
762768
method getClientRects : clientRectList t meth
763769

764770
method getBoundingClientRect : clientRect t meth
@@ -771,6 +777,18 @@ and element = object
771777

772778
method blur : unit meth
773779

780+
method hidePopover : unit meth
781+
782+
method showPopover : unit meth
783+
784+
method showPopover_options : _ -> unit meth
785+
786+
method togglePopover : bool t meth
787+
788+
method togglePopover_force : bool t -> bool t meth
789+
790+
method togglePopover_options : _ -> bool t meth
791+
774792
inherit eventTarget
775793
end
776794

@@ -1013,6 +1031,10 @@ class type inputElement = object ('self)
10131031

10141032
method selectionEnd : int prop
10151033

1034+
method popovertarget : element t opt prop
1035+
1036+
method popovertargetaction : js_string t prop
1037+
10161038
method onselect : ('self t, event t) event_listener prop
10171039

10181040
method onchange : ('self t, event t) event_listener prop
@@ -1088,6 +1110,10 @@ class type buttonElement = object
10881110
method _type : js_string t readonly_prop
10891111

10901112
method value : js_string t prop
1113+
1114+
method popovertarget : element t opt prop
1115+
1116+
method popovertargetaction : js_string t prop
10911117
end
10921118

10931119
class type labelElement = object
@@ -1204,8 +1230,6 @@ class type detailsElement = object ('self)
12041230
method open_ : bool t prop
12051231

12061232
method name : js_string t prop
1207-
1208-
method ontoggle : ('self t, toggleEvent t) event_listener prop
12091233
end
12101234

12111235
class type imageElement = object ('self)
@@ -2560,6 +2584,8 @@ module Event : sig
25602584

25612585
val waiting : mediaEvent t typ
25622586

2587+
val beforetoggle : toggleEvent t typ
2588+
25632589
val toggle : toggleEvent t typ
25642590

25652591
val make : string -> 'a typ

0 commit comments

Comments
 (0)