Thumbnail Zoom Plus is a Firefox plug-in which shows a full-size image pop-up when you hover over a thumbnail or image link. When you hover your mouse over a thumbnail or an image or video link, the add-on displays the full-size image or video still-frame in a floating window. Supported sites include Amazon, Bing, Facebook, Flickr, Google, IMDb,…
JavaScript HTML Makefile CSS
Pull request Compare This branch is 1023 commits ahead, 34 commits behind andrez47:master.
Latest commit dd9c4d4 Feb 21, 2017 @dadler v4.2beta1
Permalink
Failed to load latest commit information.
src v4.2beta1 Feb 21, 2017
.gitignore Added .gitignore Oct 19, 2013
README Fixed #215: Zoomed images are translucent on OSX in ff 38 May 22, 2015

README

This git repository holds the source code for Thumbnail Zoom Plus, which is
David Adler's fork of the Thumbnail Zoom add-on for Mozilla Firefox.

Thumbnail Zoom Plus is a Firefox plug-in which shows a full-size image pop-up 
when you hover over a thumbnail or image link.

When you hover your mouse over a thumbnail or an image or video link, the 
add-on displays the full-size image or video still-frame in a floating window.

The image remains visible until you move the mouse outside the thumb, click 
the mouse, or press Escape. It's quick and easy to move the mouse from one 
thumbnail to another to see the corresponding full-size images.

Supported sites include Amazon, Bing, Facebook, Flickr, Google, IMDb, LinkedIn, 
Netflix, Pinterest, Reddit, Tumblr, Twitter, Yandex.ru, YouTube, Wikipedia, 
WordPress, Yahoo Images, and many more.

For more information see our official site:
  
  http://thumbnailzoomplus.wordpress.com/

or Facebook:

  https://www.facebook.com/thumbnailzoomplus

You can install this add-on from the official Firefox Add-on site:

    https://addons.mozilla.org/en-US/firefox/addon/thumbnail-zoom-plus/

Source code and our issue tracker are on github:

    https://github.com/dadler/thumbnail-zoom/

-------------------------------------------------------------------------------
Tips for developers:


DEVELOPMENT ENVIRONMENT:

For general info about developing plug-ins see
https://developer.mozilla.org/en/Building_an_Extension

For tips on setting up your dev environment see
https://developer.mozilla.org/en/Setting_up_extension_development_environment

If you're using the Restartless Restart add-on, also turn on Disable Fastload
in its preferences.

In my developer profile in Firefox, I create a pointer file as follows
on OSX:

  cd "$HOME/Library/Application Support/Firefox/Profiles/"*"/extensions/"
  rm -f thumbnailZoom@dadler.github.com.xpi
  echo $HOME/Documents/p/ff-addons/tzp/thumbnail-zoom/src > thumbnailZoom@dadler.github.com

where $HOME/doc_no_sync/projects/thumbnail-zoom/thumbnail-zoom is the location of
my git repository. 

On Windows the file is in e.g.
%APPDATA%\Roaming\Mozilla\Firefox\Profiles\xb77d54w.default\extensions\ and might contain
for example "\\VBOXSVR\src" (without the quotes)

With this pointer in place, to test a change I simply save my source file and restart Firefox
(running my developer profile regular than my regular user profile).

NOTE: if you install the plug-in into this profile using an xpi file, firefox
may remove the pointer file.


DEBUGGING:

To enable debug logging, set enableDebug in common.js.  See comments there for the location
of the log.txt file.  Messages are logged with calls like this:
    this._logger.debug("getPageConstantByDoc");


TESTING:

See src/test/TestCases.html.

FIREFOX REGRESSIONS:

When testing to see what version of Firefox broke TZP, use mozregression.

For regressions on nightly release dates:

  mozregression -g 2015-01-02 -b 2015-05-15 -p "/Users/dadler/Library/Application Support/Firefox/Profiles/p0976zws.default"

For regressions on release numbers:
  mozregression --good-release 37 -b 2015-03-01 -p "/Users/dadler/Library/Application Support/Firefox/Profiles/p0976zws.default"

To test with an add-on and remembered tabs, use -p to specify a profile.  The script seems to reset
the profile after each run, so BEFORE RUNNING DUPLICATE THE PROFILE TO A BACKUP COPY.  When mozregression
tries to start the next run, let it fail (due to the previous firefox still running).  Quit
the previous firefox, remove the profile, copy the backup profile to the real profile name.
Then manually start firefox from the path output by mozregression.  If it starts with I10N on,
turn it off.


MAKING AN INSTALLABLE XPI FILE:

Make an installable xpi file like this:
  cd /Users/dadler/doc_no_sync/projects/thumbnail-zoom/thumbnail-zoom/src
  make

That will create ImageZoom.xpi in ../bin/ .  To install it in a running session of
Firefox, drag-and-drop the xpi file onto the Firefox window.  It'll prompt you to install it,
and will offer to restart Firefox so the change can take effect.  An alternative to drag-and-drop
is to go to the Firefox Add-ons window and do "Instal Add-on From File" from the gear icon menu.