fwextensions / QuicKey

Jump between recent tabs in Chrome via keyboard shortcuts or a most recently used (MRU) menu.
https://fwextensions.github.io/QuicKey
217 stars 22 forks source link

Display left-to-right tab index when there are identical titles in search results #9

Closed garyking closed 5 years ago

garyking commented 5 years ago

If there are several tabs that have the exact same URL, then they both appear in the results. This is to be expected. But please add the tab's index in the all tab titles in the search results, so we know which position we're jumping to.

In a more complex scenario, I've got a bunch of tabs, and so I can only see the first few characters of each tab's title. I know I want to jump to the tab that is three tabs to the left, but can only see the first few characters. So I type the characters I see, like exa, and the results appear. There could be three results, and if they included their position, then I would better know which one I want to jump to.

So, tab titles could change from Test website to 3. Test website.

fwextensions commented 5 years ago

I assume these tabs have the same title as well? Rather than showing an index, would it be enough to show them in the same order as they appear in the tab bar? So if you typed test in your example, picking the first result would switch to the left-most tab, and picking the last would switch to the right-most?

Things get tricky when you have multiple windows as well. I could try to sort them left to right for the current window, and then list results in other windows below those.

garyking commented 5 years ago

For results that have the exact same title and URL, then sure, I would prefer that they be sorted in the search results in the same order that they appear in their window, from left to right. If the index won't be shown in the title, then I guess that's fine. It seems like currently, they are sorted by most recently active.

Otherwise, I assume that sorting results by relevancy is still the highest priority.

fwextensions commented 5 years ago

When you first open the menu, the 50 most recently used tabs are shown in order of recency. So if you were most recently on the right-most Test website tab, that would be above the left and center ones.

If you'd want this initial list to be in tab order rather than recency, that feels like a different mode. I suppose it could show the list of tabs in the current window, scrolled to show the current one. Other windows could be listed below that.

Tabs in the search results currently get a boost depending on how recently they were used, so that would need to be ignored for tabs with the same title.

I think I'm maybe talking myself into your original idea, as it would be easier to implement. :) I'm not sure how to handle duplicates across multiple windows, though, which is the situation I'm often in. Indexes don't really make sense in that case, since the tabs are in different lists.

Would it be okay if the left-most title didn't get marked, and only subsequent ones did? Like:

Test website
1) Test website
2) Test website

or

Test website
2) Test website
3) Test website

Sort of like how copying and pasting a file in the same folder gives it a - Copy suffix, and then - Copy (2), - Copy (3), etc. (at least on Windows). It would be faster when processing all the tabs as the menu first opens to not have to go back and modify the first tab when duplicates are found later. (Though maybe it wouldn't be too bad.)

Would you expect the numbers to be able to be matched in the query? In other words, typing 2test to match the second one? I was thinking the numbers wouldn't be part of the title, and therefore not matchable, so that they could be rendered slightly differently.

garyking commented 5 years ago
fwextensions commented 5 years ago

I have this working in a branch:

image

The indexes cut across windows, since at least in the Windows taskbar, the windows are indexed left to right. In the screenshot, the first Extensions result is in one window and 2 and 3 are in another.

Also, only the title is checked for duplicates. Tabs with the same titles but different URLs get the indexes:

image

Potentially you could have tabs with the same titles in different domains all getting left to right indexes. I could check the domain as well, I suppose.

Let me know what you think.

garyking commented 5 years ago

Okay it looks good.

Why are some of the results dimmed?

I rarely have multiple Chrome windows open, so I can't really speak to what the best UI would be for handling tabs across windows.

fwextensions commented 5 years ago

The greyed out tabs have been suspended with The Great Suspender. It automatically unloads tabs if they haven't been used in a while, to cut down memory usage.

garyking commented 5 years ago

Oh okay, I don't use the extension, but my understanding is that it's quite popular, so I guess that's why Quickey works in conjunction with that.

The numbers in the circles look nice. I appreciate your eye to detail.

fwextensions commented 5 years ago

Thanks! (I just tweaked the CSS so it the number background looks like a nice lozenge shape if there's more than one digit, instead of a weird ellipse, so I do tend to sweat the details.)

Yeah, TGS is helpful when you have lots of tabs open, which is the same scenario in which QuicKey is useful.

Do you have any thoughts on how to explain this feature? It makes sense when you know what they are, but I'm finding it hard to describe in text.

garyking commented 5 years ago

You can just say that the prefixed numbers are used to denote different tabs that have the same title?

fwextensions commented 5 years ago

The latest version has been submitted to the Chrome store. Not sure why it's taking so long to publish. Still says "pending review".

fwextensions commented 5 years ago

Okay, 1.1.2 is finally live in the store!