diff -r 000000000000 -r 6474c204b198 dom/inputmethod/mochitest/inputmethod_common.js --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/dom/inputmethod/mochitest/inputmethod_common.js Wed Dec 31 06:09:35 2014 +0100 @@ -0,0 +1,35 @@ +function inputmethod_setup(callback) { + SimpleTest.waitForExplicitFinish(); + SimpleTest.requestCompleteLog(); + let appInfo = SpecialPowers.Cc['@mozilla.org/xre/app-info;1'] + .getService(SpecialPowers.Ci.nsIXULAppInfo); + if (appInfo.name != 'B2G') { + SpecialPowers.Cu.import("resource://gre/modules/Keyboard.jsm", this); + } + + let permissions = []; + ['input-manage', 'browser'].forEach(function(name) { + permissions.push({ + type: name, + allow: true, + context: document + }); + }); + + SpecialPowers.pushPermissions(permissions, function() { + let prefs = [ + ['dom.mozBrowserFramesEnabled', true], + // Enable navigator.mozInputMethod. + ['dom.mozInputMethod.enabled', true], + // Bypass the permission check for mozInputMethod API. + ['dom.mozInputMethod.testing', true] + ]; + SpecialPowers.pushPrefEnv({set: prefs}, function() { + SimpleTest.waitForFocus(callback); + }); + }); +} + +function inputmethod_cleanup() { + SimpleTest.finish(); +}