Internals
Note: This was updated for IAT version > 1.8.
IAT, at it's core, is very simple. In the current tab, it generates a filename for each textarea in the web page. It then watches the filenames for this page and if one of the files changes (or is created) it reads the contents into the textarea.
Tab Selection
IAT listens for tab selection events from Firefox's tabbed browser object. This lets us only monitor things when a tab is currently selected. This means at most there is one monitor active per window.
Monitor
The monitor, when activated for a tab, reads through the DOM looking for any new textareas and any frames or iframes. Each frame's and iframe's documentElement is given a unique id and this is matched against a dictionary of textarea trackers. Each tracker watches one textarea and it's matching file on disk.
