How does it work

SchemingMind Tuning internal details.

General idea

The extension works by modifying schemingmind pages. It is called by the browser whenever some page is loaded. If this is a schemingmind page, it modifies it in place, according to the preferences - substitutes original images with the configured ones, resizes some elements, paints toolbar above the title etc. This process is usually invisible, but in some rare cases (slow connection, main site under load) you may notice it.

The modifications are made in a simple manner - elements to modify are located using either internal names, or pieces of text, then patched as necessary. For example, to substitute the images, the extension locates all img elements on the page which has source address containing images/sets, then replaces the image address with the address of replacement set.

It is worth mentioning that the extension does not understand/interpret games/moves.

Technical details

If you are interested, you may read the source code. Download the XPI file (just right-click the Download link and pick Save As), unpack it (it is a normal ZIP file, rename it from smtuning.xpi to smtuning.zip and unpack), then unpack the chrome/smtuning.jar file (again, this is a zip file). All the important sources are in the content directory, it is a mix of XUL (mozilla interface language, in which I model the options dialog and also declare scripts used) and JavaScript (in which all the functionality is implemented). Main code is in overlay.js file, start reading from the onPageLoad routine - this is a routine called whenever browser finishes loading some page.

Download

Would you like to try the extension? Download it!

History

Release 2.1.1

Fixed replay of dark games.

2016-03-02

Release 2.1.0

Zoom icons setting is sticky. Changed some per-variant pieces defaults and fixed capture chess setting being ignored.

2016-02-29

Release 2.0.2

Rewritten to use current Firefox APIs (no more problems with signing, restartless install, new configuraton screens). Updated urls for schemingmind pieces.

2016-02-28

Release 1.26.1

Three Checks 960 support.

Fixed a few problems happening in recent Firefox versions.

2012-12-06

Release 1.25.0

Firefox 9.0 compatibility.

2012-01-01

Release 1.24.1

Firefox 8.0 compatibility.

2011-11-21

Release 1.24.0

Extension adapted to some recent website changes (especially new game list).

2011-10-20

Release 1.23.0

Firefox 7.0 compatibility.

2011-10-01

Release 1.22.1

Firefox 6.0 compatibility.

2011-07-25

Release 1.22.0

Firefox 5.0 compatibility.

2011-06-01

Release 1.21.2

Avatars removal works again.

2011-05-01

Release 1.21.1

Fixed incorrect display of 32x32 images.

2011-03-28

Release 1.21.0

Extension patched to work with Firefox 4.

2011-03-21

Release 1.20.1

Extension patched to work after website changes made at Jun 7, 2010.

2010-06-12

Release 1.19.1

Bugfix: analysis board labels were not swapped on boad flip. Better colors of conditional move and draw alerts when dark or black background is in use.

2010-03-07

Release 1.19.0

Alerts about draw offers and conditional offers.

2010-03-04

Release 1.18.1

Extension no longer refuses to install on Firefox 3.6

2010-03-02

Release 1.18.0

Highlighting checks in Three Checks games.

2010-01-29

Release 1.17.1

Support for Three Checks and Crazy Elephant.

2010-01-12

Release 1.16.1

Fixed the bug introduced in 1.16.0 due to which many functions failed to work.

2009-09-17

Release 1.16.0

Black and white skin added (style prepared by Ursus).

2009-09-09

Release 1.15.0

Marked as suitable for Firefox 3.5.

2009-05-15

Release 1.14.0

Fixed problem with no scrollbar in default piece set configuration.

2009-04-18

Release 1.13.2

Fixed toolbar on narrow windows, added link to start new topic on top of the forum.

2009-03-08

Release 1.13.0

Dark background option, shortening Private game note label.

2009-03-08

Detailed history