Skip to content

Commit 486a361

Browse files
khellangskofman1
authored andcommitted
Store users preferred tab in localStorage (#7098)
* Store users preferred tab in localStorage * PR feedback
1 parent 71896c6 commit 486a361

2 files changed

Lines changed: 17 additions & 0 deletions

File tree

src/NuGetGallery/Scripts/gallery/page-display-package.js

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,22 @@ $(function () {
8888
$(this).closest('form').submit();
8989
})
9090

91+
var storage = window['localStorage'];
92+
if (storage) {
93+
var key = 'preferred_tab';
94+
95+
// Restore preferred tab selection from localStorage.
96+
var preferredTab = storage.getItem(key);
97+
if (preferredTab) {
98+
$('#' + preferredTab).tab('show');
99+
}
100+
101+
// Make sure we save the user's preferred tab to localStorage.
102+
$('.package-manager-tab').on('shown.bs.tab', function (e) {
103+
storage.setItem(key, e.target.id);
104+
});
105+
}
106+
91107
// Emit a Google Analytics event when the user expands or collapses the Dependencies section.
92108
if (window.nuget.isGaAvailable()) {
93109
$("#dependency-groups").on('hide.bs.collapse show.bs.collapse', function (e) {

src/NuGetGallery/Views/Packages/DisplayPackage.cshtml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -110,6 +110,7 @@
110110
{
111111
<li role="presentation" class="@(active ? "active" : string.Empty)">
112112
<a href="#@packageManager.Id" aria-expanded="@(active ? "true" : "false")"
113+
id="@packageManager.Id-tab" class="package-manager-tab"
113114
aria-selected="@(active ? "true" : "false")"
114115
aria-controls="@packageManager.Id" role="tab" data-toggle="tab"
115116
title="Switch to tab panel which contains package installation command for @packageManager.Name">

0 commit comments

Comments
 (0)