Pagecontaner widget has _handleDestination private method. The last 'if' statement in this method contains comparison:
history.stack.url !== history.initialDst.replace( $.mobile.dialogHashKey, "" )
However this comparison always evaluates to true because left part refers to full URL and the right part refers to just the hash part (with the # stripped out).
OK, this is part of funky-initial-URL-handling ... I'll take a look ...
Hmmm ... it seems that it is never evaluated in any of our tests, except in a unit test specifically designed to hit that method.
Navigation: initialDst no longer needed for resolving funky initial URLs
In the process of removing initialDst from the code, which really is useless, I came across an interesting nav behaviour when deep-linking:
At this point, the location will display /path1/#page2 instead of /path2/#page2. This is bad, because opening an internal page should only change the hash, not the path.
The sequence tests should've caught this but I forgot to include an assertion that checks the location :(
@arschmitz do you think this is bad enough to warrant a fix?
Navigation: squash document URL if it is a /path1/#/path2/
Re #7177 (comment)
Navigation: Squash document URL if it is a /path1/#/path2/
(cherry picked from commit 9951e54)