Home | History | Annotate | Download | only in webapp
      1 // Copyright (c) 2012 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 'use strict';
      6 
      7 var remoting = remoting || {};
      8 
      9 /**
     10  * Attach appropriate event handlers and show or hide the feedback button based
     11  * on whether or not the current version of Chrome recognizes Chrome Remote
     12  * Desktop as an authorized feedback source.
     13  *
     14  * @param {HTMLElement} container The menu containing the help and feedback
     15  *     items.
     16  */
     17 remoting.manageHelpAndFeedback = function(container) {
     18   var showHelp = function() {
     19     window.open('https://www.google.com/support/chrome/bin/answer.py?' +
     20                 'answer=1649523');
     21   }
     22   var helpButton = container.querySelector('.menu-help');
     23   base.debug.assert(helpButton != null);
     24   helpButton.addEventListener('click', showHelp, false);
     25   var feedbackButton = container.querySelector('.menu-feedback');
     26   base.debug.assert(feedbackButton != null);
     27   var chromeVersion = parseInt(
     28       window.navigator.appVersion.match(/Chrome\/(\d+)\./)[1], 10);
     29   if (chromeVersion >= 35) {
     30     feedbackButton.addEventListener('click',
     31                                     remoting.sendFeedback_,
     32                                     false);
     33   } else {
     34     feedbackButton.hidden = true;
     35   }
     36 };
     37 
     38 /**
     39  * Pass the current version of Chrome Remote Desktop to the Google Feedback
     40  * extension and instruct it to show the feedback dialog.
     41  */
     42 remoting.sendFeedback_ = function() {
     43   var message = {
     44     requestFeedback: true,
     45     feedbackInfo: {
     46       description: '',
     47       systemInformation: [
     48         { key: 'version', value: remoting.getExtensionInfo() }
     49       ]
     50     }
     51   };
     52   var kFeedbackExtensionId = 'gfdkimpbcpahaombhbimeihdjnejgicl';
     53   chrome.runtime.sendMessage(kFeedbackExtensionId, message, function() {});
     54 };