File tree Expand file tree Collapse file tree 2 files changed +9
-2
lines changed Expand file tree Collapse file tree 2 files changed +9
-2
lines changed Original file line number Diff line number Diff line change @@ -294,6 +294,7 @@ export default class Messages {
294294 } else {
295295 iframe . style . top = '0'
296296 }
297+ iframe . contentWindow . focus ( )
297298
298299 context . track ( )
299300 break
@@ -339,6 +340,7 @@ export default class Messages {
339340 const vars = JSON . stringify ( options . message )
340341 const iframe = document . createElement ( 'iframe' ) as MessageFrame
341342 iframe . setAttribute ( 'id' , `lp-message-${ messageId } ` )
343+ iframe . setAttribute ( 'title' , 'Popup' )
342344 iframe . style . cssText = [
343345 'border-width: 0' ,
344346 'position: fixed' ,
Original file line number Diff line number Diff line change @@ -1189,11 +1189,12 @@ describe(Messages, () => {
11891189 } )
11901190
11911191 it ( "shows the message on loadFinished events" , ( ) => {
1192- const renderedMessage = createMockMessageRender ( )
1192+ const renderedMessage = createMockMessageRender ( ) as any
11931193
11941194 messages . processMessageEvent ( "123" , "http://leanplum/loadFinished" )
11951195
11961196 expect ( renderedMessage . style . visibility ) . toEqual ( "visible" )
1197+ expect ( renderedMessage . contentWindow . focus ) . toHaveBeenCalledTimes ( 1 )
11971198 } )
11981199
11991200 it ( "removes the message on close events" , ( ) => {
@@ -1250,7 +1251,10 @@ describe(Messages, () => {
12501251 expect ( renderedMessage . style . top ) . toEqual ( "" )
12511252 } )
12521253
1253- type RenderedMessage = HTMLElement & { metadata : any }
1254+ type RenderedMessage = HTMLElement & {
1255+ metadata : any ,
1256+ contentWindow : Window
1257+ }
12541258
12551259 function createMockMessageRender ( message : any = { } ) : RenderedMessage {
12561260 const renderedMessage = document . createElement ( 'a' ) as unknown as RenderedMessage
@@ -1266,6 +1270,7 @@ describe(Messages, () => {
12661270 runTrackedActionNamed : jest . fn ( )
12671271 }
12681272 }
1273+ jest . spyOn ( renderedMessage . contentWindow , 'focus' ) . mockImplementation ( ( ) => { /* noop */ } )
12691274 jest . spyOn ( document , 'getElementById' ) . mockReturnValue ( renderedMessage )
12701275
12711276 return renderedMessage
You can’t perform that action at this time.
0 commit comments