Skip to content

Commit 82656d8

Browse files
committed
Add sort order handling in search via omnibox & contextMenu
1 parent d88cc4b commit 82656d8

File tree

2 files changed

+30
-2
lines changed

2 files changed

+30
-2
lines changed

extension/background/contextMenus.js

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ chrome.runtime.onInstalled.addListener(function() {
4949
chrome.contextMenus.onClicked.addListener(function(item, tab) {
5050
chrome.storage.sync.get({
5151
baseUrl: "https://www.stackoverflow.com/search?q=",
52+
sortOrder: 0,
5253
questionsWithCodeFilter: false,
5354
communityWikisFilter: false,
5455
excludeDuplicateQuestionsFilter: false,
@@ -61,7 +62,20 @@ chrome.contextMenus.onClicked.addListener(function(item, tab) {
6162
items.excludeDuplicateQuestionsFilter,
6263
items.answerTypeFilter,
6364
items.customFilter);
64-
let searchUrl = items.baseUrl + encodeURIComponent(filterString + item.selectionText)
65-
chrome.tabs.create({url: searchUrl, index: tab.index + 1});
65+
var finalURL = items.baseUrl + encodeURIComponent(filterString + item.selectionText);
66+
switch(parseInt(items.sortOrder)) {
67+
case 1:
68+
finalURL += "&tab=newest";
69+
break;
70+
case 2:
71+
finalURL += "&tab=active";
72+
break;
73+
case 3:
74+
finalURL += "&tab=votes";
75+
break;
76+
default:
77+
break;
78+
}
79+
chrome.tabs.create({url: finalURL, index: tab.index + 1});
6680
});
6781
});

extension/background/omnibox.js

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ chrome.omnibox.onInputEntered.addListener(
5151
function(text) {
5252
chrome.storage.sync.get({
5353
baseUrl: "https://www.stackoverflow.com/search?q=",
54+
sortOrder: 0,
5455
shouldOpenInSameTab: true,
5556
questionsWithCodeFilter: false,
5657
communityWikisFilter: false,
@@ -65,6 +66,19 @@ chrome.omnibox.onInputEntered.addListener(
6566
items.answerTypeFilter,
6667
items.customFilter);
6768
var finalURL = items.baseUrl + encodeURIComponent(filterString + text);
69+
switch(parseInt(items.sortOrder)) {
70+
case 1:
71+
finalURL += "&tab=newest";
72+
break;
73+
case 2:
74+
finalURL += "&tab=active";
75+
break;
76+
case 3:
77+
finalURL += "&tab=votes";
78+
break;
79+
default:
80+
break;
81+
}
6882
openTab(finalURL, items.shouldOpenInSameTab);
6983
});
7084
});

0 commit comments

Comments
 (0)