Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(8409)

Unified Diff: chrome/renderer/resources/extensions/window_controls.js

Issue 534163002: Move app.window API implementation to extensions (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix OWNERS Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/renderer/resources/extensions/window_controls.js
diff --git a/chrome/renderer/resources/extensions/window_controls.js b/chrome/renderer/resources/extensions/window_controls.js
deleted file mode 100644
index 75c88e63927e4d9e843134b5e9fb168b174ef10b..0000000000000000000000000000000000000000
--- a/chrome/renderer/resources/extensions/window_controls.js
+++ /dev/null
@@ -1,78 +0,0 @@
-// Copyright 2013 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-//
-// <window-controls> shadow element implementation.
-//
-
-var chrome = requireNative('chrome').GetChrome();
-var forEach = require('utils').forEach;
-var addTagWatcher = require('tagWatcher').addTagWatcher;
-var appWindow = require('app.window');
-var getHtmlTemplate =
- requireNative('app_window_natives').GetWindowControlsHtmlTemplate;
-
-/**
- * @constructor
- */
-function WindowControls(node) {
- this.node_ = node;
- this.shadowRoot_ = this.createShadowRoot_(node);
- this.setupWindowControls_();
-}
-
-/**
- * @private
- */
-WindowControls.prototype.template_element = null;
-
-/**
- * @private
- */
-WindowControls.prototype.createShadowRoot_ = function(node) {
- // Initialize |template| from HTML template resource and cache result.
- var template = WindowControls.prototype.template_element;
- if (!template) {
- var element = document.createElement('div');
- element.innerHTML = getHtmlTemplate();
- WindowControls.prototype.template_element = element.firstChild;
- template = WindowControls.prototype.template_element;
- }
- // Create shadow root element with template clone as first child.
- var shadowRoot = node.createShadowRoot();
- shadowRoot.appendChild(template.content.cloneNode(true));
- return shadowRoot;
-}
-
-/**
- * @private
- */
-WindowControls.prototype.setupWindowControls_ = function() {
- var self = this;
- this.shadowRoot_.querySelector("#close-control").addEventListener('click',
- function(e) {
- chrome.app.window.current().close();
- });
-
- this.shadowRoot_.querySelector("#maximize-control").addEventListener('click',
- function(e) {
- self.maxRestore_();
- });
-}
-
-/**
- * @private
- * Restore or maximize depending on current state
- */
-WindowControls.prototype.maxRestore_ = function() {
- if (chrome.app.window.current().isMaximized()) {
- chrome.app.window.current().restore();
- } else {
- chrome.app.window.current().maximize();
- }
-}
-
-addTagWatcher('WINDOW-CONTROLS', function(addedNode) {
- new WindowControls(addedNode);
-});

Powered by Google App Engine
This is Rietveld 408576698