@@ -111,7 +111,7 @@ def __init__(
111
111
self , parent : ChannelOwner , type : str , guid : str , initializer : Dict
112
112
) -> None :
113
113
super ().__init__ (parent , type , guid , initializer )
114
- self ._browser_context : BrowserContext = None # type: ignore
114
+ self ._browser_context : BrowserContext = parent
115
115
self .accessibility = Accessibility (self ._channel )
116
116
self .keyboard = Keyboard (self ._channel )
117
117
self .mouse = Mouse (self ._channel )
@@ -126,7 +126,9 @@ def __init__(
126
126
self ._bindings : Dict [str , Any ] = {}
127
127
self ._routes : List [RouteHandlerEntry ] = []
128
128
self ._owned_context : Optional ["BrowserContext" ] = None
129
- self ._timeout_settings : TimeoutSettings = TimeoutSettings (None )
129
+ self ._timeout_settings : TimeoutSettings = TimeoutSettings (
130
+ self ._browser_context ._timeout_settings
131
+ )
130
132
self ._video : Optional [Video ] = None
131
133
self ._opener = cast ("Page" , from_nullable_channel (initializer .get ("opener" )))
132
134
@@ -217,10 +219,6 @@ def __init__(
217
219
def __repr__ (self ) -> str :
218
220
return f"<Page url={ self .url !r} >"
219
221
220
- def _set_browser_context (self , context : "BrowserContext" ) -> None :
221
- self ._browser_context = context
222
- self ._timeout_settings = TimeoutSettings (context ._timeout_settings )
223
-
224
222
def _on_request_failed (
225
223
self ,
226
224
request : Request ,
@@ -271,7 +269,10 @@ def _on_worker(self, worker: "Worker") -> None:
271
269
272
270
def _on_close (self ) -> None :
273
271
self ._is_closed = True
274
- self ._browser_context ._pages .remove (self )
272
+ if self in self ._browser_context ._pages :
273
+ self ._browser_context ._pages .remove (self )
274
+ if self in self ._browser_context ._background_pages :
275
+ self ._browser_context ._background_pages .remove (self )
275
276
self .emit (Page .Events .Close )
276
277
277
278
def _on_crash (self ) -> None :
0 commit comments