var topBarHidden = false;

function hideTopBar() {
	document.getElementById('header').style.display = 'none';
	topBarHidden = true;
	window.addEventListener('mousemove', topBarMousemove, false);
}

function showTopBar() {
	document.getElementById('header').style.display = 'block';
	topBarHidden = false;
	window.removeEventListener('mousemove', topBarMousemove, false);
}

function checkAtTop() {
	if (document.documentElement.scrollTop == 0) {
		if (topBarHidden) showTopBar();
	}
}

function topBarKeydown(e) {
	switch(e.which) {
	case 36:
		if (topBarHidden) showTopBar();
		break;
	case 33:
		if (document.documentElement.scrollTop == 0) break;
		setTimeout('checkAtTop()', 0);
	case 32:
	case 34:
		if (!topBarHidden) hideTopBar();
		break;
	}
}

function topBarMousemove(e) {
	if (topBarHidden) showTopBar();
}

window.addEventListener('keydown', topBarKeydown, false);

// Deactivate event bubbling for forms
function textStopPropagation(e) {
	e.stopPropagation();
}

var forms = document.getElementsByTagName('input');
for (var i = 0; i < forms.length; i++) {
	forms[i].addEventListener('keydown', textStopPropagation, false);
}

forms = document.getElementsByTagName('textarea');
for (var i = 0; i < forms.length; i++) {
	forms[i].addEventListener('keydown', textStopPropagation, false);
}
