@@ -84,7 +84,7 @@ func (el *Element) Hover() error {
84
84
return err
85
85
}
86
86
87
- return el .page .Mouse .MoveTo (* pt )
87
+ return el .page .Context ( el . ctx ). Mouse .MoveTo (* pt )
88
88
}
89
89
90
90
// MoveMouseOut of the current element
@@ -113,7 +113,7 @@ func (el *Element) Click(button proto.InputMouseButton, clickCount int) error {
113
113
114
114
defer el .tryTrace (TraceTypeInput , string (button )+ " click" )()
115
115
116
- return el .page .Mouse .Click (button , clickCount )
116
+ return el .page .Context ( el . ctx ). Mouse .Click (button , clickCount )
117
117
}
118
118
119
119
// Tap will scroll to the button and tap it just like a human.
@@ -136,7 +136,7 @@ func (el *Element) Tap() error {
136
136
137
137
defer el .tryTrace (TraceTypeInput , "tap" )()
138
138
139
- return el .page .Touch .Tap (pt .X , pt .Y )
139
+ return el .page .Context ( el . ctx ). Touch .Tap (pt .X , pt .Y )
140
140
}
141
141
142
142
// Interactable checks if the element is interactable with cursor.
@@ -163,12 +163,12 @@ func (el *Element) Interactable() (pt *proto.Point, err error) {
163
163
return
164
164
}
165
165
166
- scroll , err := el .page .root .Eval (`() => ({ x: window.scrollX, y: window.scrollY })` )
166
+ scroll , err := el .page .root .Context ( el . ctx ). Eval (`() => ({ x: window.scrollX, y: window.scrollY })` )
167
167
if err != nil {
168
168
return
169
169
}
170
170
171
- elAtPoint , err := el .page .ElementFromPoint (
171
+ elAtPoint , err := el .page .Context ( el . ctx ). ElementFromPoint (
172
172
int (pt .X )+ scroll .Value .Get ("x" ).Int (),
173
173
int (pt .Y )+ scroll .Value .Get ("y" ).Int (),
174
174
)
@@ -208,7 +208,7 @@ func (el *Element) Type(keys ...input.Key) error {
208
208
if err != nil {
209
209
return err
210
210
}
211
- return el .page .Keyboard .Type (keys ... )
211
+ return el .page .Context ( el . ctx ). Keyboard .Type (keys ... )
212
212
}
213
213
214
214
// KeyActions is similar with Page.KeyActions.
@@ -219,7 +219,7 @@ func (el *Element) KeyActions() (*KeyActions, error) {
219
219
return nil , err
220
220
}
221
221
222
- return el .page .KeyActions (), nil
222
+ return el .page .Context ( el . ctx ). KeyActions (), nil
223
223
}
224
224
225
225
// SelectText selects the text that matches the regular expression.
@@ -271,7 +271,7 @@ func (el *Element) Input(text string) error {
271
271
return err
272
272
}
273
273
274
- err = el .page .InsertText (text )
274
+ err = el .page .Context ( el . ctx ). InsertText (text )
275
275
_ , _ = el .Evaluate (evalHelper (js .InputEvent ).ByUser ())
276
276
return err
277
277
}
@@ -421,7 +421,7 @@ func (el *Element) ShadowRoot() (*Element, error) {
421
421
return nil , err
422
422
}
423
423
424
- return el .page .ElementFromObject (shadowNode .Object )
424
+ return el .page .Context ( el . ctx ). ElementFromObject (shadowNode .Object )
425
425
}
426
426
427
427
// Frame creates a page instance that represents the iframe
@@ -532,9 +532,10 @@ func (el *Element) WaitStableRAF() error {
532
532
defer el .tryTrace (TraceTypeWait , "stable RAF" )()
533
533
534
534
var shape * proto.DOMGetContentQuadsResult
535
+ page := el .page .Context (el .ctx )
535
536
536
537
for {
537
- err = el . page .WaitRepaint ()
538
+ err = page .WaitRepaint ()
538
539
if err != nil {
539
540
return err
540
541
}
@@ -625,7 +626,7 @@ func (el *Element) Resource() ([]byte, error) {
625
626
return nil , err
626
627
}
627
628
628
- return el .page .GetResource (src .Value .String ())
629
+ return el .page .Context ( el . ctx ). GetResource (src .Value .String ())
629
630
}
630
631
631
632
// BackgroundImage returns the css background-image of the element
@@ -637,7 +638,7 @@ func (el *Element) BackgroundImage() ([]byte, error) {
637
638
638
639
u := res .Value .Str ()
639
640
640
- return el .page .GetResource (u )
641
+ return el .page .Context ( el . ctx ). GetResource (u )
641
642
}
642
643
643
644
// Screenshot of the area of the element
@@ -652,7 +653,7 @@ func (el *Element) Screenshot(format proto.PageCaptureScreenshotFormat, quality
652
653
Format : format ,
653
654
}
654
655
655
- bin , err := el .page .Screenshot (false , opts )
656
+ bin , err := el .page .Context ( el . ctx ). Screenshot (false , opts )
656
657
if err != nil {
657
658
return nil , err
658
659
}
0 commit comments