| OLD | NEW |
| (Empty) |
| 1 <!-- Copyright (c) 2014 The Chromium Authors. All rights reserved. | |
| 2 Use of this source code is governed by a BSD-style license that can be | |
| 3 found in the LICENSE file. --> | |
| 4 | |
| 5 <link rel="import" href="cr-dialog-backdrop.html"> | |
| 6 <link rel="import" href="cr-keyboard.html"> | |
| 7 | |
| 8 <polymer-element name="cr-dialog" extends="dialog"> | |
| 9 <template> | |
| 10 <style> | |
| 11 :host(.polyfill) { | |
| 12 position: absolute; | |
| 13 top: 100px; | |
| 14 left: 0; | |
| 15 right: 0; | |
| 16 width: -webkit-fit-content; | |
| 17 height: -webkit-fit-content; | |
| 18 margin: auto; | |
| 19 background: white; | |
| 20 z-index: 100; | |
| 21 } | |
| 22 | |
| 23 :host(.polyfill:not([open])) { | |
| 24 display: none; | |
| 25 } | |
| 26 </style> | |
| 27 <content></content> | |
| 28 <template if="{{ polyfill && open }}"> | |
| 29 <cr-keyboard on-key-escape="{{ fireCancelEvent }}"></cr-keyboard> | |
| 30 </template> | |
| 31 </template> | |
| 32 <script> | |
| 33 (function() { | |
| 34 var backdrop = document.createElement("cr-dialog-backdrop"); | |
| 35 Polymer("cr-dialog", { | |
| 36 created: function() { | |
| 37 if (window.HTMLDialogElement) | |
| 38 return; | |
| 39 this.classList.add("polyfill"); | |
| 40 this.showModal = function() { | |
| 41 this.open = true; | |
| 42 this.setAttribute("open", ""); | |
| 43 document.body.appendChild(backdrop); | |
| 44 this.async(function() { | |
| 45 // Focus the first input. | |
| 46 var input = this.querySelector("input, textarea, * /deep
/ input, * /deep/ textarea"); | |
| 47 if (input) | |
| 48 input.focus(); | |
| 49 }); | |
| 50 }; | |
| 51 this.close = function() { | |
| 52 if (!this.open) | |
| 53 return; | |
| 54 this.removeAttribute("open"); | |
| 55 backdrop.remove(); | |
| 56 }; | |
| 57 this.fireCancelEvent = function(event) { | |
| 58 event.preventDefault(); | |
| 59 if (!this.fire("cancel").defaultPrevented) | |
| 60 this.close(); | |
| 61 }; | |
| 62 }, | |
| 63 }); | |
| 64 })(); | |
| 65 </script> | |
| 66 </ploymer-element> | |
| OLD | NEW |