Unbox icon indicating copy to clipboard operation
Unbox copied to clipboard

Set Tab Stash as new tab page

Open ochen1 opened this issue 5 years ago • 8 comments
trafficstars

Problem Statement

I love the stash-list.html page as it contains all of my bookmarks and my tabs. The problem is, I don't get to see it often. Having to press a button to get to that page is way too hard. I want to set it as the new tab page.

Preferred Solution(s)

Toby already has this feature. Every new tab I open goes directly to the tab list page. To implement this, I think there should be an option in the extension preferences to make the stash-list.html page the home + new tab page.


Readers: If you are also interested in seeing this feature be developed, please vote for it by giving the ORIGINAL POST a thumbs-up using the :smiley: button. You are welcome to leave comments and discuss the feature request, but "Me too!" comments are not counted by the voting system.

ochen1 avatar Sep 26 '20 00:09 ochen1

UPDATE: I just found out a way to accomplish this without having to bug the original add-on devs.

If anyone wants a quick and dirty solution before the devs add it (if they ever add it), try one of these solutions:

Solution 1: manually editing the manifest.json file to override the about:newtab with the add-on's stash-list.html page.

Since the .xpi file is really just a .zip file with a different extension, you can just rename it to .zip and then extract all the contents. Then, you should have a pre-built version of tab stash.

Now, you should see something like the following folder structure:

.
├── icons
│   ├── dark
│   │   ├── ...
│   ├── light
│   │   ├── ...
│   ├── ...
├── index.js
├── manifest.json
├── META-INF
│   ├── cose.manifest
│   ├── cose.sig
│   ├── manifest.mf
│   ├── mozilla.rsa
│   └── mozilla.sf
├── options.html
├── options.js
├── stash-list.html
├── stash-list.js
├── tab-stash.css
├── whats-new.html
└── whats-new.js

4 directories, 39 files

Open up the manifest.json file and add the following key-value pair into the JSON object.

"chrome_url_overrides" : {
    "newtab": "stash-list.html"
}

Now, go to about:debugging > This Firefox > Load Temporary Add-on to add the manifest.json file to test that it works.

ochen1 avatar Sep 26 '20 14:09 ochen1

Unfortunately, Firefox doesn't provide a way to do this such that it's optional. Either it's forced upon all users of Tab Stash with no way to disable it (short of disabling Tab Stash entirely), or it's off for everyone. There's a bug open against Firefox here: https://bugzilla.mozilla.org/show_bug.cgi?id=1460412

Until this bug is fixed, I've decided not to force Tab Stash to be the default new tab page, since single-click access is still available via the sidebar. It's not optimal--I'd really like to be able to offer users the choice--but it seems better than taking over the new-tab page without consent.


As to your mod above: yes, you can do this and it will likely not break anything. As with any mod, however, there are no guarantees.

There are a few caveats to be aware of, though:

  • You will have to re-load the temporary add-on at every browser restart.
  • The temporary version won't get updates from addons.mozilla.org. (Updates are somewhat infrequent--maybe a few times a year--since this is a spare-time project for me, but worth noting nonetheless.)

The about:debugging UI in Firefox is really intended for developer use, testing, etc. and not for regular, ongoing use. You also won't be able to re-pack the "temporary" extension into a regular .xpi file because the signature (which is generated by Mozilla) will be invalid.

josh-berry avatar Sep 26 '20 19:09 josh-berry

By setting Tab Stash as homepage and then installing the "New Tab Homepage" extension, you can achieve this.

The only issue is that the URL is going to be un-selected, so if you intend to Ctrl+T and start writing, you first would need to press Ctrl+A. This can be solved by using an automation tool. In Mac I'm using the following BetterTouchTools action:

Captura de Tela 2021-07-04 às 00 25 57

In Windows I imagine you can use Autohotkey. In Linux I have no idea.

Zequez avatar Jul 04 '21 02:07 Zequez

This has been changed in Firefox 85, you can now change the new tab page to the firefox default (or to another extension that provides a new tab page) without disabling the extension: https://bugzilla.mozilla.org/show_bug.cgi?id=1595858

nicoberling avatar Jan 30 '22 19:01 nicoberling

Related, for those of us seeking workarounds: cadeyrn/newtaboverride#310

AndydeCleyre avatar Feb 25 '23 21:02 AndydeCleyre

I found a workaround by installing another extension called New Tab Homepage, so if you have Tab Stash as a custom URL in Firefox's Homepage settings, this will allow you have it as a new tab. (It's almost perfect, you just have to keep deleting the URL on the new tab before searching for anything, I suppose cos it treats it like a regular URL so it doesn't default to blank.

Dennismn avatar May 03 '23 08:05 Dennismn

You don't really have to load your custom extension build as a temp addon every restart, just create a firefox developer account and submit your custom xpi as self distributed addon(not via firefox addons website), they will sign the xpi after an automated check. then you can install the addon as you would a normal addon and it won't go away after a restart.

madushan1000 avatar Sep 17 '23 09:09 madushan1000