Граф коммитов

307 Коммитов

Автор SHA1 Сообщение Дата
Aryeh Gregor 87a5bde3a6 Bug 1310865 - Don't process cloned <input> until all attributes are copied; r=hsivonen
Otherwise, when a value="" attribute with a newline in it is copied, we
will strip any newlines even if type="hidden" is set, because type=""
hasn't yet been copied.  Other bugs are likely too.  This problem was
already solved for the parser, so we can just use that solution for
cloning too.

MozReview-Commit-ID: KqxCnxmxFXp

--HG--
extra : rebase_source : 9a666adad3dbbbaa5e3706747dcf70801b9ef4e8
2016-10-27 17:17:04 +03:00
Jessica Jong e732e68921 Bug 1310076 - Add 'datetime-local' to the list of valid types attributes for <input>. r=smaug 2016-10-24 03:35:00 +02:00
Valentin Gosu db9440de51 Bug 1305204 - (Part 2) Backout bug 1275746 a=backout
MozReview-Commit-ID: H8aCKdJzEbR
2016-10-23 14:24:45 +02:00
Ehsan Akhgari 1978fee9f2 Bug 1310385 - Remove support for UndoManager; r=smaug
There hasn't been any traction on this feature, and we keep
paying the maintenance and code size and memory usage penalty
of having this implementation.

We can revive this from VCS history in the future if we decide
to start working on it again.  In the mean time, it's better
to remove it.
2016-10-17 10:06:11 -04:00
Jessica Jong 19414ca429 Bug 1295403 - Implement the step attribute for <input type=week>. r=smaug 2016-10-07 15:04:54 +08:00
Thomas Wisniewski a8940b87e6 Bug 1305928 - Part 2: Only allow <svg>, <math>, XUL, and HTML elements to requestFullscreen. r=smaug 2016-10-11 12:04:59 -04:00
Jessica Jong b3014cc00b Bug 1288591 - Implement the layout for <input type=time>. r=mconley, r=dholbert, r=smaug 2016-10-06 00:17:00 -04:00
Jessica Jong b0f67cfa5f Bug 1295402 - Implement the min and max attribute for <input type=week>. r=smaug
--HG--
extra : rebase_source : d32e2eb25e54343491278a60ed1561581b5d2b56
2016-09-25 19:33:00 -04:00
Jessica Jong c35a0bf546 Bug 1278186 - Implement valueAsNumber and valueAsDate for <input type=week>. r=smaug,Waldo 2016-09-29 01:08:00 +02:00
Jessica Jong 573304025f Bug 1285460 - Request longer timeout for test_input_typing_sanitization.html. r=smaug 2016-09-25 19:46:00 -04:00
Kate McKinley c57d400961 Bug 1246540 - HSTS Priming Proof of Concept. r=ckerschb, r=mayhemer, r=jld, r=smaug, r=dkeeler, r=jmaher, p=ally
HSTS priming changes the order of mixed-content blocking and HSTS
upgrades, and adds a priming request to check if a mixed-content load is
accesible over HTTPS and the server supports upgrading via the
Strict-Transport-Security header.

Every call site that uses AsyncOpen2 passes through the mixed-content
blocker, and has a LoadInfo. If the mixed-content blocker marks the load as
needing HSTS priming, nsHttpChannel will build and send an HSTS priming
request on the same URI with the scheme upgraded to HTTPS. If the server
allows the upgrade, then channel performs an internal redirect to the HTTPS URI,
otherwise use the result of mixed-content blocker to allow or block the
load.

nsISiteSecurityService adds an optional boolean out parameter to
determine if the HSTS state is already cached for negative assertions.
If the host has been probed within the previous 24 hours, no HSTS
priming check will be sent.

MozReview-Commit-ID: ES1JruCtDdX

--HG--
extra : rebase_source : 2ac6c93c49f2862fc0b9e595eb0598cd1ea4bedf
2016-09-27 11:27:00 -04:00
Jan Beich cb9811b6b4 Bug 1295883 - Chase Linux scroll wheel behavior on Tier3 desktop Unix. r=smaug
MozReview-Commit-ID: 7osYJCwDQev

--HG--
extra : transplant_source : %F8%0CL%3D%C2d%92%B8%8AYd%C5%137h%ED%81Nt%3E
2016-08-17 04:55:36 +00:00
Wes Kocher 04d0da0ae2 Merge m-c to autoland, a=merge 2016-09-16 14:35:31 -07:00
Ralph Giles ac2fb54670 Bug 1300805 - Remove media.webvtt.enabled pref. r=kinetik,smaug
This API has been deployed to release for some time. There isi
no longer value to being able to quickly disable it.

MozReview-Commit-ID: Jj6CyWzP93g

--HG--
extra : rebase_source : 2dc0547229b53865a4f7cfcf7ca417eb3dec0356
2016-09-15 14:10:17 -07:00
Andrea Marchesini 56c54a3930 Bug 1302987 - Rename nsLocation to mozilla::dom::Location, r=smaug
--HG--
rename : dom/base/nsLocation.cpp => dom/base/Location.cpp
rename : dom/base/nsLocation.h => dom/base/Location.h
2016-09-16 09:18:18 +02:00
Jessica Jong c51974390f Bug 1278192 - Implement the value sanitizing algorithm for <input type=week>. r=smaug
--HG--
extra : source : 6ee805904d2d54728be175ddb60466acbb78c242
2016-09-08 15:39:01 -07:00
Stone Shih 16a8810124 Bug 1295719 - input[type=range,number] does not fire 'change' event for some key combinations. r=smaug
--HG--
extra : rebase_source : 89f46401a53dcab3dd3845477acfc7aaf9fdd3cc
2016-08-19 09:19:35 +08:00
Aryeh Gregor 76862dadad Bug 1299453 - Stop using createEvent("DragEvents"/"KeyEvents") internally; r=smaug
They are non-standard aliases for "DragEvent" and "KeyboardEvent" that
are not supported by any other UA, and we would like to drop support.
So first let's stop using them ourselves, so we can use telemetry to see
if any sites are using them.

MozReview-Commit-ID: ICC33ORa2st
2016-08-31 20:38:50 +03:00
Jessica Jong 1b328436b6 Bug 885359 - Support :indeterminate pseudo-class for radio groups. r=smaug 2016-08-24 18:39:00 -04:00
Kevin Chan 4eef729716 Bug 1134307 - Access the title of the loaded page by using ctx.tab2Browser.contentTitle in browser_bug592641.js to avoid CPOW usage. r=mconley 2016-08-26 09:59:00 -04:00
Thomas Wisniewski fc82e10522 Bug 870388 - Support <hr> separators in <menu>. r=mrbkap
--HG--
extra : rebase_source : bde688c5df34e24fac53a765fadd0c9756c9a56c
2016-08-19 19:57:54 -04:00
Aryeh Gregor d384462b47 Bug 1296929 - Match spec for col/colgroup.span, textarea.rows/cols; r=jst
The spec recently changed to match browsers better.  There's currently
not much interop in exact details of how this work.  This brings us in
line with the spec except for the limit of 1000 on the span attribute.

The added textarea failures are spurious, because I'm not updating our
local tests in this commit.  The new tests are submitted upstream at
<https://github.com/w3c/web-platform-tests/pull/3518>.

MozReview-Commit-ID: 1L8aUtF47Qi
2016-08-25 17:23:37 +03:00
Ehsan Akhgari f8deb6c387 Bug 1293570 - Revert parts of bug 1003741 which were added to make selection APIs work on <input type=number>; r=baku
In particular we keep the frame a form control frame so that it gets the
correct CSS box sizing by the layout code.
2016-08-24 10:04:39 -04:00
Dragana Damjanovic 983fd9fa51 Bug 1292522 - Add test for bug 1292522 - the same domain host with different port numbers must be treated as the same domain. r=smaug
--HG--
extra : rebase_source : 2b526d4ed826a5c5f6deb63387c47466831cbbe7
2016-08-16 09:44:00 -04:00
Thomas Wisniewski fe6139c017 Bug 932755 - Add support for input/textarea minLength and tooShort. r=mrbkap
--HG--
extra : rebase_source : 064985cbb241ef8705dcec28f60db9f4caf65ae4
2016-08-17 00:11:24 -04:00
Decky Coss 08a416fd4e Bug 1283915 - Preserve input selection properties after type change. r=smaug
MozReview-Commit-ID: 7xJKc3vIpTY

--HG--
extra : rebase_source : 6fa36a607efb1e8eec1cc8efbb174d622aa0281f
2016-07-27 11:04:53 -04:00
Jessica Jong 5a9b39d967 Bug 1278738 - Add 'week' to the list of valid types attributes for <input>. r=smaug 2016-08-15 23:15:00 -04:00
Stone Shih 0d27a92ceb Bug 1285082 - Check map coordinates with small tolerance to prevent tolerance caused by scaling on Android. r=smaug 2016-08-08 16:43:33 +08:00
Jessica Jong 6f6b9ca3bc Bug 1281769 - Do not throw when getting selectionDirection/selectionStart/selectionEnd on input/textarea. r=smaug 2016-08-08 23:19:00 +02:00
Thomas Wisniewski 30ab766837 Bug 613019 - Track whether the last input/textarea change was done interactively, and enable the commented-out maxLength tracking code. r=mrbkap
--HG--
extra : rebase_source : 59c0986d6184f09f79fcda848de9d822949aa47b
2016-08-06 11:59:08 -04:00
Stone Shih 4f6e8a25cc Bug 1286509 - Range input does not fire ‘change’ event when the range is changed using the keyboard. r=smaug 2016-08-01 10:47:34 +08:00
Decky Coss b69450d2ea Bug 1287655 - place textarea/input cursor at end of text when initialized; r=smaug
MozReview-Commit-ID: 2srGXFmla07

--HG--
extra : transplant_source : %3Cn%D30%86%24%82%90%29%191%9C%8A%EB%0D%5D%E2%20%22%E5
2016-07-21 14:52:49 -04:00
Markus Stange ebb461c874 Bug 1012752 - Snap scrolled area to layer pixels. r=tnikkel
We want the maximum scroll position to be aligned with layer pixels. That way
we don't have to re-rasterize the scrolled contents once scrolling hits the
edge of the scrollable area.

Here's how we determine the maximum scroll position: We get the scroll port
rect, snapped to layer pixels. Then we get the scrolled rect and also snap
that to layer pixels. The maximum scroll position is set to the difference
between right/bottom edges of these rectangles.
Now the scrollable area is computed by adding this maximum scroll position
to the unsnapped scroll port size.
The underlying idea here is: Pretend we have overflow:visible so that the
scrolled contents start at (0, 0) relative to the scroll port and spill over
the scroll port edges. When these contents are rendered, their rendering is
snapped to layer pixels. We want those exact pixels to be accessible by
scrolling.

This way of computing the snapped scrollable area ensures that, if you scroll
to the maximum scroll position, the right/bottom edges of the rendered
scrolled contents line up exactly with the right/bottom edges of the scroll
port. The scrolled contents are neither cut off nor are they moved too far.
(This is something that no other browser engine gets completely right, see the
testcase in bug 1012752.)

There are also a few disadvantages to this solution. We snap to layer pixels,
and the size of a layer pixel can depend on the zoom level, the document
resolution, the current screen's scale factor, and CSS transforms. The snap
origin is the position of the reference frame. So a change to any of these
things can influence the scrollable area and the maximum scroll position.
This patch does not make us adjust the current scroll position in the event
that the maximum scroll position changes such that the current scroll position
would be out of range, unless there's a reflow of the scrolled contents. This
means that we can sometimes render a slightly inconsistent state where the
current scroll position exceeds the maximum scroll position. We can fix this
once it turns out to be a problem; I doubt that it will be a problem because
none of the other browsers seems to prevent this problem either.

The size of the scrollable area is exposed through the DOM properties
scrollWidth and scrollHeight. At the moment, these are integer properties, so
their value is rounded to the nearest CSS pixel. Before this patch, the
returned value would always be within 0.5 CSS pixels of the value that layout
computed for the content's scrollable overflow based on the CSS styles of the
contents.
Now that scrollWidth and scrollHeight also depend on pixel snapping, their
values can deviate by up to one layer pixel from what the page might expect
based on the styles of the contents. This change requires a few changes to
existing tests.
The fact that scrollWidth and scrollHeight can change based on the position of
the scrollable element and the zoom level / resolution may surprise some web
pages. However, this also seems to happen in Edge. Edge seems to always round
scrollWidth and scrollHeight upwards, possibly to their equivalent of layout
device pixels.

MozReview-Commit-ID: 3LFV7Lio4tG

--HG--
extra : rebase_source : 3e4e0b60493397e61283aa1d7fd93d7c197dec29
extra : source : d43c2d5e87f31ff47d7f3ada66c3f5f27cef84a9
2016-08-04 23:51:58 -04:00
Jessica Jong b92c3511ea Bug 1283023 - Implement the step attribute for <input type=month>. r=smaug
--HG--
extra : rebase_source : 730c799687da786279efcd3134777b7208567e9e
2016-08-03 02:54:00 +02:00
David Zbarsky e0691abc04 Bug 824592 part 3. Get rid of nsIDOMElementCSSInlineStyle. r=peterv 2016-08-02 11:05:38 -07:00
Jessica Jong 67751356ee Bug 1289272 - Simplify the computation of step values for input type=date. r=smaug
--HG--
extra : rebase_source : 24bf85cff09e6ace2806778e9e5409756a598e57
2016-07-28 02:44:00 -04:00
Carsten "Tomcat" Book 4a64baa9d4 merge mozilla-inbound to mozilla-central a=merge 2016-07-21 16:24:36 +02:00
Olli Pettay 2c576a46e2 Bug 1287321 - Don't fire input event on type=range when value hasn't changed. r=baku
--HG--
extra : rebase_source : 561195bb4aeb4883a368464b0b6e8d3d53f3873f
2016-07-20 21:06:57 +03:00
Markus Stange 6bb3620330 Back out bug 1012752 for causing bug 1285532 and bug 1286674.
MozReview-Commit-ID: DYZ3D4yL1eZ

--HG--
extra : source : b98df554a6f0aa154275d363163ec618189503ed
2016-07-16 17:10:08 -04:00
Jessica Jong 17b5002551 Bug 1283022 - Implement the min and max attribute for <input type=month>. r=smaug 2016-07-15 00:07:00 +02:00
Carsten "Tomcat" Book a0992595d6 merge mozilla-inbound to mozilla-central a=merge 2016-07-17 10:08:08 +02:00
Carsten "Tomcat" Book 4d078ded39 Backed out changeset b98df554a6f0 (bug 1012752) 2016-07-17 09:20:26 +02:00
Markus Stange 2adb931c36 Back out bug 1012752 for causing bug 1285532 and bug 1286674.
MozReview-Commit-ID: DYZ3D4yL1eZ

--HG--
extra : histedit_source : c6fc9d036cbca0589e74587e17876f9417c3f2ad
2016-07-16 17:10:08 -04:00
Stone Shih 9a816de486 Bug 1261674 - Handle wheel event when mouse cursor is hovered on a focused range input as increasing/decreasing it's value. r=smaug
--HG--
extra : rebase_source : 1e801d569b3c3b49f3c7f1fe409b929fa27de17e
2016-07-05 17:48:19 +08:00
Alexandre Lissy 6798f02654 Bug 1286530 - Clean AvailableIn, CheckAnyPermissions and CheckAllPermissions from WebIDL r=bz,fabrice
MozReview-Commit-ID: 6EQfBM09xUE

--HG--
rename : dom/contacts/tests/test_contacts_cache.xul => dom/contacts/tests/test_contacts_a_cache.xul
rename : dom/contacts/tests/test_contacts_shutdown.xul => dom/contacts/tests/test_contacts_a_shutdown.xul
rename : dom/contacts/tests/test_contacts_upgrade.xul => dom/contacts/tests/test_contacts_a_upgrade.xul
rename : dom/mobilemessage/tests/mochitest/mochitest.ini => dom/mobilemessage/tests/mochitest/chrome.ini
extra : rebase_source : 5f708f2a927fafff66626367ef07080785ba9f55
2016-04-21 15:48:59 +02:00
Valentin Gosu ef5a976694 Bug 1275746 - Fix tests that assume a HTTP url without a hostname is valid r=jrgm,MattN,jdm,gijs,smaug
MozReview-Commit-ID: DzRenakrcAG
2016-07-13 15:19:34 +03:00
Thomas Wisniewski 5bc757cfaa Bug 1264157 - Do not match disabled/readonly inputs with :in-range and :out-of-range. r=bz
--HG--
rename : dom/html/test/test_bug535043.html => dom/html/test/test_bug1264157.html
2016-07-10 14:37:00 -04:00
Jessica Jong bc0a1bc5f8 Bug 1278185 - Implement valueAsNumber and valueAsDate for <input type=month>. r=smaug 2016-07-11 01:00:00 +02:00
Markus Stange f8e66e0cdf Bug 1012752 - Snap scrolled area to layer pixels. r=tnikkel
We want the maximum scroll position to be aligned with layer pixels. That way
we don't have to re-rasterize the scrolled contents once scrolling hits the
edge of the scrollable area.

Here's how we determine the maximum scroll position: We get the scroll port
rect, snapped to layer pixels. Then we get the scrolled rect and also snap
that to layer pixels. The maximum scroll position is set to the difference
between right/bottom edges of these rectangles.
Now the scrollable area is computed by adding this maximum scroll position
to the unsnapped scroll port size.
The underlying idea here is: Pretend we have overflow:visible so that the
scrolled contents start at (0, 0) relative to the scroll port and spill over
the scroll port edges. When these contents are rendered, their rendering is
snapped to layer pixels. We want those exact pixels to be accessible by
scrolling.

This way of computing the snapped scrollable area ensures that, if you scroll
to the maximum scroll position, the right/bottom edges of the rendered
scrolled contents line up exactly with the right/bottom edges of the scroll
port. The scrolled contents are neither cut off nor are they moved too far.
(This is something that no other browser engine gets completely right, see the
testcase in bug 1012752.)

There are also a few disadvantages to this solution. We snap to layer pixels,
and the size of a layer pixel can depend on the zoom level, the document
resolution, the current screen's scale factor, and CSS transforms. The snap
origin is the position of the reference frame. So a change to any of these
things can influence the scrollable area and the maximum scroll position.
This patch does not make us adjust the current scroll position in the event
that the maximum scroll position changes such that the current scroll position
would be out of range, unless there's a reflow of the scrolled contents. This
means that we can sometimes render a slightly inconsistent state where the
current scroll position exceeds the maximum scroll position. We can fix this
once it turns out to be a problem; I doubt that it will be a problem because
none of the other browsers seems to prevent this problem either.

The size of the scrollable area is exposed through the DOM properties
scrollWidth and scrollHeight. At the moment, these are integer properties, so
their value is rounded to the nearest CSS pixel. Before this patch, the
returned value would always be within 0.5 CSS pixels of the value that layout
computed for the content's scrollable overflow based on the CSS styles of the
contents.
Now that scrollWidth and scrollHeight also depend on pixel snapping, their
values can deviate by up to one layer pixel from what the page might expect
based on the styles of the contents. This change requires a few changes to
existing tests.
The fact that scrollWidth and scrollHeight can change based on the position of
the scrollable element and the zoom level / resolution may surprise some web
pages. However, this also seems to happen in Edge. Edge seems to always round
scrollWidth and scrollHeight upwards, possibly to their equivalent of layout
device pixels.

MozReview-Commit-ID: 3LFV7Lio4tG

--HG--
extra : histedit_source : 5390eeebfe9a2791d9ac8e91ec1dfec4ec7b4118
2016-06-02 15:41:51 -04:00
Jessica Jong 2e7c66c5e9 Bug 1278191 - Implement the value sanitizing algorithm for <input type=month>. r=smaug
--HG--
extra : rebase_source : f2e424614490db76d8899c7f1583fd9fc1a2f53c
2016-07-06 01:59:00 +02:00