Chromium Code Reviews| OLD | NEW |
|---|---|
| (Empty) | |
| 1 <link rel="import" href="chrome://resources/html/polymer.html"> | |
| 2 | |
| 3 <dom-module id="cr-drawer"> | |
| 4 <template> | |
| 5 <style> | |
| 6 :host { | |
| 7 bottom: 0; | |
| 8 left: 0; | |
| 9 position: fixed; | |
| 10 right: 0; | |
| 11 top: 0; | |
| 12 transition: visibility 0.2s ease; | |
| 13 visibility: hidden; | |
| 14 } | |
| 15 | |
| 16 :host([opened]) { | |
| 17 visibility: visible; | |
| 18 } | |
| 19 | |
| 20 #contentContainer::backdrop { | |
| 21 background-color: rgba(0, 0, 0, 0); | |
| 22 } | |
| 23 | |
| 24 #contentContainer { | |
| 25 -webkit-transform: translate3d(-100%, 0, 0); | |
| 26 background-color: #FFF; | |
| 27 border: none; | |
| 28 bottom: 0; | |
| 29 height: 100%; | |
| 30 left: 0; | |
| 31 margin: 0; | |
| 32 overflow: hidden; | |
| 33 padding: 0; | |
| 34 position: absolute; | |
| 35 top: 0; | |
| 36 transform: translate3d(-100%, 0, 0); | |
| 37 transition-property: -webkit-transform; | |
| 38 transition-property: transform; | |
| 39 transition: 0.2s ease; | |
| 40 width: var(--cr-drawer-width, 256px); | |
| 41 @apply(--app-drawer-content-container); | |
| 42 } | |
| 43 | |
| 44 :host([position=right]) > #contentContainer { | |
| 45 -webkit-transform: translate3d(100%, 0, 0); | |
| 46 left: auto; | |
| 47 right: 0; | |
| 48 transform: translate3d(100%, 0, 0); | |
| 49 } | |
| 50 | |
| 51 #after { | |
| 52 bottom: 0; | |
| 53 left: 0; | |
| 54 position: fixed; | |
| 55 top: 0; | |
| 56 visibility: visible; | |
| 57 width: 20px; | |
| 58 } | |
| 59 | |
| 60 :host([position=right]) > #after { | |
| 61 left: auto; | |
| 62 right: 0; | |
| 63 } | |
| 64 | |
| 65 :host([opened]) > #contentContainer { | |
| 66 -webkit-transform: translate3d(0, 0, 0); | |
| 67 transform: translate3d(0, 0, 0); | |
| 68 } | |
| 69 | |
| 70 #scrim { | |
| 71 -webkit-transform: translateZ(0); | |
| 72 background: var(--app-drawer-scrim-background, rgba(0, 0, 0, 0.5)); | |
| 73 bottom: 0; | |
| 74 left: 0; | |
| 75 opacity: 0; | |
| 76 position: absolute; | |
| 77 right: 0; | |
| 78 top: 0; | |
| 79 transform: translateZ(0); | |
| 80 transition: opacity 0.2s ease; | |
| 81 } | |
| 82 | |
| 83 :host([opened]) > #scrim { | |
| 84 opacity: 1; | |
| 85 } | |
| 86 </style> | |
| 87 | |
| 88 <div id="scrim"></div> | |
| 89 <dialog id="contentContainer" on-tap="onDialogTap_"> | |
|
dpapad
2016/11/07 20:13:24
Why do we need to wrap <dialog> instead of extendi
dpapad
2016/11/08 20:34:05
FYI, I put together a minimal example at https://j
hcarmona
2016/11/16 17:44:54
Changed to extend dialog.
hcarmona
2016/11/16 17:44:54
Thanks! That was super useful, new patch uses the
| |
| 90 <content></content> | |
| 91 </dialog> | |
| 92 <div id="after"></div> | |
| 93 </template> | |
| 94 </dom-module> | |
| 95 <script src="cr_drawer.js"></script> | |
| OLD | NEW |