From cac5c5adc73f3b0d213d564092d8636a5a358a73 Mon Sep 17 00:00:00 2001 From: janekptacijarabaci Date: Fri, 30 Mar 2018 12:17:17 +0200 Subject: [PATCH] moebius#92: HTML - input - datetime + native in moebius: Bug 1317600: https://bugzilla.mozilla.org/show_bug.cgi?id=1317600 A note - not implemented: Bug 1282768: https://bugzilla.mozilla.org/show_bug.cgi?id=1282768 *.css: filter: url("chrome://global/skin/filters.svg#fill");, fill: Bug 1283385: https://bugzilla.mozilla.org/show_bug.cgi?id=1283385 Bug 1323109: https://bugzilla.mozilla.org/show_bug.cgi?id=1323109 Bug 1314544: https://bugzilla.mozilla.org/show_bug.cgi?id=1314544 Bug 1286182: https://bugzilla.mozilla.org/show_bug.cgi?id=1286182 Bug 1325922: https://bugzilla.mozilla.org/show_bug.cgi?id=1325922 A note - not implemented: Bug 1282768: https://bugzilla.mozilla.org/show_bug.cgi?id=1282768 *.css: filter: url("chrome://global/skin/filters.svg#fill");, fill: Bug 1320225: https://bugzilla.mozilla.org/show_bug.cgi?id=1320225 Bug 1341190: https://bugzilla.mozilla.org/show_bug.cgi?id=1341190 --- browser/base/content/browser.css | 2 +- browser/base/content/browser.xul | 4 +- dom/html/HTMLInputElement.cpp | 185 ++++++++++++--- dom/html/HTMLInputElement.h | 66 +++++- dom/html/test/forms/mochitest.ini | 2 + .../forms/test_input_date_key_events.html | 8 +- ...st_input_datetime_input_change_events.html | 88 +++++++ .../forms/input/datetime/reftest.list | 11 + .../time-content-left-aligned-ref.html | 9 + .../datetime/time-content-left-aligned.html | 9 + .../time-reset-button-right-aligned-ref.html | 9 + .../time-reset-button-right-aligned.html | 10 + .../input/datetime/time-small-height-ref.html | 18 ++ .../input/datetime/time-small-height.html | 19 ++ .../datetime/time-small-width-height-ref.html | 18 ++ .../datetime/time-small-width-height.html | 19 ++ .../input/datetime/time-small-width-ref.html | 19 ++ .../input/datetime/time-small-width.html | 20 ++ layout/style/res/forms.css | 5 + toolkit/content/tests/browser/browser.ini | 1 + .../browser/browser_datetime_datepicker.js | 222 ++++++++++++++++++ toolkit/content/tests/browser/head.js | 85 +++++++ toolkit/content/widgets/calendar.js | 22 +- toolkit/content/widgets/datekeeper.js | 171 ++++++++------ toolkit/content/widgets/datepicker.js | 94 ++++---- toolkit/content/widgets/datetimebox.css | 10 +- toolkit/content/widgets/datetimebox.xml | 156 ++++++++++-- toolkit/content/widgets/datetimepicker.xml | 6 +- toolkit/content/widgets/datetimepopup.xml | 101 +++++++- toolkit/content/widgets/spinner.js | 4 +- .../en-US/chrome/global/datetimebox.dtd | 9 + toolkit/locales/jar.mn | 1 + toolkit/modules/DateTimePickerHelper.jsm | 22 +- .../themes/shared/datetimeinputpickers.css | 90 ++++--- 34 files changed, 1267 insertions(+), 248 deletions(-) create mode 100644 dom/html/test/forms/test_input_datetime_input_change_events.html create mode 100644 layout/reftests/forms/input/datetime/time-content-left-aligned-ref.html create mode 100644 layout/reftests/forms/input/datetime/time-content-left-aligned.html create mode 100644 layout/reftests/forms/input/datetime/time-reset-button-right-aligned-ref.html create mode 100644 layout/reftests/forms/input/datetime/time-reset-button-right-aligned.html create mode 100644 layout/reftests/forms/input/datetime/time-small-height-ref.html create mode 100644 layout/reftests/forms/input/datetime/time-small-height.html create mode 100644 layout/reftests/forms/input/datetime/time-small-width-height-ref.html create mode 100644 layout/reftests/forms/input/datetime/time-small-width-height.html create mode 100644 layout/reftests/forms/input/datetime/time-small-width-ref.html create mode 100644 layout/reftests/forms/input/datetime/time-small-width.html create mode 100644 toolkit/content/tests/browser/browser_datetime_datepicker.js create mode 100644 toolkit/locales/en-US/chrome/global/datetimebox.dtd diff --git a/browser/base/content/browser.css b/browser/base/content/browser.css index 7557d15a15..f03f21c3f7 100644 --- a/browser/base/content/browser.css +++ b/browser/base/content/browser.css @@ -557,7 +557,7 @@ toolbar:not(#TabsToolbar) > #personal-bookmarks { transition: none; } -#DateTimePickerPanel { +#DateTimePickerPanel[active="true"] { -moz-binding: url("chrome://global/content/bindings/datetimepopup.xml#datetime-popup"); } diff --git a/browser/base/content/browser.xul b/browser/base/content/browser.xul index 9a4fa0fd52..e8567eb5c2 100644 --- a/browser/base/content/browser.xul +++ b/browser/base/content/browser.xul @@ -160,8 +160,10 @@ hidden="true" orient="vertical" noautofocus="true" + noautohide="true" consumeoutsideclicks="false" - level="parent"> + level="parent" + tabspecific="true">