There's a lot of things going on here, so a quick summary:
* Moved the warning outside sitenotice to avoid reflows and all
kinds of other issues, including those with dismissable notices.
* Placed the warning on the bottom of the page, on all skins, for
consistency and to avoid obstructing vital UI elements such as
site name, user tools, search box.
* Changed the UI to use OOUI for, again, consistency and to avoid
reinventing the wheel with button styling.
* Removed the cookie emoji as it was only taking up valuable space
on mobile and making designing a sensible layout much harder.
* Merged the mobile and desktop RL modules into a single, responsive
one. The warning will work correctly for any skin and screen width.
* The integration tests are truly horrible, I tried to at least
make them work. They deserve a proper rewrite, but that should be
done after the extension switches to the new hook system.
I will post screenshots of this in action in the first of the linked
tasks.
Bug: T271047
Bug: T173335
Change-Id: I6e2a3d7aeccc0d4df1b3238e52c67e72099d27d8
If geolocation is done at client-side, it was displaying the warning without
checking the dismissed cookie. Now the main module will remove it if the cookie
exists, and the geolocation service won't display it again.
The idea of doing geolocation at client side rather than server side is to
allow more pages cached at varnish/squid, but it still required to let the
dismissed cookie break the cache. With this change, the dismissed cookie can
be blocked at the varnish/squid level, all pages will contain the cookie
warning notice, but it will be left hidden by the client-side script instead
of displaying it.
In addition, the click handler for .mw-cookiewarning-dismiss has been put
inside a DOMready handler to prevent this code fire before the element becomes
available.
Bug: T183657
Change-Id: I5f7505dbd650867155485d17fff58fb92800581b
Enable the CookieWarning to be visible on a mobile device (bottom, instead of top).
Instead of only rely on cookies to save, that a user accepted that we use cookies,
save it as a user preference, too.
Change-Id: Ib03d5eafd4392d14315115c158b547b9e26a173c