From: Andrzej Popowski Date: Tue, 10 Nov 2015 13:25:08 +0000 (+0100) Subject: [Dialogs] - handling Back button in dialogs X-Git-Tag: submit/tizen/20151221.111205^2~42^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=14460feab75d61b04e7c792ae23ef99011fe5ac4;p=platform%2Fcore%2Fapi%2Fcordova-plugins.git [Dialogs] - handling Back button in dialogs Change-Id: I06f404cef5bf6db2d756c1cf99dd16b3f362deff Signed-off-by: Andrzej Popowski --- diff --git a/src/dialog/cordova_dialog_api.js b/src/dialog/cordova_dialog_api.js index 0de4429..eb2730f 100755 --- a/src/dialog/cordova_dialog_api.js +++ b/src/dialog/cordova_dialog_api.js @@ -61,6 +61,7 @@ var popup = (function () { var overlay; var popup; var dismissCallback; + var tizenHwKeyListener = null; function isPopupVisible() { if (box) { @@ -70,6 +71,15 @@ var popup = (function () { } } + function tizenHwKeyFunc(evt) { + if (evt.keyName === "back") { + evt.stopImmediatePropagation(); + if (dismissCallback) { + dismissCallback(); + } + } + } + function showPopup() { box.style.display = 'block'; } @@ -84,6 +94,12 @@ var popup = (function () { if (prompt) { text = d.getElementById(inputId).value; } + + if (tizenHwKeyListener) { + window.removeEventListener('tizenhwkey', tizenHwKeyListener, true); + tizenHwKeyListener = null; + } + hidePopup(); callback(id, text); } @@ -275,6 +291,11 @@ var popup = (function () { e.addEventListener('click', createCloseCallback(callback, i + 1, options.prompt), false); } + if (!tizenHwKeyListener) { + tizenHwKeyListener = tizenHwKeyFunc; + window.addEventListener('tizenhwkey', tizenHwKeyListener, true); + } + // show popup showPopup(); }