Commit Graph

45 Commits

Author SHA1 Message Date
J. Ryan Stinnett
7e2158acc2 Bug 1178851 - Move testing flag to DevToolsUtils. r=ochameau 2015-07-02 04:56:57 -05:00
Ryan VanderMeulen
2c8c8f9aab Merge fx-team to m-c. a=merge 2015-06-17 15:01:24 -04:00
Edoardo Putti
c16433da27 Bug 1121896 - Show when animations are running on the compositor in the animation panel. r=pbro 2015-06-17 01:40:00 -04:00
Patrick Brosset
48a39f2d81 Bug 1155663 - More tests for the timeline-based animation inspector UI; r=bgrins 2015-06-15 12:03:54 +02:00
Patrick Brosset
92153696ea 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.
2015-06-11 15:45:57 +02:00
Jeff Walden
eed5b7e229 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
b0fc02b334 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.
2015-05-28 09:30:03 +02:00
Patrick Brosset
b63112fcdc 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.
2015-05-04 13:55:51 +02:00
Patrick Brosset
501714e927 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.
2015-04-27 11:01:47 +02:00
Patrick Brosset
e5ff608b97 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.
2015-04-21 09:22:30 +02:00
Patrick Brosset
c3d0aa3f8c Bug 1155553 - Fixes animationinspector regression with actor-capabilities detection; r=bgrins 2015-04-17 10:14:14 +02:00
Patrick Brosset
677c354d4c 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.
2015-04-16 10:41:37 +02:00
Brian Grinstead
8216c7e38f Bug 1153903 - Get rid of logspam during devtools talos test runs;r=pbrosset 2015-04-16 09:54:04 -07:00
Jordan Santell
11a3e3a081 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
1d6311ebb5 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.
2015-04-07 15:11:18 +02:00
Patrick Brosset
c6a50db9b3 Bug 1120833 - 4 - Tests for animation inspector refresh on addition/removal; r=miker
(Re-land after backout)
2015-04-03 11:07:11 +02:00
Patrick Brosset
977c0dc71b 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.
2015-04-01 10:16:40 +02:00
Patrick Brosset
0534bbba6a Bug 1144615 - 3 - Tests for the playbackRate selection UI in the animation panel; r=vporof 2015-04-02 12:14:46 +02:00
Patrick Brosset
eb87dc2fc8 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.
2015-04-02 12:24:46 +02:00
Patrick Brosset
134301d676 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
ec78afa650 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
e147b69e64 Backed out 2 changesets (bug 1144615, bug 1134500) for mochitest-dt failures.
Backed out changeset ea9cfb625ac6 (bug 1134500)
Backed out changeset 2bb927ec6786 (bug 1144615)
2015-04-02 16:10:02 -04:00
Ryan VanderMeulen
d431ace806 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
7d51d2992a 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.
2015-04-02 10:16:07 +02:00
Patrick Brosset
f6792f2c27 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-03-26 13:54:12 +01:00
Patrick Brosset
c30cb9413d 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).
2015-04-02 17:02:41 +02:00
Patrick Brosset
1eaf41cb1b Bug 1120833 - 4 - Tests for animation inspector refresh on addition/removal; r=miker 2015-04-01 11:06:22 +02:00
Patrick Brosset
04f75d015f 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.
2015-04-01 10:16:40 +02:00
Patrick Brosset
30850f3c55 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.
2015-04-02 12:47:34 +02:00
Patrick Brosset
389c29aaa5 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.
2015-03-30 11:59:46 +02:00
Patrick Brosset
95eb1d2538 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.
2015-03-31 16:18:02 +02:00
Panos Astithas
a936ed870b Add a devtools tag to all devtools tests (bug 1149907). r=pbrosset 2015-04-01 14:09:33 +03:00
Jonathan Watt
617703f961 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
0a6a9e354e Bug 1120343 - 3 - Tests for the current time control in the animation panel; r=miker 2015-03-18 12:17:07 +01:00
Patrick Brosset
bb7c6f1bb5 Bug 1120343 - 2 - Add rewind and fast-forward buttons to animation player widgets; r=miker 2015-03-17 15:39:19 +01:00
Patrick Brosset
66b72470da Bug 1120343 - 1 - Allow setting animations' currentTime by clicking/dragging the timeline; r=miker 2015-03-16 15:37:23 +01:00
Patrick Brosset
f1587b21aa 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
d38e70b8e6 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
e1517f0ed2 Bug 1120899 - Extract the animationplayer meta-data UI to a refreshable component; r=bgrins 2015-02-04 14:03:29 +01:00
Patrick Brosset
d385dd5cc8 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
56772df034 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
759584096c 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
9235eb2b12 Bug 1122437 - 1 - Disable animationplayer widgets when the corresponding animation ends; r=miker 2015-01-23 17:50:14 +01:00
Patrick Brosset
3a6ab87671 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
2aab49fd92 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