FF20Beta/Win7: Icon disappears

Posting here is no longer possible, please use the corresponding product forum.
tomasko126
Posts: 36
Joined: Tue Apr 30, 2013 8:42 pm
Location: Slovakia
Contact:

Re: FF20Beta/Win7: Icon disappears

Post by tomasko126 »

I can confirm that this bug doesn´t appear on Ubuntu 13.04 and Firefox 20.
JayeJaye

Re: FF20Beta/Win7: Icon disappears

Post by JayeJaye »

This fix doesn't work for me - my addon bar is active/visible, but the ABP icon isn't in the "customise toolbar" screen.
Tobi

Re: FF20Beta/Win7: Icon disappears

Post by Tobi »

JayeJaye wrote:This fix doesn't work for me - my addon bar is active/visible, but the ABP icon isn't in the "customise toolbar" screen.
doesn't work for me either.
current configuration is:
os x 10.8.3 with firefox 21.0 and abp 2.2.4. it didn't work with firefox 20.0, 19.0 and abp 2.2.3.
resetting ff did not help either.
when is this going to be fixed?
NorCal-IC
Posts: 1
Joined: Thu May 16, 2013 9:58 pm

Re: FF20Beta/Win7: Icon disappears

Post by NorCal-IC »

I'm having two issues

- the disappearing ABP icon being discussed here
and...
- the ABP icon sometimes moves itself from the Menu bar (where I put it) to the end of the Navigation bar when I first launch Firefox

Both of these issues started at the same time. I don't know if they are actually connected, however I wanted to include them both JIC it helps solve this.

Windows XP Pro
Firefox 21
ABP 2.2.4

- Is it quickly appearing/disappearing or only ... Ans: No it's either there when I first launch FF, or it's not. It is never there when I restart FF.

- Is there any action which reliably reproduces this? Ans: Yes, FF restarts seem to consistently reproduce it.

- Are the following statements correct? ?
- It only happens after Firefox has been restarted i dont know Ans: Restarted, Yes. However it also randomly happens when I first lauch FF.
- It only happens under Windows yes Ans: I do not know
- It only happens on Firefox 19/20 version 20.0 Ans: No, I've been running into this with Firefox 19, 20, and now 21.

Also, I've created new profile: No change.

Workaround
I've discovered that if I go to Tools > Addons > Adblock Plus and I disable, and immediately re-enable, Adblock Plus, the icon appears where I put it on the Menu bar.
Guest

Re: FF20Beta/Win7: Icon disappears

Post by Guest »

The only solution that works for me consistently, is to use FF 18 instead - exact same addons work
flawlessly still there for me.
Guest

Re: FF20Beta/Win7: Icon disappears

Post by Guest »

Guest wrote:The only solution that works for me consistently, is to use FF 18 instead - exact same addons work
flawlessly still there for me.
That is exactly what works for me too. It's incredibly annoying because you have to do this whenever you close firefox down completely. Now I must always have one window of FF open at all times so I don't have to go through this again.
User avatar
V@no
Posts: 30
Joined: Sat Apr 06, 2013 5:44 pm

Re: FF20Beta/Win7: Icon disappears

Post by V@no »

This issue has been reported a year ago:
adblock not working
It has nothing to do with Firefox version, it's bug in ABP itself:
Re: adblock not working
We yet to see any official acknowledge of this.

P.S.
Please stop suggest people f@k up their FF profiles with resets!
Mark_

Re: FF20Beta/Win7: Icon disappears

Post by Mark_ »

V@no you are lumping this problem in with yet another problem with ADP. There is most certainly
a different problem where the icon disappears a minute or two After opening firefox - and this
has been tied to firefox versions (19 and up). And therefore has nothing to do with the silly
5 second timer in the ADP code (which i do agree certainly should be redesigned).

I also agree that the constant suggestion of resetting profile is not an answer as the problem will
eventually resurface again.
User avatar
V@no
Posts: 30
Joined: Sat Apr 06, 2013 5:44 pm

Re: FF20Beta/Win7: Icon disappears

Post by V@no »

Mark_ wrote:V@no you are lumping this problem in with yet another problem with ADP. There is most certainly
a different problem where the icon disappears a minute or two After opening firefox - and this
has been tied to firefox versions (19 and up). And therefore has nothing to do with the silly
5 second timer in the ADP code (which i do agree certainly should be redesigned).
Is that what happens on your computer? I just re-read entire topic and see no one mentioned anything about it disappears after few minutes, everyone confirms it disappears after FF restart.
The issue NorCal-IC mentioned that ABP doesn't restore icon positions when moved outside of addon bar, is not quiet related to this issue...


[EDIT]
Until devs fix this issue, here is a simple addon that fixes it by disabling and then enabling ABP on startup:
http://dev.vano.org/abp/downloads/adblo ... latest.xpi
Source:

Code: Select all

const {classes: Cc, interfaces: Ci, utils: Cu} = Components;
Cu.import("resource://gre/modules/Services.jsm");
Cu.import("resource://gre/modules/AddonManager.jsm");

function startup(data, reason)
{
	AddonManager.getAddonByID("{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}", function(addon)
	{
		if (addon.isActive)
			watchWindows(function()
			{
				let listener = {
					onDisabled: function(Addon)
					{
						if(addon.id != Addon.id)
							return

						let timer = Cc["@mozilla.org/timer;1"].createInstance(Ci.nsITimer);
						unload(timer.cancel);
						timer.init(function()
						{
							AddonManager.removeAddonListener(listener);
							Addon.userDisabled = false;
							unload();
						}, 100, timer.TYPE_ONE_SHOT);
					}
				};
				AddonManager.addAddonListener(listener);
				unload(function(){AddonManager.removeAddonListener(listener)});
				addon.userDisabled = true;
			});
	});
}

function shutdown(data, reason)
{
	unload();
}

function install(data, reason)
{
}

function uninstall(data, reason)
{
}






/* ***** BEGIN LICENSE BLOCK *****
 * Version: MPL 1.1/GPL 2.0/LGPL 2.1
 *
 * The contents of this file are subject to the Mozilla Public License Version
 * 1.1 (the "License"); you may not use this file except in compliance with
 * the License. You may obtain a copy of the License at
 * http://www.mozilla.org/MPL/
 *
 * Software distributed under the License is distributed on an "AS IS" basis,
 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
 * for the specific language governing rights and limitations under the
 * License.
 *
 * The Original Code is Home Dash Utility.
 *
 * The Initial Developer of the Original Code is The Mozilla Foundation.
 * Portions created by the Initial Developer are Copyright (C) 2011
 * the Initial Developer. All Rights Reserved.
 *
 * Contributor(s):
 *   Edward Lee <edilee@mozilla.com>
 *   Erik Vold <erikvvold@gmail.com>
 *
 * Alternatively, the contents of this file may be used under the terms of
 * either the GNU General Public License Version 2 or later (the "GPL"), or
 * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
 * in which case the provisions of the GPL or the LGPL are applicable instead
 * of those above. If you wish to allow use of your version of this file only
 * under the terms of either the GPL or the LGPL, and not to allow others to
 * use your version of this file under the terms of the MPL, indicate your
 * decision by deleting the provisions above and replace them with the notice
 * and other provisions required by the GPL or the LGPL. If you do not delete
 * the provisions above, a recipient may use your version of this file under
 * the terms of any one of the MPL, the GPL or the LGPL.
 *
 * ***** END LICENSE BLOCK ***** */

"use strict";


/**
 * Save callbacks to run when unloading. Optionally scope the callback to a
 * container, e.g., window. Provide a way to run all the callbacks.
 *
 * @usage unload(): Run all callbacks and release them.
 *
 * @usage unload(callback): Add a callback to run on unload.
 * @param [function] callback: 0-parameter function to call on unload.
 * @return [function]: A 0-parameter function that undoes adding the callback.
 *
 * @usage unload(callback, container) Add a scoped callback to run on unload.
 * @param [function] callback: 0-parameter function to call on unload.
 * @param [node] container: Remove the callback when this container unloads.
 * @return [function]: A 0-parameter function that undoes adding the callback.
 */
function unload(callback, container) {
	// Initialize the array of unloaders on the first usage
	let unloaders = unload.unloaders;
	if (unloaders == null)
		unloaders = unload.unloaders = [];

	// Calling with no arguments runs all the unloader callbacks
	if (callback == null) {
		unloaders.slice().forEach(function(unloader) unloader());
		unloaders.length = 0;
		return true;
	}

	// The callback is bound to the lifetime of the container if we have one
	if (container != null) {
		// Remove the unloader when the container unloads
		container.addEventListener("unload", removeUnloader, false);

		// Wrap the callback to additionally remove the unload listener
		let origCallback = callback;
		callback = function() {
			container.removeEventListener("unload", removeUnloader, false);
			origCallback();
		}
	}

	// Wrap the callback in a function that ignores failures
	function unloader() {
		try {
			callback();
		}
		catch(ex) {}
	}
	unloaders.push(unloader);

	// Provide a way to remove the unloader
	function removeUnloader() {
		let index = unloaders.indexOf(unloader);
		if (index != -1)
			unloaders.splice(index, 1);
	}
	return removeUnloader;
}

/**
 * Apply a callback to each open and new browser windows.
 *
 * @usage watchWindows(callback): Apply a callback to each browser window.
 * @param [function] callback: 1-parameter function that gets a browser window.
 */
function watchWindows(callback) {
	var unloaded = false;
	unload(function() unloaded = true);

	// Wrap the callback in a function that ignores failures
	function watcher(window, type) {
		try {
			// Now that the window has loaded, only handle browser windows
			let {documentElement} = window.document;
			if (documentElement.getAttribute("windowtype") == "navigator:browser")
				callback(window, type);
		}
		catch(ex) {}
	}

	// Wait for the window to finish loading before running the callback
	function runOnLoad(window) {
		// Listen for one load event before checking the window type
		window.addEventListener("load", function runOnce() {
			window.removeEventListener("load", runOnce, false);
			if (unloaded) return; // the extension has shutdown
			watcher(window, "load");
		}, false);
	}

	// Add functionality to existing windows
	let windows = Services.wm.getEnumerator(null);
	while (windows.hasMoreElements()) {
		// Only run the watcher immediately if the window is completely loaded
		let window = windows.getNext();
		if (window.document.readyState == "complete")
			watcher(window);
		// Wait for the window to load before continuing
		else
			runOnLoad(window);
	}

	// Watch for new browser windows opening then wait for it to load
	function windowWatcher(subject, topic) {
		if (topic == "domwindowopened")
			runOnLoad(subject);
	}
	Services.ww.registerNotification(windowWatcher);

	// Make sure to stop watching for windows if we're unloading
	unload(function() Services.ww.unregisterNotification(windowWatcher));
}
Last edited by V@no on Fri Aug 30, 2013 3:26 pm, edited 4 times in total.
OlegYch

Re: FF20Beta/Win7: Icon disappears

Post by OlegYch »

Yeah i also have this problem with ff 21 on win8. Disabling/Enabling the addon fixes it though. Annoying
Pontiaku

Re: FF20Beta/Win7: Icon disappears

Post by Pontiaku »

Still happening however I found a method of getting back and have a guess as to why it doesn't appear.

If you open firefox and you don't see the button press CTRL+N
This will open a new browser window with the ABP button. Simply close the one that doesn't have it.

My "guess" is the browser doesn't give ABP time to execute so it gets left out when Firfox opens...
User avatar
V@no
Posts: 30
Joined: Sat Apr 06, 2013 5:44 pm

Re: FF20Beta/Win7: Icon disappears

Post by V@no »

Pontiaku wrote:My "guess" is the browser doesn't give ABP time to execute so it gets left out when Firfox opens...
Nope, it's a poor coding on ABP developers part. Unfortunately by the rate it's getting fixed (1 year now?) perhaps they got payed off by google and others and now they pretty much don't care?
From moderators on this forum all we hear is suggestions to f#k up our profiles with resetting firefox, which DOES NOT FIX THE PROBLEM, yet they keep suggesting it.
User avatar
mapx
Posts: 21940
Joined: Thu Jan 06, 2011 2:01 pm

Re: FF20Beta/Win7: Icon disappears

Post by mapx »

V@no wrote: perhaps they got payed off by google and others and now they pretty much don't care?
it's an obsession ?
From moderators on this forum all we hear is suggestions to f#k up our profiles with resetting firefox, which DOES NOT FIX THE PROBLEM, yet they keep suggesting it.
we are not developers to offer other solutions; in some cases resetting firefox means get a lighter profile and gain the seconds you need to initialize ABP

I forwarded your patch link to one of developers hoping he will have the time to look into ...
User avatar
V@no
Posts: 30
Joined: Sat Apr 06, 2013 5:44 pm

Re: FF20Beta/Win7: Icon disappears

Post by V@no »

mapx wrote:
V@no wrote: perhaps they got payed off by google and others and now they pretty much don't care?
it's an obsession ?
No, it's a conspiracy theory. And it's kind of matching the timing when that news came out and when abp updates slowed down. But I'll give a benefit of a doubt, it's summer time after all, vocations and whatnot.
mapx wrote:we are not developers to offer other solutions; in some cases resetting firefox means get a lighter profile and gain the seconds you need to initialize ABP
The problem I'm having with your way of providing support is:
a) being "officials" you don't acknowledge that there is a problem in ABP and you make readers believe it's something on their end.
b) suggesting reset profiles and knowing what potential side effects it could cause and don't give a disclaimer regarding it, is a no-no ok, fine, latest used link has all needed disclaimers, unlike outdated http://kb.mozillazine.org. But still IMO there should be a warning from your end so readers already know before they click the link

Don't get me wrong, I do appreciate ABP being free and that you guys are here and trying to help, weather you get payed or not (especially), but sometimes better don't give a solution and only admit (read as acknowledge) it...
mapx wrote:I forwarded your patch link to one of developers hoping he will have the time to look into ...
Thank you.
over 4 month ago another moderator also forwarded it to developers...now you see where my conspiracy theory is coming from? ;)

P.S.
Not trying start a war or teach you haw to run the forum, just my observations and personal experience as administrator on several forums, however that being said, removing my link to the news about abp being payed by google is...well, lame, thank you very much.
User avatar
greiner
ABP Developer
Posts: 900
Joined: Mon Sep 03, 2012 5:29 pm
Location: Cologne, Germany

Re: FF20Beta/Win7: Icon disappears

Post by greiner »

V@no wrote:
mapx wrote:I forwarded your patch link to one of developers hoping he will have the time to look into ...
Thank you.
over 4 month ago another moderator also forwarded it to developers...now you see where my conspiracy theory is coming from? ;)
We're trying to fix as many problems as possible in the limited time that we have. Anyway, I'm going to look into this issue this week.
Locked