It is created, unconditionally fired only once (right after creation),
and then used only with add(), which becomes a synchronous
self-call.
I've searched in Wikimedia Git and Codesearch, and found no uses
of `logEventQueue` or `mw.uls.eventlogger` outside this file.
Change-Id: I3832bcb409fc919c2078e583d50e20413dede163
Follows-up 4cd1def.
localStorage is available by all supported browsers as of MediaWiki 1.25.
As of MediaWiki 1.27, this is also enforced by an explicit feature test
in startup.js.
Change-Id: I12b577919579f498e294376f748715b868f21869
* Fix inaccurate class comment that was copied from an unrelated
module in MediaWiki core.
* Remove use of deprecated getModifiedTime(). While this implementation was
straight forward, it is more reliable and deterministic to use a content hash
because timestamps are not tracked by Git. This currently causes needless
cache invalidation for all users at Wikimedia every week because git-clone
starts with fresh timestamps on disk.
I'm not using enableModuleContentVersion() right now because calling
getScript() reads all files into memory which is more expensive than
simply hashing the files. Especially because safeFileHash() is backed
by an APC cache via FileContentsHasher.
This matches the implementation in core ResourceLoaderFileModule.
Change-Id: If9aaefa6a3cf047c6c36e1cdd0f350412d59c849
* Remove manual tracking of when a hash is first seen.
ResourceLoader is no longer time-based, rather it is content based.
Except where a timestamp is actually wanted as key, a hash is all
we need. The default implementation of simply calling getScript()
and hashing its output suffices, and isn't a performance problem
in this case.
* Also simplify getScript() by passing an object to 'mw.config.set'.
Instead of multiple calls for each key/value. This is a no-op
now because there is only one key.
* Fix inaccurate class comment that was copied from an unrelated
module in MediaWiki core.
Change-Id: I9bb82cadd9caa7e584e20dd49ce30b64218326c4
T122341:
* Move hideOriginal() call to right before render() to reduce repaint flash.
* Use plain css() instead of show() and hide().
* Use native getAttribute() instead of jQuery().attr.
Other minor clean up:
* Fix jsduck syntax.
* Consistently use 'location' instead of 'window.location'
(mostly the case already except for one).
Bug: T122341
Change-Id: Ief76fe7c0fb2bfca3468361ebab14c1dfb1df4c2
Files:
* Consistently have one (1) new line at EOF
(.gitignore, *.css, *.sh)
JSHint:
* Separate the common (general Wikimedia code conventions) from
the local more stricter rules (nice work!).
Maintenance:
* Use simplified $IP definition where getenv is only called once.
Based on http://git.io/ve-mw-36fc3b59-makeStaticLoader
JavaScript:
* Use the same closure in all files:
- No need for "undefined".
- One linebreak between license header and start of closure
(sometimes there were 1 or 2 empty lines).
- ext.uls.ime.js: No need for "document" (redundant in general,
but especially as it wasn't used anywhere in this file).
- Use "$, mw" for all ext.* modules (one of them used "mw, $").
Change-Id: Iba5dab14bbc3fbfc9f8fe96dd2d95529587a69aa