Skip to content

Commit 708730d

Browse files
SylvainBoilardhhugo
authored andcommitted
1 parent b8b75b9 commit 708730d

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
@@ -137,6 +137,7 @@
137137
* Runtime: reimplement the runtime of weak and ephemeron (#1707)
138138
* Lib: Modify Typed_array API for compatibility with WebAssembly
139139
* Lib: add details element and toggle event (#1728)
140+
* Lib: implement popover API (#1734)
140141
* Toplevel: no longer set globals for toplevel initialization
141142
* Runtime: precompute constants used in `caml_lxm_next` (#1730)
142143
* Runtime: cleanup runtime

lib/js_of_ocaml/dom_html.ml

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

570570
method onpointerup : ('self t, pointerEvent t) event_listener writeonly_prop
571571

572+
method onbeforetoggle : ('self t, toggleEvent t) event_listener writeonly_prop
573+
574+
method ontoggle : ('self t, toggleEvent t) event_listener writeonly_prop
575+
572576
method dispatchEvent : event t -> bool t meth
573577
end
574578

@@ -747,6 +751,8 @@ and element = object
747751

748752
method scrollHeight : int prop
749753

754+
method popover : js_string t opt prop
755+
750756
method getClientRects : clientRectList t meth
751757

752758
method getBoundingClientRect : clientRect t meth
@@ -759,6 +765,18 @@ and element = object
759765

760766
method blur : unit meth
761767

768+
method hidePopover : unit meth
769+
770+
method showPopover : unit meth
771+
772+
method showPopover_options : _ -> unit meth
773+
774+
method togglePopover : bool t meth
775+
776+
method togglePopover_force : bool t -> bool t meth
777+
778+
method togglePopover_options : _ -> bool t meth
779+
762780
inherit eventTarget
763781
end
764782

@@ -979,6 +997,8 @@ module Event = struct
979997

980998
let waiting = Dom.Event.make "waiting"
981999

1000+
let beforetoggle = Dom.Event.make "beforetoggle"
1001+
9821002
let toggle = Dom.Event.make "toggle"
9831003

9841004
let make = Dom.Event.make
@@ -1209,6 +1229,10 @@ class type inputElement = object ('self)
12091229

12101230
method selectionEnd : int prop
12111231

1232+
method popovertarget : element t opt prop
1233+
1234+
method popovertargetaction : js_string t prop
1235+
12121236
method onselect : ('self t, event t) event_listener prop
12131237

12141238
method onchange : ('self t, event t) event_listener prop
@@ -1284,6 +1308,10 @@ class type buttonElement = object
12841308
method _type : js_string t readonly_prop
12851309

12861310
method value : js_string t prop
1311+
1312+
method popovertarget : element t opt prop
1313+
1314+
method popovertargetaction : js_string t prop
12871315
end
12881316

12891317
class type labelElement = object
@@ -1400,8 +1428,6 @@ class type detailsElement = object ('self)
14001428
method open_ : bool t prop
14011429

14021430
method name : js_string t prop
1403-
1404-
method ontoggle : ('self t, toggleEvent t) event_listener prop
14051431
end
14061432

14071433
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
@@ -585,6 +585,10 @@ and eventTarget = object ('self)
585585

586586
method onpointerup : ('self t, pointerEvent t) event_listener writeonly_prop
587587

588+
method onbeforetoggle : ('self t, toggleEvent t) event_listener writeonly_prop
589+
590+
method ontoggle : ('self t, toggleEvent t) event_listener writeonly_prop
591+
588592
method dispatchEvent : event t -> bool t meth
589593
end
590594

@@ -767,6 +771,8 @@ and element = object
767771

768772
method scrollHeight : int prop
769773

774+
method popover : js_string t opt prop
775+
770776
method getClientRects : clientRectList t meth
771777

772778
method getBoundingClientRect : clientRect t meth
@@ -779,6 +785,18 @@ and element = object
779785

780786
method blur : unit meth
781787

788+
method hidePopover : unit meth
789+
790+
method showPopover : unit meth
791+
792+
method showPopover_options : _ -> unit meth
793+
794+
method togglePopover : bool t meth
795+
796+
method togglePopover_force : bool t -> bool t meth
797+
798+
method togglePopover_options : _ -> bool t meth
799+
782800
inherit eventTarget
783801
end
784802

@@ -1021,6 +1039,10 @@ class type inputElement = object ('self)
10211039

10221040
method selectionEnd : int prop
10231041

1042+
method popovertarget : element t opt prop
1043+
1044+
method popovertargetaction : js_string t prop
1045+
10241046
method onselect : ('self t, event t) event_listener prop
10251047

10261048
method onchange : ('self t, event t) event_listener prop
@@ -1096,6 +1118,10 @@ class type buttonElement = object
10961118
method _type : js_string t readonly_prop
10971119

10981120
method value : js_string t prop
1121+
1122+
method popovertarget : element t opt prop
1123+
1124+
method popovertargetaction : js_string t prop
10991125
end
11001126

11011127
class type labelElement = object
@@ -1212,8 +1238,6 @@ class type detailsElement = object ('self)
12121238
method open_ : bool t prop
12131239

12141240
method name : js_string t prop
1215-
1216-
method ontoggle : ('self t, toggleEvent t) event_listener prop
12171241
end
12181242

12191243
class type imageElement = object ('self)
@@ -2580,6 +2604,8 @@ module Event : sig
25802604

25812605
val waiting : mediaEvent t typ
25822606

2607+
val beforetoggle : toggleEvent t typ
2608+
25832609
val toggle : toggleEvent t typ
25842610

25852611
val make : string -> 'a typ

0 commit comments

Comments
 (0)