Commit Graph

1135 Commits

Author SHA1 Message Date
David Anderson
b8b20d53b8 Support tab-switching in the GPU process. (bug 1298507, r=billm) 2016-09-23 18:12:45 -07:00
Kartikaya Gupta
fa522ade6a Bug 1298173 - Push HandleTap from the GPU process back to the parent process before passing it on to the child process. r=dvander
Sending it back via the parent process ensures that it will take the same path
that regular touch events do, and so guarantees that the Tap event won't overtake
the touch events and get dispatched to content first.

MozReview-Commit-ID: 8TiHY2PFPvE
2016-09-21 10:26:33 -04:00
David Anderson
58dfb0992b Recreate PLayerTransactions for TabChildren when the compositor restarts. (bug 1300936 part 4, r=mattwoodrow, r=billm) 2016-09-20 01:19:32 -07:00
Tooru Fujisawa
f499fceb2f Bug 92737 - Part 3: Open multiple tabs when multiple items are dropped on remote content area. r=enndeakin 2015-11-11 07:35:12 +09:00
Aaron Klotz
81ed92795e Bug 1297549: Part 2 - Propagate changes in tab native window down to content for a11y; r=jimm
MozReview-Commit-ID: 4akhzCtYciq
2016-09-15 13:37:04 -06:00
Phil Ringnalda
7b35049a6a Backed out changeset d1cfae63f790 (bug 1297549) for talos bustage 2016-09-18 11:18:17 -07:00
Bill McCloskey
1680d779a9 Bug 1279086 - Allow painting for tab switch when JS is running (r=dvander,mconley,mrbkap) 2016-09-16 20:35:11 -07:00
Aaron Klotz
b2fae2e9fb Bug 1297549: Part 2 - Propagate changes in tab native window down to content for a11y; r=jimm
MozReview-Commit-ID: LA5yLIGufEb
2016-09-15 13:37:04 -06:00
Wes Kocher
51b0f434ae Backed out 3 changesets (bug 1297549) for Windows VM Mn-e10s failures a=backout
Backed out changeset c3f82cedfb27 (bug 1297549)
Backed out changeset c643278d88c8 (bug 1297549)
Backed out changeset 3d515669d3e0 (bug 1297549)
2016-09-15 16:45:31 -07:00
Aaron Klotz
8a5ac8573e Bug 1297549: Part 2 - Propagate changes in tab native window down to content for a11y; r=jimm
MozReview-Commit-ID: E96pONRnHt0
2016-09-15 13:37:04 -06:00
Carsten "Tomcat" Book
868350dc99 merge mozilla-inbound to mozilla-central a=merge 2016-09-07 17:20:12 +02:00
Mike Conley
e18863809d Bug 1298219 - Don't fire oop-browser-crashed event if the browser has already flipped remoteness and moved on. r=billm
We currently make the initial browser in a window remote by default. If early
on in the session, that one remote browser goes away (and the content process
was still booting), there's about 5 seconds before the shutdown kill timer
will take that content process out for not quitting fast enough.

There are some cases during startup where the content process is waiting
on information from the parent, so it cannot respond to the request to
quit in time. The parents shutdown kill timer goes off, and the shutdown
kill occurs.

In this bug, what's happening is that the initial browser flips remoteness
from remote to non-remote when it goes to about:sessionrestore. This starts
the shutdown kill timer. The content process runs out of time, and the
shutdown kill timer fires, killing the content process. The TabParent::ActorDestroy
method (which still exists, even though the browser is no longer remote),
interprets this as an abnormal shutdown, and bubbles the oop-browser-crashed
event to the associated <xul:browser>, which causes the page to browser to
about:tabcrashed, when it had already loaded about:sessionrestore.

This patch makes it so that the TabParent::ActorDestroy method first checks
to ensure that the associated remote frameloader is still the one that the
frameloader owner cares about. If not (because, say, the remoteness has
flipped and a new non-remote frameloader has been created), then the
event is not fired, since the user has moved on.

MozReview-Commit-ID: G4jmR6lMMFl
2016-08-31 18:23:40 -04:00
Wes Kocher
3bc95aa438 Backed out 2 changesets (bug 1298219) for asan bc5 crashes a=backout
Backed out changeset 98b0e9b88212 (bug 1298219)
Backed out changeset 5948ae1f4218 (bug 1298219)
2016-09-06 14:40:32 -07:00
Mike Conley
a055d88f6f Bug 1298219 - Don't fire oop-browser-crashed event if the browser has already flipped remoteness and moved on. r=billm
We currently make the initial browser in a window remote by default. If early
on in the session, that one remote browser goes away (and the content process
was still booting), there's about 5 seconds before the shutdown kill timer
will take that content process out for not quitting fast enough.

There are some cases during startup where the content process is waiting
on information from the parent, so it cannot respond to the request to
quit in time. The parents shutdown kill timer goes off, and the shutdown
kill occurs.

In this bug, what's happening is that the initial browser flips remoteness
from remote to non-remote when it goes to about:sessionrestore. This starts
the shutdown kill timer. The content process runs out of time, and the
shutdown kill timer fires, killing the content process. The TabParent::ActorDestroy
method (which still exists, even though the browser is no longer remote),
interprets this as an abnormal shutdown, and bubbles the oop-browser-crashed
event to the associated <xul:browser>, which causes the page to browser to
about:tabcrashed, when it had already loaded about:sessionrestore.

This patch makes it so that the TabParent::ActorDestroy method first checks
to ensure that the associated remote frameloader is still the one that the
frameloader owner cares about. If not (because, say, the remoteness has
flipped and a new non-remote frameloader has been created), then the
event is not fired, since the user has moved on.

MozReview-Commit-ID: G4jmR6lMMFl
2016-08-31 18:23:40 -04:00
Kan-Ru Chen
c7fd702977 Bug 1269036 - Also destroy TabParent properly in case of mozbrowser. r=smaug
MozReview-Commit-ID: Co0HL40b4q7
2016-09-02 16:03:19 +08:00
Jimmy Wang
96ed3bfbc6 Bug 1297539 - Add IPC message, PasteTransferable, to call PasteTransferable via a controller on the content process to handle the command content event, "pasteTransferable". New method nsContentUtils::IPCTransferableToTransferable since ContentParent::RecvSetClipboard and TabChild::RecvPasteTransferable both require the same setup to make a transferable. r=mrbkap
MozReview-Commit-ID: 3I443eBOPEO
2016-08-30 21:30:45 -04:00
Johann Hofmann
317e7f0a79 Bug 1266836 - Part 1 - Fix password manager handling of popup windows in e10s. r=MattN r=liuche
MozReview-Commit-ID: OVsgkHhyg9
2016-08-30 15:47:38 +02:00
Kartikaya Gupta
e57fb1eec4 Bug 1299488 - Remove TabParent::InjectTouchEvent as it is unused but error-prone. r=botond
MozReview-Commit-ID: EVBRK70veT1
2016-08-31 16:54:23 -04:00
Nicholas Nethercote
b5810a1eb4 Bug 1299384 - Use MOZ_MUST_USE with NS_warn_if_impl(). r=erahm.
This change avoids lots of false positives for Coverity's CHECKED_RETURN
warning, caused by NS_WARN_IF's current use in both statement-style and
expression-style.

In the case where the code within the NS_WARN_IF has side-effects, I made the
following change.

> NS_WARN_IF(NS_FAILED(FunctionWithSideEffects()));
> -->
> Unused << NS_WARN_IF(NS_FAILED(FunctionWithSideEffects()));

In the case where the code within the NS_WARN_IF lacks side-effects, I made the
following change.

> NS_WARN_IF(!condWithoutSideEffects);
> -->
> NS_WARNING_ASSERTION(condWithoutSideEffects, "msg");

This has two improvements.
- The condition is not evaluated in non-debug builds.
- The sense of the condition is inverted to the familiar "this condition should
  be true" sense used in assertions.

A common variation on the side-effect-free case is the following.

> nsresult rv = Fn();
> NS_WARN_IF_(NS_FAILED(rv));
> -->
> DebugOnly<nsresult rv> = Fn();
> NS_WARNING_ASSERTION(NS_SUCCEEDED(rv), "Fn failed");
2016-09-02 17:12:24 +10:00
Kan-Ru Chen
a9b19d0584 Bug 1297276 - Rename mfbt/unused.h to mfbt/Unused.h for consistency. r=froydnj
The patch is generated from following command:

  rgrep -l unused.h|xargs sed -i -e s,mozilla/unused.h,mozilla/Unused.h,

MozReview-Commit-ID: AtLcWApZfES
2016-08-24 14:47:04 +08:00
Wes Kocher
9836520505 Backed out 2 changesets (bug 1279086) for causing painting issues a=backout
Backed out changeset b1c893387fdd (bug 1279086)
Backed out changeset 277c54118c8a (bug 1279086)
2016-08-22 16:00:34 -07:00
Bill McCloskey
6b326939fd Bug 1279086 - Allow painting for tab switch when JS is running (r=dvander,mconley,mrbkap) 2016-08-19 14:41:26 -07:00
Wes Kocher
bd5bb0eef4 Backed out 2 changesets (bug 1279086) for failures in browser_menu_item_01.js a=backout
Backed out changeset 00bb53b58e96 (bug 1279086)
Backed out changeset cff59fe2b933 (bug 1279086)
2016-08-19 12:31:55 -07:00
Bill McCloskey
003cabfc2c Bug 1279086 - Allow painting for tab switch when JS is running (r=dvander,mconley,mrbkap) 2016-08-19 09:59:40 -07:00
Blake Kaplan
9e13c6ac8f Bug 1165309 - Make view source and print preview work in e10s-multi. r=mconley 2016-08-18 16:47:28 -07:00
Nicholas Nethercote
1cef4f427a Bug 1294620 - Use infallible XPIDL attribute getters more. r=erahm.
This makes a lot of code more compact, and also avoids some redundant nsresult
checks.

The patch also removes a handful of redundant checks on infallible setters.
2016-08-12 15:19:29 +10:00
Nicholas Nethercote
0550795f93 Bug 1293117 (part 4) - Change many NS_IMETHODIMP occurrences to NS_IMETHOD. r=froydnj.
This patch makes the following changes on many in-class methods.

- NS_IMETHODIMP F() override;      --> NS_IMETHOD F() override;
- NS_IMETHODIMP F() override {...} --> NS_IMETHOD F() override {...}
- NS_IMETHODIMP F() final;         --> NS_IMETHOD F() final;
- NS_IMETHODIMP F() final {...}    --> NS_IMETHOD F() final {...}

Using NS_IMETHOD is the preferred way of marking in-class virtual methods.
Although these transformations add an explicit |virtual|, they are safe --
there's an implicit |virtual| anyway because |override| and |final| only work
with virtual methods.
2016-08-08 10:54:47 +10:00
Nicholas Nethercote
1f65390cc9 Bug 1293603 (part 2) - Make Run() declarations consistent. r=erahm.
This patch makes most Run() declarations in subclasses of nsIRunnable have the
same form: |NS_IMETHOD Run() override|.

As a result of these changes, I had to add |override| to a couple of other
functions to satisfy clang's -Winconsistent-missing-override warning.
2016-08-08 12:18:10 +10:00
Alexandre Lissy
b2834a3543 Bug 1284674 - Remove NUWA r=cyu
MozReview-Commit-ID: GyMRNzOBKw6
2016-08-02 14:54:00 +02:00
Gabor Krizsanits
5190bd5e65 Bug 1234583 -Expose OS Pid in nsITabParent. r=billm 2016-08-01 12:26:48 +02:00
Kartikaya Gupta
52a4a4348a Bug 1250024 - Fix touch-tap event coordinate transformations when a fullzoom is applied. r=botond
There were a couple of problems when delivering tap gestures to content with
full zoom applied. One was that the ConverToGecko function converted the coords
into "CSS pixel" space by using the web content's CSS-to-LD scale, but also
applied that on the translation from the chrome area. Moving that conversion
to later in the process (after the coords got passed through TabParent::
AdjustTapToChildWidget) corrected that issue.

The other problem was that bits of code in APZEventState and APZCCallbackHelper
were using the widget->GetDefaultScale() value as the CSS-to-LD scale, but that
omitted the full zoom value. Getting the CSS-to-LD scale from the presShell and
propagating that through corrected that issue.

MozReview-Commit-ID: KdrkdEZslHo
2016-07-29 14:44:29 -04:00
Neil Deakin
fba1b2eae0 Bug 1275932, use AutoHandlingUserInputStatePusher to indicate that a real input is happening when refiring key event in the parent process, r=masayuki 2016-07-25 09:08:49 -04:00
Chris Peterson
6c0f810682 Bug 1277106 - Part 2: Expand MOZ_UTF16() strings to u"" string literals. r=Waldo 2016-07-20 22:03:25 -07:00
Andrea Marchesini
924300c131 Bug 1279503 - part 2 - moving BrowserConfiguration in the ContentChild::InitXPCOM, r=gabor 2016-07-11 00:28:13 +02:00
Andrea Marchesini
8802e3d0d0 Bug 1279503 - part 1 - removed a non-used variable in BrowserConfiguration, r=gabor 2016-07-11 00:28:10 +02:00
Michael Layzell
7581dc0c5b Bug 1278939 - Store nsIFile entries as nsIFile, but continue to produce dom::File objects from relevant APIs, r=enndeakin 2016-07-04 15:45:45 -04:00
Masayuki Nakano
13fdf820a2 Bug 1282669 Get rid of nsIMEUpdatePreference::DontNotifyChangesCausedByComposition() r=m_kato
I think that we can drop nsIMEUpdatePreference::DontNotifyChangesCausedByComposition(), i.e., nsIMEUpdatePreference::NOTIFY_CHANGES_CAUSED_BY_COMPOSITION because it's now used only by TSFTextStore but TSFTextStore ignores if SelectionChangeDataBase::mCausedByComposition or TextChangeDataBase::mCausedOnlyByComposition is true (for supporting async changes in e10s mode).  So, only issue is, dropping the flag might cause increasing computing TextChangeData cost during composition in TSF mode.  However, now, it's already enough fast and even if it'd cause performance regression, we could add a hack with TextComposition's offset information.  Therefore, we don't need to worry about the performance regression so seriously.

MozReview-Commit-ID: HNT3G4isONj
2016-06-28 16:51:59 +09:00
Jordan
18b6de240e Bug 825294 - Add framework for datepicker widgets to input[type=date]. r=smaug
-Add framework for datepicker widgets
-Split date input preference from dom.experimental_forms to dom.forms.date
2016-06-20 15:55:00 +02:00
Masayuki Nakano
b8bf98ad12 Bug 1275918 part.2 Update TextComposition::mCompositionStartOffset when it's modified in the remote process r=m_kato
MozReview-Commit-ID: H1SJTWWav6G
2016-06-14 21:06:34 +09:00
Cervantes Yu
0def5fe401 Bug 1275398 - Use shmem for sending image data in IPCDataTransfer. r=nical
MozReview-Commit-ID: 9XETnSBXxEW
2016-06-16 00:57:46 +08:00
Cervantes Yu
ae89ab3192 Bug 1272018 - Use shared memory to transfer drag image data. r=nical
MozReview-Commit-ID: K5r9LBQ1FO0
2016-06-15 13:49:13 +01:00
Mike Conley
ac6cfad59e Bug 1278989 - Make parent outer window available on TabParent. r=mrbkap
MozReview-Commit-ID: 9nS1zQkGmu3
2016-04-27 15:40:36 -04:00
Carsten "Tomcat" Book
3d11ccd8c4 merge mozilla-inbound to mozilla-central a=merge 2016-06-03 12:00:06 +02:00
dimi
f5dbedafaa Bug 1258033 - Part 1: Add IsTrackingProtectionOn for nsILoadContext. r=smaug
MozReview-Commit-ID: 2eQzO6KDLyX
2016-06-02 10:12:39 +08:00
Mats Palmgren
058b8e530e Bug 881832 - Make inner document reflow asynchronous. r=tnikkel 2016-05-12 12:07:45 +12:00
David Anderson
dd54f2fdc9 Remove TabParent use of CompositorBridgeParent. (bug 1274149 part 4, r=mattwoodrow) 2016-05-23 00:28:03 -07:00
Phil Ringnalda
903965a65a Back out 6 changesets (bug 881832) for failures in test_Debugger.Source.prototype.element.html
CLOSED TREE

Backed out changeset fac50ce10b07 (bug 881832)
Backed out changeset 32e01c144cd4 (bug 881832)
Backed out changeset 779f5336b81e (bug 881832)
Backed out changeset 95efd250e29f (bug 881832)
Backed out changeset 7fe79f07189f (bug 881832)
Backed out changeset 8ee1824f2a57 (bug 881832)
2016-05-23 18:34:49 -07:00
Wes Kocher
9a683a7c55 Backed out 5 changesets (bug 1274149) for intermittent failures in apz tests CLOSED TREE
Backed out changeset 1117598ac875 (bug 1274149)
Backed out changeset 540cb6d10745 (bug 1274149)
Backed out changeset 057223823e5d (bug 1274149)
Backed out changeset 9932689ab717 (bug 1274149)
Backed out changeset a22a53c503a6 (bug 1274149)
2016-05-23 13:01:22 -07:00
Makoto Kato
5974e9ae92 Bug 1177943 - Part 5. Add IPC for e10s support. r=masayuki
Implement LookUpDictionary to PuppetWidget and PBrowser for e10s.

MozReview-Commit-ID: 44SrfuLJoCF
2016-04-26 17:18:04 +09:00
David Anderson
77be57df84 Remove TabParent use of CompositorBridgeParent. (bug 1274149 part 4, r=mattwoodrow) 2016-05-23 00:28:03 -07:00