<!DOCTYPE html>
<html>
	<head>
		<title>Drag and drop with deactivate with Alt+Tab over Flash</title>
		<style type="text/css">
div {
	width: 100px;
	height: 100px;
	background: fuchsia;
}
object {
	width: 400px;
	height: 400px;
	border: 5px solid black;
}
		</style>
		<script type="text/javascript">
window.onload = function () {
	document.getElementsByTagName('div')[0].ondragstart = function (e) {
		e.dataTransfer.effectAllowed = 'copy';
		e.dataTransfer.setData('text','dummy text');
	};
};
		</script>
	</head>
	<body>
		<p><strong>Note:</strong> Mac has no no-drop cursor.</p>
		<noscript><p>Enable JavaScript and reload</p></noscript>
		<ol>
			<li>Ensure at least one other program is running, with its window maximised.</li>
			<li>Drag the pink square over the blue square. The mouse cursor should be the no-drop cursor, or the platform's drop-allowed cursor.</li>
			<li>Without releasing the mouse button, use Alt+Tab (or your system's equivalent) to switch to the other program, then back to this one.</li>
			<li>The mouse cursor should be the same cursor as in step 2.</li>
			<li>Move the mouse outside the black square. The drag placeholder should follow the mouse (reappearing if it disappeared in step 2).</li>
			<li>Release the drag. The drag placeholder should disappear, and the cursor should revert to the default mouse cursor.</li>
		</ol>
		<div draggable="true"></div>
		<script type="text/javascript">
var plugincode = '<object data="dragndropleavedeactivate.swf" type="application/x-shockwave-flash">Flash plugin is required for this test.</object>';
		</script>
		<script type="text/javascript" src="click-to-activate.js"></script>
	</body>
</html>