60*5 || p8_layout_frames == 60*8 )
			update_hash = p8_layout_frames;

		if (!is_fullscreen) // fullscreen: update every frame for safety. should be cheap!
		if (!p8_touch_detected) // mobile: update every frame because nothing can be trusted
		if (p8_update_layout_hash == update_hash)
		{
			//console.log("p8_update_layout(): skipping");
			requestAnimationFrame(p8_update_layout);
			return;
		}
		p8_update_layout_hash = update_hash;

		// record this for returning to original size after fullscreen pushes 