@@ -91,32 +91,49 @@ pub const XMLHttpRequestEventTarget = struct {
9191 return self .onreadystatechange_cbk ;
9292 }
9393
94- pub fn set_onloadstart (self : * XMLHttpRequestEventTarget , listener : EventHandler.Listener , page : * Page ) ! void {
94+ pub fn set_onloadstart (self : * XMLHttpRequestEventTarget , listener : ? EventHandler.Listener , page : * Page ) ! void {
9595 if (self .onloadstart_cbk ) | cbk | try self .unregister ("loadstart" , cbk .id );
96- self .onloadstart_cbk = try self .register (page .arena , "loadstart" , listener );
96+ if (listener ) | listen | {
97+ self .onloadstart_cbk = try self .register (page .arena , "loadstart" , listen );
98+ }
9799 }
98- pub fn set_onprogress (self : * XMLHttpRequestEventTarget , listener : EventHandler.Listener , page : * Page ) ! void {
100+ pub fn set_onprogress (self : * XMLHttpRequestEventTarget , listener : ? EventHandler.Listener , page : * Page ) ! void {
99101 if (self .onprogress_cbk ) | cbk | try self .unregister ("progress" , cbk .id );
100- self .onprogress_cbk = try self .register (page .arena , "progress" , listener );
102+ if (listener ) | listen | {
103+ self .onprogress_cbk = try self .register (page .arena , "progress" , listen );
104+ }
101105 }
102- pub fn set_onabort (self : * XMLHttpRequestEventTarget , listener : EventHandler.Listener , page : * Page ) ! void {
106+ pub fn set_onabort (self : * XMLHttpRequestEventTarget , listener : ? EventHandler.Listener , page : * Page ) ! void {
103107 if (self .onabort_cbk ) | cbk | try self .unregister ("abort" , cbk .id );
104- self .onabort_cbk = try self .register (page .arena , "abort" , listener );
108+ if (listener ) | listen | {
109+ self .onabort_cbk = try self .register (page .arena , "abort" , listen );
110+ }
105111 }
106- pub fn set_onload (self : * XMLHttpRequestEventTarget , listener : EventHandler.Listener , page : * Page ) ! void {
112+ pub fn set_onload (self : * XMLHttpRequestEventTarget , listener : ? EventHandler.Listener , page : * Page ) ! void {
107113 if (self .onload_cbk ) | cbk | try self .unregister ("load" , cbk .id );
108- self .onload_cbk = try self .register (page .arena , "load" , listener );
114+ if (listener ) | listen | {
115+ self .onload_cbk = try self .register (page .arena , "load" , listen );
116+ }
109117 }
110- pub fn set_ontimeout (self : * XMLHttpRequestEventTarget , listener : EventHandler.Listener , page : * Page ) ! void {
118+ pub fn set_ontimeout (self : * XMLHttpRequestEventTarget , listener : ? EventHandler.Listener , page : * Page ) ! void {
111119 if (self .ontimeout_cbk ) | cbk | try self .unregister ("timeout" , cbk .id );
112- self .ontimeout_cbk = try self .register (page .arena , "timeout" , listener );
120+
121+ if (listener ) | listen | {
122+ self .ontimeout_cbk = try self .register (page .arena , "timeout" , listen );
123+ }
113124 }
114- pub fn set_onloadend (self : * XMLHttpRequestEventTarget , listener : EventHandler.Listener , page : * Page ) ! void {
125+ pub fn set_onloadend (self : * XMLHttpRequestEventTarget , listener : ? EventHandler.Listener , page : * Page ) ! void {
115126 if (self .onloadend_cbk ) | cbk | try self .unregister ("loadend" , cbk .id );
116- self .onloadend_cbk = try self .register (page .arena , "loadend" , listener );
127+
128+ if (listener ) | listen | {
129+ self .onloadend_cbk = try self .register (page .arena , "loadend" , listen );
130+ }
117131 }
118- pub fn set_onreadystatechange (self : * XMLHttpRequestEventTarget , listener : EventHandler.Listener , page : * Page ) ! void {
132+ pub fn set_onreadystatechange (self : * XMLHttpRequestEventTarget , listener : ? EventHandler.Listener , page : * Page ) ! void {
119133 if (self .onreadystatechange_cbk ) | cbk | try self .unregister ("readystatechange" , cbk .id );
120- self .onreadystatechange_cbk = try self .register (page .arena , "readystatechange" , listener );
134+
135+ if (listener ) | listen | {
136+ self .onreadystatechange_cbk = try self .register (page .arena , "readystatechange" , listen );
137+ }
121138 }
122139};
0 commit comments