@@ -72,19 +72,25 @@ class FooterFile {
7272 const container = document . createElement ( 'div' )
7373 container . id = CONTENT_ID
7474
75- const filesList = document . querySelector ( '.files-list ' )
76- || document . querySelector ( '.files-filestable' ) ?. parentElement
77- || document . querySelector ( '#filestable' ) ?. parentElement
75+ const anchor = document . querySelector ( '.files-list__table ' )
76+ || document . querySelector ( '.files-filestable' )
77+ || document . querySelector ( '#filestable' )
7878
79- if ( ! filesList ) return
79+ if ( ! anchor ) return
8080
81- // When there are no real files, hide the entire files-list (table headers, empty state, whitespace)
82- if ( ! hasRealFiles ) {
83- filesList . classList . add ( 'sendent-hide-filelist' )
81+ const filesList = anchor . closest ( '.files-list' ) ?? anchor . parentElement
82+
83+ if ( ! hasRealFiles && filesList ) {
84+ // No real files — hide empty state and table headers
85+ filesList . classList . add ( 'sendent-no-files' )
8486 }
8587
86- // Insert after .files-list so we're outside its scroll context
87- filesList . insertAdjacentElement ( 'afterend' , container )
88+ // Insert inside files-list, after the table. Mark files-list so we can
89+ // disable its internal scrolling and let only the page scroll.
90+ if ( filesList ) {
91+ filesList . classList . add ( 'sendent-has-securemail' )
92+ }
93+ anchor . insertAdjacentElement ( 'afterend' , container )
8894
8995 // Show loading spinner
9096 const spinner = document . createElement ( 'span' )
@@ -167,7 +173,8 @@ class FooterFile {
167173 * Restores the files-list to its default state.
168174 */
169175function restoreFilesList ( ) {
170- document . querySelector ( '.sendent-hide-filelist' ) ?. classList . remove ( 'sendent-hide-filelist' )
176+ document . querySelector ( '.sendent-no-files' ) ?. classList . remove ( 'sendent-no-files' )
177+ document . querySelector ( '.sendent-has-securemail' ) ?. classList . remove ( 'sendent-has-securemail' )
171178}
172179
173180let debounceTimer : ReturnType < typeof setTimeout > | null = null
0 commit comments