Page MenuHomePhabricator

Impossible to create pages when opted into Minerva skin on desktop
Closed, ResolvedPublic

Description

I've opted into the desktop skin MinervaNeue on desktop
Upon trying to create a new page I got this screen and the editor never loaded:

Screen Shot 2017-10-31 at 11.10.45 AM.png (552×1 px, 230 KB)

There seems no way to bypass this except disabling JavaScript.

Links:
https://www.mediawiki.org/w/index.php?title=Rbaksjhadashash&action=edit&useskin=minerva
https://en.wikipedia.org/wiki/New%20page%20lahaahhaha?action=edit&useskin=minerva

(This used to work)

Event Timeline

Deskana subscribed.

I think I'm missing something here. That page exists now, so I tested this by navigated to another page that doesn't exist. If I click the edit pencil, then I can edit the page as normal, so I don't know how to reproduce this problem.

That said, you are right that that link doesn't work if your skin is MinervaNeue. I suspect that this is a problem with the skin, as that link works fine for me using Timeless, MonoBook, and Vector. Where is this link is exposed to users of the MinervaNeue skin?

^ hopefully that helps. Otherwise visit Special:Preferences and opt into the skin. You encounter this issue any time you follow a red link.
It seems some problematic JS is being loaded by VisualEditor without any fail safe.
Looks like there is something wrong in the logic here for isSupportedEditPage:
https://github.com/wikimedia/mediawiki-extensions-VisualEditor/blob/740b61598f1eb176b5dceb0e5c5a56993c4de7ba/VisualEditor.hooks.php#L243
Or in the JS provided by VisualEditor that actually loads the editor.

Jdlrobson updated the task description. (Show Details)
This comment was removed by Esanders.

I'll go back to my first guess. It is expected that once isSupportedEditPage returns true, that the page will have all the elements for initialising the editor in place. In this case the page doesn't have the #ca-edit link.

This is the offending line:

public function getPageActions() {
    return $this->isFallbackEditor() ? [] : $this->data['page_actions'];
}

This is intentional. Why would a editor have/need an edit icon? We only have a save button on that page.

It is assumed that you need to some 'edit' link to trigger and re-trigger the editor. Pinging @matmarex who wrote this code.

Change 462686 had a related patch set uploaded (by Bartosz Dziewoński; owner: Bartosz Dziewoński):
[mediawiki/extensions/VisualEditor@master] Remove #ca-edit from required skin elements

https://gerrit.wikimedia.org/r/462686

Change 462686 merged by jenkins-bot:
[mediawiki/extensions/VisualEditor@master] Remove #ca-edit from required skin elements on edit pages

https://gerrit.wikimedia.org/r/462686

Deskana triaged this task as Medium priority.