Pin Chrome's shortcut to the Win10 Start menu on install and OS upgrade.
[chromium-blink-merge.git] / third_party / polymer / v1_0 / components / neon-animation / neon-shared-element-animation-behavior.html
blob7787615b039335c8f3a985bd6fe9dc3c6e5332b7
1 <!--
2 @license
3 Copyright (c) 2015 The Polymer Project Authors. All rights reserved.
4 This code may only be used under the BSD style license found at http://polymer.github.io/LICENSE.txt
5 The complete set of authors may be found at http://polymer.github.io/AUTHORS.txt
6 The complete set of contributors may be found at http://polymer.github.io/CONTRIBUTORS.txt
7 Code distributed by Google as part of the polymer project is also
8 subject to an additional IP rights grant found at http://polymer.github.io/PATENTS.txt
9 -->
11 <link rel="import" href="../polymer/polymer.html">
12 <link rel="import" href="neon-animation-behavior.html">
14 <script>
16 /**
17 * Use `Polymer.NeonSharedElementAnimationBehavior` to implement shared element animations.
18 * @polymerBehavior Polymer.NeonSharedElementAnimationBehavior
20 Polymer.NeonSharedElementAnimationBehaviorImpl = {
22 properties: {
24 /**
25 * Cached copy of shared elements.
27 sharedElements: {
28 type: Object
33 /**
34 * Finds shared elements based on `config`.
36 findSharedElements: function(config) {
37 var fromPage = config.fromPage;
38 var toPage = config.toPage;
39 if (!fromPage || !toPage) {
40 console.warn(this.is + ':', !fromPage ? 'fromPage' : 'toPage', 'is undefined!');
41 return null;
44 if (!fromPage.sharedElements || !toPage.sharedElements) {
45 console.warn(this.is + ':', 'sharedElements are undefined for', !fromPage.sharedElements ? fromPage : toPage);
46 return null;
49 var from = fromPage.sharedElements[config.id]
50 var to = toPage.sharedElements[config.id];
52 if (!from || !to) {
53 console.warn(this.is + ':', 'sharedElement with id', config.id, 'not found in', !from ? fromPage : toPage);
54 return null;
57 this.sharedElements = {
58 from: from,
59 to: to
61 return this.sharedElements;
66 /** @polymerBehavior Polymer.NeonSharedElementAnimationBehavior */
67 Polymer.NeonSharedElementAnimationBehavior = [
68 Polymer.NeonAnimationBehavior,
69 Polymer.NeonSharedElementAnimationBehaviorImpl
72 </script>