How to reproduce:
go to he.m.wikipedia.org and try to search with Hebrew letters.
Expected: letters show in the search box.
Actual: user taken to previous page.
Version: unspecified
Severity: major
How to reproduce:
go to he.m.wikipedia.org and try to search with Hebrew letters.
Expected: letters show in the search box.
Actual: user taken to previous page.
Version: unspecified
Severity: major
bingle-admin wrote:
Prioritization and scheduling of this bug is tracked on Trello card https://trello.com/c/gfTmzanP
Works fine for me. Can you provide additional details such as what browser you are using and what page you are searching from?
Hmm, tried to reproduce in desktop Firefox 30, but no luck. I'll see if I can reproduce on Android when I'm at the office tomorrow.
jgonera wrote:
I tried on desktop Chrome and Firefox with Hebrew (lyx) keyboard on Linux, can't reproduce. I'll try to figure out how to install Hebrew keyboard on my Android phone...
jgonera wrote:
I reproduces it. Actually, only tapping on the search input (without typing) already takes me to the previous page. It sometimes happens on Chrome too. I can't reproduce on latest master on my local dev env. I suspect it might be this weird banner that is displayed on the top of the page that is causing this.
Reproduced on en wikipedia, too. There is Wiki loves earth as Sitenotice (not seen, bc dismissed for my wiki account). If i click (in Chrome for Android, HTC One) the search bar, i will be redirected to the previous page.
I have confirmed with certainty that this bug is dependent on CentralNotice banners being active.
So far reproduced in Chrome for Android and Mobile Safari. Haven't been able to reproduce on any desktop browser.
OK, I think I know what's going on. When you click on the search input, the search overlay renders at the top of the page. When there isn't a CentralNotice banner, it renders under the user's finger. When there is a CentralNotice banner (that's tall enough), it renders above the user's finger. The SearchOverlay.js code includes a bit of logic (lines 70-73) that executes window.history.back() whenever the user clicks outside of the overlay. This normally just closes the overlay due to the M.router functionality. In this case, the user clicking on the search input is getting read as a click outside the search overlay (assuming the user's finger remains on the screen for more than a split-second). Because either the URL hasn't been rewritten yet or the M.router code hasn't finished executing, it actually sends the user to the previous page when it executes window.history.back() (instead of just closing the overlay).
I asked Moiz about moving the banner under the header, but he says it makes more sense to leave it at the top. Other possible solutions:
There are probably some other options as well.
Change 146684 had a related patch set uploaded by Kaldari:
Making sure that clicking on search doesn't trigger history.back()
Change 146684 merged by jenkins-bot:
Making sure that clicking on search doesn't trigger history.back()
Change 150368 had a related patch set uploaded by Kaldari:
Making sure that clicking on search doesn't trigger history.back()
Change 150368 merged by jenkins-bot:
Making sure that clicking on search doesn't trigger history.back()