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

Side by Side Diff: chrome/browser/resources/bug_report.html

Issue 5271007: UI Revamp + several fixes. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/chrome/browser/resources
Patch Set: Created 10 years, 1 month 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 <!DOCTYPE HTML> 1 <!DOCTYPE HTML>
2 <html i18n-values="dir:textdirection;"> 2 <html i18n-values="dir:textdirection;">
3 <head> 3 <head>
4 <meta charset="utf-8"/> 4 <meta charset="utf-8"/>
5 <title i18n-content="title"></title> 5 <title i18n-content="page-title"></title>
6 <link rel="stylesheet" href="bug_report.css"/> 6 <!-- We want to keep our style in sync with the options page. -->
7 <link rel="stylesheet" href="dom_ui.css">
8 <link rel="stylesheet" href="options/options_page.css">
9 <link rel="stylesheet" href="bug_report.css">
7 10
8 <script src="shared/js/local_strings.js"></script> 11 <script src="shared/js/local_strings.js"></script>
9 <script src="shared/js/util.js"></script> 12 <script src="shared/js/util.js"></script>
10 <script src="bug_report.js"></script> 13 <script src="bug_report.js"></script>
11 <script> 14 <script>
12 15
13 /////////////////////////////////////////////////////////////////////////////// 16 ///////////////////////////////////////////////////////////////////////////////
14 // Document Functions: 17 // Document Functions:
15 /** 18 /**
16 * Window onload handler, sets up the page. 19 * Window onload handler, sets up the page.
17 */ 20 */
18 function load() { 21 function load() {
19 $('sysinfo-url').onclick = function(event) { 22 $('sysinfo-url').onclick = function(event) {
20 chrome.send('openSystemTab'); 23 chrome.send('openSystemTab');
21 }; 24 };
25
26 var menuOffPattern = /(^\?|&)menu=off($|&)/;
27 var menuDisabled = menuOffPattern.test(window.location.search);
28 document.documentElement.setAttribute('hide-menu', menuDisabled);
29
22 30
23 // textContent on description-text textarea seems to default 31 // textContent on description-text textarea seems to default
24 // to several spaces, this resets it to empty. 32 // to several spaces, this resets it to empty.
25 $('description-text').textContent = ''; 33 $('description-text').textContent = '';
26 $('send-report-button').disabled = true;
27
28 $('issue-with-combo').addEventListener('change', function(e) {
29 $('send-report-button').disabled =
30 this.selectedIndex <= 0 || $('description-text').value.length == 0;
31 });
32
33 $('description-text').addEventListener('keyup', function(e) {
34 $('send-report-button').disabled =
35 $('issue-with-combo').selectedIndex <= 0 || this.value.length == 0;
36 });
37
38 $('current-screenshot').nextSibling.textContent =
39 localStrings.getString('currentscreenshots');
40 <if expr="pp_ifdef('chromeos')">
41 $('saved-screenshot').nextSibling.textContent =
42 localStrings.getString('savedscreenshots');
43 </if>
44 $('no-screenshot').nextSibling.textContent =
45 localStrings.getString('noscreenshot');
46 34
47 // Get a list of issues that we allow the user to select from. 35 // Get a list of issues that we allow the user to select from.
48 // Note, the order and the issues types themselves are different 36 // Note, the order and the issues types themselves are different
49 // between Chromium and Chromium OS, so this code needs to be 37 // between Chromium and Chromium OS, so this code needs to be
50 // maintained individually between the bug_report.html and 38 // maintained individually between in these two sections.
51 // bug_report_cros.html files.
52 var issueTypeText = []; 39 var issueTypeText = [];
53 issueTypeText[0] = localStrings.getString('issue-choose'); 40 issueTypeText[0] = localStrings.getString('issue-choose');
54 <if expr="not pp_ifdef('chromeos')"> 41 <if expr="not pp_ifdef('chromeos')">
55 issueTypeText[1] = localStrings.getString('issue-page-formatting'); 42 issueTypeText[1] = localStrings.getString('issue-page-formatting');
56 issueTypeText[2] = localStrings.getString('issue-page-load'); 43 issueTypeText[2] = localStrings.getString('issue-page-load');
57 issueTypeText[3] = localStrings.getString('issue-plugins'); 44 issueTypeText[3] = localStrings.getString('issue-plugins');
58 issueTypeText[4] = localStrings.getString('issue-tabs'); 45 issueTypeText[4] = localStrings.getString('issue-tabs');
59 issueTypeText[5] = localStrings.getString('issue-sync'); 46 issueTypeText[5] = localStrings.getString('issue-sync');
60 issueTypeText[6] = localStrings.getString('issue-crashes'); 47 issueTypeText[6] = localStrings.getString('issue-crashes');
61 issueTypeText[7] = localStrings.getString('issue-extensions'); 48 issueTypeText[7] = localStrings.getString('issue-extensions');
(...skipping 12 matching lines...) Expand all
74 </if> 61 </if>
75 // Add all the issues to the selection box. 62 // Add all the issues to the selection box.
76 for (var i = 0; i < issueTypeText.length; i++) { 63 for (var i = 0; i < issueTypeText.length; i++) {
77 var option = document.createElement('option'); 64 var option = document.createElement('option');
78 option.className = 'bug-report-text'; 65 option.className = 'bug-report-text';
79 option.textContent = issueTypeText[i]; 66 option.textContent = issueTypeText[i];
80 $('issue-with-combo').add(option); 67 $('issue-with-combo').add(option);
81 } 68 }
82 69
83 chrome.send('getDialogDefaults', []); 70 chrome.send('getDialogDefaults', []);
84 chrome.send('refreshScreenshots', []); 71 chrome.send('refreshCurrentScreenshot', []);
85 }; 72 };
86 73
87 function setupScreenshots(screenshots) { 74 function setupCurrentScreenshot(screenshot) {
88 if (screenshots.length == 1) { 75 addScreenshot('current-screenshots', screenshot);
89 addScreenshot('current-screenshots', screenshots[0]); 76 }
77
78 function setupSavedScreenshots(screenshots) {
79 if (screenshots.length == 0) {
80 $('saved-screenshots').innerText =
81 localStrings.getString('no-saved-screenshots');
82
83 // Make sure we make the display the message
84 $('saved-screenshots').style.display = 'block';
85
86 // In case the user tries to send now; fail safe, do not send a screenshot
87 // at all versus sending the current screenshot.
88 selectedThumbnailDivId = '';
89 selectedThumbnailId = '';
90 } else { 90 } else {
91 // We're in Chromium OS. 91 for (i = 0; i < screenshots.length; ++i)
92 currentScreenshot = screenshots[0]; 92 addScreenshot('saved-screenshots', screenshots[i]);
93 addScreenshot('current-screenshots', currentScreenshot); 93
94 94 // Now that we have our screenshots, try selecting the saved screenshots
95 savedScreenshots = screenshots[1]; 95 // again.
96 if (savedScreenshots.length == 0) { 96 savedSelected();
97 $('saved-screenshots').disabled = true;
98 return;
99 }
100 for (i = 0; i < savedScreenshots.length; ++i)
101 addScreenshot('saved-screenshots', savedScreenshots[i]);
102 } 97 }
103 } 98 }
104 99
100
105 function setupDialogDefaults(defaults) { 101 function setupDialogDefaults(defaults) {
106 if (defaults.length > 0) { 102 if (defaults.length > 0) {
107 $('page-url-text').value = defaults[0]; 103 $('page-url-text').value = defaults[0];
104 if (defaults[0] == "")
oshima 2010/11/29 19:09:22 single quote for strings.
rkc 2010/11/29 22:41:08 Done.
105 $('page-url-checkbox').checked = false;
108 if (defaults.length > 2) { 106 if (defaults.length > 2) {
109 // We're in Chromium OS. 107 // We're in Chromium OS.
110 $('user-email-text').value = defaults[2]; 108 $('user-email-text').textContent = defaults[2];
109 if (defaults[2] == "") {
oshima 2010/11/29 19:09:22 same here
rkc 2010/11/29 22:41:08 Done.
110 // if we didn't get an e-mail address from cros, disable the checkbox
111 $('user-email-checkbox').checked = false;
112 $('user-email-checkbox').disabled = true;
113 }
111 } 114 }
112 } 115 }
113 } 116 }
114 117
115 window.addEventListener('DOMContentLoaded', load); 118 window.addEventListener('DOMContentLoaded', load);
116 </script> 119 </script>
117 </head> 120 </head>
118 <body> 121 <body i18n-values=".style.fontFamily:fontfamily;.style.fontSize:fontsize">
119 <div> 122 <div id="main-content">
120 <div id="main-panel"> 123 <div id="navbar-container">
121 <div class="formpane"> 124 <h1 id="settings-title" i18n-content="page-title">
122 <table> 125 </h1>
123 <!-- Issue type dropdown --> 126 </div>
124 <tr> 127 <div id="mainview" class>
125 <th id="issue-with" class="bug-report-label" i18n-content="issue-with" > 128 <!-- Even though we really don't need these many nested DIV's, we're staying
126 </th> 129 as close to the settings page layout as possible, re-using all our styles
127 </tr> 130 from there -->
128 <tr> 131 <div id="mainview-content">
129 <td> 132 <div class="page">
130 <select id="issue-with-combo" class="bug-report-text"> 133 <h1 i18n-content="title"></h1>
131 </select> 134 <table id="main-table">
132 </td> 135 <!-- Issue type dropdown -->
133 </tr> 136 <tbody>
134 <!-- Page URL text box --> 137 <tr>
135 <tr> 138 <th id="issue-with" class="bug-report-label"
136 <th colspan="2" id="page-url" class="bug-report-label" 139 i18n-content="issue-with"></th>
137 i18n-content="page-url"> 140 </tr>
138 </th> 141 <tr>
139 </tr> 142 <td>
140 <tr> 143 <select id="issue-with-combo" class="bug-report-text">
141 <td colspan="2"> 144 </select>
142 <input id='page-url-text' maxlength=200 class="bug-report-text"> 145 </td>
143 </td> 146 </tr>
144 </tr> 147 <!-- Description -->
145 <!-- Description --> 148 <tr>
146 <tr> 149 <th id="description" colspan="2" class="bug-report-label"
147 <th id="description" colspan="2" class="bug-report-label" 150 i18n-content="description"></th>
148 i18n-content="description"> 151 </tr>
149 </th> 152 <tr>
150 </tr> 153 <td colspan="2">
151 <tr> 154 <textarea id="description-text" rows="10"
152 <td colspan="2"> 155 class="bug-report-text"></textarea>
153 <textarea id='description-text' rows="10" class="bug-report-text"> 156 </td>
154 </textarea> 157 </tr>
155 </td> 158 <tr>
156 </tr> 159 <td>
157 </table> 160 <table style="-webkit-border-vertical-spacing: 0px;">
158 </div> 161 <!-- Page URL -->
159 <div class="formpane"> 162 <tr>
160 <table> 163 <td>
161 <if expr="pp_ifdef('chromeos')"> 164 <table class="bug-report-table">
162 <!-- Page URL text box --> 165 <tr>
163 <tr> 166 <td class="bug-report-fieldlabel">
164 <th id="user-email" class="bug-report-label" i18n-content="user-email" > 167 <input id="page-url-checkbox" type="checkbox"
165 </th> 168 value="pageurl" checked>
166 </tr> 169 <span id="page-url-label" i18n-content="page-url">
167 <tr> 170 </span>
168 <td> 171 </td>
169 <input id='user-email-text' maxlength=200 class="bug-report-text"> 172 <td>
170 </td> 173 <input id="page-url-text" class="bug-report-field"
171 </tr> 174 maxlength="200">
172 <!-- System Information checkbox --> 175 </td>
173 <tr> 176 </tr>
174 <td> 177 </table>
175 <input id="sys-info-checkbox" type="checkbox" value="sysinfo" checke d> 178 </td>
176 <span id="sysinfo-label"></span> 179 </tr>
177 <a id="sysinfo-url" href="#" > 180 <!-- User e-mail -->
178 <span i18n-content="sysinfo"></span> 181 <tr>
179 </a> 182 <td>
180 </td> 183 <table class="bug-report-table">
181 </tr> 184 <tr>
182 </if> 185 <td class="bug-report-fieldlabel">
183 <!-- Screenshot radio buttons --> 186 <input id="user-email-checkbox" type="checkbox"
184 <tr> 187 checked>
185 <th id="screenshot" class="bug-report-label" i18n-content="screenshot" > 188 <span id="user-email-label"
186 </th> 189 i18n-content="user-email"></span>
187 </tr> 190 </td>
188 <tr> 191 <td>
189 <td> 192 <label id="user-email-text"
190 <input id="no-screenshot" type="radio" name="screenshot-group" 193 class="bug-report-field"></label>
191 value="none" onclick="noneSelected()"> 194 </td>
192 <br> 195 </tr>
193 <if expr="pp_ifdef('chromeos')"> 196 </table>
194 <input id="saved-screenshot" type="radio" name="screenshot-group" 197 </td>
195 value="saved" onclick="savedSelected()"> 198 </tr>
196 <br> 199 <!-- System Information -->
197 <div id="saved-screenshots" style="display: none;" 200 <tr>
198 class="thumbnail-list"> 201 <td>
199 </div> 202 <table class="bug-report-table">
200 </if> 203 <tr>
201 <input id="current-screenshot" type="radio" name="screenshot-group" 204 <td class="bug-report-fieldlabel">
202 value="current" checked onclick="currentSelected()"> 205 <input id="sys-info-checkbox" type="checkbox"
203 <br> 206 checked>
204 <div id="current-screenshots" class="thumbnail-list"> 207 <span id="sysinfo-label">
205 </div> 208 <a id="sysinfo-url" href="#"
206 </td> 209 i18n-content="sysinfo"></a>
207 </tr> 210 </span>
208 </table> 211 </td>
212 </tr>
213 </table>
214 </td>
215 </tr>
216 <!-- Screenshot -->
217 <tr>
218 <td>
219 <table class="bug-report-table">
220 <tr>
221 <td class="bug-report-fieldlabel">
222 <input id="screenshot-checkbox" type="checkbox"
223 checked>
224 <span id="screenshot-label"
225 i18n-content="current-screenshot">
226 </span>
227 <a id="screenshot-link" href="#"
228 onclick="toggleScreenshotType()"
229 i18n-content="choose-different-screenshot">
230 </a>
231 </td>
232 </tr>
233 </table>
234 </td>
235 </tr>
236 <tr>
237 <td>
238 <div id="saved-screenshots" style="display: none;"
239 class="thumbnail-list"></div>
240 <div id="current-screenshots" class="thumbnail-list">
241 </div>
242 </td>
243 </tr>
244 </table>
245 </td>
246 </tr>
247 <tr>
248 <td>
249 <div id="buttons-pane">
250 <!-- Buttons -->
251 <input id="send-report-button" type="submit"
252 class="bug-report-button" onclick="sendReport()"
253 i18n-values="value:send-report">
254 <input id="cancel-button" type="submit"
255 class="bug-report-button" i18n-values="value:cancel"
256 onclick="cancel()">
257 </div>
258 <div id="privacy-note" i18n-values=".innerHTML:privacy-note"></d iv>
259 </td>
260 </tr>
261 </tbody>
262 </table>
263 </div>
209 </div> 264 </div>
210 </div> 265 </div>
211 </div> 266 </div>
212 <div id="buttons">
213 <!-- Buttons -->
214 <input id='send-report-button' type="submit" class="bug-report-button"
215 i18n-values="value:send-report" onclick="sendReport()">
216 <input id='cancel-button' type="submit" class="bug-report-button"
217 i18n-values="value:cancel" onclick="cancel()">
218 </div>
219 </body> 267 </body>
220 </html> 268 </html>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698