Commit Graph

625494 Commits

Author SHA1 Message Date
Valentin Gosu
66d5164c37 Bug 1502097 - (Part 2) Define IDN blocklist as ranges of characters [ {firstChar, lastChar}* ] r=jfkthame,dragana
* Changes the format of the blocklist from a list of characters to a list of
  character ranges. Binary search still works, and it is easier to include
  large ranges of characters in the blocklist.
* Moves logic for handling the blocklist to IDNBlocklistUtils.h/.cpp
* Changes NS_EscapeURL to take a function that determines if a character
  is blocked. This way the type of the array doesn't matter.

Differential Revision: https://phabricator.services.mozilla.com/D12210

--HG--
extra : moz-landing-system : lando
2018-11-24 12:04:34 +00:00
Valentin Gosu
5f1a383a19 Bug 1502097 - (Part 1) Move pref network.IDN.blacklist_chars to separate hardcoded file IDNCharacterBlocklist.inc r=jfkthame,dragana
* Moves the value of the pref and also the fallback definition in nsTextToSubURI.cpp to a separate file.
* The file has better formatting, so we may follow its history more easily. Each range of consecutive values is defined on a separate line.
* Renames `blacklist` to `blocklist` for pref and variable names (for this individual pref. network.IDN.whitelist.* needs to be handled in a separate bug)
* Changes nsIDNService::mIDNBlocklist from being an nsString to sorted nsTArray<char16> and uses mozilla::BinarySearch() to check for characters.

Differential Revision: https://phabricator.services.mozilla.com/D12209

--HG--
extra : moz-landing-system : lando
2018-11-23 22:40:29 +00:00
Michael Kohler
ce5de11037 Bug 1509411 - Remove the browser.contentblocking.(trackingprotection|rejecttrackers).ui.enabled prefs r=johannh
Differential Revision: https://phabricator.services.mozilla.com/D12819

--HG--
extra : moz-landing-system : lando
2018-11-26 12:57:42 +00:00
Jan de Mooij
fb6793b22d Bug 1506968 - Fix an invalid assert in IonBuilder::improveThisTypesForCall. r=nbp
Differential Revision: https://phabricator.services.mozilla.com/D12638

--HG--
extra : moz-landing-system : lando
2018-11-26 11:03:41 +00:00
Ola Gasidlo
6bd455d006 Bug 1509301. Adding contact info to README.md r=ladybenko
Differential Revision: https://phabricator.services.mozilla.com/D12894

--HG--
extra : moz-landing-system : lando
2018-11-26 12:03:45 +00:00
Dão Gottwald
9880945252 Bug 1509651 - Stop flushing style for knowing the UI direction. r=florian
Differential Revision: https://phabricator.services.mozilla.com/D12827

--HG--
extra : moz-landing-system : lando
2018-11-26 11:59:04 +00:00
Dão Gottwald
71cf7e0ea1 Bug 1509610 - Set default value for optional openParams parameter. r=Standard8
Differential Revision: https://phabricator.services.mozilla.com/D12812

--HG--
extra : moz-landing-system : lando
2018-11-26 10:58:54 +00:00
Dão Gottwald
4f21425ae7 Bug 1492810 - Display favicons in UrlbarView results. r=mak
Differential Revision: https://phabricator.services.mozilla.com/D12811

--HG--
extra : moz-landing-system : lando
2018-11-26 10:23:50 +00:00
Jan de Mooij
216c8ec18f Bug 1509537 - Simplify JSOP_INITHOMEOBJECT, emit JSOP_DUPAT to put the home object on top of the stack. r=arai
Differential Revision: https://phabricator.services.mozilla.com/D12777

--HG--
extra : moz-landing-system : lando
2018-11-26 04:44:31 +00:00
Csoregi Natalia
45997675d2 Merge mozilla-central to autoland. CLOSED TREE 2018-11-26 11:48:50 +02:00
Csoregi Natalia
d35199ef15 Merge inbound to mozilla-central. a=merge 2018-11-26 11:47:15 +02:00
Emilio Cobos Álvarez
9ed36d7ba6 Bug 1506547 - Align user-select behavior more with other UAs. r=mats
There's a few subtle behavior changes here, which I'll try to break down in the
commit message.

The biggest one is the EditableDescendantCount stuff going away. This
was added in bug 1181130, to prevent clicking on the non-editable div from
selecting the editable div inside. This is problematic for multiple reasons:

 * First, I don't think non-editable regions of an editable element should
   be user-select: all.

 * Second, it just doesn't work in Shadow DOM (the editable descendant count is
   not kept up-to-date when not in the uncomposed doc), so nested
   contenteditables behave differently inside vs. outside a Shadow Tree.

 * Third, I think it's user hostile to just entirely disable selection if you
   have a contenteditable descendant as a child of a user-select: all thing.

   WebKit behaves like this patch in the following test-case (though not Blink):

     https://crisal.io/tmp/user-select-all-contenteditable-descendant.html

   Edge doesn't seem to support user-select: all at all (no pun intended).

   But we don't allow to select anything at all which looks wrong.

 * Fourth, it's not tested at all (which explains how we broke it in Shadow DOM
   and not even notice...).

In any case I've verified that this doesn't regress the editor from that bug. If
this regresses anything we can fix it as outlined in the first bullet point
above, which should also make us more compatible with other UAs in that
test-case.

The other change is `all` not overriding everything else. So, something like:

  <div style="-webkit-user-select: all">All <div style="-webkit-user-select: none">None</div></div>

Totally ignores the -webkit-user-select: none declaration in Firefox before this
change. This doesn't match any other UA nor the spec, and this patch aligns us
with WebKit / Blink.

This in turn makes us not need -moz-text anymore, whose only purpose was to
avoid this.

This also fixes a variety of bugs uncovered by the previous changes, like the
SetIgnoreUserModify(false) call in editor being completely useless, since
presShell->SetCaretEnabled ended in nsCaret::SetVisible, which overrode it.

This in turn uncovered even more bugs, from bugs in the caret painting code,
like not checking -moz-user-modify on the right frame if you're the last frame
of a line, to even funnier bits where before this patch you show the caret but
can't write at all...

In any case, the new setup I came up with is that when you're editing (the
selection is focused on an editable node) moving the caret forces it to end up
in an editable node, thus jumping over non-editable ones.

This has the nice effect of not completely disabling selection of
-moz-user-select: all elements that have editable descendants (which was a very
ad-hoc hack for bug 1181130, and somewhat broken per the above), and also
not needing the -moz-user-select: all for non-editable bits in contenteditable.css
at all.

This also fixes issues with br-skipping like not being able to insert content in
the following test-case:

  <div contenteditable="true"><span contenteditable="false">xyz </span><br>editable</div>

If you start moving to the left from the second line, for example.

I think this yields way better behavior in all the relevant test-cases from bug
1181130 / bug 1109968 / bug 1132768, shouldn't cause any regression, and the
complexity is significantly reduced in some places.

There's still some other broken bits that this patch doesn't fix, but I'll file
follow-ups for those.

Differential Revision: https://phabricator.services.mozilla.com/D12687

--HG--
extra : moz-landing-system : lando
2018-11-26 09:21:37 +00:00
sotaro
8fb8522b22 Bug 1490117 - Rollback WrEpoch if TransactionBuilder does not have ResourceUpdates in RecvEmptyTransaction() r=mattwoodrow 2018-11-26 16:08:49 +09:00
Masayuki Nakano
d9b54ef848 Bug 1505147 - nsWindow::OnKeyPressEvent() shouldn't dispatch eKeyDown event when IMContextWrapper::OnKeyEvent() has already dispatched it for the event r=m_kato
Currently, IMContextWrapper::OnKeyEvent() assumes that IME won't synthesize
keyboard event asynchronously again in some cases.  For example, one of the
cases is that user inputs text with a dead key sequence.  However, IME may
synthesize key event asynchronously only in a few cases even in a dead key
sequence.  Unfortunately, for not losing a chance to dispatch eKeyDown/eKeyUp
event, we need to keep dispatching eKeyDown or eKeyUp event when we receive
original event in dead key sequence. However, according to this bug, we need to
stop dispatching eKeyDown and eKeyUp events when we receive unexpected
async synthesized key event.

If IMContextWrapper::OnKeyEvent() needs to return whether it (has already)
dispatched an eKeyDown or eKeyUp and whether it was consumed, then,
nsWindow can stop dispatching redundant eKeyDown and eKeyUp events.

So, this patch makes IMContextWrapper::OnKeyEvent() return
KeyHandlingState enum class instead of just a bool value to notify the caller
of detail of the event status.  And also makes each caller of nsWindow not
dispatch eKeyDown nor eKeyUp event when it returns
KeyHandlingState::eNotHandledButDispatched or
KeyHandlingState::eNotHandledButConsumed.

Differential Revision: https://phabricator.services.mozilla.com/D12517

--HG--
extra : moz-landing-system : lando
2018-11-26 03:26:39 +00:00
Julian Descottes
0c3ccdabad Bug 1507708 - Add default values for aboutdebugging wifi and network features;r=ladybenko
Differential Revision: https://phabricator.services.mozilla.com/D12444

--HG--
extra : moz-landing-system : lando
2018-11-23 16:51:12 +00:00
Marco Zehe
4ae01a5d49 Bug 1380451 - create HTML table caption accessible unconditionally, r=Jamie
Creates the HTML Caption accessible from the markup map, but only if it's the first caption. Other caption elements are ignored as before.

This also creates caption accessibles for those captions that have been collapsed to zero height and width via CSS.

Differential Revision: https://phabricator.services.mozilla.com/D12756

--HG--
extra : moz-landing-system : lando
2018-11-25 23:39:52 +00:00
Masayuki Nakano
8cd4eff52f Bug 1497746 - part 6: Add static_assert for preventing TextEditor to grow up again r=m_kato
TextEditor instance is created per <input> element which has text editor and
<textarea> element.  Therefore, we should keep TextEditor slim as far as
possible.

Currently, TextEditor class size is 400 bytes on Win64.  So, we should keep
512 bytes border.

Differential Revision: https://phabricator.services.mozilla.com/D12404

--HG--
extra : moz-landing-system : lando
2018-11-26 06:33:28 +00:00
Masayuki Nakano
674c63397e Bug 1497746 - part 5: Make EditorBase not reserve array for its listeners unless listeners are important r=m_kato
A lot of listeners are now notified with RefPtr for concrete classes.
Therefore, we can reduce size of arrays to listeners without damage for
the performance.

Differential Revision: https://phabricator.services.mozilla.com/D12403

--HG--
extra : moz-landing-system : lando
2018-11-26 06:32:34 +00:00
Masayuki Nakano
b376e84323 Bug 1497746 - part 4: Move EditorBase::mRangeUpdater to AutoEditActionDataSetter r=m_kato
Similar to EditorBase::mSavedSel, we can move EditorBase::mRangeUpdater too
because of it's referred only when there is AutoEditActionDataSetter instance
so that it also does not need to be in the cycle collection.

And now, it can be marked as MOZ_STACK_CLASS and remove cycle collection
support.

Differential Revision: https://phabricator.services.mozilla.com/D12402

--HG--
extra : moz-landing-system : lando
2018-11-26 06:31:56 +00:00
Masayuki Nakano
692bb4e545 Bug 1497746 - part 3: Move EditorBase::mSavedSel into AutoEditActionDataSetter r=m_kato
EditorBase::mSavedSel is used only by EditorBase methods which are called only
by AutoSelectionRestorer.  Additionally, AutoSelectionRestorer requires
AutoEditActionDataSetter instance.  So, we don't need to keep create for
editor instance anymore.  And also we don't need to keep it in the cycle
collection.

Note that SelectionState class is also used by PlaceholderTransaction.
Therefore, we cannot make it MOZ_STACK_CLASS.

Differential Revision: https://phabricator.services.mozilla.com/D12401

--HG--
extra : moz-landing-system : lando
2018-11-26 06:31:13 +00:00
Masayuki Nakano
6daceee1f1 Bug 1497746 - part 2: Move EditorBase::mDirection to EditorBase::AutoEditActionDataSetter r=m_kato
EditorBase::mDirection is set and clear only when
EditorBase::AutoEditActionDataSetter::SetTopLevelEditSubAction().  So, the
direction is related to the top level edit sub action, and we can move it
into AutoEditActionDataSetter.

Note that except EditSubAction::eDeleteSelectedContent, the relation between
sub-action and direction is fixed so that this patch checks the relation with
MOZ_ASSERT.  If we could replace EditSubAction::eDeleteSelectedContent with
information of direction, we'd remove the new member of
AutoEditActionDataSetter, though.

Differential Revision: https://phabricator.services.mozilla.com/D12400

--HG--
extra : moz-landing-system : lando
2018-11-26 06:30:29 +00:00
Masayuki Nakano
49181b7721 Bug 1497746 - part 1: Move EditorBase::mTopLevelEditSubAction to EditorBase::AutoEditActionDataSetter r=m_kato
EditorBase::mTopLevelEditSubAction is set only by
EditorBase::OnStartToHandleTopLevelEditSubAction() and
EditorBase::OnEndToHandleTopLevelEditSubAction() and they are called only by
AutoTopLevelEditSubActionNotifier().

So, this is used only in stack when a public method of editor is called.
Therefore, we can move it into EditorBase::AutoEditActionDataSetter.  Then,
we can reduce heap allocation for editor instances.

Differential Revision: https://phabricator.services.mozilla.com/D12399

--HG--
extra : moz-landing-system : lando
2018-11-26 03:53:29 +00:00
byron jones
cd4fa62854 Bug 1507051 - replace libyuv's README_MOZILLA with moz.yaml; r=jesup
Replace README_MOZILLA with moz.yaml, various fixups for update.py, and create
a missing patch file from Bug 1491848.

Differential Revision: https://phabricator.services.mozilla.com/D11891

--HG--
extra : moz-landing-system : lando
2018-11-23 13:00:07 +00:00
Matt Woodrow
d7464df528 Bug 1509227 - Cache selection state with RDL. r=miko
MozReview-Commit-ID: CmMDBlYzHyN

Differential Revision: https://phabricator.services.mozilla.com/D12722

--HG--
extra : moz-landing-system : lando
2018-11-25 22:58:14 +00:00
Matt Woodrow
43bc692c89 Bug 1509226 - Avoid allocations to serialize clips. r=jrmuizel
MozReview-Commit-ID: CetmS5cZCMP

Differential Revision: https://phabricator.services.mozilla.com/D12721

--HG--
extra : moz-landing-system : lando
2018-11-26 02:32:15 +00:00
Matt Woodrow
fab384fd5f Bug 1420628 - Avoid allocations for each text display item. r=jrmuizel
MozReview-Commit-ID: HoRHQVEdJeT

Differential Revision: https://phabricator.services.mozilla.com/D12720

--HG--
extra : moz-landing-system : lando
2018-11-25 22:57:04 +00:00
Hiroyuki Ikezoe
816436998c Bug 1506860 - Revert the workaround that we did in bug 1504929. r=birtles
That's because the underlying issue which had caused intermittent failure
has been fixed in 1506988.

Here is the link to the workaround commit;
https://hg.mozilla.org/mozilla-central/rev/c84f0ad36ce9

Differential Revision: https://phabricator.services.mozilla.com/D12861

--HG--
extra : moz-landing-system : lando
2018-11-26 01:35:10 +00:00
Brindusan Cristian
31f0c21cca Backed out changeset 1575904619b5 (bug 1506547) for mochitest failures on test_reftests_with_caret.html. 2018-11-26 03:03:14 +02:00
Emilio Cobos Álvarez
b74c31e4d9 Bug 1506547 - Align user-select behavior more with other UAs. r=mats
There's a few subtle behavior changes here, which I'll try to break down in the
commit message.

The biggest one is the EditableDescendantCount stuff going away. This
was added in bug 1181130, to prevent clicking on the non-editable div from
selecting the editable div inside. This is problematic for multiple reasons:

 * First, I don't think non-editable regions of an editable element should
   be user-select: all.

 * Second, it just doesn't work in Shadow DOM (the editable descendant count is
   not kept up-to-date when not in the uncomposed doc), so nested
   contenteditables behave differently inside vs. outside a Shadow Tree.

 * Third, I think it's user hostile to just entirely disable selection if you
   have a contenteditable descendant as a child of a user-select: all thing.

   WebKit behaves like this patch in the following test-case (though not Blink):

     https://crisal.io/tmp/user-select-all-contenteditable-descendant.html

   Edge doesn't seem to support user-select: all at all (no pun intended).

   But we don't allow to select anything at all which looks wrong.

 * Fourth, it's not tested at all (which explains how we broke it in Shadow DOM
   and not even notice...).

In any case I've verified that this doesn't regress the editor from that bug. If
this regresses anything we can fix it as outlined in the first bullet point
above, which should also make us more compatible with other UAs in that
test-case.

The other change is `all` not overriding everything else. So, something like:

  <div style="-webkit-user-select: all">All <div style="-webkit-user-select: none">None</div></div>

Totally ignores the -webkit-user-select: none declaration in Firefox before this
change. This doesn't match any other UA nor the spec, and this patch aligns us
with WebKit / Blink.

This in turn makes us not need -moz-text anymore, whose only purpose was to
avoid this.

This also fixes a variety of bugs uncovered by the previous changes, like the
SetIgnoreUserModify(false) call in editor being completely useless, since
presShell->SetCaretEnabled ended in nsCaret::SetVisible, which overrode it.

This in turn uncovered even more bugs, from bugs in the caret painting code,
like not checking -moz-user-modify on the right frame if you're the last frame
of a line, to even funnier bits where before this patch you show the caret but
can't write at all...

In any case, the new setup I came up with is that when you're editing (the
selection is focused on an editable node) moving the caret forces it to end up
in an editable node, thus jumping over non-editable ones.

This has the nice effect of not completely disabling selection of
-moz-user-select: all elements that have editable descendants (which was a very
ad-hoc hack for bug 1181130, and somewhat broken per the above), and also
not needing the -moz-user-select: all for non-editable bits in contenteditable.css
at all.

This also fixes issues with br-skipping like not being able to insert content in
the following test-case:

  <div contenteditable="true"><span contenteditable="false">xyz </span><br>editable</div>

If you start moving to the left from the second line, for example.

I think this yields way better behavior in all the relevant test-cases from bug
1181130 / bug 1109968 / bug 1132768, shouldn't cause any regression, and the
complexity is significantly reduced in some places.

There's still some other broken bits that this patch doesn't fix, but I'll file
follow-ups for those.

Differential Revision: https://phabricator.services.mozilla.com/D12687

--HG--
extra : moz-landing-system : lando
2018-11-25 20:01:07 +00:00
ScottDowne
0040ce5c3d Bug 1509565 - Add Pocket bug fixes, Snippets Templates compat fixes to Activity Stream r=k88hudson
Differential Revision: https://phabricator.services.mozilla.com/D12805

--HG--
extra : moz-landing-system : lando
2018-11-25 19:19:23 +00:00
Ed Lee
2704f0b07c Bug 1507610 - Allow running find-dupes without all of MOZ_AUTOMATION r=mshal
Differential Revision: https://phabricator.services.mozilla.com/D12065

--HG--
extra : moz-landing-system : lando
2018-11-20 19:35:08 +00:00
Cosmin Sabou
f997bd6bbf Merge mozilla-inbound to mozilla-central. a=merge 2018-11-25 11:47:59 +02:00
Wes Kocher
c45891a714 Bug 1509614 - Downgrade the loglevel for the get_process_list() messages in mozbase r=bc
`get_process_list()` makes multiple attempts at setting up adb, but errors setting up the connection get logged with a loglevel of ERROR. This patch makes these messages print with a loglevel of INFO unless this is the final attempt. This will cut down on superfluous error messages appearing in Treeherder's logviewer, while still providing all of the info fennec/tooling developers would need to fix the underlying problem here.

Differential Revision: https://phabricator.services.mozilla.com/D12813

--HG--
extra : moz-landing-system : lando
2018-11-24 23:03:49 +00:00
Tim Nguyen
35045bac67 Bug 1505582 - Update macOS arrowpanel background to match the specification. r=dao
Differential Revision: https://phabricator.services.mozilla.com/D12820

--HG--
extra : moz-landing-system : lando
2018-11-24 13:07:23 +00:00
Ferenc Nagy
a9d4f59ba6 Bug 1508631 - Fixing indentation in multiple lines r=dao
Differential Revision: https://phabricator.services.mozilla.com/D12826

--HG--
extra : moz-landing-system : lando
2018-11-24 13:18:45 +00:00
WR Updater Bot
305b751fe8 Bug 1509592 - Update webrender to commit 7051f18fdcfbe60ecdbaeaa8e53c4ba98f2037a1 (WR PR #3344). r=kats
https://github.com/servo/webrender/pull/3344

Differential Revision: https://phabricator.services.mozilla.com/D12822

--HG--
extra : moz-landing-system : lando
2018-11-24 12:56:25 +00:00
Nazım Can Altınova
e88550b119 Bug 1476775 - Part 2: Change the profiler usage in devtools after API change r=julienw,gregtatum
Depends on D6267

Differential Revision: https://phabricator.services.mozilla.com/D6268

--HG--
extra : moz-landing-system : lando
2018-11-23 16:10:08 +00:00
Nazım Can Altınova
52910a3163 Bug 1476775 - Part 1: Discard samples that are older than given duration r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D6267

--HG--
extra : moz-landing-system : lando
2018-11-21 14:13:15 +00:00
Christian Holler
e48061eb07 Bug 1506044 - Do not send cookies with ASan reporter submits. r=johannh
Differential Revision: https://phabricator.services.mozilla.com/D12317

--HG--
extra : moz-landing-system : lando
2018-11-21 23:18:27 +00:00
Dorel Luca
6d748c47a8 Merge mozilla-inbound to mozilla-central. a=merge 2018-11-24 11:46:32 +02:00
Ehsan Akhgari
c964f1264c Bug 1508044 - Check the return values of mozIThirdPartyUtil::IsThirdPartyFoo() in IsThirdParty() inside nsChannelClassifier.cpp r=francois
Differential Revision: https://phabricator.services.mozilla.com/D12784

--HG--
extra : moz-landing-system : lando
2018-11-24 00:49:03 +00:00
Nicolas Silva
2fa6078f12 Bug 1494403 - Separate the Blob related apis. r=jrmuizel
This commit contains the Gecko-side changes from WebRender PR#3277:
 - Dedicated DirtyRect type.
 - Separate the blob image APIs from regular image ones.

Differential Revision: https://phabricator.services.mozilla.com/D12463

--HG--
extra : moz-landing-system : lando
2018-11-23 23:33:49 +00:00
WR Updater Bot
68f4347fa8 Bug 1509495 - Update reftest annotations for changes in WR PR #3277. r=kats
Depends on D12809

Differential Revision: https://phabricator.services.mozilla.com/D12810

--HG--
extra : moz-landing-system : lando
2018-11-23 23:33:51 +00:00
WR Updater Bot
aada6c49ca Bug 1509495 - Update webrender to commit af2b372624db589115511b4705849a33e6acd35d (WR PR #3277). r=kats
https://github.com/servo/webrender/pull/3277

Differential Revision: https://phabricator.services.mozilla.com/D12809

--HG--
extra : moz-landing-system : lando
2018-11-23 23:32:57 +00:00
Sylvestre Ledru
79fce9d9bb Bug 1508069 - Add js/src/editline to the ignore list r=andi
Differential Revision: https://phabricator.services.mozilla.com/D12804

--HG--
extra : moz-landing-system : lando
2018-11-23 21:57:50 +00:00
Andrew McCreight
af73442cbd Bug 1508826 - Add mach_override.* and crc32c.c to ThirdPartyPaths.txt. r=Ehsan
Differential Revision: https://phabricator.services.mozilla.com/D12608

--HG--
extra : moz-landing-system : lando
2018-11-22 00:29:25 +00:00
Bogdan Tara
2c11899649 Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-11-23 23:40:33 +02:00
Bogdan Tara
243e2192a2 Merge inbound to mozilla-central. a=merge 2018-11-23 23:38:28 +02:00
James Willcox
7f4954743b Bug 1485045 - Make Java parts of GeckoView independent from build ABI r=jchen
This allows us to use the same Java code for any native platform,
enabling a "fat" AAR.

Differential Revision: https://phabricator.services.mozilla.com/D11497

--HG--
extra : moz-landing-system : lando
2018-11-23 20:32:40 +00:00
James Willcox
992335e0bf Bug 1486524 - Don't use XZ compression for libs on Android r=glandium,nalexander
This also uses idiomatic packaging of the native libraries, which
will allow easier downstream consumption of GeckoView.

Differential Revision: https://phabricator.services.mozilla.com/D10775

--HG--
extra : moz-landing-system : lando
2018-11-23 20:31:57 +00:00