[MGNLUI-4345] IE 11 doesn´t open Magnolia apps Created: 12/Jan/18  Updated: 26/Jan/18  Resolved: 25/Jan/18

Status: Closed
Project: Magnolia UI
Component/s: admincentral
Affects Version/s: 5.6, 5.6.1
Fix Version/s: 5.6.2

Type: Bug Priority: Blocker
Reporter: David Caviedes Marquez Assignee: Federico Grilli
Resolution: Fixed Votes: 0
Labels: IE11
Remaining Estimate: 0d
Time Spent: 1.5d
Original Estimate: Not Specified
Environment:

Windows 7 Professional Edition 64 bits
Windows 8 Standard Edition 64 bits


Attachments: PNG File image-2018-01-11-16-34-12-742.png    
Issue Links:
Relates
causality
Template:
Acceptance criteria:
Empty
Task DoD:
[ ]* Doc/release notes changes? Comment present?
[ ]* Downstream builds green?
[ ]* Solution information and context easily available?
[ ]* Tests
[ ]* FixVersion filled and not yet released
[ ]  Architecture Decision Record (ADR)
Bug DoR:
[ ]* Steps to reproduce, expected, and actual results filled
[ ]* Affected version filled
Date of First Response:
Sprint: Basel 131
Story Points: 3

 Description   

Hello,

it is not possible to open Magnolia apps from admincentral in IE11 as shown in image:

By pressing into shortcuts Magnolia only shows "onmouseover" effect but doesn´t open any app.

Regards



 Comments   
Comment by Mikaël Geljić [ 12/Jan/18 ]

My first suspicion was about touch delegates; but interestingly, the location *is* updated, and after a page-refresh, the app is displayed. Still super annoying, but this seems to be an issue with the app viewport and/or its transition from the shell.

Comment by David Caviedes Marquez [ 12/Jan/18 ]

Good morning,

exactly, refreshing the page opens the app, hehehe.

We will waiting for bug fix at SUPPORT-8288

Regards

Comment by Viet Nguyen [ 12/Jan/18 ]

Hello dmarquez,

Yeah good news is refreshing the page could be a work around but also it's 'super annoying'.
We'll wait for bug fixing and tracking progress here in this dedicated ticket, SUPPORT is our gateway to development channel.
Please come to us via SUPPORT first for issue identification and correct response time. We'll create dedicated tickets after carefully investigate and getting enough information from you (customers) first.

Have a good day!

Comment by Viet Nguyen [ 12/Jan/18 ]

It worked on Edge - Windows 10 IE trial license.

Comment by David Caviedes Marquez [ 12/Jan/18 ]

Hello Viet,

yes it worked on Edge, we tested it yesterday. Next time we will report across support way.

Regards

Comment by Viet Nguyen [ 15/Jan/18 ]

Please also note that it doesn't work on both IE11 modes, compatible mode enabled and disabled on my testing virtual machine. Hoping our fix can cover this too.

Comment by Mikaël Geljić [ 15/Jan/18 ]

viet.nguyen I would say the compatibility mode might be out-of-scope (or is only a "nice to have"), as it emulates the behavior of old IE versions we no longer officially support. Edge mode should definitely be working though.

Comment by Federico Grilli [ 24/Jan/18 ]

To recap:
The issue occurs only on Magnolia 5.6+ and IE11. It works correctly on MS Edge, as far as I could see.

After some debugging and research, problem apparently is on IE11's side as it fails to fire the popstate event https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/3740423/ (MS claims to have fixed it but according to comments there it's not and the codepen link attached to the issue seems to confirm it).

What does all that mean for Magnolia? Basically, Magnolia's app launcher mechanism relies on the URL fragment changing and firing a browser history's change value event which is handled to get hold of the app name and start it. In particular Magnolia relies on the popstate event to navigate to the app. As IE11 fails to fire it (at least under these circumstances), no app is open. The fragment does get updated, as one can see in the browser's address bar, but after that nothing happens cause the event which History.newItem("app:" + appName, true) is supposed to trigger doesn't occur (see also info.magnolia.ui.vaadin.gwt.client.applauncher.connector.AppLauncherConnector#activateApp).

There is also a related Vaadin ticket (from which I actually learnt about the issue with IE and navigation) https://github.com/vaadin/framework/issues/9567

Comment by Viet Nguyen [ 25/Jan/18 ]

Then for short the fix is within
info.magnolia.ui.vaadin.gwt.client.magnoliashell.shell.MagnoliaShellConnector
that we replace line #194

Browser.getWindow().setOnpopstate(event -> navigate());

by

if   BrowserInfo.get().isIE11()
     Browser.getWindow().setOnhashchange(event -> navigate());
else Browser.getWindow().setOnpopstate(event -> navigate());

And would be included in our upcoming release 5.6.2.

Generated at Mon Feb 12 09:15:44 CET 2024 using Jira 9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b.