Make AVIM restartless #9

Open
1ec5 opened this Issue Jan 26, 2014 · 2 comments

Comments

Projects
None yet
1 participant
@1ec5
Owner

1ec5 commented Jan 26, 2014

AVIM should be a restartless extension.

This task primarily consists of converting the complex web of overlays into functions that programmatically build AVIM’s UI. We’re partway there with the new toolbar.

Upon installation, bootstrap.js would manually build the UI in every existing window and register for new windows using FUEL/STEEL.

Upon uninstallation, it would delete window.avim from every existing window, remove UI, and remove the new window listener. The XPCOM component probably doesn’t need any changes.

1ec5 added a commit that referenced this issue Jan 26, 2014

@1ec5 1ec5 added the performance label Mar 23, 2015

1ec5 added a commit that referenced this issue Apr 13, 2015

First pass on restartlessness
Began migrating from declarative XUL overlays to data-driven but nonetheless procedural JavaScript. 😢 Registered resource: aliases to manually import transformer.js as a JavaScript code module instead of an XPCOM component and the preferences file as a subscript, all while hopefully maintaining Firefox 2 compatibility.

The upside is that AVIM will be restartless, and the redundant menu definitions can be combined.

Fixes #9.
@1ec5

This comment has been minimized.

Show comment
Hide comment
@1ec5

1ec5 Apr 15, 2015

Owner

(Moved to #132.)

Owner

1ec5 commented Apr 15, 2015

(Moved to #132.)

@1ec5

This comment has been minimized.

Show comment
Hide comment
@1ec5

1ec5 Apr 17, 2015

Owner

In true AVIM fashion, as soon as you enable or disable the extension, it takes effect throughout the application – no need to reload any webpages. However, the event handlers still fire after AVIM is disabled, triggering silent JavaScript errors as they try to talk to the window’s AVIM controller, which has already been unloaded.

Owner

1ec5 commented Apr 17, 2015

In true AVIM fashion, as soon as you enable or disable the extension, it takes effect throughout the application – no need to reload any webpages. However, the event handlers still fire after AVIM is disabled, triggering silent JavaScript errors as they try to talk to the window’s AVIM controller, which has already been unloaded.

@1ec5 1ec5 referenced this issue Apr 19, 2015

Closed

[WIP] Make AVIM restartless #132

16 of 28 tasks complete
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment