Commit Graph

44 Commits

Author SHA1 Message Date
Ryan VanderMeulen
c3ff518ee6 Merge fx-team to m-c. a=merge 2015-06-17 15:01:24 -04:00
Edoardo Putti
d06369c85e Bug 1121896 - Show when animations are running on the compositor in the animation panel. r=pbro
--HG--
extra : rebase_source : b64325cb65d0413d8802cde86285424267849de3
2015-06-17 01:40:00 -04:00
Patrick Brosset
66995680f3 Bug 1155663 - More tests for the timeline-based animation inspector UI; r=bgrins
--HG--
rename : browser/devtools/animationinspector/test/browser_animation_timeline_waits_for_delay.js => browser/devtools/animationinspector/test/browser_animation_playerWidgets_scrubber_delayed.js
rename : browser/devtools/animationinspector/test/browser_animation_timeline_is_enabled.js => browser/devtools/animationinspector/test/browser_animation_playerWidgets_scrubber_enabled.js
rename : browser/devtools/animationinspector/test/browser_animation_timeline_animates.js => browser/devtools/animationinspector/test/browser_animation_playerWidgets_scrubber_moves.js
extra : rebase_source : 0dc84ca300bc1180998defd99664ae2ef29032fb
2015-06-15 12:03:54 +02:00
Patrick Brosset
774b49304f Bug 1155663 - Show animations as synchronized time blocks in animation inspector; r=bgrins
This is the first step towards the animation-inspector UI v3 (bug 1153271).
The new UI is still hidden behind a pref, and this change doesn't implement
everything that is in the current v2 UI.
This introduces a new Timeline graph to represent all currently animated nodes
below the currently selected node.
v2 used to show them as independent player widgets. With this patch, we now show
them as synchronized time blocks on a common time scale.
Each animation has a preview of the animated node in the left sidebar, and a time
block on the right, the width of which represents its duration. The animation name
is also displayed.
There's also a time graduations header and background that gives the user information
about how long do the animations last.
This change does *not* provide a way to know what's the currentTime nor a way to
set it yet.
This also makes the existing animationinspector tests that still make sense with
the new timeline-based UI run with the new UI pref on.

--HG--
extra : rebase_source : 65634e8f5e618f15e8d33c36a90217ba07a310f4
2015-06-11 15:45:57 +02:00
Jeff Walden
8ebc2cc372 Bug 1146136 - Fix most in-tree tests that parenthesize destructuring pattern assignment targets, as ES6 forbids such parenthesization. (The patch making SpiderMonkey reject this syntax will follow shortly.) r=efaust, r=testingonlychange 2015-05-30 00:55:35 -07:00
Patrick Brosset
8c2aaa42cf Bug 1166189 - ESLint configuration files for devtools; r=tromey
Adds a global .eslintrc file for all source files in /browser/devtools.
This file defines a set of global variables that are commonly used in
/browser/devtools code.
The files that import modules with Cu.import will need to define their
own globals as /* globals ... */ comments.
This file also defines the configuration for all the rules we want to
use.

This also adds a set of .eslintrc files, one per test directory in
/browser/devtools. Each of these files extend from one of 2 parent config
files: .eslintrc.xpcshell or .eslintrc.mochitest.
The parent config define the set of globals these types of tests have
access to (test runner functions, assertion functions, etc.).

Finally, this also adds .eslintrc files in /toolkit/devtools for code and
tests, which just extend from their counterparts in /browser/devtools.

--HG--
extra : rebase_source : d7b6f639634b64dc084d0835a5fb36c9720a87e7
2015-05-28 09:30:03 +02:00
Patrick Brosset
92856897c5 Bug 1155653 - Preview animation target nodes in animationinspector panel; r=bgrins
This adds a generic walker method that cna be used to retrieve AnimationPlayerActor's
target DOM nodes in a way that they can be highlighted/selected later in the inspector.
Making the AnimationPlayerActor return the nodeActor directly wouldn't fully work, as
the walker would have missed the missing parent nodeFronts updates.
On the UI, this adds a new component in each PlayerWidget that displays a preview of the
target DOM nodes, highlight them on hover, and select them on click.

--HG--
extra : rebase_source : dfbf459d9de14233f125d028cf81f6b934941ea2
2015-05-04 13:55:51 +02:00
Patrick Brosset
5aebb401b0 Bug 1153463 - Intermittent browser_animation_setting_currentTime_works_and_pauses.js. r=miker
The failing test was rewinding a player and expecting it to pause at 0.
But rewing first pauses (async) and then sets the time (async), and the test
was only waiting for the player to pause.
With this change, we now also wait until the time is the expected one.

--HG--
extra : transplant_source : %23BU%CB%F3%3A%A8%226hWIw%E8VI%3A%94%A4V
2015-04-27 11:01:47 +02:00
Patrick Brosset
b2a9538957 Bug 1155651 - Return all players below a node in getAnimationPlayersForNode; r=miker
Now when the front requests the list of AnimationPlayers for a node,
all players for this node + the nodes in its subtree are returned.
Also the mutationobserver starts observing all mutations in the node
and its subtree.

--HG--
extra : rebase_source : c419bd2f397617317fa9c9d0b7fd22f07abc12cf
2015-04-21 09:22:30 +02:00
Patrick Brosset
e44cbdba90 Bug 1155553 - Fixes animationinspector regression with actor-capabilities detection; r=bgrins
--HG--
extra : rebase_source : 31a4ed8dc5ed85a11c95e4a895955d2ac5c19b43
2015-04-17 10:14:14 +02:00
Patrick Brosset
b9a03f7e0e Bug 1149999 - 1 - Display transition names in animation-panel now that they have names; r=past
The WebAnimations API now returns names for CSS transitions too. The existing mechanism
in the animation-panel doesn't need to be changed for these names to appear, but some
comments needed modifying.

--HG--
extra : rebase_source : 2ae4d1dd747ad9cf630ec6ed5449a8fc33263004
extra : histedit_source : df40d357379ea965e6ab4095806ee5e4b98cf991
2015-04-16 10:41:37 +02:00
Brian Grinstead
964f9f6d53 Bug 1153903 - Get rid of logspam during devtools talos test runs;r=pbrosset 2015-04-16 09:54:04 -07:00
Jordan Santell
73ef930712 Bug 1077464 - Wire console.profile/profileEnd to the new performance tool. Move most of the recording-model logic from the front end into the PerformanceFront and PerformanceActorConnection so it can manage recordings without the front end being viewed. r=vp,jryans,pbrosset 2015-04-14 08:58:58 -07:00
Patrick Brosset
cb0331564f Bug 1151018 - Refresh the list of Animation widgets when the animation panel loads; r=bgrins
Instead of only refreshing the list of animation widgets when the animations
controller emits an event, also refresh it once after the initialization is
done. This is useful to avoid missing animations that are already applied to
the default inspector selection.

--HG--
extra : rebase_source : f64cbdd4ad68c3cd733a86b7e2729005614a7049
2015-04-07 15:11:18 +02:00
Patrick Brosset
7e82aa061e Bug 1120833 - 4 - Tests for animation inspector refresh on addition/removal; r=miker
(Re-land after backout)

--HG--
extra : rebase_source : ba823c222fde587e2b61eab40e22816cbfd12cc7
2015-04-03 11:07:11 +02:00
Patrick Brosset
28523c6d69 Bug 1120833 - 3 - Refresh the list of animation widgets when new animations are added; r=miker
(Re-land after backout)
The animation-controler was in charge of getting new animation players and refreshing
the UI when done. This is still the case, but it now listens for mutation events from
the actor too, and when they happen, it simply asks the ui to refresh again.
Also, animations with playState "finished" that remain in the animation inspector panel
can now be played again.

--HG--
extra : rebase_source : 309a167b2218c6fc586c64977896a4715bd5a1d5
2015-04-01 10:16:40 +02:00
Patrick Brosset
cdde90bca4 Bug 1144615 - 3 - Tests for the playbackRate selection UI in the animation panel; r=vporof
--HG--
extra : rebase_source : dfc269a9256e4f7fd09f0e2d26634ebc17f29ae7
2015-04-02 12:14:46 +02:00
Patrick Brosset
d1efb1e1ef Bug 1144615 - 2 - Adds a playbackRate selector widget to the animation panel; r=vporof
This adds a playbackRate <select> dropdown next to the list of other playback
control buttons (play/pause, rw, fwd).
The list shows presets, unless the current rate isn't part of these presets
in which case it also shows this rate in the list.
The widget was created as a reusable component with a simple API, like the
PlayerMetaDataHeader.

--HG--
extra : rebase_source : d050fdaa4565a7b51b179ecd08a36b79be2275f1
2015-04-02 12:24:46 +02:00
Patrick Brosset
646f3e6e11 Bug 1144615 - 1 - Minor css fixes in animation panel; r=bgrins
The toolbar class was making the whole background of the animation panel
be grey, unlike the other inspector side-bar panels.
Also removed the unnecessary right-border on the global play/pause button.
2015-04-03 11:24:30 +02:00
Patrick Brosset
2798bf95eb Bug 1134500 - Fix multiple browser/devtools/animationinspector intermittent tests; r=bgrins
This changes a few animationinspector tests by making them wait until the expected animation
state is reached rather than just waiting for the next animation auto-refresh update, which
might, in some cases, not be enough.

This is a re-landing of bug 1134500 and bug 1149711.
2015-04-03 10:32:48 +02:00
Ryan VanderMeulen
8d08642b52 Backed out 2 changesets (bug 1144615, bug 1134500) for mochitest-dt failures.
Backed out changeset ea9cfb625ac6 (bug 1134500)
Backed out changeset 2bb927ec6786 (bug 1144615)

--HG--
extra : rebase_source : 21104648dcd61ad4c4b6d3ea77e49b09077acf7c
2015-04-02 16:10:02 -04:00
Ryan VanderMeulen
769f798614 Backed out 3 changesets (bug 1120833, bug 1149711) for causing bug 1150615.
Backed out changeset 527c548ff03c (bug 1149711)
Backed out changeset 2fe22ffef154 (bug 1120833)
Backed out changeset 501fa7c170ed (bug 1120833)

CLOSED TREE
2015-04-02 14:42:05 -04:00
Patrick Brosset
69553c23c4 Bug 1134500 - Intermittent browser_animation_toggle_button_updates_playerWidgets.js; r=bgrins
Wait for the playState to reach the expected state rather than just waiting for the next auto
refresh of the AnimationPlayerActor.

--HG--
extra : rebase_source : 4efede2ea007fed766e9714e2aff5399170d4b57
2015-04-02 10:16:07 +02:00
Patrick Brosset
42b291a711 Bug 1144615 - 1 - Minor css fixes in animation panel; r=bgrins
The toolbar class was making the whole background of the animation panel
be grey, unlike the other inspector side-bar panels.
Also removed the unnecessary right-border on the global play/pause button.

--HG--
extra : rebase_source : 7b2311bf06294e7e334aeee556d564809d4afcfe
2015-03-26 13:54:12 +01:00
Patrick Brosset
3318f6f1d3 Bug 1149711 - Intermittent browser_animation_ui_updates_when_animation_changes.js; r=bgrins
On particularly slow test environments, it might not be enough to wait for the next
AnimationPlayerActor state update.
I introduced a helper function that makes it possible for tests to wait for state
updates until the animation state reaches the expected value. In most cases, we use
it to wait until an animation reaches a given playState (paused, running, finished).

--HG--
extra : rebase_source : 791da93c00b4eaffe8c31001fc9a2cdec4dc7e4c
2015-04-02 17:02:41 +02:00
Patrick Brosset
04fbffd14f Bug 1120833 - 4 - Tests for animation inspector refresh on addition/removal; r=miker
--HG--
extra : rebase_source : b4886af02cdbc9aed5a88994507bb4b5a5261648
2015-04-01 11:06:22 +02:00
Patrick Brosset
f365dad1b9 Bug 1120833 - 3 - Refresh the list of animation widgets when new animations are added; r=miker
The animation-controler was in charge of getting new animation players and refreshing
the UI when done. This is still the case, but it now listens for mutation events from
the actor too, and when they happen, it simply asks the ui to refresh again.
Also, animations with playState "finished" that remain in the animation inspector panel
can now be played again.

--HG--
extra : rebase_source : 8fe6e245ec04bfe399166e343b888b6ce3ca0ef1
2015-04-01 10:16:40 +02:00
Patrick Brosset
ad0a7a714a Bug 1120833 - 2 - Fire events about changed animations in the AnimationsActor; r=past
This makes the AnimationsActor listen for animation mutations after each
call to getAnimationPlayersForNode on the code that was passed in.
Whenever animations are added or removed, an event is sent to the front
with the list of changes.
The server doesn't know when the client doesn't require updates for the
current node anymore, so it exposes a new method for this.
Note that removed events for finished aniations are skipped, because the
corresponding animations can still be seeked/resumed, so we want the
AnimationPlayerActor to be preserved.

--HG--
extra : rebase_source : 4a9be4695261d65a2f032117af9fce985f5c0378
2015-04-02 12:47:34 +02:00
Patrick Brosset
3ce53fe10e Bug 1120833 - 1 - Remove EventEmitter usage in AnimationPlayerFront
The AnimationPlayerFront needs to emit events when its auto-refresh
mode is enabled, whenever the state changes. Until now, it was doing
so with EventEmitter.
But because decorating the class with EventEmitter adds on/once/off
functions to the instance, it ends up hiding the on/once/off functions
that were already there because the class extends addon sdk EventTarget.

--HG--
extra : rebase_source : 16c097df7b579b980f710ffbd98fe3d01a6fbc76
2015-03-30 11:59:46 +02:00
Patrick Brosset
f971f18e02 Bug 1137771 - Intermittent browser_animation_play_pause_button.js; r=miker
Instead of waiting for the next auto-refresh event only (which could be a
response to an older request, therefore not having the expected state yet),
wait until the state changes to what we expect in the test.
This means that if the play/pause button doesn't work anymore, then the test
will timeout, but at least it won't intermittently fail as it was doing until
now.

--HG--
extra : rebase_source : 75b7ffd38cc9fe83bb938c28109d12c57fbf3294
2015-03-31 16:18:02 +02:00
Panos Astithas
e4b9084401 Add a devtools tag to all devtools tests (bug 1149907). r=pbrosset 2015-04-01 14:09:33 +03:00
Jonathan Watt
d1f6af5340 Bug 1145246, part 4 - Update devtools code for the rename of Animatable.getAnimationPlayers() to Animatable.getAnimations(). r=pbrosset 2015-03-20 18:20:55 +00:00
Patrick Brosset
29c71bdf30 Bug 1120343 - 3 - Tests for the current time control in the animation panel; r=miker
--HG--
extra : rebase_source : 7545a8a1d725f98aa0cdb3ea64f6417f86e012ea
extra : histedit_source : 0b880e161bcf83fb9049a87ee9f3dbf41f2b072e
2015-03-18 12:17:07 +01:00
Patrick Brosset
3e43f77714 Bug 1120343 - 2 - Add rewind and fast-forward buttons to animation player widgets; r=miker
--HG--
extra : rebase_source : 0945ad99c5b266ce5127ef02212aa3848ed79a43
extra : histedit_source : 8dbfdd50200f240df15b263c487d85e5260c15bf
2015-03-17 15:39:19 +01:00
Patrick Brosset
39c2369e5c Bug 1120343 - 1 - Allow setting animations' currentTime by clicking/dragging the timeline; r=miker
--HG--
extra : rebase_source : 9ec165736d6119edeabba893bb93985db489ea28
extra : histedit_source : 6926f2c047f1a32e82175ea8ffc450cef6614a90
2015-03-16 15:37:23 +01:00
Patrick Brosset
0b313cab8d Bug 1132783 - Fix the init sequence of animationinspector tests to avoid intermittents. r=bgrins
CLOSED TREE
2015-02-13 05:41:00 -05:00
Patrick Brosset
b9102ef3d3 Bug 1129454 - 2 - Adds a global play/pause button to the animation panel; r=vp 2015-02-12 16:28:42 +01:00
Patrick Brosset
6c5fdc6b5a Bug 1120899 - Extract the animationplayer meta-data UI to a refreshable component; r=bgrins 2015-02-04 14:03:29 +01:00
Patrick Brosset
e67db31d2d Bug 1122437 - 4 - Do not display the iteration count in animationplayer widget if the value is 1; r=miker 2015-01-23 17:50:14 +01:00
Patrick Brosset
882dba8238 Bug 1122437 - 3 - Prevent the animationplayer widget from displaying time after the animation duration; r=miker 2015-01-23 17:50:14 +01:00
Patrick Brosset
ab930db68e Bug 1122437 - 2 - Make sure animationplayer widgets display the right initial time when created; r=miker 2015-01-23 17:50:14 +01:00
Patrick Brosset
aa1102a52b Bug 1122437 - 1 - Disable animationplayer widgets when the corresponding animation ends; r=miker 2015-01-23 17:50:14 +01:00
Patrick Brosset
14d84f5620 Bug 1120852 - 2 - Don't start the animation timeline UI before the animation delay has passed; r=bgrins 2015-01-15 10:40:55 +01:00
Patrick Brosset
d815a0e0e7 Bug 1105825 - 4 - Adds a simple animation inspector panel to the inspector sidebar; r=bgrins r=vporof 2015-01-10 19:51:46 +01:00