1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/browser/base/content/sync/setup.xul Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,504 @@ 1.4 +<?xml version="1.0"?> 1.5 + 1.6 +<!-- This Source Code Form is subject to the terms of the Mozilla Public 1.7 + - License, v. 2.0. If a copy of the MPL was not distributed with this 1.8 + - file, You can obtain one at http://mozilla.org/MPL/2.0/. --> 1.9 + 1.10 +<?xml-stylesheet href="chrome://global/skin/" type="text/css"?> 1.11 +<?xml-stylesheet href="chrome://browser/skin/syncSetup.css" type="text/css"?> 1.12 +<?xml-stylesheet href="chrome://browser/skin/syncCommon.css" type="text/css"?> 1.13 + 1.14 +<!DOCTYPE window [ 1.15 +<!ENTITY % brandDTD SYSTEM "chrome://branding/locale/brand.dtd"> 1.16 +<!ENTITY % syncBrandDTD SYSTEM "chrome://browser/locale/syncBrand.dtd"> 1.17 +<!ENTITY % syncSetupDTD SYSTEM "chrome://browser/locale/syncSetup.dtd"> 1.18 +%brandDTD; 1.19 +%syncBrandDTD; 1.20 +%syncSetupDTD; 1.21 +]> 1.22 +<wizard id="wizard" 1.23 + title="&accountSetupTitle.label;" 1.24 + windowtype="Weave:AccountSetup" 1.25 + persist="screenX screenY" 1.26 + xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" 1.27 + xmlns:html="http://www.w3.org/1999/xhtml" 1.28 + onwizardnext="return gSyncSetup.onWizardAdvance()" 1.29 + onwizardback="return gSyncSetup.onWizardBack()" 1.30 + onwizardcancel="gSyncSetup.onWizardCancel()" 1.31 + onload="gSyncSetup.init()"> 1.32 + 1.33 + <script type="application/javascript" 1.34 + src="chrome://browser/content/sync/setup.js"/> 1.35 + <script type="application/javascript" 1.36 + src="chrome://browser/content/sync/utils.js"/> 1.37 + <script type="application/javascript" 1.38 + src="chrome://browser/content/utilityOverlay.js"/> 1.39 + <script type="application/javascript" 1.40 + src="chrome://global/content/printUtils.js"/> 1.41 + 1.42 + <wizardpage id="addDevicePage" 1.43 + label="&pairDevice.title.label;" 1.44 + onpageshow="gSyncSetup.onPageShow()"> 1.45 + <description> 1.46 + &pairDevice.dialog.description.label; 1.47 + <label class="text-link" 1.48 + value="&addDevice.showMeHow.label;" 1.49 + href="https://services.mozilla.com/sync/help/add-device"/> 1.50 + </description> 1.51 + <separator class="groove-thin"/> 1.52 + <description> 1.53 + &addDevice.dialog.enterCode.label; 1.54 + </description> 1.55 + <separator class="groove-thin"/> 1.56 + <vbox align="center"> 1.57 + <textbox id="pin1" 1.58 + class="pin" 1.59 + oninput="gSyncSetup.onPINInput(this);" 1.60 + onfocus="this.select();" 1.61 + /> 1.62 + <textbox id="pin2" 1.63 + class="pin" 1.64 + oninput="gSyncSetup.onPINInput(this);" 1.65 + onfocus="this.select();" 1.66 + /> 1.67 + <textbox id="pin3" 1.68 + class="pin" 1.69 + oninput="gSyncSetup.onPINInput(this);" 1.70 + onfocus="this.select();" 1.71 + /> 1.72 + </vbox> 1.73 + <separator class="groove-thin"/> 1.74 + <vbox id="pairDeviceThrobber" align="center" hidden="true"> 1.75 + <image/> 1.76 + </vbox> 1.77 + <hbox id="pairDeviceErrorRow" pack="center" hidden="true"> 1.78 + <image class="statusIcon" status="error"/> 1.79 + <label class="status" 1.80 + value="&addDevice.dialog.tryAgain.label;"/> 1.81 + </hbox> 1.82 + </wizardpage> 1.83 + 1.84 + <wizardpage id="pickSetupType" 1.85 + label="&syncBrand.fullName.label;" 1.86 + onpageshow="gSyncSetup.onPageShow()"> 1.87 + <vbox align="center" flex="1"> 1.88 + <description style="padding: 0 7em;"> 1.89 + &setup.pickSetupType.description2; 1.90 + </description> 1.91 + <spacer flex="3"/> 1.92 + <button id="newAccount" 1.93 + class="accountChoiceButton" 1.94 + label="&button.createNewAccount.label;" 1.95 + oncommand="gSyncSetup.startNewAccountSetup()" 1.96 + align="center"/> 1.97 + <spacer flex="1"/> 1.98 + </vbox> 1.99 + <separator class="groove"/> 1.100 + <vbox align="center" flex="1"> 1.101 + <spacer flex="1"/> 1.102 + <button id="existingAccount" 1.103 + class="accountChoiceButton" 1.104 + label="&button.haveAccount.label;" 1.105 + oncommand="gSyncSetup.useExistingAccount()"/> 1.106 + <spacer flex="3"/> 1.107 + </vbox> 1.108 + </wizardpage> 1.109 + 1.110 + <wizardpage label="&setup.newAccountDetailsPage.title.label;" 1.111 + id="newAccountStart" 1.112 + onextra1="gSyncSetup.onSyncOptions()" 1.113 + onpageshow="gSyncSetup.onPageShow();"> 1.114 + <grid> 1.115 + <columns> 1.116 + <column/> 1.117 + <column class="inputColumn" flex="1"/> 1.118 + </columns> 1.119 + <rows> 1.120 + <row id="emailRow" align="center"> 1.121 + <label value="&setup.emailAddress.label;" 1.122 + accesskey="&setup.emailAddress.accesskey;" 1.123 + control="weaveEmail"/> 1.124 + <textbox id="weaveEmail" 1.125 + oninput="gSyncSetup.onEmailInput()"/> 1.126 + </row> 1.127 + <row id="emailFeedbackRow" align="center" hidden="true"> 1.128 + <spacer/> 1.129 + <hbox> 1.130 + <image class="statusIcon"/> 1.131 + <label class="status" value=" "/> 1.132 + </hbox> 1.133 + </row> 1.134 + <row id="passwordRow" align="center"> 1.135 + <label value="&setup.choosePassword.label;" 1.136 + accesskey="&setup.choosePassword.accesskey;" 1.137 + control="weavePassword"/> 1.138 + <textbox id="weavePassword" 1.139 + type="password" 1.140 + onchange="gSyncSetup.onPasswordChange()"/> 1.141 + </row> 1.142 + <row id="confirmRow" align="center"> 1.143 + <label value="&setup.confirmPassword.label;" 1.144 + accesskey="&setup.confirmPassword.accesskey;" 1.145 + control="weavePasswordConfirm"/> 1.146 + <textbox id="weavePasswordConfirm" 1.147 + type="password" 1.148 + onchange="gSyncSetup.onPasswordChange()"/> 1.149 + </row> 1.150 + <row id="passwordFeedbackRow" align="center" hidden="true"> 1.151 + <spacer/> 1.152 + <hbox> 1.153 + <image class="statusIcon"/> 1.154 + <label class="status" value=" "/> 1.155 + </hbox> 1.156 + </row> 1.157 + <row align="center"> 1.158 + <label control="server" 1.159 + value="&server.label;"/> 1.160 + <menulist id="server" 1.161 + oncommand="gSyncSetup.onServerCommand()" 1.162 + oninput="gSyncSetup.onServerInput()"> 1.163 + <menupopup> 1.164 + <menuitem label="&serverType.default.label;" 1.165 + value="main"/> 1.166 + <menuitem label="&serverType.custom2.label;" 1.167 + value="custom"/> 1.168 + </menupopup> 1.169 + </menulist> 1.170 + </row> 1.171 + <row id="serverFeedbackRow" align="center" hidden="true"> 1.172 + <spacer/> 1.173 + <hbox> 1.174 + <image class="statusIcon"/> 1.175 + <label class="status" value=" "/> 1.176 + </hbox> 1.177 + </row> 1.178 +#ifdef XP_WIN 1.179 +#ifdef MOZ_METRO 1.180 + <row id="metroRow" align="center"> 1.181 + <spacer/> 1.182 + <hbox align="center"> 1.183 + <checkbox label="&setup.setupMetro.label;" 1.184 + accesskey="&setup.setupMetro.accesskey;" 1.185 + control="weavePasswordConfirm" 1.186 + id="metroSetupCheckbox" 1.187 + checked="true"/> 1.188 + </hbox> 1.189 + </row> 1.190 +#endif 1.191 +#endif 1.192 + <row id="TOSRow" align="center"> 1.193 + <spacer/> 1.194 + <hbox align="center"> 1.195 + <checkbox id="tos" 1.196 + accesskey="&setup.tosAgree1.accesskey;" 1.197 + oncommand="this.focus(); gSyncSetup.checkFields();"/> 1.198 + <description id="tosDesc" 1.199 + flex="1" 1.200 + onclick="document.getElementById('tos').focus(); 1.201 + document.getElementById('tos').click()"> 1.202 + &setup.tosAgree1.label; 1.203 + <label class="text-link inline-link" 1.204 + onclick="event.stopPropagation();gSyncUtils.openToS();"> 1.205 + &setup.tosLink.label; 1.206 + </label> 1.207 + &setup.tosAgree2.label; 1.208 + <label class="text-link inline-link" 1.209 + onclick="event.stopPropagation();gSyncUtils.openPrivacyPolicy();"> 1.210 + &setup.ppLink.label; 1.211 + </label> 1.212 + &setup.tosAgree3.label; 1.213 + </description> 1.214 + </hbox> 1.215 + </row> 1.216 + </rows> 1.217 + </grid> 1.218 + <spacer flex="1"/> 1.219 + <vbox flex="1" align="center"> 1.220 + <browser height="150" 1.221 + width="500" 1.222 + id="captcha" 1.223 + type="content" 1.224 + disablehistory="true"/> 1.225 + <spacer flex="1"/> 1.226 + <hbox id="captchaFeedback"> 1.227 + <image class="statusIcon"/> 1.228 + <label class="status" value=" "/> 1.229 + </hbox> 1.230 + </vbox> 1.231 + </wizardpage> 1.232 + 1.233 + <wizardpage id="addDevice" 1.234 + label="&pairDevice.title.label;" 1.235 + onextra1="gSyncSetup.onSyncOptions()" 1.236 + onpageshow="gSyncSetup.onPageShow()"> 1.237 + <description> 1.238 + &pairDevice.setup.description.label; 1.239 + <label class="text-link" 1.240 + value="&addDevice.showMeHow.label;" 1.241 + href="https://services.mozilla.com/sync/help/easy-setup"/> 1.242 + </description> 1.243 + <label value="&addDevice.setup.enterCode.label;" 1.244 + control="easySetupPIN1"/> 1.245 + <spacer flex="1"/> 1.246 + <vbox align="center" flex="1"> 1.247 + <textbox id="easySetupPIN1" 1.248 + class="pin" 1.249 + value="" 1.250 + readonly="true" 1.251 + /> 1.252 + <textbox id="easySetupPIN2" 1.253 + class="pin" 1.254 + value="" 1.255 + readonly="true" 1.256 + /> 1.257 + <textbox id="easySetupPIN3" 1.258 + class="pin" 1.259 + value="" 1.260 + readonly="true" 1.261 + /> 1.262 + </vbox> 1.263 + <spacer flex="3"/> 1.264 + <label class="text-link" 1.265 + value="&addDevice.dontHaveDevice.label;" 1.266 + onclick="gSyncSetup.manualSetup();"/> 1.267 + </wizardpage> 1.268 + 1.269 + <wizardpage id="existingAccount" 1.270 + label="&setup.signInPage.title.label;" 1.271 + onextra1="gSyncSetup.onSyncOptions()" 1.272 + onpageshow="gSyncSetup.onPageShow()"> 1.273 + <grid> 1.274 + <columns> 1.275 + <column/> 1.276 + <column class="inputColumn" flex="1"/> 1.277 + </columns> 1.278 + <rows> 1.279 + <row id="existingAccountRow" align="center"> 1.280 + <label id="existingAccountLabel" 1.281 + value="&signIn.account2.label;" 1.282 + accesskey="&signIn.account2.accesskey;" 1.283 + control="existingAccount"/> 1.284 + <textbox id="existingAccountName" 1.285 + oninput="gSyncSetup.checkFields(event)" 1.286 + onchange="gSyncSetup.checkFields(event)"/> 1.287 + </row> 1.288 + <row id="existingPasswordRow" align="center"> 1.289 + <label id="existingPasswordLabel" 1.290 + value="&signIn.password.label;" 1.291 + accesskey="&signIn.password.accesskey;" 1.292 + control="existingPassword"/> 1.293 + <textbox id="existingPassword" 1.294 + type="password" 1.295 + onkeyup="gSyncSetup.checkFields(event)" 1.296 + onchange="gSyncSetup.checkFields(event)"/> 1.297 + </row> 1.298 + <row id="existingPasswordFeedbackRow" align="center" hidden="true"> 1.299 + <spacer/> 1.300 + <hbox> 1.301 + <image class="statusIcon"/> 1.302 + <label class="status" value=" "/> 1.303 + </hbox> 1.304 + </row> 1.305 + <row align="center"> 1.306 + <spacer/> 1.307 + <label class="text-link" 1.308 + value="&resetPassword.label;" 1.309 + onclick="gSyncUtils.resetPassword(); return false;"/> 1.310 + </row> 1.311 + <row align="center"> 1.312 + <label control="existingServer" 1.313 + value="&server.label;"/> 1.314 + <menulist id="existingServer" 1.315 + oncommand="gSyncSetup.onExistingServerCommand()" 1.316 + oninput="gSyncSetup.onExistingServerInput()"> 1.317 + <menupopup> 1.318 + <menuitem label="&serverType.default.label;" 1.319 + value="main"/> 1.320 + <menuitem label="&serverType.custom2.label;" 1.321 + value="custom"/> 1.322 + </menupopup> 1.323 + </menulist> 1.324 + </row> 1.325 + <row id="existingServerFeedbackRow" align="center" hidden="true"> 1.326 + <spacer/> 1.327 + <hbox> 1.328 + <image class="statusIcon"/> 1.329 + <vbox> 1.330 + <label class="status" value=" "/> 1.331 + </vbox> 1.332 + </hbox> 1.333 + </row> 1.334 + </rows> 1.335 + </grid> 1.336 + 1.337 + <groupbox> 1.338 + <label id="existingPassphraseLabel" 1.339 + value="&signIn.recoveryKey.label;" 1.340 + accesskey="&signIn.recoveryKey.accesskey;" 1.341 + control="existingPassphrase"/> 1.342 + <textbox id="existingPassphrase" 1.343 + oninput="gSyncSetup.checkFields()"/> 1.344 + <hbox id="login-throbber" hidden="true"> 1.345 + <image/> 1.346 + <label value="&verifying.label;"/> 1.347 + </hbox> 1.348 + <vbox align="left" id="existingPassphraseFeedbackRow" hidden="true"> 1.349 + <hbox> 1.350 + <image class="statusIcon"/> 1.351 + <label class="status" value=" "/> 1.352 + </hbox> 1.353 + </vbox> 1.354 + </groupbox> 1.355 + 1.356 + <vbox id="passphraseHelpBox"> 1.357 + <description> 1.358 + &existingRecoveryKey.description; 1.359 + <label class="text-link" 1.360 + href="https://services.mozilla.com/sync/help/manual-setup"> 1.361 + &addDevice.showMeHow.label; 1.362 + </label> 1.363 + <spacer id="passphraseHelpSpacer"/> 1.364 + <label class="text-link" 1.365 + onclick="gSyncSetup.resetPassphrase(); return false;"> 1.366 + &resetSyncKey.label; 1.367 + </label> 1.368 + </description> 1.369 + </vbox> 1.370 + </wizardpage> 1.371 + 1.372 + <wizardpage id="syncOptionsPage" 1.373 + label="&setup.optionsPage.title;" 1.374 + onpageshow="gSyncSetup.onPageShow()"> 1.375 + <groupbox id="syncOptions"> 1.376 + <grid> 1.377 + <columns> 1.378 + <column/> 1.379 + <column flex="1" style="-moz-margin-end: 2px"/> 1.380 + </columns> 1.381 + <rows> 1.382 + <row align="center"> 1.383 + <label value="&syncDeviceName.label;" 1.384 + accesskey="&syncDeviceName.accesskey;" 1.385 + control="syncComputerName"/> 1.386 + <textbox id="syncComputerName" flex="1" 1.387 + onchange="gSyncUtils.changeName(this)"/> 1.388 + </row> 1.389 + <row> 1.390 + <label value="&syncMy.label;" /> 1.391 + <vbox> 1.392 + <checkbox label="&engine.addons.label;" 1.393 + accesskey="&engine.addons.accesskey;" 1.394 + id="engine.addons" 1.395 + checked="true"/> 1.396 + <checkbox label="&engine.bookmarks.label;" 1.397 + accesskey="&engine.bookmarks.accesskey;" 1.398 + id="engine.bookmarks" 1.399 + checked="true"/> 1.400 + <checkbox label="&engine.passwords.label;" 1.401 + accesskey="&engine.passwords.accesskey;" 1.402 + id="engine.passwords" 1.403 + checked="true"/> 1.404 + <checkbox label="&engine.prefs.label;" 1.405 + accesskey="&engine.prefs.accesskey;" 1.406 + id="engine.prefs" 1.407 + checked="true"/> 1.408 + <checkbox label="&engine.history.label;" 1.409 + accesskey="&engine.history.accesskey;" 1.410 + id="engine.history" 1.411 + checked="true"/> 1.412 + <checkbox label="&engine.tabs.label;" 1.413 + accesskey="&engine.tabs.accesskey;" 1.414 + id="engine.tabs" 1.415 + checked="true"/> 1.416 + </vbox> 1.417 + </row> 1.418 + </rows> 1.419 + </grid> 1.420 + </groupbox> 1.421 + 1.422 + <groupbox id="mergeOptions"> 1.423 + <radiogroup id="mergeChoiceRadio" pack="start"> 1.424 + <grid> 1.425 + <columns> 1.426 + <column/> 1.427 + <column flex="1"/> 1.428 + </columns> 1.429 + <rows flex="1"> 1.430 + <row align="center"> 1.431 + <radio id="resetClient" 1.432 + class="mergeChoiceButton" 1.433 + aria-labelledby="resetClientLabel"/> 1.434 + <label id="resetClientLabel" control="resetClient"> 1.435 + <html:strong>&choice2.merge.recommended.label;</html:strong> 1.436 + &choice2a.merge.main.label; 1.437 + </label> 1.438 + </row> 1.439 + <row align="center"> 1.440 + <radio id="wipeClient" 1.441 + class="mergeChoiceButton" 1.442 + aria-labelledby="wipeClientLabel"/> 1.443 + <label id="wipeClientLabel" 1.444 + control="wipeClient"> 1.445 + &choice2a.client.main.label; 1.446 + </label> 1.447 + </row> 1.448 + <row align="center"> 1.449 + <radio id="wipeRemote" 1.450 + class="mergeChoiceButton" 1.451 + aria-labelledby="wipeRemoteLabel"/> 1.452 + <label id="wipeRemoteLabel" 1.453 + control="wipeRemote"> 1.454 + &choice2a.server.main.label; 1.455 + </label> 1.456 + </row> 1.457 + </rows> 1.458 + </grid> 1.459 + </radiogroup> 1.460 + </groupbox> 1.461 + </wizardpage> 1.462 + 1.463 + <wizardpage id="syncOptionsConfirm" 1.464 + label="&setup.optionsConfirmPage.title;" 1.465 + onpageshow="gSyncSetup.onPageShow()"> 1.466 + <deck id="chosenActionDeck"> 1.467 + <vbox id="chosenActionMerge" class="confirm"> 1.468 + <description class="normal"> 1.469 + &confirm.merge2.label; 1.470 + </description> 1.471 + </vbox> 1.472 + <vbox id="chosenActionWipeClient" class="confirm"> 1.473 + <description class="normal"> 1.474 + &confirm.client3.label; 1.475 + </description> 1.476 + <separator class="thin"/> 1.477 + <vbox id="dataList"> 1.478 + <label class="data indent" id="bookmarkCount"/> 1.479 + <label class="data indent" id="historyCount"/> 1.480 + <label class="data indent" id="passwordCount"/> 1.481 + <label class="data indent" id="addonCount"/> 1.482 + <label class="data indent" id="prefsWipe" 1.483 + value="&engine.prefs.label;"/> 1.484 + </vbox> 1.485 + <separator class="thin"/> 1.486 + <description class="normal"> 1.487 + &confirm.client2.moreinfo.label; 1.488 + </description> 1.489 + </vbox> 1.490 + <vbox id="chosenActionWipeServer" class="confirm"> 1.491 + <description class="normal"> 1.492 + &confirm.server2.label; 1.493 + </description> 1.494 + <separator class="thin"/> 1.495 + <vbox id="clientList"> 1.496 + </vbox> 1.497 + </vbox> 1.498 + </deck> 1.499 + </wizardpage> 1.500 + <!-- In terms of the wizard flow shown to the user, the 'syncOptionsConfirm' 1.501 + page above is not the last wizard page. To prevent the wizard binding from 1.502 + assuming that it is, we're inserting this dummy page here. This also means 1.503 + that the wizard needs to always be closed manually via wizardFinish(). --> 1.504 + <wizardpage> 1.505 + </wizardpage> 1.506 +</wizard> 1.507 +