<!DOCTYPE html>
<html>
	<head>
		<title>Drag and drop with Alt+Tab over windowless 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="dragndrop.swf" type="application/x-shockwave-flash"><param name="wmode" value="opaque">Flash plugin is required for this test.</object>';
		</script>
		<script type="text/javascript" src="click-to-activate.js"></script>
	</body>
</html>