From f2c6227cb372b0d3f5e4e944a55e53d503f35f7e Mon Sep 17 00:00:00 2001 From: John Firebaugh Date: Tue, 22 Jan 2013 17:35:58 -0500 Subject: [PATCH] Fix build Failing due to a bug in PhantomJS (a.k.a Webkit), see https://github.com/tmcw/happen/issues/5 --- test/lib/happen.js | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/test/lib/happen.js b/test/lib/happen.js index 8777d883a..2f7f5e6cb 100644 --- a/test/lib/happen.js +++ b/test/lib/happen.js @@ -40,6 +40,23 @@ o.keyCode || 0, // in unsigned long keyCodeArg, o.charCode || 0 // in unsigned long charCodeArg); ); + + // Workaround for https://bugs.webkit.org/show_bug.cgi?id=16735 + if (evt.ctrlKey != (o.ctrlKey || 0) || + evt.altKey != (o.altKey || 0) || + evt.shiftKey != (o.shiftKey || 0) || + evt.metaKey != (o.metaKey || 0) || + evt.keyCode != (o.keyCode || 0) || + evt.charCode != (o.charCode || 0)) { + evt = document.createEvent('Event'); + evt.initEvent(o.type, true, true); + evt.ctrlKey = o.ctrlKey || false; + evt.altKey = o.altKey || false; + evt.shiftKey = o.shiftKey || false; + evt.metaKey = o.metaKey || false; + evt.keyCode = o.keyCode || 0; + evt.charCode = o.charCode || 0; + } } } else { evt = document.createEvent('MouseEvents');