Commit Graph

398075 Commits

Author SHA1 Message Date
Bobby Holley
f01bb671ea Bug 1109437 - Only switch to buffering mode when the reader is waiting for data. r=cpearce 2014-12-22 00:20:31 -08:00
Bobby Holley
49601684ad Bug 1109437 - Implement non-polling buffering. r=cpearce 2014-12-22 00:20:31 -08:00
Bobby Holley
05e1250b67 Bug 1109437 - Schedule the state machine thread in MediaSourceDecoder::Load. r=cpearce
This is necessary to get the state machine moving after it's initialized.
MediaDecoder::Load does this, but it looks like we missed this in the override.
So the current code relies on the ScheduleStateMachine call at the end of
TrackBuffer::AppendData to get things rolling. We're going to be removing that
call, so we need to fix this.
2014-12-22 00:20:31 -08:00
Bobby Holley
17a26db299 Bug 1109437 - Switch m{Audio,Video}RequestPending to a tri-state. r=cpearce 2014-12-22 00:20:31 -08:00
Bobby Holley
663679c83b Bug 1109437 - Stop using buffering heuristics when they're not requested. r=cpearce
Given that we set the buffering wait to 0 in this case already, the only practical
impact on our behavior of this change is that we'll no longer ping-pong between
states.
2014-12-22 00:20:30 -08:00
Bobby Holley
05224076bc Bug 1109437 - Generalize GetBufferingWait to UseBufferingHeuristics. r=cpearce 2014-12-22 00:20:30 -08:00
Bobby Holley
ffd128ab61 Bug 1109437 - Remove MOZ_COUNT_{C,D}TOR on refcounted promise classes. r=cpearce
These were accidental and redundant, because refcounted classes get this behavior
automatically. And this is very lucky, because it turns out that our MOZ_COUNT_*
infrastructure can't handle varying-sized instances identified with the same
string, which is exactly what we can get with these templated types.

The only remaining use of these macros is on the non-templated ThenValueBase,
which is happily not variable-sized. \o/
2014-12-22 00:20:30 -08:00
Carsten "Tomcat" Book
c3edf3a511 Backed out changeset 8fd0df8e208c (bug 423758) for bustage 2014-12-22 09:05:34 +01:00
Morris Tseng
0b3d49e12b Bug 1109800 - Call CancelLongTapDetector when Selection carets are blurred. r=roc 2014-12-18 22:50:00 +01:00
Karl Dubost
cab58b9fec Bug 1103680 - "Remove UA override for domains (starting 2014-11-24)". r=lmandel 2014-12-19 02:15:00 +01:00
Vaibhav Agrawal
6cc2b1a36d Bug 1103159 - Dealing with the error: UnboundLocalError: local variable 'result' referenced before assignment. r=jmaher 2014-12-19 11:58:00 +01:00
Julien Pagès
ae85f164f2 Bug 1065406 - [mozlog] Split test class and name for XUnit formatter. r=jgraham 2014-12-16 16:02:00 +01:00
pchang
20e2506fa0 Bug 1098161 - Notify shortcut mode to system app when long tap on content with empty text. r=roc 2014-12-19 14:04:45 +08:00
Benjamin Chen
d676e9ef65 Bug 1091992 - fix the flag skipToNextKeyFrame in DecodeVideo can't be raised if the video is slower than audio. r=cpearce, r=jwwang 2014-12-22 11:32:31 +08:00
J.C. Jones
b47d94a0c8 Bug 968451 - Document the exported functions exposed from mozilla::pkix (pkix/pkix.h). r=keeler 2014-12-19 12:25:00 +01:00
Arnaud Bienner
35a2e13528 Bug 826176 - Part 2 - Remove similar file picker filters from accept attribute. r=smaug 2014-12-19 00:30:11 +01:00
Arnaud Bienner
1329907ab6 Bug 826176 - Part 1 - File extension support for accept attribute. r=smaug 2014-11-29 12:22:30 +01:00
Andrew Bartlett
d741102951 Bug 423758 - Add NTLMv2 to internal NTLM handler. r=keeler
NTLMv2 is the default.

This adds a new preference:
network.ntlm.force-generic-ntlm-v1

This is to allow use of NTLMv1 in case issues are found in the NTLMv2
handler, or when contacting a server or backing DC that does not
support NTLMv2 for any reason.

To support this, we also:
 - Revert "Bug 1030426 - network.negotiate-auth.allow-insecure-ntlm-v1-https allows sending NTLMv1 credentials in plain to HTTP proxies, r=mcmanus"

 - Revert "Bug 1023748 - Allow NTLMv1 over SSL/TLS by default, r=jduell"

 - Remove LM code from internal NTLM handler

   The LM response should essentially never be sent, the last practical
   use case was CIFS connections to Windows 9X, I have never seen a web
   server that could only do LM

   It is removed before the NTLMv2 work is done so as to avoid having 3
   possible states here (LM, NTLM, NTLMv2) to control via preferences.

Developed with Garming Sam <garming@catalyst.net.nz>
2014-12-18 17:25:00 +01:00
Bobby Holley
6a0b2751fe Bug 1092025 - Hold the lock for the entire duration of MediaSourceReader::ReadMetaData. r=karlt 2014-12-21 23:14:59 -08:00
Bobby Holley
3a7dd07a3d Bug 1114383 - Unlock the demuxer monitor before calling out via MP4Stream. r=k17e 2014-12-21 22:04:36 -08:00
Bobby Holley
6d0ec2b9a3 Bug 1114383 - Assert that access to mMoofs goes through a monitor. r=k17e 2014-12-21 22:04:36 -08:00
Bobby Holley
01bbb5b92f Bug 1114383 - Acquire the index monitor in MP4Reader::PopSample. r=k17e 2014-12-21 22:04:36 -08:00
Brian Birtles
1df0d8114c Bug 927349 follow-up to (hopefully) fix breakage from GetCurrentTime on non-unified Windows build on a CLOSED TREE 2014-12-22 13:16:11 +09:00
Patrick McManus
9a8c661ddd bug 1113661 - broken h2 dependency id r=hurley 2014-12-19 13:01:21 -05:00
Phil Ringnalda
71d8445cfe Back out 155b9d4cb8cb (bug 1068474) for Marionette failures 2014-12-21 18:54:23 -08:00
Gina Yeh
f30813f19f Bug 1111949 - [TaskTracer] Bulid error: mozilla-central/tools/profiler/GeckoTaskTracer.cpp:115:31: error: expected ')' before 'false', r=sinker. 2014-12-22 10:04:44 +08:00
pchang
43eba5fe34 Bug 1068474 Limit the selection range based on the boundary of startcaret and endcaret, r=roc
---
 layout/base/SelectionCarets.cpp | 13 +++++++++++++
 layout/base/SelectionCarets.h   |  8 ++++++++
 2 files changed, 21 insertions(+)
2014-12-19 13:25:17 +08:00
Brian Birtles
9b70aa8285 Bug 927349 part 21 - Factor out AnimationPlayer::UpdateSourceContent; r=jwatt
In the future we will want to specifically just update source content without
necessarily triggering any other actions that might take place on a tick (like
queuing events).
2014-12-22 09:35:42 +09:00
Brian Birtles
76a87ac42a Bug 927349 part 20 - Update selectTreeItem to wait for tree expansion animations to finish; r=bgrins
Currently selectTreeItem, as used by various devtools storage panel tests,
expands the tree then clicks items. However, it fails to account for the fact
that expansion animations may mean that the item that should be selected is not
yet able to be clicked. It currently happens to be lucky enough that typically
the animation is short enough that the item in question will be click-able in
time (since click() spins the event loop using executeSoon there is some time
for the animation to play).

If we make animations wait until their first frame has rendered before
beginning the chance that the tree item will become clickable in time is
reduced. This patch works around that by looking for animating branches
amongst the ancestors of the item to be selected. If one is found it waits for
the animation to end.

Unfortunately this ties the tests to the tree widget styles somewhat (in
particular the test looks for specified values of max-height).
However, these changes only delay the execution of the test so, if these styles
were to change, it is only likely that these tests would fail (and hence need to
be updated) than to mask a genuine bug. Until the Web Animations API is
available by default it is difficult to test if animations are running so this
seems like the best we can do for now.
2014-12-22 09:35:42 +09:00
Brian Birtles
24eaa57ecc Bug 927349 part 19 - Don't add pending animations to layers when their refresh driver is under test control; r=jwatt 2014-12-22 09:35:42 +09:00
Brian Birtles
83ead697c2 Bug 927349 part 18 - Make nsDOMWindowUtils::AdvanceTimeAndRefresh trigger any pending animations first; r=jwatt
Currently many tests rely on nsDOMWindowUtils::AdvanceTimeAndRefresh. These
tests assume that the animation starts from the moment it is created. In order
to allow these tests to continue to operate without change we make
AdvanceTimeAndRefresh force any pending animations to start.
2014-12-22 09:35:42 +09:00
Brian Birtles
7bd49bca6c Bug 927349 part 17 - Don't count native reflows in test_popupreflows.xul; r=markh
test_popupreflows.xul currently expects to get 1 reflow when a popup is opened.
This is triggered by JS code. An incremental layout may be triggered by native
code but the test ignores that for unclear reasons ("Because we've simply
cargo-culted this test from browser_tabopen_reflows.js!").

In part 16 on this patch series, we force interruptible reflows to become
full reflows when we have pending animations which can cause this test to
fail since it will see 2 reflows.

The above quoted browser_tabopen_reflows.js specifically ignores reflows
triggered by native code so we adjust this test to do likewise.
2014-12-22 09:35:41 +09:00
Brian Birtles
79e39d6e6a Bug 927349 part 16 - Do a full reflow when we have pending animations; r=jwatt
We want to time animations from when their first frame is painted. However,
interruptible reflow complicates this since, for a given set of pending
animations, some may be painted whilst others are not. To simplify this we
simply force an uninterruptible reflow when we have animations that are
waiting to start.
2014-12-22 09:35:41 +09:00
Brian Birtles
0cea4b72d5 Bug 927349 part 15 - Schedule a paint when a new pending animation is added; r=jwatt
We would like to trigger animations from the point when the first frame of the
animation is painted. However, some animations will never trigger a paint (e.g.
animations with an empty keyframes rule). These animations should start start
however. To ensure this, whenever an animation is newly pending we schedule
a paint.
2014-12-22 09:35:41 +09:00
Brian Birtles
53d761ef44 Bug 927349 part 14 - Store reference to owning document on PendingPlayerTracker; r=jwatt
This patch adds a reference from PendingPlayerTracker back to the document
object that owns it. This is used in the next patch in this series to find the
document's root frame for scheduling a paint.
2014-12-22 09:35:41 +09:00
Brian Birtles
fe8a65bf0d Bug 927349 part 13 - Update start times on animations in layers when the animation ready time is resolved; r=nical 2014-12-22 09:35:41 +09:00
Brian Birtles
bed7d564db Bug 927349 part 12 - Store the initial time of animations on layers so start times can be resolved after-the-fact; r=nical 2014-12-22 09:35:41 +09:00
Brian Birtles
1261ccde9b Bug 927349 part 11 - Pass the animation ready time to the pending player tracker; r=jwatt 2014-12-22 09:35:41 +09:00
Brian Birtles
d178150d17 Bug 927349 part 10 - Record the time when animations are ready to start; r=jwatt 2014-12-22 09:35:41 +09:00
Brian Birtles
0dcad886e1 Bug 927349 part 9 - Add PendingPlayerTracker::StartPendingPlayers; r=jwatt 2014-12-22 09:35:41 +09:00
Brian Birtles
fb0d9d7187 Bug 927349 part 8 - Fast-forward the timeline before resolving start times; r=jwatt
Normally animation players get times from their timeline which is based on the
refresh driver for their associated document. However, for animations that
we time from when their first frame has been rendered, we want to record the
actual time when painting finished as their start time. If we wait until the
next refresh driver tick then the delay between playing an animation and its
actual start will be too great.

In this patch, we introduce a mechanism for fast-forwarding a timeline to a
time between the current refresh driver time and the next refresh driver tick.
By adjusting the timeline rather than the player we maintain a consistent state
(in fact, if we just naively set the animation player start time to the
timestamp value we recorded when painting finished it will appear to start in
the future and the animation will temporarily jump from playing, to waiting to
start, then back to playing again on the next refresh driver tick).

To be completely consistent, however, when we fast-forward the timeline we
should tell all animation players listening to the timeline to mark their
target element as needing a style flush. Otherwise we may be able to observe an
inconsistency between some animation players' current time and the computed
style of their targets.

We don't, however, currently know which players are observing a given timeline.
We will likely introduce that in the near future (in order to implement
AnimationTimeline.getAnimationPlayers) and fix the inconsistency in timing then.
A test later in the patch series verifies this inconsistency so it is easy to
fix in future.

An alternative approach would be to simply record the time when animation should
start, send that time to the compositor but don't actually update the animation
start time on the main thread until the subsequent refresh driver tick. Such
an approach is complex as it introduces an additional state--"finished pending
but not yet started". We will attempt to switch to that approach in bug 1112480.
2014-12-22 09:35:41 +09:00
Ehsan Akhgari
d803a0513e Bug 1114351 - Use mozilla::IsNaN() in DOUBLE_TO_JSVAL(); r=Waldo
Note that this requires making sure that IsNaN is constexpr because it
needs to be passed to the constexpr IMPL_TO_JSVALUE() function in
DOUBLE_TO_JSVAL().

--HG--
extra : amend_source : dbd8bb0659b53e7d36d2600ac97f0a753ef772c7
2014-12-21 19:16:49 -05:00
Ehsan Akhgari
8daffda8e5 Bug 1114349 - Use mozilla::IsNaN() in media code; r=cpearce 2014-12-21 19:16:26 -05:00
Paul Kerr [:pkerr]
c41effce1e Bug 1104279 - Part 2: Add sequence verification to logInToFxa test. r=dmose 2014-12-19 14:51:25 -08:00
Paul Kerr [:pkerr]
3a2cf0f0f3 Bug 1055145: Remove push server fallback from Loop Client. r=abr 2014-12-19 15:37:26 -08:00
Roshan Vidyashankar
ea4edb64b3 Bug 1058980 - Disable external.addSearchEngine, external.AddSearchProvider in prerendering; r=jst
--HG--
extra : amend_source : 03cce38442166dbac7bd88d744d7c5a42a144ce3
2014-12-21 12:06:33 -05:00
Roshan Vidyashankar
96e69bcf45 Bug 1058970 - Disable unsafe MediaStream returning APIs in prerendering; r=jst 2014-12-21 12:06:08 -05:00
Roshan Vidyashankar
411caaef72 Bug 1058961 - Disable mozLockOrientation, mozUnlockOrientation in prerendering; r=jst
--HG--
extra : amend_source : 9fbcff790ca45666e26911c6c8161453c12c1b88
2014-12-21 12:03:52 -05:00
Roshan Vidyashankar
ccbe01c5cb Bug 1058924 - Disable Notifications API in prerendering; r=jst
--HG--
extra : amend_source : 8282b07cecbefa2c76cebc6f7c1f28e324c6caa1
2014-12-21 12:02:33 -05:00
Roshan Vidyashankar
76b70c270f Bug 1058922 - Disable Speech APIs in prerendering; r=jst
--HG--
extra : amend_source : eae9649cecf94a998249ddcf6139efd4eadbb92d
2014-12-21 12:02:12 -05:00