<p></p>
<h3 dir="auto">Problem</h3>
<p dir="auto">The /history page is barely usable for me and I don't think we need much to improve it by a lot. I think it's not RESTful enough and we just need to make it in order to improve it.</p>
<p dir="auto">Current /changeset Features:</p>
<ul dir="auto">
<li>List of changesets <g-emoji class="g-emoji" alias="+1" fallback-src="https://github.githubassets.com/images/icons/emoji/unicode/1f44d.png">👍</g-emoji></li>
<li>List of changesets updates based on current view <g-emoji class="g-emoji" alias="+1" fallback-src="https://github.githubassets.com/images/icons/emoji/unicode/1f44d.png">👍</g-emoji></li>
<li>List of changesets can be scrolled and more changesets can be loaded <g-emoji class="g-emoji" alias="+1" fallback-src="https://github.githubassets.com/images/icons/emoji/unicode/1f44d.png">👍</g-emoji></li>
<li>Hover a changeset on the list or on the map, and it's highlighted in both <g-emoji class="g-emoji" alias="+1" fallback-src="https://github.githubassets.com/images/icons/emoji/unicode/1f44d.png">👍</g-emoji></li>
</ul>
<p dir="auto">It starts once I click on one changeset:</p>
<ul dir="auto">
<li>It auto-zooms in on the changeset, and sometimes corrupts the browser history with different coordinates <g-emoji class="g-emoji" alias="-1" fallback-src="https://github.githubassets.com/images/icons/emoji/unicode/1f44e.png">👎</g-emoji></li>
</ul>
<p dir="auto">Now the change is shown but how do I get back?</p>
<ul dir="auto">
<li>I intuitively press the x-button in the changeset to close it. The plain map is shown instead of the history page.</li>
<li>I can press the browser back button to get back <g-emoji class="g-emoji" alias="+1" fallback-src="https://github.githubassets.com/images/icons/emoji/unicode/1f44d.png">👍</g-emoji></li>
</ul>
<p dir="auto">Now I am back on the history page:</p>
<ul dir="auto">
<li>I might have lost the current view due to the auto-zoom <g-emoji class="g-emoji" alias="-1" fallback-src="https://github.githubassets.com/images/icons/emoji/unicode/1f44e.png">👎</g-emoji></li>
<li>I may need to scroll all the way down and press many times "more" in order to get to the same "page" again. <g-emoji class="g-emoji" alias="-1" fallback-src="https://github.githubassets.com/images/icons/emoji/unicode/1f44e.png">👎</g-emoji><g-emoji class="g-emoji" alias="-1" fallback-src="https://github.githubassets.com/images/icons/emoji/unicode/1f44e.png">👎</g-emoji>
<ul dir="auto">
<li>I might not get the same list since I am now in another part of the map <g-emoji class="g-emoji" alias="-1" fallback-src="https://github.githubassets.com/images/icons/emoji/unicode/1f44e.png">👎</g-emoji></li>
<li>Surely it will take a while until I am back at the same position of changesets <g-emoji class="g-emoji" alias="-1" fallback-src="https://github.githubassets.com/images/icons/emoji/unicode/1f44e.png">👎</g-emoji></li>
</ul>
</li>
<li>The last clicked changeset is not highlighted <g-emoji class="g-emoji" alias="-1" fallback-src="https://github.githubassets.com/images/icons/emoji/unicode/1f44e.png">👎</g-emoji></li>
</ul>
<p dir="auto">Sidequests:</p>
<ul dir="auto">
<li>I would like to go to page 100 to see some recent but not the latest changes. Currently I need to press 99 times "More". Then I would like to share that link with a friend: I can't.</li>
<li>I loaded multiple pages of changesets. I highlight one in the map, and it highlights it on the list. But this list highlight is useless since it is not currently in the view. Maybe scroll that highlighted item into view.</li>
<li>Highlight/mark changes which have the bounding boxes not withing the current view</li>
</ul>
<p dir="auto">When I look into the developers tools while I click the "More" buttton, I can see the following request which suggests that most information seems be already present.</p>
<p dir="auto"><em>/history?<strong>bbox</strong>=8.519511222839355%2C47.35650163792201%2C8.586888313293457%2C47.3758312020736&<strong>list</strong>=1&<strong>max_id</strong>=136282662</em></p>
<h3 dir="auto">Description</h3>
<p dir="auto">In order to improve the situation I suggest to do the following. Some fine tuning is probably needed.</p>
<ol dir="auto">
<li>Add the current page of changesets to the browser URL, and either load that page of changesets or load all of them until that one. I don't know how pagination is implemented here but I am sure there is some way to improve.</li>
<li>Add the currently selected/clicked changeset to the browser url before navigating to that changeset. That should restore the back button functionality</li>
<li>Don't update the URL with the coordinates after a changeset has been clicked while it's zooming in.</li>
<li>Extend the infinite scroll "more" button with some form of pagination view.</li>
<li>Add an option to click/highlight a changeset without opening it immediately. (goes hand in hand with 2. )</li>
<li>When a changeset is highlighted in the map, scroll the changeset in the list into view, or give some option to do so. (also related to 2.)</li>
<li>If possible, add back button to the /changeset view. That requires some new flag in the URL.</li>
</ol>
<h3 dir="auto">Screenshots</h3>
<p dir="auto"><em>No response</em></p>
<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">—<br />Reply to this email directly, <a href="https://github.com/openstreetmap/openstreetmap-website/issues/4039">view it on GitHub</a>, or <a href="https://github.com/notifications/unsubscribe-auth/AAK2OLPNPR34X5HQ6XZNOPTXHCVFRANCNFSM6AAAAAAYIV5LIQ">unsubscribe</a>.<br />You are receiving this because you are subscribed to this thread.<img src="https://github.com/notifications/beacon/AAK2OLMLVGYDYKIH5AAJ4LLXHCVFRA5CNFSM6AAAAAAYIV5LISWGG33NNVSW45C7OR4XAZNFJFZXG5LFVJRW63LNMVXHIX3JMTHGM2GXEM.gif" height="1" width="1" alt="" /><span style="color: transparent; font-size: 0; display: none; visibility: hidden; overflow: hidden; opacity: 0; width: 0; height: 0; max-width: 0; max-height: 0; mso-hide: all">Message ID: <span><openstreetmap/openstreetmap-website/issues/4039</span><span>@</span><span>github</span><span>.</span><span>com></span></span></p>
<script type="application/ld+json">[
{
"@context": "http://schema.org",
"@type": "EmailMessage",
"potentialAction": {
"@type": "ViewAction",
"target": "https://github.com/openstreetmap/openstreetmap-website/issues/4039",
"url": "https://github.com/openstreetmap/openstreetmap-website/issues/4039",
"name": "View Issue"
},
"description": "View this Issue on GitHub",
"publisher": {
"@type": "Organization",
"name": "GitHub",
"url": "https://github.com"
}
}
]</script>