Index: trunk/sl1/readme.html
===================================================================
--- trunk/sl1/readme.html (revision 42)
+++ trunk/sl1/readme.html (revision 43)
@@ -44,5 +44,4 @@
 
 
-
 	<h3>Licensing</h3>
 	<p>The WMV Player is licensed under a <a href="http://creativecommons.org/licenses/by-nc-sa/2.0/">Creative Commons License</a>. 
@@ -62,5 +61,6 @@
 	<ol>
 		<li>All <a href="http://code.jeroenwijering.com/trac/wiki/SLFormats">supported file formats</a> (and playlists).</li>
-		<li>All <a href="http://code.jeroenwijering.com/trac/wiki/SLVars">supported variables</a> for customizing the player).</li>
+		<li>All <a href="http://code.jeroenwijering.com/trac/wiki/SLVars">supported variables</a> for customizing the player.</li>
+		<li>The <a href="http://code.jeroenwijering.com/trac/wiki/SLAPI">javascript API</a> documentation.</li>
 		<li>The full <a href="http://code.jeroenwijering.com/trac">history and source code</a> of the player.</li>
 	</ol>
Index: trunk/sl1/wmvplayer.js
===================================================================
--- trunk/sl1/wmvplayer.js (revision 42)
+++ trunk/sl1/wmvplayer.js (revision 43)
@@ -382,7 +382,11 @@
 			snd.findName("BufferIcon").Visibility = "Collapsed";
 			snd.findName("BufferText").Visibility = "Collapsed";
+			snd.findName("PlayOffSymbol").Visibility = "Collapsed";
 			snd.findName("PlaySymbol").Visibility = "Visible";
-			snd.findName("PlayOffSymbol").Visibility = "Collapsed";
-			snd.findName("PlayIcon").Visibility = "Visible";
+			if(this.configuration['linkfromdisplay'] == 'true') {
+				snd.findName("PlayIcon").Visibility = "Collapsed";
+			} else { 
+				snd.findName("PlayIcon").Visibility = "Visible";
+			}
 		}
 		try {
@@ -430,4 +434,5 @@
 				jeroenwijering.utils.delegate(this.controller,
 				this.controller.setLink));
+			this.display.findName("PlayIcon").Visibility = "Collapsed";
 		}
 		if(this.configuration['logo'] != '') {
@@ -557,5 +562,6 @@
 		this.centerElement('BufferIcon',wid,hei);
 		this.centerElement('BufferText',wid,hei);
-		this.display.findName('OverlayCanvas')['Canvas.Left'] = wid-110;
+		this.display.findName('OverlayCanvas')['Canvas.Left'] = wid -
+			this.display.findName('OverlayCanvas').Width - 10;
 		this.display.Visibility = "Visible";
 	},
@@ -704,4 +710,5 @@
 		this.video.Source = 'null';
 		this.view.onBuffer(0);
+		clearInterval(this.timeint);
 	},
 
Index: trunk/misc/silverlight.js
===================================================================
--- trunk/misc/silverlight.js (revision 1)
+++  (revision )
@@ -1,404 +1,0 @@
-// 2007-10-16:  Note from Alan Cobb: www.alancobb.com
-//
-//	This is a reformatted version of Silverlight.js from the 
-//	2007-09 v1.0 Silverlight SDK.  The stock Silverlight.js 
-//	comes as a single line of Javascript 7000+ characters
-//	long.  This version was reformatted to allow easier 
-//	debugging and single stepping.  It should not be used in 
-//	production code, but I don't think it violates the 
-//	Silverlight license, because it does not modify any of 
-//	the actual code, just the formatting.
-//
-//	To do this reformatting, I first used a trial copy of 
-//	Polystyle: http://www.polystyle.com/, then I added 
-//	lines of '*' to more visibly separate the functions.
-//	
-///////////////////////////////////////////////////////////////////////////////
-//
-//  Silverlight.js   			version 1.0
-//
-//  This file is provided by Microsoft as a helper file for websites that
-//  incorporate Silverlight Objects. This file is provided under the Silverlight
-//  SDK 1.0 license available at http://go.microsoft.com/fwlink/?linkid=94240.
-//  You may not use or distribute this file or the code in this file except as
-//  expressly permitted under that license.
-//
-//  Copyright (c) 2007 Microsoft Corporation. All rights reserved.
-//
-///////////////////////////////////////////////////////////////////////////////
-
-if( ! window.Silverlight )
-	window.Silverlight = {};
-
-Silverlight._silverlightCount = 0;
-Silverlight.ua = null;
-Silverlight.available = false;
-Silverlight.fwlinkRoot = "http://go.microsoft.com/fwlink/?LinkID=";
-
-//***************************************************************
-Silverlight.detectUserAgent = function()
-{
-	var a = window.navigator.userAgent;
-	Silverlight.ua =
-		{
-		OS: "Unsupported",
-		Browser: "Unsupported"
-		};
-
-	if( a.indexOf( "Windows NT" ) >= 0 )
-		Silverlight.ua.OS = "Windows";
-
-	else if( a.indexOf( "PPC Mac OS X" ) >= 0 )
-		Silverlight.ua.OS = "MacPPC";
-
-	else if( a.indexOf( "Intel Mac OS X" ) >= 0 )
-		Silverlight.ua.OS = "MacIntel";
-
-	if( Silverlight.ua.OS != "Unsupported" )
-		if( a.indexOf( "MSIE" ) >= 0 )
-		{
-			if( navigator.userAgent.indexOf( "Win64" ) == - 1 )
-				if( parseInt( a.split( "MSIE" )[1] ) >= 6 )
-					Silverlight.ua.Browser = "MSIE"
-		}
-		else if( a.indexOf( "Firefox" ) >= 0 )
-		{
-			var b = a.split( "Firefox/" )[1].split( "." ), c = parseInt( b[0] );
-
-			if( c >= 2 )
-				Silverlight.ua.Browser = "Firefox";
-			else
-			{
-				var d = parseInt( b[1] );
-
-				if( c == 1 && d >= 5 )
-					Silverlight.ua.Browser = "Firefox"
-			}
-		}
-
-		else if( a.indexOf( "Safari" ) >= 0 )
-			Silverlight.ua.Browser = "Safari"
-};
-
-Silverlight.detectUserAgent();
-
-//***************************************************************
-Silverlight.isInstalled = function(d)
-{
-	var c = false, a = null;
-
-	try
-	{
-		var b = null;
-
-		if( Silverlight.ua.Browser == "MSIE" )
-			b = new ActiveXObject( "AgControl.AgControl" );
-		else if( navigator.plugins["Silverlight Plug-In"] )
-		{
-			a = document.createElement( "div" );
-			document.body.appendChild( a );
-
-			if( Silverlight.ua.Browser == "Safari" )
-				a.innerHTML = '<embed type="application/x-silverlight" />';
-			else
-				a.innerHTML
-					= '<object type="application/x-silverlight"  data="data:," />';
-			b = a.childNodes[0]
-		}
-		document.body.innerHTML;
-
-		if( b.IsVersionSupported( d ) )
-			c = true;
-		b = null;
-		Silverlight.available = true
-	}
-	catch (e)
-	{
-		c = false
-	}
-
-	if( a )
-		document.body.removeChild( a );
-	return c
-};
-
-//***************************************************************
-Silverlight.createObject = function(l, g, m, j, k, i, h)
-{
-	var b = {}, a = j, c = k;
-
-	a.source = l;
-	b.parentElement = g;
-	b.id = Silverlight.HtmlAttributeEncode( m );
-	b.width = Silverlight.HtmlAttributeEncode( a.width );
-	b.height = Silverlight.HtmlAttributeEncode( a.height );
-	b.ignoreBrowserVer = Boolean( a.ignoreBrowserVer );
-	b.inplaceInstallPrompt = Boolean( a.inplaceInstallPrompt );
-	var e = a.version.split( "." );
-	b.shortVer = e[0] + "." + e[1];
-	b.version = a.version;
-	a.initParams = i;
-	a.windowless = a.isWindowless;
-	a.maxFramerate = a.framerate;
-
-	for (var d in c)
-		if( c[d] && d != "onLoad" && d != "onError" )
-		{
-			a[d] = c[d];
-			c[d] = null
-		}
-	delete a.width;
-	delete a.height;
-	delete a.id;
-	delete a.onLoad;
-	delete a.onError;
-	delete a.ignoreBrowserVer;
-	delete a.inplaceInstallPrompt;
-	delete a.version;
-	delete a.isWindowless;
-	delete a.framerate;
-	delete a.data;
-	delete a.src;
-
-	if( Silverlight.isInstalled( b.version ) )
-	{
-		if( Silverlight._silverlightCount == 0 )
-			if( window.addEventListener )
-				window.addEventListener( "onunload", Silverlight.__cleanup,
-					false );
-			else
-				window.attachEvent( "onunload", Silverlight.__cleanup );
-		var f = Silverlight._silverlightCount++;
-		a.onLoad = "__slLoad" + f;
-		a.onError = "__slError" + f;
-		window[a.onLoad] = function(a)
-		{
-			if( c.onLoad )
-				c.onLoad( document.getElementById( b.id ), h, a )
-		};
-		window[a.onError] = function(a, b)
-		{
-			if( c.onError )
-				c.onError( a, b );
-			else
-				Silverlight.default_error_handler( a, b )
-		};
-		slPluginHTML = Silverlight.buildHTML( b, a )
-	}
-	else
-		slPluginHTML = Silverlight.buildPromptHTML( b );
-
-	if( b.parentElement )
-		b.parentElement.innerHTML = slPluginHTML;
-	else
-		return slPluginHTML
-};
-
-//***************************************************************
-Silverlight.supportedUserAgent = function()
-{
-	var a = Silverlight.ua,
-		b =
-			a.OS == "Unsupported" || a.Browser == "Unsupported"
-				|| a.OS == "Windows" && a.Browser == "Safari"
-				|| a.OS.indexOf( "Mac" ) >= 0 && a.Browser == "IE";
-	return ! b
-};
-
-//***************************************************************
-Silverlight.buildHTML = function(c, d)
-{
-	var a = [], e, i, g, f, h;
-
-	if( Silverlight.ua.Browser == "Safari" )
-	{
-		a.push( "<embed " );
-		e = "";
-		i = " ";
-		g = '="';
-		f = '"';
-		h = ' type="application/x-silverlight"/>'
-			+ "<iframe style='visibility:hidden;height:0;width:0'/>"
-	}
-	else
-	{
-		a.push( '<object type="application/x-silverlight" data="data:,"' );
-		e = ">";
-		i = ' <param name="';
-		g = '" value="';
-		f = '" />';
-		h = "</object>"
-	}
-	a.push( ' id="' + c.id + '" width="' + c.width + '" height="' + c.height
-		+ '" ' + e );
-
-	for (var b in d)
-		if( d[b] )
-			a.push( i + Silverlight.HtmlAttributeEncode( b ) + g
-				+ Silverlight.HtmlAttributeEncode( d[b] ) + f );
-	a.push( h );
-	return a.join( "" )
-};
-
-//***************************************************************
-Silverlight.default_error_handler = function(e, b)
-{
-	var d, c = b.ErrorType;
-	d = b.ErrorCode;
-	var a = "\nSilverlight error message     \n";
-	a += "ErrorCode: " + d + "\n";
-	a += "ErrorType: " + c + "       \n";
-	a += "Message: " + b.ErrorMessage + "     \n";
-
-	if( c == "ParserError" )
-	{
-		a += "XamlFile: " + b.xamlFile + "     \n";
-		a += "Line: " + b.lineNumber + "     \n";
-		a += "Position: " + b.charPosition + "     \n"
-	}
-	else if( c == "RuntimeError" )
-	{
-		if( b.lineNumber != 0 )
-		{
-			a += "Line: " + b.lineNumber + "     \n";
-			a += "Position: " + b.charPosition + "     \n"
-		}
-		a += "MethodName: " + b.methodName + "     \n"
-	}
-	alert( a )
-};
-
-//***************************************************************
-Silverlight.createObjectEx = function(b)
-{
-	var a = b,
-		c =
-			Silverlight.createObject( a.source, a.parentElement, a.id,
-				a.properties, a.events, a.initParams, a.context );
-
-	if( a.parentElement == null )
-		return c
-};
-
-//***************************************************************
-Silverlight.buildPromptHTML = function(l)
-{
-	var a = null, d = Silverlight.fwlinkRoot, c = Silverlight.ua.OS,
-		b = "92822", e, f = "Get Microsoft Silverlight", m = "0x409";
-
-	if( l.inplaceInstallPrompt )
-	{
-		var n = "98109", i;
-
-		if( Silverlight.available )
-		{
-			e = "96189";
-			i = "96422"
-		}
-		else
-		{
-			e = "96188";
-			i = "96422"
-		}
-		var h = "93481", g = "93483";
-
-		if( c == "Windows" )
-		{
-			b = "92799";
-			h = "92803";
-			g = "92805"
-		}
-		else if( c == "MacIntel" )
-		{
-			b = "92808";
-			h = "92804";
-			g = "92806"
-		}
-		else if( c == "MacPPC" )
-		{
-			b = "92807";
-			h = "92815";
-			g = "92816"
-		}
-		var k =
-			'By clicking <b>"Get Microsoft Silverlight"</b> you accept the<br /><a title="Silverlight License Agreement" href="{2}" target="_top" style="text-decoration: underline; color: #96C5E1"><b>Silverlight license agreement</b></a>',
-			j =
-				'Silverlight updates automatically, <a title="Silverlight Privacy Statement" href="{3}" target="_top" style="text-decoration: underline; color: #96C5E1"><b>learn more</b></a>';
-		a
-			= '<table border="0" cellpadding="0" cellspacing="0" width="206px"><tr><td><img style="display: block; cursor: pointer; border= 0;" title="'
-			+ f + '" alt="' + f
-				+ '" onclick="javascript:Silverlight.followFWLink({0});" src="{1}" /></td></tr><tr><td style="width: 206px; margin: 0px; background: #FFFFFF; color: #C7C7C7; text-align: left; border-left-style: solid; border-right-style: solid; padding-left: 6px; padding-right: 6px; padding-top: 3px; padding-bottom: 0px; border-width: 2px; border-color: #c7c7bd; font-family: Verdana; font-size: 55%">'
-			+ k
-				+ '</td></tr><tr><td><img src="{5}" style="border: 0; display: block" /></td></tr><tr><td style="width: 206px; margin: 0px; background: #D8EFF9; color: #C7C7C7; text-align: left; border-left-style: solid; border-right-style: solid; padding-left: 6px; padding-right: 6px; padding-top: 0px; padding-bottom: 2px; border-width: 2px; border-color: #c7c7bd; font-family: Verdana; font-size: 55%">'
-			+ j
-				+ '</td></tr><tr><td><img alt="" src="{4}" /></td></tr></table>';
-		a = a.replace( "{2}", d + h );
-		a = a.replace( "{3}", d + g );
-		a = a.replace( "{4}", d + i );
-		a = a.replace( "{5}", d + n )
-	}
-	else
-	{
-		if( Silverlight.available )
-			e = "94377";
-		else
-			e = "92801";
-
-		if( c == "Windows" )
-			b = "92800";
-
-		else if( c == "MacIntel" )
-			b = "92812";
-
-		else if( c == "MacPPC" )
-			b = "92811";
-		a
-			= '<div style="display:block; width: 205px; height: 67px;"><img onclick="javascript:Silverlight.followFWLink({0});" style="border:0; cursor:pointer" src="{1}" title="'
-			+ f + '" alt="' + f + '"/></div>'
-	}
-	a = a.replace( "{0}", b );
-	a = a.replace( "{1}", d + e + "&amp;clcid=" + m );
-	return a
-};
-
-//***************************************************************
-Silverlight.__cleanup = function()
-{
-	for (var a = Silverlight._silverlightCount - 1; a >= 0; a--)
-	{
-		window["__slLoad" + a] = null;
-		window["__slError" + a] = null
-	}
-
-	if( window.removeEventListener )
-		window.removeEventListener( "unload", Silverlight.__cleanup, false );
-	else
-		window.detachEvent( "onunload", Silverlight.__cleanup )
-};
-
-//***************************************************************
-Silverlight.followFWLink = function(a)
-{
-	top.location = Silverlight.fwlinkRoot + String( a )
-};
-
-//***************************************************************
-Silverlight.HtmlAttributeEncode = function(c)
-{
-	var a, b = "";
-
-	if( c == null )
-		return null;
-
-	for (var d = 0; d < c.length; d++)
-	{
-		a = c.charCodeAt( d );
-
-		if( a > 96 && a < 123 || a > 64 && a < 91 || a > 43 && a < 58 && a != 47
-			|| a == 95 )
-			b = b + String.fromCharCode( a );
-		else
-			b = b + "&#" + a + ";"
-	}
-	return b
-}
