| Index: chrome/browser/resources/bug_report.html
|
| diff --git a/chrome/browser/resources/bug_report.html b/chrome/browser/resources/bug_report.html
|
| index 6192960ec576d485d75b5305f99dfeff79cd5240..3d3d058f51b084784787be1701382c4aea8fd688 100644
|
| --- a/chrome/browser/resources/bug_report.html
|
| +++ b/chrome/browser/resources/bug_report.html
|
| @@ -1,220 +1,289 @@
|
| -<!DOCTYPE HTML>
|
| -<html i18n-values="dir:textdirection;">
|
| -<head>
|
| -<meta charset="utf-8"/>
|
| -<title i18n-content="title"></title>
|
| -<link rel="stylesheet" href="bug_report.css"/>
|
| -
|
| -<script src="shared/js/local_strings.js"></script>
|
| -<script src="shared/js/util.js"></script>
|
| -<script src="bug_report.js"></script>
|
| -<script>
|
| -
|
| -///////////////////////////////////////////////////////////////////////////////
|
| -// Document Functions:
|
| -/**
|
| - * Window onload handler, sets up the page.
|
| - */
|
| -function load() {
|
| - $('sysinfo-url').onclick = function(event) {
|
| - chrome.send('openSystemTab');
|
| - };
|
| -
|
| - // textContent on description-text textarea seems to default
|
| - // to several spaces, this resets it to empty.
|
| - $('description-text').textContent = '';
|
| - $('send-report-button').disabled = true;
|
| -
|
| - $('issue-with-combo').addEventListener('change', function(e) {
|
| - $('send-report-button').disabled =
|
| - this.selectedIndex <= 0 || $('description-text').value.length == 0;
|
| - });
|
| -
|
| - $('description-text').addEventListener('keyup', function(e) {
|
| - $('send-report-button').disabled =
|
| - $('issue-with-combo').selectedIndex <= 0 || this.value.length == 0;
|
| - });
|
| -
|
| - $('current-screenshot').nextSibling.textContent =
|
| - localStrings.getString('currentscreenshots');
|
| -<if expr="pp_ifdef('chromeos')">
|
| - $('saved-screenshot').nextSibling.textContent =
|
| - localStrings.getString('savedscreenshots');
|
| -</if>
|
| - $('no-screenshot').nextSibling.textContent =
|
| - localStrings.getString('noscreenshot');
|
| -
|
| - // Get a list of issues that we allow the user to select from.
|
| - // Note, the order and the issues types themselves are different
|
| - // between Chromium and Chromium OS, so this code needs to be
|
| - // maintained individually between the bug_report.html and
|
| - // bug_report_cros.html files.
|
| - var issueTypeText = [];
|
| - issueTypeText[0] = localStrings.getString('issue-choose');
|
| -<if expr="not pp_ifdef('chromeos')">
|
| - issueTypeText[1] = localStrings.getString('issue-page-formatting');
|
| - issueTypeText[2] = localStrings.getString('issue-page-load');
|
| - issueTypeText[3] = localStrings.getString('issue-plugins');
|
| - issueTypeText[4] = localStrings.getString('issue-tabs');
|
| - issueTypeText[5] = localStrings.getString('issue-sync');
|
| - issueTypeText[6] = localStrings.getString('issue-crashes');
|
| - issueTypeText[7] = localStrings.getString('issue-extensions');
|
| - issueTypeText[8] = localStrings.getString('issue-phishing');
|
| - issueTypeText[9] = localStrings.getString('issue-other');
|
| -</if>
|
| -<if expr="pp_ifdef('chromeos')">
|
| - issueTypeText[1] = localStrings.getString('issue-connectivity');
|
| - issueTypeText[2] = localStrings.getString('issue-sync');
|
| - issueTypeText[3] = localStrings.getString('issue-crashes');
|
| - issueTypeText[4] = localStrings.getString('issue-page-formatting');
|
| - issueTypeText[5] = localStrings.getString('issue-extensions');
|
| - issueTypeText[6] = localStrings.getString('issue-standby');
|
| - issueTypeText[7] = localStrings.getString('issue-phishing');
|
| - issueTypeText[8] = localStrings.getString('issue-other');
|
| -</if>
|
| - // Add all the issues to the selection box.
|
| - for (var i = 0; i < issueTypeText.length; i++) {
|
| - var option = document.createElement('option');
|
| - option.className = 'bug-report-text';
|
| - option.textContent = issueTypeText[i];
|
| - $('issue-with-combo').add(option);
|
| - }
|
| -
|
| - chrome.send('getDialogDefaults', []);
|
| - chrome.send('refreshScreenshots', []);
|
| -};
|
| -
|
| -function setupScreenshots(screenshots) {
|
| - if (screenshots.length == 1) {
|
| - addScreenshot('current-screenshots', screenshots[0]);
|
| - } else {
|
| - // We're in Chromium OS.
|
| - currentScreenshot = screenshots[0];
|
| - addScreenshot('current-screenshots', currentScreenshot);
|
| -
|
| - savedScreenshots = screenshots[1];
|
| - if (savedScreenshots.length == 0) {
|
| - $('saved-screenshots').disabled = true;
|
| - return;
|
| - }
|
| - for (i = 0; i < savedScreenshots.length; ++i)
|
| - addScreenshot('saved-screenshots', savedScreenshots[i]);
|
| - }
|
| -}
|
| -
|
| -function setupDialogDefaults(defaults) {
|
| - if (defaults.length > 0) {
|
| - $('page-url-text').value = defaults[0];
|
| - if (defaults.length > 2) {
|
| - // We're in Chromium OS.
|
| - $('user-email-text').value = defaults[2];
|
| - }
|
| - }
|
| -}
|
| -
|
| -window.addEventListener('DOMContentLoaded', load);
|
| -</script>
|
| -</head>
|
| -<body>
|
| -<div>
|
| - <div id="main-panel">
|
| - <div class="formpane">
|
| - <table>
|
| - <!-- Issue type dropdown -->
|
| - <tr>
|
| - <th id="issue-with" class="bug-report-label" i18n-content="issue-with">
|
| - </th>
|
| - </tr>
|
| - <tr>
|
| - <td>
|
| - <select id="issue-with-combo" class="bug-report-text">
|
| - </select>
|
| - </td>
|
| - </tr>
|
| - <!-- Page URL text box -->
|
| - <tr>
|
| - <th colspan="2" id="page-url" class="bug-report-label"
|
| - i18n-content="page-url">
|
| - </th>
|
| - </tr>
|
| - <tr>
|
| - <td colspan="2">
|
| - <input id='page-url-text' maxlength=200 class="bug-report-text">
|
| - </td>
|
| - </tr>
|
| - <!-- Description -->
|
| - <tr>
|
| - <th id="description" colspan="2" class="bug-report-label"
|
| - i18n-content="description">
|
| - </th>
|
| - </tr>
|
| - <tr>
|
| - <td colspan="2">
|
| - <textarea id='description-text' rows="10" class="bug-report-text">
|
| - </textarea>
|
| - </td>
|
| - </tr>
|
| - </table>
|
| - </div>
|
| - <div class="formpane">
|
| - <table>
|
| -<if expr="pp_ifdef('chromeos')">
|
| - <!-- Page URL text box -->
|
| - <tr>
|
| - <th id="user-email" class="bug-report-label" i18n-content="user-email">
|
| - </th>
|
| - </tr>
|
| - <tr>
|
| - <td>
|
| - <input id='user-email-text' maxlength=200 class="bug-report-text">
|
| - </td>
|
| - </tr>
|
| - <!-- System Information checkbox -->
|
| - <tr>
|
| - <td>
|
| - <input id="sys-info-checkbox" type="checkbox" value="sysinfo" checked>
|
| - <span id="sysinfo-label"></span>
|
| - <a id="sysinfo-url" href="#" >
|
| - <span i18n-content="sysinfo"></span>
|
| - </a>
|
| - </td>
|
| - </tr>
|
| -</if>
|
| - <!-- Screenshot radio buttons -->
|
| - <tr>
|
| - <th id="screenshot" class="bug-report-label" i18n-content="screenshot">
|
| - </th>
|
| - </tr>
|
| - <tr>
|
| - <td>
|
| - <input id="no-screenshot" type="radio" name="screenshot-group"
|
| - value="none" onclick="noneSelected()">
|
| - <br>
|
| -<if expr="pp_ifdef('chromeos')">
|
| - <input id="saved-screenshot" type="radio" name="screenshot-group"
|
| - value="saved" onclick="savedSelected()">
|
| - <br>
|
| - <div id="saved-screenshots" style="display: none;"
|
| - class="thumbnail-list">
|
| - </div>
|
| -</if>
|
| - <input id="current-screenshot" type="radio" name="screenshot-group"
|
| - value="current" checked onclick="currentSelected()">
|
| - <br>
|
| - <div id="current-screenshots" class="thumbnail-list">
|
| - </div>
|
| - </td>
|
| - </tr>
|
| - </table>
|
| - </div>
|
| - </div>
|
| -</div>
|
| -<div id="buttons">
|
| - <!-- Buttons -->
|
| - <input id='send-report-button' type="submit" class="bug-report-button"
|
| - i18n-values="value:send-report" onclick="sendReport()">
|
| - <input id='cancel-button' type="submit" class="bug-report-button"
|
| - i18n-values="value:cancel" onclick="cancel()">
|
| -</div>
|
| -</body>
|
| -</html>
|
| +<!DOCTYPE HTML>
|
| +<html i18n-values="dir:textdirection;">
|
| +<head>
|
| +<meta charset="utf-8"/>
|
| +<title i18n-content="page-title"></title>
|
| +<!-- We want to keep our style in sync with the options page. -->
|
| +<link rel="stylesheet" href="dom_ui.css">
|
| +<link rel="stylesheet" href="options/options_page.css">
|
| +<link rel="stylesheet" href="bug_report.css">
|
| +
|
| +<script src="shared/js/local_strings.js"></script>
|
| +<script src="shared/js/util.js"></script>
|
| +<script src="bug_report.js"></script>
|
| +<script>
|
| +
|
| +///////////////////////////////////////////////////////////////////////////////
|
| +// Document Functions:
|
| +/**
|
| + * Window onload handler, sets up the page.
|
| + */
|
| +function load() {
|
| + $('sysinfo-url').onclick = function(event) {
|
| + chrome.send('openSystemTab');
|
| + };
|
| +
|
| + var menuOffPattern = /(^\?|&)menu=off($|&)/;
|
| + var menuDisabled = menuOffPattern.test(window.location.search);
|
| + document.documentElement.setAttribute('hide-menu', menuDisabled);
|
| +
|
| +
|
| + // textContent on description-text textarea seems to default
|
| + // to several spaces, this resets it to empty.
|
| + $('description-text').textContent = '';
|
| +
|
| + // Get a list of issues that we allow the user to select from.
|
| + // Note, the order and the issues types themselves are different
|
| + // between Chromium and Chromium OS, so this code needs to be
|
| + // maintained individually between in these two sections.
|
| + var issueTypeText = [];
|
| + issueTypeText[0] = localStrings.getString('issue-choose');
|
| +<if expr="not pp_ifdef('chromeos')">
|
| + issueTypeText[1] = localStrings.getString('issue-page-formatting');
|
| + issueTypeText[2] = localStrings.getString('issue-page-load');
|
| + issueTypeText[3] = localStrings.getString('issue-plugins');
|
| + issueTypeText[4] = localStrings.getString('issue-tabs');
|
| + issueTypeText[5] = localStrings.getString('issue-sync');
|
| + issueTypeText[6] = localStrings.getString('issue-crashes');
|
| + issueTypeText[7] = localStrings.getString('issue-extensions');
|
| + issueTypeText[8] = localStrings.getString('issue-phishing');
|
| + issueTypeText[9] = localStrings.getString('issue-other');
|
| +</if>
|
| +<if expr="pp_ifdef('chromeos')">
|
| + issueTypeText[1] = localStrings.getString('issue-connectivity');
|
| + issueTypeText[2] = localStrings.getString('issue-sync');
|
| + issueTypeText[3] = localStrings.getString('issue-crashes');
|
| + issueTypeText[4] = localStrings.getString('issue-page-formatting');
|
| + issueTypeText[5] = localStrings.getString('issue-extensions');
|
| + issueTypeText[6] = localStrings.getString('issue-standby');
|
| + issueTypeText[7] = localStrings.getString('issue-phishing');
|
| + issueTypeText[8] = localStrings.getString('issue-other');
|
| +</if>
|
| + // Add all the issues to the selection box.
|
| + for (var i = 0; i < issueTypeText.length; i++) {
|
| + var option = document.createElement('option');
|
| + option.className = 'bug-report-text';
|
| + option.textContent = issueTypeText[i];
|
| + $('issue-with-combo').add(option);
|
| + }
|
| +
|
| + chrome.send('getDialogDefaults', []);
|
| + chrome.send('refreshCurrentScreenshot', []);
|
| +};
|
| +
|
| +function setupCurrentScreenshot(screenshot) {
|
| + addScreenshot('current-screenshots', screenshot);
|
| +}
|
| +
|
| +function setupSavedScreenshots(screenshots) {
|
| + if (screenshots.length == 0) {
|
| + $('saved-screenshots').innerText =
|
| + localStrings.getString('no-saved-screenshots');
|
| +
|
| + // Make sure we make the display the message
|
| + $('saved-screenshots').style.display = 'block';
|
| +
|
| + // In case the user tries to send now; fail safe, do not send a screenshot
|
| + // at all versus sending the current screenshot.
|
| + selectedThumbnailDivId = '';
|
| + selectedThumbnailId = '';
|
| + } else {
|
| + for (i = 0; i < screenshots.length; ++i)
|
| + addScreenshot('saved-screenshots', screenshots[i]);
|
| +
|
| + // Now that we have our screenshots, try selecting the saved screenshots
|
| + // again.
|
| + savedSelected();
|
| + }
|
| +}
|
| +
|
| +
|
| +function setupDialogDefaults(defaults) {
|
| + if (defaults.length > 0) {
|
| + $('page-url-text').value = defaults[0];
|
| + if (defaults[0] == '')
|
| + $('page-url-checkbox').checked = false;
|
| +
|
| + if (defaults.length > 2) {
|
| + // We're in Chromium OS.
|
| + $('user-email-text').textContent = defaults[2];
|
| + if (defaults[2] == '') {
|
| + // if we didn't get an e-mail address from cros,
|
| + // disable the user email display totally
|
| + $('user-email-table').style.display = 'none';
|
| +
|
| + // this also means we are in privacy mode, so no saved screenshots
|
| + $('screenshot-link-tosaved').style.display = 'none';
|
| + }
|
| + }
|
| + }
|
| +}
|
| +
|
| +window.addEventListener('DOMContentLoaded', load);
|
| +</script>
|
| +</head>
|
| +<body i18n-values=".style.fontFamily:fontfamily;.style.fontSize:fontsize">
|
| +<div id="main-content">
|
| + <div id="navbar-container">
|
| + <h1 id="settings-title" i18n-content="page-title">
|
| + </h1>
|
| + </div>
|
| + <div id="mainview" class>
|
| + <!-- Even though we really don't need these many nested DIV's, we're staying
|
| + as close to the settings page layout as possible, re-using all our styles
|
| + from options_page.css -->
|
| + <div id="mainview-content">
|
| + <div class="page">
|
| + <h1 i18n-content="title"></h1>
|
| + <table id="main-table">
|
| + <!-- Issue type dropdown -->
|
| + <tbody>
|
| + <tr>
|
| + <th id="issue-with" class="bug-report-label"
|
| + i18n-content="issue-with"></th>
|
| + </tr>
|
| + <tr>
|
| + <td>
|
| + <select id="issue-with-combo" class="bug-report-text">
|
| + </select>
|
| + </td>
|
| + </tr>
|
| + <!-- Description -->
|
| + <tr>
|
| + <th id="description" colspan="2" class="bug-report-label"
|
| + i18n-content="description"></th>
|
| + </tr>
|
| + <tr>
|
| + <td colspan="2">
|
| + <textarea id="description-text" rows="10"
|
| + class="bug-report-text"></textarea>
|
| + </td>
|
| + </tr>
|
| + <tr>
|
| + <td>
|
| + <table style="-webkit-border-vertical-spacing: 0px;">
|
| + <!-- Page URL -->
|
| + <tr>
|
| + <td>
|
| + <table class="bug-report-table">
|
| + <tr>
|
| + <td class="bug-report-fieldlabel">
|
| + <input id="page-url-checkbox" type="checkbox"
|
| + value="pageurl" checked>
|
| + <span id="page-url-label" i18n-content="page-url">
|
| + </span>
|
| + </td>
|
| + <td>
|
| + <input id="page-url-text" class="bug-report-field"
|
| + maxlength="200">
|
| + </td>
|
| + </tr>
|
| + </table>
|
| + </td>
|
| + </tr>
|
| + <!-- User e-mail -->
|
| + <tr>
|
| + <td>
|
| +<if expr="pp_ifdef('chromeos')">
|
| + <table id="user-email-table" class="bug-report-table">
|
| + <tr>
|
| + <td class="bug-report-fieldlabel">
|
| + <input id="user-email-checkbox" type="checkbox"
|
| + checked>
|
| + <span id="user-email-label"
|
| + i18n-content="user-email"></span>
|
| + </td>
|
| + <td>
|
| + <label id="user-email-text"
|
| + class="bug-report-field"></label>
|
| + </td>
|
| + </tr>
|
| + </table>
|
| +</if>
|
| + </td>
|
| + </tr>
|
| + <!-- System Information -->
|
| + <tr>
|
| + <td>
|
| + <table class="bug-report-table">
|
| + <tr>
|
| + <td class="bug-report-fieldlabel">
|
| + <input id="sys-info-checkbox" type="checkbox"
|
| + checked>
|
| + <span id="sysinfo-label">
|
| + <a id="sysinfo-url" href="#"
|
| + i18n-content="sysinfo"></a>
|
| + </span>
|
| + </td>
|
| + </tr>
|
| + </table>
|
| + </td>
|
| + </tr>
|
| + <!-- Screenshot -->
|
| + <tr>
|
| + <td>
|
| + <table class="bug-report-table">
|
| + <tr>
|
| + <td class="bug-report-fieldlabel">
|
| + <input id="screenshot-checkbox" type="checkbox">
|
| + <span id="screenshot-label-current"
|
| + i18n-content="current-screenshot">
|
| + </span>
|
| +<if expr="pp_ifdef('chromeos')">
|
| + <span id="screenshot-label-saved"
|
| + style="display: none;"
|
| + i18n-content="saved-screenshot">
|
| + </span>
|
| + <a id="screenshot-link-tosaved" href="#"
|
| + onclick="changeToSaved()"
|
| + i18n-content="choose-different-screenshot">
|
| + </a>
|
| + <a id="screenshot-link-tocurrent" href="#"
|
| + style="display: none;"
|
| + onclick="changeToCurrent()"
|
| + i18n-content="choose-original-screenshot">
|
| + </a>
|
| +</if>
|
| + </td>
|
| + </tr>
|
| + </table>
|
| + </td>
|
| + </tr>
|
| + <tr>
|
| + <td>
|
| +<if expr="pp_ifdef('chromeos')">
|
| + <div id="saved-screenshots" style="display: none;"
|
| + class="thumbnail-list"></div>
|
| +</if>
|
| + <div id="current-screenshots" class="thumbnail-list">
|
| + </div>
|
| + </td>
|
| + </tr>
|
| + </table>
|
| + </td>
|
| + </tr>
|
| + <tr>
|
| + <td>
|
| + <div id="buttons-pane">
|
| + <!-- Buttons -->
|
| + <input id="send-report-button" type="submit"
|
| + class="bug-report-button" onclick="sendReport()"
|
| + i18n-values="value:send-report">
|
| + <input id="cancel-button" type="submit"
|
| + class="bug-report-button" i18n-values="value:cancel"
|
| + onclick="cancel()">
|
| + </div>
|
| +<if expr="pp_ifdef('chromeos')">
|
| + <div id="privacy-note" i18n-values=".innerHTML:privacy-note">
|
| + </div>
|
| +</if>
|
| + </td>
|
| + </tr>
|
| + </tbody>
|
| + </table>
|
| + </div>
|
| + </div>
|
| + </div>
|
| +</div>
|
| +</body>
|
| +</html>
|
|
|