| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 'use strict'; | 5 'use strict'; |
| 6 | 6 |
| 7 installClass('PluginPlaceholderElement', function(PluginPlaceholderElementProtot
ype) { | 7 installClass('PluginPlaceholderElement', function(PluginPlaceholderElementProtot
ype) { |
| 8 PluginPlaceholderElementPrototype.createCallback = function() { | 8 PluginPlaceholderElementPrototype.createCallback = function() { |
| 9 // Produces DOM roughly equivalent to the following HTML: | 9 // Produces DOM roughly equivalent to the following HTML: |
| 10 // | 10 // |
| 11 // <div id="plugin-placeholder"> | 11 // <div id="plugin-placeholder"> |
| 12 // <div id="plugin-placeholder-content"> | 12 // <div id="plugin-placeholder-content"> |
| 13 // <div id="plugin-placeholder-message"></div> | 13 // <div id="plugin-placeholder-message"></div> |
| 14 // </div> | 14 // </div> |
| 15 // </div> | 15 // </div> |
| 16 // | |
| 17 // FIXME: Move style out of script and into CSS. | |
| 18 | 16 |
| 19 this.id = 'plugin-placeholder'; | 17 this.id = 'plugin-placeholder'; |
| 20 this.style.width = '100%'; | 18 |
| 21 this.style.height = '100%'; | 19 var styleElement = document.createElement('style'); |
| 22 this.style.overflow = 'hidden'; | 20 styleElement.textContent = this.styleSource; |
| 23 this.style.display = 'flex'; | |
| 24 this.style.alignItems = 'center'; | |
| 25 this.style.backgroundColor = 'gray'; | |
| 26 this.style.font = '12px -webkit-control'; | |
| 27 | 21 |
| 28 var contentElement = document.createElement('div'); | 22 var contentElement = document.createElement('div'); |
| 29 contentElement.id = 'plugin-placeholder-content'; | 23 contentElement.id = 'plugin-placeholder-content'; |
| 30 contentElement.style.textAlign = 'center'; | |
| 31 contentElement.style.margin = 'auto'; | |
| 32 | 24 |
| 33 var messageElement = document.createElement('div'); | 25 var messageElement = document.createElement('div'); |
| 34 messageElement.id = 'plugin-placeholder-message'; | 26 messageElement.id = 'plugin-placeholder-message'; |
| 35 | 27 |
| 36 contentElement.appendChild(messageElement); | 28 contentElement.appendChild(messageElement); |
| 29 this.appendChild(styleElement); |
| 37 this.appendChild(contentElement); | 30 this.appendChild(contentElement); |
| 38 | 31 |
| 39 this.messageElement = messageElement; | 32 this.messageElement = messageElement; |
| 40 }; | 33 }; |
| 41 | 34 |
| 42 Object.defineProperty(PluginPlaceholderElementPrototype, 'message', { | 35 Object.defineProperty(PluginPlaceholderElementPrototype, 'message', { |
| 43 get: function() { return this.messageElement.innerHTML; }, | 36 get: function() { return this.messageElement.innerHTML; }, |
| 44 set: function(html) { this.messageElement.innerHTML = html; }, | 37 set: function(html) { this.messageElement.innerHTML = html; }, |
| 45 }); | 38 }); |
| 46 }); | 39 }); |
| OLD | NEW |