Allora devi resettare il timeout ogni volta che l'utente aggiorna la pagina.

Non so se occorre prima resettare il timeout o se e` sufficiente riscriverlo (negli esempi non lo resetto).

Hai comunque necessita` di una variabile GLOBALE in piu`:

var tempo ;

....

onLoad="tempo = window.setTimeout('top.close()', 10000);"

Poi ad ogni evento che deve resettare il timeout ripeti:

<textarea ... onKeyUp="tempo = window.setTimeout('top.close()', 10000);">...

Nota: devi ricordarti di metterlo in ogni evento che ti interessa.
Ma fatti un giro nella libreria Wedev (trovi il link in uno dei post in rilevo): forse trovi uno spunto per inserire il timeout di default ad ogni evento della pagina.

Ciao
Michele