Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Set Tab Stash as new tab page #93

Open
ochen1 opened this issue Sep 26, 2020 · 7 comments
Open

Set Tab Stash as new tab page #93

ochen1 opened this issue Sep 26, 2020 · 7 comments
Labels
i-enhancement New functionality upstream dependency Something upstream (e.g. in Firefox or a dependency) needs to change to address this issue

Comments

@ochen1
Copy link

ochen1 commented Sep 26, 2020

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 😃 button. You are welcome to leave comments and discuss the feature request, but "Me too!" comments are not counted by the voting system.
@ochen1
Copy link
Author

ochen1 commented Sep 26, 2020

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.

@josh-berry
Copy link
Owner

josh-berry commented Sep 26, 2020

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 josh-berry added i-enhancement New functionality upstream dependency Something upstream (e.g. in Firefox or a dependency) needs to change to address this issue labels Sep 26, 2020
@Zequez
Copy link

Zequez commented Jul 4, 2021

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.

@nicoberling
Copy link

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

@AndydeCleyre
Copy link

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

@Dennismn
Copy link

Dennismn commented May 3, 2023

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.

@madushan1000
Copy link

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
i-enhancement New functionality upstream dependency Something upstream (e.g. in Firefox or a dependency) needs to change to address this issue
Projects
None yet
Development

No branches or pull requests

7 participants