I have seen this getting fed with fractional numbers like
38.9994375. This apparently happens when specific browser zooms
are used, e.g. 110% in Google Chrome. There is a lot of code that
expects this to be an integer number and stops working entirely
when it isn't.
I'm also updating two related comparisons to not be so extremely
specific any more. This probably doesn't make a difference any more
with the fix above, but can't hurt.
This patch doesn't solve T352169, but is one more puzzle piece on
the way to solve it.
Bug: T352169
Change-Id: Ied0b9748beec941e901ca4ecba428c16967ca510
User-options related classes are being moved to
the MediaWiki\User\Options namespace in MediaWiki Core;
reflect that change here.
Bug: T352284
Depends-On: I42653491c19dde5de99e0661770e2c81df5d7e84
Change-Id: I5b9f4c7ea90f492f75b9055b801ec0853da22687
It turns out the view class doesn't really do anything with the
RevisionList object. All it does it manually iterating the array of
revisions. But it doesn't call anything from the RevisionList class.
With a single exception.
Warning: This doesn't mean the RevisionList class is pointless. It's
critical because this is where the relativeSize fields are calculated.
Bug: T224971
Change-Id: I06b8af815bb6f931355d68aa511070fb34b08156
While working on renaming and consolidating some methods I found
it puzzeling, that the generic "highlight" word is already taken
by the filter mechanism. So I made these things more specific.
I checked the global wiki search if any user referes to these to
override CSS. It seems nobody does, so the change should be save.
Change-Id: I47c149978b0527c2d9e91709ef9d704526d56101
The plain wikitext comment is apparently not used for anything,
anywhere. It was for some reason used for an "is empty" check. But
we can do the same with the `parsedcomment`. I checked and an empty
comment doesn't result in something non-empty like `<div></div>`, but
stays as an empty string.
Change-Id: Iedc5898b7b0f82231328ab3e0e46b1461ca845b1
Reintroduces IIFE closures in test files because variables were
declared in the global namespace, and "const" now causes hard errors.
Bug: T339323
Change-Id: I69e9d7a29591137f185f3e5ab02dea590ec4dff6
Due to some change in the test setup, possibly related to the new
Vector skin, the slider now has more space and the need to scroll
triggers at a later point.
Change-Id: I5411d5a31714761434135e65d916f57f1e437003
WebdriverIO has dropped support of sync mode, hence changed to async.
Update npm packages: @wdio/*, wdio-mediawiki
because async mode needs at least @wdio v7.9.
Remove npm packages: @wdio/dot-reporter and @wdio/sync.
Bug: T300798
Change-Id: I053ea6b5fbfdcff279f4eb10cf2429155690bd72
The new mw eslint config comes with node 12 and the change will be
quite big due to the lock file. I wanted to keep the diff of actual
code changes seperate.
- Applied all code style recommendations
- Removed one test that's not giving any value
- Changed regex .match to .test for performance and convinience
Change-Id: I578be8c6460c7a4d1220354c028a9bfd9bb86d13
It's never used in another context but together with the
….Slider module.
Motivated by the confusion about the two types of require()
introduced in Idf1cc79.
Bug: T233279
Change-Id: I922d7ab56fd3ce80bc901f1a5d7174df6fe6756d
It's never used in another context but together with the
….Slider module as well as the ….init module. The ….init
module continues to require the ….Slider module, so all
dependencies are still met.
Motivated by the confusion about the two types of require()
introduced in Idf1cc79.
Bug: T233279
Change-Id: I4b4ef69f3074d57f884763c092a515ce976daaef
It's never used in another context but together with the
….Slider module.
Motivated by the confusion about the two types of require()
introduced in Idf1cc79.
Bug: T233279
Change-Id: I7c98a41051e6d83ab3524cb14a709002feec2d78
Update npm packages: @wdio/* and webdriverio.
Also adding a fallback for the case, that the slider does
not open as expected.
It seems, that the update is causing some issues when
waiting for the module state. Waiting for the lazy module
in DiffPage.ready() should make sure, that the event to
trigger the opening of the slider is in place. This seems
to fail sometimes.
Bug: T274579
Change-Id: Icd597fc5aaa857879a8af310166867d433ba0678
wdio-mediawiki v1.1.1:
- Includes wdio-defaults.conf.js file that vastly simplifies wdio.conf.js.
- Replaces @wdio/spec-reporter with @wdio/dot-reporter.
- Introduces video recording.
Some part of the new setup seems to influnce they way how resize is applied
to the window. The fix makes sure it works as expected.
Bug: T283597
Change-Id: I20697815591243367b5a8bdd1cd1cc173a1ddc77
… and replace them with more trivial `function …() {}`. I
believe this does not make any difference. But I feel this
makes the code a little more straightforward.
The motivation for this patch is because a few other patches
change some of these function declarations, leaving a (in my
opinion) confusing mixture of styles behind.
Change-Id: Ib8928c4176a963afcf1fee1c785dd7bdc86c9706
Reducing the width further leads to a strange behavior were it fails.
Locally this test is about 30% faster this way.
Change-Id: I5f950041ccf0f2f326ad6d9023d300e6a344f902
Directly measure the jQuery animation using its custom
pseudo-selector. Previously, we had been relying on a side-effect.
Change-Id: I0db8077e9ed86d5be025d089e0467654789bb13f
`aria-disabled` is a bit of a hack, but maybe more robust than
coupling to the OOUI internal class name.
Bug: T267205
Change-Id: I5c1f547f2d25d9acaa74d63da03cd215be82bd71