Merge pull request #4491 from cmgustavo/bug/ui-01

Fix horizontal scroll and layout in Android 4.4.2
This commit is contained in:
Gustavo Maximiliano Cortez 2016-06-24 14:22:49 -03:00 committed by GitHub
commit 3f30dc518e
10 changed files with 165 additions and 157 deletions

View file

@ -55,6 +55,10 @@ module.exports = function(grunt) {
files: ['src/css/*.css'], files: ['src/css/*.css'],
tasks: ['concat:css'] tasks: ['concat:css']
}, },
sass: {
files: ['src/sass/*.scss'],
tasks: ['sass', 'concat:css']
},
main: { main: {
files: [ files: [
'src/js/init.js', 'src/js/init.js',

View file

@ -8,10 +8,10 @@
<div class="create-tab small-only-text-center" ng-hide="create.hideTabs"> <div class="create-tab small-only-text-center" ng-hide="create.hideTabs">
<div class="row"> <div class="row">
<div class="tab-container small-6 medium-3 large-2" ng-class="{'selected': totalCopayers == 1}"> <div class="tab-container small-6 medium-6 large-6" ng-class="{'selected': totalCopayers == 1}">
<a href ng-click="create.setTotalCopayers(1)" translate>Personal Wallet</a> <a href ng-click="create.setTotalCopayers(1)" translate>Personal Wallet</a>
</div> </div>
<div class="tab-container small-6 medium-3 large-2" ng-class="{'selected': totalCopayers != 1}"> <div class="tab-container small-6 medium-6 large-6" ng-class="{'selected': totalCopayers != 1}">
<a href ng-click="create.setTotalCopayers(3)" translate>Shared Wallet</a> <a href ng-click="create.setTotalCopayers(3)" translate>Shared Wallet</a>
</div> </div>
</div> </div>
@ -58,7 +58,7 @@
</div> </div>
<div class="m10t oh" ng-init="hideAdv=true"> <div class="m10t oh" ng-init="hideAdv=true">
<a class="button outline light-gray expand tiny" ng-click="hideAdv=!hideAdv"> <a class="button outline light-gray expand tiny p10i" ng-click="hideAdv=!hideAdv">
<i class="fi-widget m3r"></i> <i class="fi-widget m3r"></i>
<span translate ng-hide="!hideAdv">Show advanced options</span> <span translate ng-hide="!hideAdv">Show advanced options</span>
<span translate ng-hide="hideAdv">Hide advanced options</span> <span translate ng-hide="hideAdv">Hide advanced options</span>
@ -134,19 +134,17 @@
</label> </label>
</div> </div>
<div class="oh" ng-show="create.seedSourceId == 'new'"> <div class="oh" ng-show="create.seedSourceId == 'new'">
<label for="network-name" class="dbi"> <ion-toggle ng-model="testnetEnabled" toggle-class="toggle-balanced" class="bct">
<span>Testnet</span> <span class="toggle-label">Testnet</span>
<ion-toggle ng-model="testnetEnabled" toggle-class="toggle-balanced" class="bct"> </ion-toggle>
</ion-toggle>
</label>
</div> </div>
<div class="oh" ng-show="create.seedSourceId == 'new'"> <div class="oh" ng-show="create.seedSourceId == 'new'">
<label for="single-address" class="dbi"> <ion-toggle ng-model="singleAddressEnabled" toggle-class="toggle-balanced" class="bct">
<span class="db" translate>Single Address Wallet</span> <div class="toggle-label">
<small translate>For audit purposes</small> <span class="db" translate>Single Address Wallet</span>
<ion-toggle ng-model="singleAddressEnabled" toggle-class="toggle-balanced" class="bct"> <small translate>For audit purposes</small>
</ion-toggle> </div>
</label> </ion-toggle>
</div> </div>
</div> <!-- columns --> </div> <!-- columns -->
</div> <!-- advanced --> </div> <!-- advanced -->

View file

@ -21,93 +21,98 @@
<div ng-show="type == '12' "> <div ng-show="type == '12' ">
<div class="box-notification m20b" ng-show="import.importErr"> <div class="row">
<div ng-show="import.importErr" class="text-warning"> <div class="large-12 columns">
<div class="m10 text-bold" translate>Could not access the wallet at the server. Please check:</div> <div class="box-notification m20b" ng-show="import.importErr">
<ul class="size-12"> <div ng-show="import.importErr" class="text-warning">
<li translate>The password of the recovery phrase (if set) <div class="m10 text-bold" translate>Could not access the wallet at the server. Please check:</div>
</li> <ul class="size-12">
<li translate>The derivation path <li translate>The password of the recovery phrase (if set)
</li> </li>
<li translate>The wallet service URL <li translate>The derivation path
</ul> </li>
<div class="m15l"> <li translate>The wallet service URL
<span translate>NOTE: To import a wallet from a 3rd party software, please go to Add Wallet &gt; Create Wallet, and specify the Recovery Phrase there.</span><br> </ul>
</div> <div class="m15l">
</div> <span translate>NOTE: To import a wallet from a 3rd party software, please go to Add Wallet &gt; Create Wallet, and specify the Recovery Phrase there.</span><br>
</div>
<div class="box-notification m20b" ng-show="import.error">
<div class="text-warning">
{{import.error|translate}}
</div>
</div>
<div class="row large-12 columns">
<form name="importForm12" ng-submit="import.importMnemonic(importForm12)" novalidate>
<div >
<label for="words">
<span translate>Type the Recovery Phrase (usually 12 words)</span>:
</label>
<textarea class="form-control" name="words" ng-model="import.words" rows="2" autocapitalize="off" spellcheck="false"></textarea>
</div>
<div class="m10t oh" ng-init="hideAdv=true">
<a class="button outline light-gray expand tiny" ng-click="hideAdv=!hideAdv">
<i class="fi-widget m3r"></i>
<span translate ng-hide="!hideAdv">Show advanced options</span>
<span translate ng-hide="hideAdv">Hide advanced options</span>
<i ng-if="hideAdv" class="icon-arrow-down4"></i>
<i ng-if="!hideAdv" class="icon-arrow-up4"></i>
</a>
</div>
<div ng-hide="hideAdv" class="row">
<div class="large-12 columns">
<label for="passphrase" class="oh"><span translate>Password</span> <small translate>The Wallet Recovery Phrase could require a password to be imported</small>
<div class="input">
<input type="password" class="form-control" placeholder="{{'Password'|translate}}"
name="passphrase" ng-model="import.passphrase">
</div>
</label>
<div>
<label class="oh"><span translate>Derivation Path</span> <small translate>BIP32 path for address derivation</small>
<input type="text" class="form-control" name="derivationPath" ng-model="derivationPath">
</label>
</div>
<label for="bws" class="oh">
<span>Wallet Service URL</span>
<input type="text" id="bwsurl" name="bwsurl" ng-model="bwsurl">
</label>
<div class="oh">
<label for="network-name" class="dbi">
<span>Testnet</span>
<ion-toggle ng-model="testnetEnabled" ng-change="setDerivationPath()" toggle-class="toggle-balanced" class="bct">
</ion-toggle>
</label>
</div> </div>
</div> </div>
</div> </div>
<button translate type="submit" class="button round expand black m10t" <div class="box-notification m20b" ng-show="import.error">
ng-disabled="importForm12.$invalid "> <div class="text-warning">
Import {{import.error|translate}}
</button> </div>
</form> </div>
</div>
</div>
<div class="row">
<div class="large-12 columns">
<form name="importForm12" ng-submit="import.importMnemonic(importForm12)" novalidate>
<div >
<label for="words">
<span translate>Type the Recovery Phrase (usually 12 words)</span>:
</label>
<textarea class="form-control" name="words" ng-model="import.words" rows="2" autocapitalize="off" spellcheck="false"></textarea>
</div>
<div class="m10t oh" ng-init="hideAdv=true">
<a class="button outline light-gray expand tiny p10i" ng-click="hideAdv=!hideAdv">
<i class="fi-widget m3r"></i>
<span translate ng-hide="!hideAdv">Show advanced options</span>
<span translate ng-hide="hideAdv">Hide advanced options</span>
<i ng-if="hideAdv" class="icon-arrow-down4"></i>
<i ng-if="!hideAdv" class="icon-arrow-up4"></i>
</a>
</div>
<div ng-hide="hideAdv" class="row">
<div class="large-12 columns">
<label for="passphrase" class="oh"><span translate>Password</span> <small translate>The Wallet Recovery Phrase could require a password to be imported</small>
<div class="input">
<input type="password" class="form-control" placeholder="{{'Password'|translate}}"
name="passphrase" ng-model="import.passphrase">
</div>
</label>
<div>
<label class="oh"><span translate>Derivation Path</span> <small translate>BIP32 path for address derivation</small>
<input type="text" class="form-control" name="derivationPath" ng-model="derivationPath">
</label>
</div>
<label for="bws" class="oh">
<span>Wallet Service URL</span>
<input type="text" id="bwsurl" name="bwsurl" ng-model="bwsurl">
</label>
<div class="oh">
<ion-toggle ng-model="testnetEnabled" ng-change="setDerivationPath()" toggle-class="toggle-balanced" class="bct">
<span class="toggle-label">Testnet</span>
</ion-toggle>
</div>
</div>
</div>
<button translate type="submit" class="button round expand black m10t"
ng-disabled="importForm12.$invalid ">
Import
</button>
</form>
</div>
</div> </div>
</div> </div>
<div ng-show="type == 'file' "> <div ng-show="type == 'file' ">
<div class="box-notification m20b" ng-show="import.error"> <div class="row">
<span class="text-warning size-14"> <div class="large-12 columns">
{{import.error|translate}} <div class="box-notification m20b" ng-show="import.error">
</span> <span class="text-warning size-14">
</div> {{import.error|translate}}
<div class="row large-12 columns"> </span>
</div>
<form name="importForm" ng-submit="import.importBlob(importForm)" novalidate> <form name="importForm" ng-submit="import.importBlob(importForm)" novalidate>
<div ng-show="!index.isSafari && !index.isCordova" class="line-b m10b"> <div ng-show="!index.isSafari && !index.isCordova" class="line-b m10b">
@ -133,7 +138,7 @@
</div> </div>
<div class="m10t oh" ng-init="hideAdv=true"> <div class="m10t oh" ng-init="hideAdv=true">
<a class="button outline light-gray expand tiny" ng-click="hideAdv=!hideAdv"> <a class="button outline light-gray expand tiny p10i" ng-click="hideAdv=!hideAdv">
<i class="fi-widget m3r"></i> <i class="fi-widget m3r"></i>
<span translate ng-hide="!hideAdv">Show advanced options</span> <span translate ng-hide="!hideAdv">Show advanced options</span>
<span translate ng-hide="hideAdv">Hide advanced options</span> <span translate ng-hide="hideAdv">Hide advanced options</span>
@ -156,72 +161,74 @@
Import backup Import backup
</button> </button>
</form> </form>
</div>
</div> </div>
</div> </div>
<div ng-show="type == 'hwWallet'"> <div ng-show="type == 'hwWallet'">
<div class="box-notification m20b" ng-show="import.error"> <div class="row">
<span class="text-warning size-14"> <div class="large-12 columns">
{{import.error|translate}} <div class="box-notification m20b" ng-show="import.error">
</span> <span class="text-warning size-14">
</div> {{import.error|translate}}
<div class="row large-12 columns"> </span>
</div>
<form name="importForm3" ng-submit="import.importHW(importForm3)" novalidate> <form name="importForm3" ng-submit="import.importHW(importForm3)" novalidate>
<div class="large-12 columns"> <div class="large-12 columns">
<div ng-show="!import.seedOptions[0]"> <div ng-show="!import.seedOptions[0]">
<span translate>No hardware wallets supported on this device</span> <span translate>No hardware wallets supported on this device</span>
</div>
<div ng-show="import.seedOptions[0]">
<div>
<label><span translate>Wallet Recovery Phrase</span>
<select class="m10t" ng-model="seedSource"
ng-options="seed as seed.label for seed in import.seedOptions"
ng-change="import.setSeedSource()">
</select>
</label>
</div> </div>
<div ng-show="import.seedOptions[0]">
<div ng-show="import.seedSourceId == 'trezor' || import.seedSourceId == 'ledger'"> <div>
<label><span translate>Wallet Recovery Phrase</span>
<label class="oh"><span translate>Account Number</span> <select class="m10t" ng-model="seedSource"
<input type="number" id="account" ng-model="account"> ng-options="seed as seed.label for seed in import.seedOptions"
</label> ng-change="import.setSeedSource()">
</div> </select>
<div ng-show="import.seedSourceId == 'trezor'">
<label for="isMultisig" class="oh">
<span translate>Shared Wallet</span>
<switch id="isMultisig" name="isMultisig" ng-model="isMultisig" class="green right m5t m10b"></switch>
</label>
</div>
<div class="m10t oh" ng-init="hideAdv=true">
<a class="button outline light-gray expand tiny" ng-click="hideAdv=!hideAdv">
<i class="fi-widget m3r"></i>
<span translate ng-hide="!hideAdv">Show advanced options</span>
<span translate ng-hide="hideAdv">Hide advanced options</span>
<i ng-if="hideAdv" class="icon-arrow-down4"></i>
<i ng-if="!hideAdv" class="icon-arrow-up4"></i>
</a>
</div>
<div ng-hide="hideAdv" class="row">
<div class="large-12 columns">
<label for="bws" class="oh">
<span>Wallet Service URL</span>
<input type="text" id="bwsurl" name="bwsurl" ng-model="bwsurl">
</label> </label>
</div> </div>
</div>
<div ng-show="import.seedSourceId == 'trezor' || import.seedSourceId == 'ledger'">
<label class="oh"><span translate>Account Number</span>
<input type="number" id="account" ng-model="account">
</label>
</div>
<div class="oh" ng-show="import.seedSourceId == 'trezor'">
<ion-toggle ng-model="isMultisig" toggle-class="toggle-balanced" class="bct">
<span class="toggle-label" translate>Shared Wallet</span>
</ion-toggle>
</div>
<div class="m10t oh" ng-init="hideAdv=true">
<a class="button outline light-gray expand tiny p10i" ng-click="hideAdv=!hideAdv">
<i class="fi-widget m3r"></i>
<span translate ng-hide="!hideAdv">Show advanced options</span>
<span translate ng-hide="hideAdv">Hide advanced options</span>
<i ng-if="hideAdv" class="icon-arrow-down4"></i>
<i ng-if="!hideAdv" class="icon-arrow-up4"></i>
</a>
</div>
<div ng-hide="hideAdv" class="row">
<div class="large-12 columns">
<label for="bws" class="oh">
<span>Wallet Service URL</span>
<input type="text" id="bwsurl" name="bwsurl" ng-model="bwsurl">
</label>
</div>
</div>
<button translate type="submit" class="button round expand black"> <button translate type="submit" class="button round expand black">
Import Import
</button> </button>
</div> <!-- seedoptions show --> </div> <!-- seedoptions show -->
</div> </div>
</form> </form>
</div>
</div> </div>
</div> </div>
</div> </div>

View file

@ -44,7 +44,7 @@
</div> </div>
<div class="m10t oh" ng-init="hideAdv=true"> <div class="m10t oh" ng-init="hideAdv=true">
<a class="button outline light-gray expand tiny" ng-click="hideAdv=!hideAdv"> <a class="button outline light-gray expand tiny p10i" ng-click="hideAdv=!hideAdv">
<i class="fi-widget m3r"></i> <i class="fi-widget m3r"></i>
<span translate ng-hide="!hideAdv">Show advanced options</span> <span translate ng-hide="!hideAdv">Show advanced options</span>
<span translate ng-hide="hideAdv">Hide advanced options</span> <span translate ng-hide="hideAdv">Hide advanced options</span>

View file

@ -15,7 +15,7 @@
<li href ui-sref="preferencesAlias"> <li href ui-sref="preferencesAlias">
<div class="right text-gray"> <div class="right text-gray">
{{index.alias||index.walletName}} {{index.alias||index.walletName}}
<i class="icon-arrow-right3 size-24"></i> <i class="icon-arrow-right3 size-24 right"></i>
</div> </div>
<div translate>Alias</div> <div translate>Alias</div>
</li> </li>
@ -24,7 +24,7 @@
<div class="right text-gray"> <div class="right text-gray">
<span ng-if="!index.preferences.email" translate>Disabled</span> <span ng-if="!index.preferences.email" translate>Disabled</span>
<span ng-if="index.preferences.email">{{index.preferences.email}}</span> <span ng-if="index.preferences.email">{{index.preferences.email}}</span>
<i class="icon-arrow-right3 size-24"></i> <i class="icon-arrow-right3 size-24 right"></i>
</div> </div>
<div translate>Email Notifications</div> <div translate>Email Notifications</div>
</li> </li>
@ -32,7 +32,7 @@
<li href ui-sref="preferencesColor"> <li href ui-sref="preferencesColor">
<div class="right text-gray"> <div class="right text-gray">
<span ng-style="{'color':index.backgroundColor}">&block;</span> <span ng-style="{'color':index.backgroundColor}">&block;</span>
<i class="icon-arrow-right3 size-24"></i> <i class="icon-arrow-right3 size-24 right"></i>
</div> </div>
<div translate>Color</div> <div translate>Color</div>
</li> </li>

View file

@ -9,7 +9,7 @@
<li href ui-sref="preferencesLanguage"> <li href ui-sref="preferencesLanguage">
<div class="right text-gray"> <div class="right text-gray">
{{currentLanguageName|translate}} {{currentLanguageName|translate}}
<i class="icon-arrow-right3 size-24"></i> <i class="icon-arrow-right3 size-24 right"></i>
</div> </div>
<div translate>Language</div> <div translate>Language</div>
</li> </li>
@ -20,7 +20,7 @@
<li href ui-sref="preferencesUnit"> <li href ui-sref="preferencesUnit">
<div class="right text-gray"> <div class="right text-gray">
{{unitName}} {{unitName}}
<i class="icon-arrow-right3 size-24"></i> <i class="icon-arrow-right3 size-24 right"></i>
</div> </div>
<div translate>Unit</div> <div translate>Unit</div>
</li> </li>
@ -28,7 +28,7 @@
<li href ui-sref="preferencesAltCurrency"> <li href ui-sref="preferencesAltCurrency">
<div class="right text-gray"> <div class="right text-gray">
{{selectedAlternative.name}} {{selectedAlternative.name}}
<i class="icon-arrow-right3 size-24"></i> <i class="icon-arrow-right3 size-24 right"></i>
</div> </div>
<div translate>Alternative Currency</div> <div translate>Alternative Currency</div>
</li> </li>
@ -39,7 +39,7 @@
<li href ui-sref="preferencesFee"> <li href ui-sref="preferencesFee">
<div class="right text-gray"> <div class="right text-gray">
{{feeOpts[currentFeeLevel]|translate}} {{feeOpts[currentFeeLevel]|translate}}
<i class="icon-arrow-right3 size-24"></i> <i class="icon-arrow-right3 size-24 right"></i>
</div> </div>
<div translate>Bitcoin Network Fee Policy</div> <div translate>Bitcoin Network Fee Policy</div>
</li> </li>
@ -81,7 +81,7 @@
<i class="icon-arrow-right3 size-24 right text-gray"></i> <i class="icon-arrow-right3 size-24 right text-gray"></i>
<div translate>About Copay</div> <div translate>About Copay</div>
</li> </li>
</ul> </ul>
<h4></h4> <h4></h4>
</div> </div>
<div class="extra-margin-bottom"></div> <div class="extra-margin-bottom"></div>

View file

@ -61,24 +61,22 @@
.bct { .bct {
background-color: transparent !important; background-color: transparent !important;
margin-top: -25px; margin-bottom: 15px !important;
padding-bottom: 30px;
right: -24px !important;
border-width: 0px;
} }
.r0 { .r0 {
right: 0px !important; right: 0px !important;
} }
.item-toggle .toggle { .item {
right: 28px; margin: 0;
border: none;
border-bottom: 1px solid #E9E9EC;
} }
.toggle-label { .toggle-label {
color: rgb(41, 55, 68); color: rgb(41, 55, 68);
font-size: 14px; font-size: 14px;
margin-left: 5px;
} }
button, .button { button, .button {

View file

@ -275,7 +275,6 @@ angular.module('copayApp.controllers').controller('importController',
} }
account = account - 1; account = account - 1;
} }
var isMultisig = form.isMultisig.$modelValue;
switch (self.seedSourceId) { switch (self.seedSourceId) {
case ('ledger'): case ('ledger'):
@ -284,7 +283,7 @@ angular.module('copayApp.controllers').controller('importController',
break; break;
case ('trezor'): case ('trezor'):
ongoingProcess.set('connectingtrezor', true); ongoingProcess.set('connectingtrezor', true);
self.importTrezor(account, isMultisig); self.importTrezor(account, $scope.isMultisig);
break; break;
default: default:
throw ('Error: bad source id'); throw ('Error: bad source id');

View file

@ -536,8 +536,6 @@ angular.module('copayApp').config(function(historicLogProvider, $provide, $logPr
$ionicPlatform.ready(function() { $ionicPlatform.ready(function() {
if (platformInfo.isCordova) { if (platformInfo.isCordova) {
ionic.Platform.fullScreen(true, false);
$ionicPlatform.registerBackButtonAction(function(event) { $ionicPlatform.registerBackButtonAction(function(event) {
event.preventDefault(); event.preventDefault();
}, 100); }, 100);

View file

@ -111,7 +111,7 @@ h4.title a {
} }
.preferences ul li { .preferences ul li {
padding: 13px 20px; padding: 16px 10px 16px 16px;
border-bottom: 1px solid #E9E9EC; border-bottom: 1px solid #E9E9EC;
} }
@ -715,6 +715,10 @@ ul.manage li {
padding: 10px; padding: 10px;
} }
.p10i {
padding: 10px !important;
}
.p10b { .p10b {
padding-bottom: 10px; padding-bottom: 10px;
} }