summaryrefslogtreecommitdiffstats
path: root/mobile/android/chrome/content/InputWidgetHelper.js
diff options
context:
space:
mode:
Diffstat (limited to 'mobile/android/chrome/content/InputWidgetHelper.js')
-rw-r--r--mobile/android/chrome/content/InputWidgetHelper.js98
1 files changed, 0 insertions, 98 deletions
diff --git a/mobile/android/chrome/content/InputWidgetHelper.js b/mobile/android/chrome/content/InputWidgetHelper.js
deleted file mode 100644
index cf66a263e..000000000
--- a/mobile/android/chrome/content/InputWidgetHelper.js
+++ /dev/null
@@ -1,98 +0,0 @@
-/* This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this file,
- * You can obtain one at http://mozilla.org/MPL/2.0/. */
-"use strict";
-
-var InputWidgetHelper = {
- _uiBusy: false,
-
- handleEvent: function(aEvent) {
- this.handleClick(aEvent.target);
- },
-
- handleClick: function(aTarget) {
- // if we're busy looking at a InputWidget we want to eat any clicks that
- // come to us, but not to process them
- if (this._uiBusy || !this.hasInputWidget(aTarget) || this._isDisabledElement(aTarget))
- return;
-
- this._uiBusy = true;
- this.show(aTarget);
- this._uiBusy = false;
- },
-
- show: function(aElement) {
- let type = aElement.getAttribute('type');
- let p = new Prompt({
- window: aElement.ownerDocument.defaultView,
- title: Strings.browser.GetStringFromName("inputWidgetHelper." + aElement.getAttribute('type')),
- buttons: [
- Strings.browser.GetStringFromName("inputWidgetHelper.set"),
- Strings.browser.GetStringFromName("inputWidgetHelper.clear"),
- Strings.browser.GetStringFromName("inputWidgetHelper.cancel")
- ],
- }).addDatePicker({
- value: aElement.value,
- type: type,
- min: aElement.min,
- max: aElement.max,
- }).show((function(data) {
- let changed = false;
- if (data.button == -1) {
- // This type is not supported with this android version.
- return;
- }
- if (data.button == 1) {
- // The user cleared the value.
- if (aElement.value != "") {
- aElement.value = "";
- changed = true;
- }
- } else if (data.button == 0) {
- // Commit the new value.
- if (aElement.value != data[type]) {
- aElement.value = data[type + "0"];
- changed = true;
- }
- }
- // Else the user canceled the input.
-
- if (changed)
- this.fireOnChange(aElement);
- }).bind(this));
- },
-
- hasInputWidget: function(aElement) {
- if (!(aElement instanceof HTMLInputElement))
- return false;
-
- let type = aElement.getAttribute('type');
- if (type == "date" || type == "datetime" || type == "datetime-local" ||
- type == "week" || type == "month" || type == "time") {
- return true;
- }
-
- return false;
- },
-
- fireOnChange: function(aElement) {
- let evt = aElement.ownerDocument.createEvent("Events");
- evt.initEvent("change", true, true, aElement.defaultView, 0,
- false, false,
- false, false, null);
- setTimeout(function() {
- aElement.dispatchEvent(evt);
- }, 0);
- },
-
- _isDisabledElement : function(aElement) {
- let currentElement = aElement;
- while (currentElement) {
- if (currentElement.disabled)
- return true;
-
- currentElement = currentElement.parentElement;
- }
- return false;
- }
-};