Last modified: 2014-11-12 14:55:12 UTC
https://gerrit.wikimedia.org/r/#/c/172507/
From my point of view, steps could be: * Make a list of interfaces and behaviours our widgets possess * Extract common interfaces (might not be code interfaces, since JS is not particularly good with them) * Unify implementations, document which widget implements which interface I'd strongly prefer to not increase code reusage through inheritance.
Despite the last sentence in my previous comment I still think Henning's patch is an improvement and could be merged :)
Another step I forgot: Write tests for all interfaces, run the tests against the widgets implementing an interface.