@@ -1761,39 +1761,25 @@ export async function openNewWindowFromTabs(tabs, options = {}) {
17611761 return [ ] ;
17621762
17631763 log ( 'openNewWindowFromTabs: ' , tabs , options ) ;
1764- const [ sourceWindow , sourceScreen ] = await Promise . all ( [
1765- browser . windows . get ( tabs [ 0 ] . windowId ) ,
1766- SidebarConnection . isOpen ( tabs [ 0 ] . windowId ) ?
1767- browser . runtime . sendMessage ( {
1768- type : Constants . kCOMMAND_GET_SCREEN_INFO ,
1769- windowId : tabs [ 0 ] . windowId ,
1770- } ) : null ,
1771- ] ) ;
1764+ const sourceWindow = await browser . windows . get ( tabs [ 0 ] . windowId ) ;
17721765 const sourceParams = getWindowParamsFromSource ( sourceWindow , options ) ;
17731766 const windowParams = {
17741767 //active: true, // not supported in Firefox...
17751768 url : 'about:blank' ,
17761769 ...sourceParams ,
17771770 } ;
1778- let positioned = (
1771+ const positioned = (
17791772 'left' in options &&
17801773 'top' in options &&
17811774 // positions are not provided for a maximized or fullscreen window!
17821775 typeof windowParams . left == 'number' &&
17831776 typeof windowParams . top == 'number'
17841777 ) ;
17851778 if ( positioned ) { // opening new window at the dropped position
1786- const leftOffset = Math . min ( 20 , sourceScreen ? Math . max ( 0 , sourceScreen . availWidth - sourceWindow . width ) : 20 ) ;
1787- const topOffset = Math . min ( 20 , sourceScreen ? Math . max ( 0 , sourceScreen . availHeight - sourceWindow . height ) : 20 ) ;
1788- if ( leftOffset == 0 && topOffset == 0 ) {
1789- positioned = false ;
1790- }
1791- else {
1792- windowParams . left += leftOffset ;
1793- windowParams . top += topOffset ;
1794- }
1779+ windowParams . left = options . left ;
1780+ windowParams . top = options . top ;
17951781 }
1796- if ( ! positioned ) {
1782+ else {
17971783 // We need to delete dimensions here to open new window smartly dimensioned by Firefox itself.
17981784 // See https://github.com/piroor/treestyletab/issues/3959#issuecomment-5494800430
17991785 delete windowParams . height ;
0 commit comments