Is there a way to save/launch url links from a PC folder?

User Help for Mozilla Firefox
User avatar
c627627
Posts: 641
Joined: April 3rd, 2005, 12:58 pm
Location: Kansas City, Missouri
Contact:

Is there a way to save/launch url links from a PC folder?

Post by c627627 »

As of today it is no longer to possible to use Google Search normally on Firefox 52.9 - the last version of Firefox that offered full and complete customizations of *everything*. It comes out displayed narrow and weird now.
I used Firefox 52.9 to this day for most of my browsing, because it allowed me to use the old Internet Explorer Favorites folder through this extension that could not work on modern Firefox:
https://www.iosart.com/firefox/plainoldfavorites/

Syncing was no substitute for that, for many reasons.

Is it in any way possible in 2022, to have some kind of a modern extension, which would allow modern Firefox, to access an actual folder filled with url links, such as the Favorites folder used by Internet Explorer before Firefox was created. So it would save / launch url links from a folder (instead of Bookmarks localized to one single instance of Firefox)?

A single actual windows folder allows a central place for storing url links (and anything else) so that *every* browser on every operating system on a single machine can use them [useful for Windows 7/8/10/11 multi boot systems]. No need to synchronize Bookmarks - just one actual physical folder with all the links, used by all the browsers on all operating systems on a multi-boot machine.
Open the pod bay doors, Cortana.
User avatar
DanRaisch
Moderator
Posts: 127222
Joined: September 23rd, 2004, 8:57 pm
Location: Somewhere on the right coast

Re: Is there a way to save/launch url links from a PC folder

Post by DanRaisch »

Have you tried save the URLs to a folder and then use menu path File->Open->and selecting the desired URL?
User avatar
therube
Posts: 21714
Joined: March 10th, 2004, 9:59 pm
Location: Maryland USA

Re: Is there a way to save/launch url links from a PC folder

Post by therube »

Maybe (Nirsofts) FavoritesView would work for you?

External program that lists IE favorites (or Mozilla).
You'd have to right-click, Open URL in Browser.


Did you search Mozilla addons site?
Fire 750, bring back 250.
Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.1.19) Gecko/20110420 SeaMonkey/2.0.14 Pinball CopyURL+ FetchTextURL FlashGot NoScript
User avatar
c627627
Posts: 641
Joined: April 3rd, 2005, 12:58 pm
Location: Kansas City, Missouri
Contact:

Re: Is there a way to save/launch url links from a PC folder

Post by c627627 »

Well, yes, I mean we can just go to the Favorites folder itself and double click on the url link, it will launch in the default browser of course... So please allow me to clarify why this is important.

This is about access from within the browser, so that *every* browser, meaning, every portable Firefox, every installed Firefox on every operating system on the multi boot, within itself, could display this:

Image


You see, with that, contents of one single folder are directly displayed on every Firefox on the system, no sync needed... because contents of one single folder on the system are just displayed, without waiting for any syncing to take place...

This allows you to add a link, into the Windows Favorites folder, thereafter it is visible on *every* iteration of Firefox, because whereas Bookmarks are *localized* to a single iteration of Firefox... with Favorites folder, every iteration of Firefox simply displays the contents of the one Favorites folder, with no syncing needed, it's all instantaneous.

So as you can see, it is the most important feature of a browser to me, so much so, that I used Firefox 52.9 to this day in 2022. It was more important than security.

If only that idea could be implemented today more often, especially on cell phones, where theoretically, there could be a [complicated to activate] red button, which users can press to give up security, willingly, in exchange for convenience of features like this, taking full responsibility for security breaches or problems, because it is *their* security that they would have the freedom to give up or to keep... And things could be so much easier and faster... with us accepting that we would lose the right to complain if a breach occurs.

So the entire point of this thread is:

Is there a theoretical way for url links located in one single folder to be displayed, from a Firefox menu?
Open the pod bay doors, Cortana.
morat
Posts: 6421
Joined: February 3rd, 2009, 6:29 pm

Re: Is there a way to save/launch url links from a PC folder

Post by morat »

Maybe you could hire someone to fix the extension for the Firefox Developer Edition.

Legacy extensions fixed for Firefox Developer Edition
http://github.com/xiaoxiaoflood/firefox ... ons#readme

PlainOldFavorites uses js-ctypes wrapper code and a native library.

The native library still works in Firefox 96. I can open the file explorer properties dialog for the speedtest.url file using the browser console.

Code: Select all

(function () {
  Components.utils.import("resource://gre/modules/ctypes.jsm");
  var lib = ctypes.open("E:\\PlainOldFavorites\\components\\PlainOldFavorites.engine");
  var opd = lib.declare("openPropertiesDialog", /* name        */
    ctypes.default_abi,                         /* abi         */
    ctypes.bool,                                /* return type */
    ctypes.jschar.ptr);                         /* arg  1 type */
  var ret = opd("D:\\Connection\\speedtest.url");
  alert(ret); // true for succeeds, false for fails
})();
User avatar
c627627
Posts: 641
Joined: April 3rd, 2005, 12:58 pm
Location: Kansas City, Missouri
Contact:

Re: Is there a way to save/launch url links from a PC folder

Post by c627627 »

I was told that Mozilla's security restrictions make it impossible for PlainOldFavorites to work in Fx 57+

But I understand you are saying that's not true? And that a fix can be made if someone were hired? I mean, my question is that the code you are looking at, you are saying that it can be made to work on Fx 96+ ?
That would be perfect.
Open the pod bay doors, Cortana.
morat
Posts: 6421
Joined: February 3rd, 2009, 6:29 pm

Re: Is there a way to save/launch url links from a PC folder

Post by morat »

Try installing the fixed DownThemAll! legacy extension in the Firefox Developer Edition.

Firefox Developer Portable
http://sourceforge.net/projects/portabl ... 0Portable/

bootstrapLoader.xpi
http://github.com/xiaoxiaoflood/firefox ... trapLoader

dta.xpi
http://github.com/xiaoxiaoflood/firefox ... ownThemAll

Instructions:

* install portable app, then startup
* open about:config
* set xpinstall.signatures.required pref to false
* set extensions.experiments.enabled pref to true
* set extensions.htmlaboutaddons.recommendations.enabled pref to false
* open about:addons
* install bootstrapLoader.xpi, then restart
* install dta.xpi
This add-on could not be installed because it appears to be corrupt.
If you forget to restart, then you will see the above notification when attempting to install the dta.xpi file.

The above instructions work for me.

...

You would have to convert the PlainOldFavorites legacy extension to a bootstrapped extension.

You cannot have an unpack bootstrapped extension so you would have to store the components files in another folder like...

* <profile folder>\PlainOldFavorites\PlainOldFavorites.xpt
* <profile folder>\PlainOldFavorites\PlainOldFavorites.engine

Honestly, I'm not sure if it's possible. I don't know how to deal with the XPCOM stuff and the bootstrap.js file.
User avatar
c627627
Posts: 641
Joined: April 3rd, 2005, 12:58 pm
Location: Kansas City, Missouri
Contact:

Re: Is there a way to save/launch url links from a PC folder

Post by c627627 »

morat, thank you for your time.

I downloaded Fx 97 Beta 1 Developer Edition
I set all preferences as instructed. [Triple checked].
Restarted
When I try to Install Add-on from file... browse to bootstrapLoader.xpi

I get "This add-on could not be installed because it appears to be corrupt."
No matter how many times I restart Firefox or reboot the system, even.

I then tried Fx 96 Beta 1 Developer Edition, the same result. Corrupt error. Even with restarts.


Is there a version of Fx Developer Edition you were using that was older perhaps?
And if successful, what does this process actually allow for?
Open the pod bay doors, Cortana.
morat
Posts: 6421
Joined: February 3rd, 2009, 6:29 pm

Re: Is there a way to save/launch url links from a PC folder

Post by morat »

I reinstalled everything again to test. I got it working again.

(Full) Instructions:

* download FirefoxPortableDeveloper_97.0_Beta_1_English.paf.exe
* download bootstrapLoader.xpi (10,775 bytes)
* download dta.xpi (1,495,932 bytes)

Are you downloading corrupted *.xpi files? Check the byte count.

* install portable app
* run FirefoxPortableDeveloper\FirefoxPortable.exe to startup
* download latest version
* Menu Bar > Help > About Firefox, then click restart button
* Menu Bar > Help > About Firefox, then check version e.g. 97.0b3
* open about:config
* set extensions.experiments.enabled pref to true
* set extensions.htmlaboutaddons.recommendations.enabled pref to false
* set xpinstall.signatures.required pref to false
* open about:addons > Gear Icon > Install Addon From File
* install bootstrapLoader.xpi
* Menu Bar > File > Exit

Check if the processes are properly closed in Command Prompt window.

Code: Select all

tasklist /fi "imagename eq FirefoxPortable.exe"
tasklist /fi "imagename eq firefox.exe"
* run FirefoxPortableDeveloper\FirefoxPortable.exe to startup
* open about:addons > Gear Icon > Install Addon From File
* install dta.xpi

Screenshot
http://imgur.com/hjIZnLq

Troubleshoot:

Check if the pref values are set correctly in Command Prompt window.

Code: Select all

findstr /r "experiments.enabled htmlaboutaddons xpinstall" prefs.js
user_pref("extensions.experiments.enabled", true);
user_pref("extensions.htmlaboutaddons.recommendations.enabled", false);
user_pref("xpinstall.signatures.required", false);
I was thinking if you can get the fixed DownThemAll! legacy extension working in the Firefox DevEd, then maybe someone else could fix the PlainOldFavorites legacy extension so it would work in the Firefox DevEd as well.
User avatar
c627627
Posts: 641
Joined: April 3rd, 2005, 12:58 pm
Location: Kansas City, Missouri
Contact:

Re: Is there a way to save/launch url links from a PC folder

Post by c627627 »

I wanted to install this before saying anything but despite my following your directions to a tee, I still get the corruption error with bootstrapLoader.xpi. I went here and downloaded the bootstrapLoader.xpi file, it has 159KB:
http://github.com/xiaoxiaoflood/firefox ... trapLoader

I even tried both Windows 8.1 and Windows 10 on my multi-boot.


As I understand your last line, DownThemAll! is a an extension that has nothing to do with my question other than to serve as a proof of concept that if DownThemAll! could be made to work, then PlainOFavorites could be made to work too on Fx96+, by someone knowledgeable. Is that correct?

If that is the case, as I would not be able to reprogram PlainOldFavorites, as long as your instructions work for someone who can, they can then theoretically fix PlainOldFavorites?

Also, are Beta versions of Firefox being used by you because such modifications can only run on Betas? And not on regular release Firefox versions? So in the end, these fixes are only usable on Firefox Beta versions?
Open the pod bay doors, Cortana.
morat
Posts: 6421
Joined: February 3rd, 2009, 6:29 pm

Re: Is there a way to save/launch url links from a PC folder

Post by morat »

c627627 wrote:Is that correct?
Yeah, but I wouldn't say "has nothing to do with" though.

The bootstrapLoader.xpi extension is a WebExtension Experiment that loads bootstrapped extensions like the fixed DownThemAll! legacy extension.

You can only run WebExtension Experiments with Developer Edition and Nightly, not Release, not Beta, not ESR.

WebExtensions Experiments
http://firefox-source-docs.mozilla.org/ ... xperiments
limp
Posts: 215
Joined: September 3rd, 2008, 4:26 pm

Re: Is there a way to save/launch url links from a PC folder

Post by limp »

Rather than mess around with Firefox, use the Windows Desktop Address Toolbar. Right-click in the taskbar, select Toolbars > Address, and enter your favorite URLs in the Address folder. If you're unfortunate enough to be using the disaster called Windows 11, you'll need to replace the taskbar first, at https://github.com/valinet/ExplorerPatcher#readme.
User avatar
c627627
Posts: 641
Joined: April 3rd, 2005, 12:58 pm
Location: Kansas City, Missouri
Contact:

Re: Is there a way to save/launch url links from a PC folder

Post by c627627 »

limp, the purpose may not apply to many, but specific purpose of this thread is when people use multiple browsers, so each separate browser can display contents of the Favorites folder.

Or you can boot from Windows 8 into Windows 10 or boot from Windows 10 into Windows 11 on your multi-boot system, and each browser in each OS would display the same Favorites menu screen shot above, because they each display the contents of one single Favorites folder, which makes syncing unnecessary.
Open the pod bay doors, Cortana.
User avatar
c627627
Posts: 641
Joined: April 3rd, 2005, 12:58 pm
Location: Kansas City, Missouri
Contact:

Re: Is there a way to save/launch url links from a PC folder

Post by c627627 »

morat, you have a Private Message from me.
Open the pod bay doors, Cortana.
morat
Posts: 6421
Joined: February 3rd, 2009, 6:29 pm

Re: Is there a way to save/launch url links from a PC folder

Post by morat »

Here is a simple plain old favorites button.

Screenshot
http://imgur.com/a/KttqvJv

* <install directory>\defaults\pref\autoconfig.js

Code: Select all

(see other thread)
* <install directory>\mozilla.cfg

Code: Select all

(see other thread)
* <profile directory>\chrome\PlainOldFavorites.engine

note: copy the PlainOldFavorites.engine file from the components folder within the PlainOldFavorites_1.3.1.xpi archive

* <profile directory>\chrome\PlainOldFavoritesFirefoxButton_Movable.uc.js

Code: Select all

(function () {
  if (location != "chrome://browser/content/browser.xul" &&
      location != "chrome://browser/content/browser.xhtml") return;

  try {
    CustomizableUI.createWidget({
      id: "__unique_identifier_plain_old_favorites_button", // should match id below
      type: "custom",
      defaultArea: CustomizableUI.AREA_MENUBAR,
   // defaultArea: CustomizableUI.AREA_NAVBAR,
      onBuild: function (aDocument) {
        var XUL_NS = "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul";
        var toolbarbutton = aDocument.createElementNS(XUL_NS, "toolbarbutton");
        var menupopup = aDocument.createElementNS(XUL_NS, "menupopup");
        var menuitem = aDocument.createXULElement("menuitem");
        menuitem.setAttribute("class", "menuitem-iconic");
        menuitem.setAttribute("label", "Add a Favorite");
        menuitem.addEventListener("command", function () {
          var scope = {};
          Components.utils.import("resource://gre/modules/ctypes.jsm", scope);
          var file = Components.classes["@mozilla.org/file/directory_service;1"].
            getService(Components.interfaces.nsIProperties).
            get("UChrm", Components.interfaces.nsIFile);
          file.append("PlainOldFavorites.engine"); 
          var lib = scope.ctypes.open(file.path);
          var oatfd = lib.declare("openAddToFavoritesDialog", /* name        */
            scope.ctypes.default_abi,                         /* abi         */
            scope.ctypes.bool,                                /* return type */
            scope.ctypes.jschar.ptr,                          /* arg  1 type */
            scope.ctypes.jschar.ptr,                          /* arg  2 type */
            scope.ctypes.jschar.ptr);                         /* arg  3 type */
          var frameScript = "data:text/plain," + encodeURIComponent(`
            var data = {};
            data.title = content.document.title;
            sendAsyncMessage("plainoldfavorites", data);
          `);
          gBrowser.selectedBrowser.messageManager.addMessageListener("plainoldfavorites", function handler(aMessage) {
            gBrowser.selectedBrowser.messageManager.removeMessageListener("plainoldfavorites", handler);
            var name = aMessage.data.title;
            name = name.replace(/[\/]/g, "-");
            name = name.replace(/[\\:*?\"<>|]/g, " ");
            var url = gBrowser.selectedBrowser.webNavigation.currentURI.spec;
         // var iconUrl = gBrowser.selectedBrowser.mFavIconURL; // null
         // var iconUrl = gBrowser.selectedBrowser.mIconURL; // data url not supported in organize favorites, new tab, file explorer, desktop
         // var iconUrl = "http://www.mozillazine.org/favicon.ico"; // not supported in organize favorites, new tab, file explorer, desktop
         // var iconUrl = "C:\\favicon.ico"; // supported in organize favorites, file explorer, desktop - after manually saving site icon
            var iconUrl = "";
            var ret = oatfd(name, url, iconUrl);
            try { lib.close(); } catch (e) {}
            lib = null;
          });
          gBrowser.selectedBrowser.messageManager.loadFrameScript(frameScript, false);
        }, false);
        menupopup.appendChild(menuitem);
        var menuitem = aDocument.createXULElement("menuitem");
        menuitem.setAttribute("class", "menuitem-iconic");
        menuitem.setAttribute("label", "Organize Favorites");
        menuitem.addEventListener("command", function () {
          var scope = {};
          Components.utils.import("resource://gre/modules/ctypes.jsm", scope);
          var file = Components.classes["@mozilla.org/file/directory_service;1"].
            getService(Components.interfaces.nsIProperties).
            get("UChrm", Components.interfaces.nsIFile);
          file.append("PlainOldFavorites.engine"); 
          var lib = scope.ctypes.open(file.path);
          var oofd = lib.declare("openOrganizeFavoritesDialog", /* name        */
            scope.ctypes.default_abi,                           /* abi         */
            scope.ctypes.bool);                                 /* return type */
          var ret = oofd();
          try { lib.close(); } catch (e) {}
          lib = null;
        }, false);
        menupopup.appendChild(menuitem);
        var menuseparator = aDocument.createXULElement("menuseparator");
        menupopup.appendChild(menuseparator);
        var menuitem = aDocument.createXULElement("menuitem");
        menuitem.setAttribute("class", "menuitem-iconic");
        menuitem.setAttribute("image", "chrome://branding/content/icon16.png");
        menuitem.setAttribute("label", "Open Favorites in New Tab");
        menuitem.addEventListener("command", function () {
          var file = Components.classes["@mozilla.org/file/directory_service;1"].
            getService(Components.interfaces.nsIProperties).
            get("Favs", Components.interfaces.nsIFile);
          var uri = Components.classes["@mozilla.org/network/io-service;1"].
            getService(Components.interfaces.nsIIOService).
            newFileURI(file);
          gBrowser.selectedTab = gBrowser.addTab(uri.spec, {
            triggeringPrincipal: Services.scriptSecurityManager.getSystemPrincipal(),
          });
        }, false);
        menupopup.appendChild(menuitem);
        var menuitem = aDocument.createXULElement("menuitem");
        menuitem.setAttribute("class", "menuitem-iconic");
        menuitem.setAttribute("label", "Open Favorites in File Explorer");
        menuitem.addEventListener("command", function () {
          var file = Components.classes["@mozilla.org/file/directory_service;1"].
            getService(Components.interfaces.nsIProperties).
            get("Favs", Components.interfaces.nsIFile);
          file.reveal();
        }, false);
        menupopup.appendChild(menuitem);
        toolbarbutton.appendChild(menupopup);
        var dataUrl = "data:image/png;base64," +
          "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAACNFBMVEXDRgDweQDnbwC0Ng" +
          "DCRQC7PQDtpTu+QQD78q3PUwDCRAD//8vbYQDLTgDocAD0iQX1jQbGSgD7iAD4gwDVaw7v" +
          "dwDyegD+igDweQDlawDyhAXveADmZwDzmBbtcwDwkhHveADmhBTkgxbweADkfRH+igD7hA" +
          "DXZQX0gADyjA/tfgvveQDiawDQVADRXgfnbwD1jAb9iQD9z0PVZAbxpinykRHtdgD5mRbE" +
          "RQDDRgDOYArCRAD9iQD3ewDxegD3dwDFRgDAQAD+hgD4fQDucgDtgQftfwTISQDCRQDvdg" +
          "D5lxb1kRb2qh7wnynkagD766LDRQDDRwDDRQDspjbtpzbuqDbvqzv//8DUZAbCRQD//83p" +
          "jhvveQbvggW+QQDfcxLlmUb//8veYADMTwDHSADVVwC8PgDwixb78q3oZgDUWADRVADCRQ" +
          "D9iQDERwDBQQDYVQC+PgC0NgDbYQDWWgDUWADSVQDFSAC+QAC7PAC0NgD+wRL+/kD+/zb+" +
          "7i3+8Cv+/DX+wBL/+DD/rwz+qgz+rwz/tAz+sQzfbAT+3iP/+jD//Dz1jwP+nwf5iwf7pB" +
          "z2tRr4lwb/ogfsdQT+2R7/9ET+2iT8yyLmgBL5iQL2egLokhP7zzT60zv1zUr0gAL1ewP5" +
          "0yn9+UL++EXooyngaAH41EPzowzyySj+xxzlhhHvvyruwjXxvTnUag3+zxrwigP+swz86U" +
          "/ZXwD75lHqegD6xzb//kn+uhPTXAG3OAD/+UC2vFeJAAAAe3RSTlMAAAAAAAAAAAAAAAAA" +
          "AAAAAAAAAACfnwAIaelpAAA2+wD7UQAAa3oArKzRzMysnwgAvPQA/gAAw3prw0oALr16vS" +
          "4AACnF6bspAAAA/mIAADQAAAAAAI8AAEwA0vv7kd2yAuuvr+vKABL23U+8Sk/d9vUDIIAQ" +
          "AAAQgCAfvupHAAABB0lEQVR4Xi3IU3fDABgA0C+u26FdZ9u2bdu2vZSzbds2/tyac3IfLx" +
          "jpGyA6MimqY6gHTNgiiNwkwRM1E7EhTrYyTfMzzsh0ZEPiH+D6+u5mV1jEhpe5haVCYW1T" +
          "4suEvUOkk7PLpVJ5WFnl7hEUDN5LPvsHJ6cazdn13f3DYxu0B35+/Y2qVSr17NzGeUgohI" +
          "VHLK/PMDa39qKieRATGxd/9cS4uU1MwnmQktqY/qGlaVr7/ZOVDTmQm5df8PwyNj4xOTVd" +
          "jOM4kCRZOr+wWFa+srpWQVEU8PnV2zu7NbV19UfHDQRBAIfTdNHc0soVdnR2dfdgGAgEvW" +
          "99/QNc4eDQ8O8Ihv0D77NPgbVLZ6kAAAAASUVORK5CYII=";
        var props = {
          id: "__unique_identifier_plain_old_favorites_button",
          class: "toolbarbutton-1 chromeclass-toolbar-additional",
          type: "menu",
          label: "PlainOldFavorites",
          tooltiptext: "PlainOldFavorites",
          style: 'list-style-image: url("' + dataUrl + '"); -moz-image-region: auto;',
        };
        for (var p in props) toolbarbutton.setAttribute(p, props[p]);
        return toolbarbutton;
      },
    });
  } catch (e) {
    Components.utils.reportError(e); // [check] Show Content Messages
  }
})();
Other thread: http://forums.mozillazine.org/viewtopic ... #p14854175

PlainOldFavorites
http://www.iosart.com/firefox/plainoldfavorites/

That works for me with the following setup.

Firefox Portable 96.0.2 (Release Build)
Windows 10 Pro 20H2 32-bit

I can create a .url file in the Favorites folder with the "Add a Favorite" menu item.
I can open a .url file with the "Organize Favorites" menu item. (right click .url file and select open)
I can open a .url file with the "Open Favorites in New Tab" menu item. (click .url file)
I can open a .url file with the "Open Favorites in File Explorer" menu item. (double click .url file)

I'm not creating a .url file with an icon since it's not supported in Windows 10.

Internet Shortcut (.url file) no longer supports remote icon
http://docs.microsoft.com/answers/quest ... index.html
Last edited by morat on January 20th, 2022, 10:02 pm, edited 1 time in total.
Post Reply