Compare commits
201 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
b59de2fb0e | ||
|
|
09c0aac7ab | ||
|
|
72b71e6a4f | ||
|
|
7fa55b49fe | ||
|
|
ba8d2913be | ||
|
|
f17c407100 | ||
|
|
7a3855700e | ||
|
|
ca7c0e0c55 | ||
|
|
d6ef609236 | ||
|
|
3f3fd67f14 | ||
|
|
ad88e60394 | ||
|
|
f75086ca28 | ||
|
|
e7c73164a6 | ||
|
|
6ca3c1a23e | ||
|
|
f86bcc61c5 | ||
|
|
77f0e9b912 | ||
|
|
ead8dc27d0 | ||
|
|
ca29d7e1be | ||
|
|
e21f8903ee | ||
|
|
b4e0dd107c | ||
|
|
cae90e8287 | ||
|
|
bee64abe2e | ||
|
|
c3f84d6de4 | ||
|
|
b9f2e372d0 | ||
|
|
bdb1251cfa | ||
|
|
3e9df9d975 | ||
|
|
cf321fa8f3 | ||
|
|
da02e4df42 | ||
|
|
de8e80a9bd | ||
|
|
f0cd704fad | ||
|
|
cd87af1415 | ||
|
|
6693fc7449 | ||
|
|
c14df12ce6 | ||
|
|
271650cfbe | ||
|
|
d523b16c5b | ||
|
|
1455ca8cbf | ||
|
|
b859854fbf | ||
|
|
3cda2b663a | ||
|
|
8599aa4e32 | ||
|
|
a1410b444b | ||
|
|
34b06c1a0f | ||
|
|
e0cbf43947 | ||
|
|
4934f77c6f | ||
|
|
8d28d0f842 | ||
|
|
5671a450c8 | ||
|
|
61ce53f47e | ||
|
|
5cb02b9e01 | ||
|
|
703e499d52 | ||
|
|
361ff60f11 | ||
|
|
b68ac66237 | ||
|
|
928966188b | ||
|
|
65a8e5e4aa | ||
|
|
66d99324dd | ||
|
|
c09806d560 | ||
|
|
0fdd75be59 | ||
|
|
4359fe706e | ||
|
|
a636a04f0a | ||
|
|
0d3cb9f6e4 | ||
|
|
c8d3b55741 | ||
|
|
d80b0a39a8 | ||
|
|
b2c264ea59 | ||
|
|
2e5012f55b | ||
|
|
3f5d55d224 | ||
|
|
5a1ca8578b | ||
|
|
851571c7f6 | ||
|
|
6760d5edf9 | ||
|
|
80954c3979 | ||
|
|
64d0bd91ef | ||
|
|
1df05202e9 | ||
|
|
324cb8aa0d | ||
|
|
6400c885cc | ||
|
|
2ac690ce20 | ||
|
|
ab382dc604 | ||
|
|
ac0e9f7fb7 | ||
|
|
78a003c161 | ||
|
|
ed607e6e95 | ||
|
|
088b343d2f | ||
|
|
9d24649d61 | ||
|
|
24992f144e | ||
|
|
56c593fd67 | ||
|
|
af2af06165 | ||
|
|
4d56befb85 | ||
|
|
a6efacdd8f | ||
|
|
ea4728afde | ||
|
|
1109f9cec9 | ||
|
|
aa9b6df0c4 | ||
|
|
59a63e7725 | ||
|
|
af0f58f727 | ||
|
|
3bc4d6a10f | ||
|
|
3fd37b96a0 | ||
|
|
c46b5c82cd | ||
|
|
77a2ebc2c4 | ||
|
|
0c3f39ee0d | ||
|
|
b31c04e148 | ||
|
|
94e3d98452 | ||
|
|
ccb1f36083 | ||
|
|
b585e7b498 | ||
|
|
6f73948846 | ||
|
|
567bc07627 | ||
|
|
2aa37133fe | ||
|
|
fb1e39bbad | ||
|
|
134422cb65 | ||
|
|
d03c8959c8 | ||
|
|
9e50dfc3ce | ||
|
|
9bb6a25f31 | ||
|
|
4b5c985349 | ||
|
|
8115632db5 | ||
|
|
a04576d4c3 | ||
|
|
a1e7134433 | ||
|
|
241ebc9388 | ||
|
|
d53a335abc | ||
|
|
a60b05d40d | ||
|
|
c3f41ae003 | ||
|
|
3483b8dbec | ||
|
|
034f83bfb3 | ||
|
|
0a3d75d197 | ||
|
|
39f2b99c7b | ||
|
|
0fed21d6de | ||
|
|
a9fa808dd1 | ||
|
|
5e3a8958f3 | ||
|
|
d5e27ff07d | ||
|
|
8eee948f07 | ||
|
|
3d7090bdba | ||
|
|
eef3f8a3ac | ||
|
|
2671cd926c | ||
|
|
666203bd0e | ||
|
|
46ee2e9cc8 | ||
|
|
756ea882c9 | ||
|
|
d5b48aab07 | ||
|
|
eece475fb8 | ||
|
|
dda2390983 | ||
|
|
496332a878 | ||
|
|
b43a268873 | ||
|
|
f156acda72 | ||
|
|
8076e71109 | ||
|
|
51e0f442d6 | ||
|
|
e1e55807bc | ||
|
|
4cc30a8cd6 | ||
|
|
3c9b5b71df | ||
|
|
06bbda0c99 | ||
|
|
a9bea84086 | ||
|
|
fb8ba824f6 | ||
|
|
bacad3733d | ||
|
|
d2ee1845e1 | ||
|
|
5e4bc36fc3 | ||
|
|
f3891ffe04 | ||
|
|
2842c33759 | ||
|
|
045189553e | ||
|
|
0218312055 | ||
|
|
7d1bbeef10 | ||
|
|
9e9aa31df2 | ||
|
|
951be246b7 | ||
|
|
9872689abe | ||
|
|
6be5e5731e | ||
|
|
eb457019dd | ||
|
|
b7dbb83294 | ||
|
|
28bd9a72d2 | ||
|
|
9019fa8baa | ||
|
|
1257eb642a | ||
|
|
140b7634ff | ||
|
|
48da5a3dba | ||
|
|
58f1e3c8a9 | ||
|
|
da27e1c78b | ||
|
|
4f4d969416 | ||
|
|
15c5269e35 | ||
|
|
06899c937c | ||
|
|
1107daab98 | ||
|
|
292c11ee06 | ||
|
|
d554c7809d | ||
|
|
527b48278a | ||
|
|
9331f2cff1 | ||
|
|
2633419c8e | ||
|
|
5d0854491a | ||
|
|
1fe61f2bc7 | ||
|
|
fb32dda5a1 | ||
|
|
ceef6c8b6d | ||
|
|
c029dc8a5e | ||
|
|
b78d9d0c03 | ||
|
|
8161cf3acb | ||
|
|
b9fcd8f60b | ||
|
|
07a4dd26a5 | ||
|
|
ceda53d8d2 | ||
|
|
9662ef5a7c | ||
|
|
7a629a5b37 | ||
|
|
33c195d01d | ||
|
|
28069f7fb6 | ||
|
|
030ff0994d | ||
|
|
0295641aeb | ||
|
|
0e4fa41c63 | ||
|
|
6e08eb1c56 | ||
|
|
855d95909a | ||
|
|
53c3151a23 | ||
|
|
c1dd25a77e | ||
|
|
f1f0109621 | ||
|
|
f258ae4b60 | ||
|
|
abccad8771 | ||
|
|
b5253f03db | ||
|
|
ac8e88ee53 | ||
|
|
7116001f5c | ||
|
|
254553f90e | ||
|
|
da93fc4a86 |
@@ -72,6 +72,7 @@ Rectangle {
|
|||||||
else if(pos === "Sign") menuColumn.previousButton = signButton
|
else if(pos === "Sign") menuColumn.previousButton = signButton
|
||||||
else if(pos === "Settings") menuColumn.previousButton = settingsButton
|
else if(pos === "Settings") menuColumn.previousButton = settingsButton
|
||||||
else if(pos === "Advanced") menuColumn.previousButton = advancedButton
|
else if(pos === "Advanced") menuColumn.previousButton = advancedButton
|
||||||
|
else if(pos === "Keys") menuColumn.previousButton = keysButton
|
||||||
|
|
||||||
menuColumn.previousButton.checked = true
|
menuColumn.previousButton.checked = true
|
||||||
}
|
}
|
||||||
@@ -478,7 +479,7 @@ Rectangle {
|
|||||||
anchors.left: parent.left
|
anchors.left: parent.left
|
||||||
anchors.right: parent.right
|
anchors.right: parent.right
|
||||||
text: qsTr("Shared RingDB") + translationManager.emptyString
|
text: qsTr("Shared RingDB") + translationManager.emptyString
|
||||||
symbol: qsTr("A") + translationManager.emptyString
|
symbol: qsTr("G") + translationManager.emptyString
|
||||||
dotColor: "#FFD781"
|
dotColor: "#FFD781"
|
||||||
under: advancedButton
|
under: advancedButton
|
||||||
onClicked: {
|
onClicked: {
|
||||||
|
|||||||
@@ -37,6 +37,7 @@ import QtGraphicalEffects 1.0
|
|||||||
import moneroComponents.Wallet 1.0
|
import moneroComponents.Wallet 1.0
|
||||||
|
|
||||||
import "./pages"
|
import "./pages"
|
||||||
|
import "./pages/settings"
|
||||||
|
|
||||||
Rectangle {
|
Rectangle {
|
||||||
id: root
|
id: root
|
||||||
@@ -141,7 +142,7 @@ Rectangle {
|
|||||||
}, State {
|
}, State {
|
||||||
name: "Settings"
|
name: "Settings"
|
||||||
PropertyChanges { target: root; currentView: settingsView }
|
PropertyChanges { target: root; currentView: settingsView }
|
||||||
PropertyChanges { target: mainFlickable; contentHeight: settingsView.settingsHeight + 100 }
|
PropertyChanges { target: mainFlickable; contentHeight: settingsView.settingsHeight }
|
||||||
}, State {
|
}, State {
|
||||||
name: "Mining"
|
name: "Mining"
|
||||||
PropertyChanges { target: root; currentView: miningView }
|
PropertyChanges { target: root; currentView: miningView }
|
||||||
|
|||||||
@@ -75,11 +75,11 @@ Packaging for your favorite distribution would be a welcome contribution!
|
|||||||
|
|
||||||
- For Debian distributions (Debian, Ubuntu, Mint, Tails...)
|
- For Debian distributions (Debian, Ubuntu, Mint, Tails...)
|
||||||
|
|
||||||
`sudo apt install build-essential cmake libboost-all-dev miniupnpc libunbound-dev graphviz doxygen libunwind8-dev pkg-config libssl-dev libzmq3-dev`
|
`sudo apt install build-essential cmake libboost-all-dev miniupnpc libunbound-dev graphviz doxygen libunwind8-dev pkg-config libssl-dev libzmq3-dev libsodium-dev`
|
||||||
|
|
||||||
- For Gentoo
|
- For Gentoo
|
||||||
|
|
||||||
`sudo emerge app-arch/xz-utils app-doc/doxygen dev-cpp/gtest dev-libs/boost dev-libs/expat dev-libs/openssl dev-util/cmake media-gfx/graphviz net-dns/unbound net-libs/ldns net-libs/miniupnpc net-libs/zeromq sys-libs/libunwind`
|
`sudo emerge app-arch/xz-utils app-doc/doxygen dev-cpp/gtest dev-libs/boost dev-libs/expat dev-libs/openssl dev-util/cmake media-gfx/graphviz net-dns/unbound net-libs/ldns net-libs/miniupnpc net-libs/zeromq sys-libs/libunwind dev-libs/libsodium`
|
||||||
|
|
||||||
2. Install Qt:
|
2. Install Qt:
|
||||||
|
|
||||||
@@ -114,7 +114,7 @@ Packaging for your favorite distribution would be a welcome contribution!
|
|||||||
|
|
||||||
```
|
```
|
||||||
cd monero-gui
|
cd monero-gui
|
||||||
./build.sh
|
QT_SELECT=5 ./build.sh
|
||||||
```
|
```
|
||||||
|
|
||||||
The executable can be found in the build/release/bin folder.
|
The executable can be found in the build/release/bin folder.
|
||||||
@@ -191,7 +191,7 @@ The Monero GUI on Windows is 64 bits only; 32-bit Windows GUI builds are not off
|
|||||||
3. Install MSYS2 packages for Monero dependencies; the needed 64-bit packages have `x86_64` in their names
|
3. Install MSYS2 packages for Monero dependencies; the needed 64-bit packages have `x86_64` in their names
|
||||||
|
|
||||||
```
|
```
|
||||||
pacman -S mingw-w64-x86_64-toolchain make mingw-w64-x86_64-cmake mingw-w64-x86_64-boost mingw-w64-x86_64-openssl mingw-w64-x86_64-zeromq mingw-w64-x86_64-libsodium
|
pacman -S mingw-w64-x86_64-toolchain make mingw-w64-x86_64-cmake mingw-w64-x86_64-boost mingw-w64-x86_64-openssl mingw-w64-x86_64-zeromq mingw-w64-x86_64-libsodium mingw-w64-x86_64-hidapi
|
||||||
```
|
```
|
||||||
|
|
||||||
You find more details about those dependencies in the [Monero documentation](https://github.com/monero-project/monero). Note that that there is no more need to compile Boost from source; like everything else, you can install it now with a MSYS2 package.
|
You find more details about those dependencies in the [Monero documentation](https://github.com/monero-project/monero). Note that that there is no more need to compile Boost from source; like everything else, you can install it now with a MSYS2 package.
|
||||||
|
|||||||
@@ -53,7 +53,7 @@ Rectangle{
|
|||||||
font.family: MoneroComponents.Style.fontRegular.name
|
font.family: MoneroComponents.Style.fontRegular.name
|
||||||
font.pixelSize: 14 * scaleRatio
|
font.pixelSize: 14 * scaleRatio
|
||||||
text: labelHeader
|
text: labelHeader
|
||||||
color: MoneroComponents.Style.greyFontColor
|
color: MoneroComponents.Style.dimmedFontColor
|
||||||
}
|
}
|
||||||
|
|
||||||
Text {
|
Text {
|
||||||
@@ -77,7 +77,7 @@ Rectangle{
|
|||||||
label2.color = MoneroComponents.Style.defaultFontColor;
|
label2.color = MoneroComponents.Style.defaultFontColor;
|
||||||
}
|
}
|
||||||
onExited: {
|
onExited: {
|
||||||
label1.color = MoneroComponents.Style.greyFontColor;
|
label1.color = MoneroComponents.Style.dimmedFontColor
|
||||||
label2.color = MoneroComponents.Style.dimmedFontColor;
|
label2.color = MoneroComponents.Style.dimmedFontColor;
|
||||||
}
|
}
|
||||||
onClicked: {
|
onClicked: {
|
||||||
|
|||||||
@@ -65,7 +65,7 @@ Item {
|
|||||||
}
|
}
|
||||||
|
|
||||||
ColumnLayout {
|
ColumnLayout {
|
||||||
z: bg.z + 1
|
z: parent.z + 1
|
||||||
id: mainLayout
|
id: mainLayout
|
||||||
spacing: 10
|
spacing: 10
|
||||||
anchors { fill: parent; margins: 35 }
|
anchors { fill: parent; margins: 35 }
|
||||||
@@ -103,6 +103,8 @@ Item {
|
|||||||
leftPadding: 10
|
leftPadding: 10
|
||||||
topPadding: 10
|
topPadding: 10
|
||||||
color: MoneroComponents.Style.defaultFontColor
|
color: MoneroComponents.Style.defaultFontColor
|
||||||
|
selectionColor: MoneroComponents.Style.dimmedFontColor
|
||||||
|
selectedTextColor: MoneroComponents.Style.defaultFontColor
|
||||||
|
|
||||||
background: Rectangle {
|
background: Rectangle {
|
||||||
radius: 2
|
radius: 2
|
||||||
|
|||||||
@@ -32,31 +32,25 @@ import QtQuick 2.7
|
|||||||
import "../js/TxUtils.js" as TxUtils
|
import "../js/TxUtils.js" as TxUtils
|
||||||
import "../components" as MoneroComponents
|
import "../components" as MoneroComponents
|
||||||
|
|
||||||
|
|
||||||
TextArea {
|
TextArea {
|
||||||
property bool error: false
|
|
||||||
property bool addressValidation: false
|
|
||||||
property bool wrapAnywhere: true
|
|
||||||
property int fontSize: 18 * scaleRatio
|
property int fontSize: 18 * scaleRatio
|
||||||
property bool fontBold: false
|
property bool fontBold: false
|
||||||
|
property string fontColor: MoneroComponents.Style.defaultFontColor
|
||||||
|
|
||||||
|
property bool mouseSelection: true
|
||||||
|
property bool error: false
|
||||||
|
property bool addressValidation: false
|
||||||
|
|
||||||
id: textArea
|
id: textArea
|
||||||
font.family: MoneroComponents.Style.fontRegular.name
|
font.family: MoneroComponents.Style.fontRegular.name
|
||||||
|
color: fontColor
|
||||||
font.pixelSize: fontSize
|
font.pixelSize: fontSize
|
||||||
font.bold: fontBold
|
font.bold: fontBold
|
||||||
horizontalAlignment: TextInput.AlignLeft
|
horizontalAlignment: TextInput.AlignLeft
|
||||||
selectByMouse: true
|
selectByMouse: mouseSelection
|
||||||
color: MoneroComponents.Style.defaultFontColor
|
|
||||||
selectionColor: MoneroComponents.Style.dimmedFontColor
|
selectionColor: MoneroComponents.Style.dimmedFontColor
|
||||||
selectedTextColor: MoneroComponents.Style.defaultFontColor
|
selectedTextColor: MoneroComponents.Style.defaultFontColor
|
||||||
|
|
||||||
wrapMode: {
|
|
||||||
if(wrapAnywhere){
|
|
||||||
return Text.WrapAnywhere;
|
|
||||||
} else {
|
|
||||||
return Text.WordWrap;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
onTextChanged: {
|
onTextChanged: {
|
||||||
if(addressValidation){
|
if(addressValidation){
|
||||||
// js replacement for `RegExpValidator { regExp: /[0-9A-Fa-f]{95}/g }`
|
// js replacement for `RegExpValidator { regExp: /[0-9A-Fa-f]{95}/g }`
|
||||||
|
|||||||
@@ -50,6 +50,8 @@ Item {
|
|||||||
property alias inlineButtonText: inlineButtonId.text
|
property alias inlineButtonText: inlineButtonId.text
|
||||||
property alias inlineIcon: inlineIcon.visible
|
property alias inlineIcon: inlineIcon.visible
|
||||||
property bool copyButton: false
|
property bool copyButton: false
|
||||||
|
|
||||||
|
property bool borderDisabled: false
|
||||||
property string borderColor: {
|
property string borderColor: {
|
||||||
if(input.activeFocus){
|
if(input.activeFocus){
|
||||||
return MoneroComponents.Style.inputBorderColorActive;
|
return MoneroComponents.Style.inputBorderColorActive;
|
||||||
@@ -57,9 +59,8 @@ Item {
|
|||||||
return MoneroComponents.Style.inputBorderColorInActive;
|
return MoneroComponents.Style.inputBorderColorInActive;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
property bool borderDisabled: false
|
|
||||||
property int fontSize: 18 * scaleRatio
|
property int fontSize: 18 * scaleRatio
|
||||||
property bool showBorder: true
|
|
||||||
property bool fontBold: false
|
property bool fontBold: false
|
||||||
property alias fontColor: input.color
|
property alias fontColor: input.color
|
||||||
property bool error: false
|
property bool error: false
|
||||||
@@ -140,6 +141,7 @@ Item {
|
|||||||
anchors.top: showingHeader ? inputLabel.bottom : parent.top
|
anchors.top: showingHeader ? inputLabel.bottom : parent.top
|
||||||
anchors.topMargin: showingHeader ? 12 * scaleRatio : 2 * scaleRatio
|
anchors.topMargin: showingHeader ? 12 * scaleRatio : 2 * scaleRatio
|
||||||
width: parent.width
|
width: parent.width
|
||||||
|
clip: true
|
||||||
|
|
||||||
Text {
|
Text {
|
||||||
id: placeholderLabel
|
id: placeholderLabel
|
||||||
@@ -194,12 +196,14 @@ Item {
|
|||||||
MoneroComponents.Input {
|
MoneroComponents.Input {
|
||||||
id: input
|
id: input
|
||||||
anchors.fill: parent
|
anchors.fill: parent
|
||||||
anchors.leftMargin: inlineIcon.visible ? 38 : 0
|
anchors.leftMargin: inlineIcon.visible ? 44 * scaleRatio : 0
|
||||||
font.pixelSize: item.fontSize
|
font.pixelSize: item.fontSize
|
||||||
font.bold: item.fontBold
|
font.bold: item.fontBold
|
||||||
onEditingFinished: item.editingFinished()
|
onEditingFinished: item.editingFinished()
|
||||||
onAccepted: item.accepted();
|
onAccepted: item.accepted();
|
||||||
onTextChanged: item.textUpdated()
|
onTextChanged: item.textUpdated()
|
||||||
|
topPadding: 10 * scaleRatio
|
||||||
|
bottomPadding: 10 * scaleRatio
|
||||||
}
|
}
|
||||||
|
|
||||||
MoneroComponents.InlineButton {
|
MoneroComponents.InlineButton {
|
||||||
|
|||||||
@@ -32,25 +32,56 @@ import QtQuick.Layouts 1.1
|
|||||||
import "../components" as MoneroComponents
|
import "../components" as MoneroComponents
|
||||||
|
|
||||||
ColumnLayout {
|
ColumnLayout {
|
||||||
id: lineditmulti
|
id: item
|
||||||
property alias text: multiLine.text
|
|
||||||
property alias placeholderText: placeholderLabel.text
|
Layout.fillWidth: true
|
||||||
|
Layout.preferredHeight: childrenRect.height
|
||||||
|
|
||||||
|
property alias text: input.text
|
||||||
property alias labelText: inputLabel.text
|
property alias labelText: inputLabel.text
|
||||||
property alias error: multiLine.error
|
|
||||||
property alias readOnly: multiLine.readOnly
|
|
||||||
property alias addressValidation: multiLine.addressValidation
|
|
||||||
property alias labelButtonText: labelButton.text
|
property alias labelButtonText: labelButton.text
|
||||||
|
property alias placeholderText: placeholderLabel.text
|
||||||
|
|
||||||
|
property bool placeholderCenter: false
|
||||||
|
property string placeholderFontFamily: MoneroComponents.Style.fontRegular.name
|
||||||
|
property bool placeholderFontBold: false
|
||||||
|
property int placeholderFontSize: 18 * scaleRatio
|
||||||
|
property string placeholderColor: MoneroComponents.Style.defaultFontColor
|
||||||
|
property real placeholderOpacity: 0.35
|
||||||
|
|
||||||
|
property bool borderDisabled: false
|
||||||
|
property string borderColor: {
|
||||||
|
if(input.error && input.text !== ""){
|
||||||
|
return MoneroComponents.Style.inputBorderColorInvalid;
|
||||||
|
} else if(input.activeFocus){
|
||||||
|
return MoneroComponents.Style.inputBorderColorActive;
|
||||||
|
} else {
|
||||||
|
return MoneroComponents.Style.inputBorderColorInActive;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
property bool error: false
|
||||||
|
|
||||||
|
property string labelFontColor: MoneroComponents.Style.defaultFontColor
|
||||||
property bool labelFontBold: false
|
property bool labelFontBold: false
|
||||||
|
property int labelFontSize: 16 * scaleRatio
|
||||||
property bool labelButtonVisible: false
|
property bool labelButtonVisible: false
|
||||||
property bool copyButton: false
|
|
||||||
property bool wrapAnywhere: true
|
property string fontColor: "white"
|
||||||
property bool showingHeader: true
|
|
||||||
property bool showBorder: true
|
|
||||||
property bool fontBold: false
|
property bool fontBold: false
|
||||||
property int fontSize: 16 * scaleRatio
|
property int fontSize: 16 * scaleRatio
|
||||||
|
|
||||||
|
property bool mouseSelection: true
|
||||||
|
property alias readOnly: input.readOnly
|
||||||
|
property bool copyButton: false
|
||||||
|
property bool showingHeader: true
|
||||||
|
property var wrapMode: Text.NoWrap
|
||||||
|
property alias addressValidation: input.addressValidation
|
||||||
|
property string backgroundColor: "" // mock
|
||||||
|
|
||||||
signal labelButtonClicked();
|
signal labelButtonClicked();
|
||||||
signal inputLabelLinkActivated();
|
signal inputLabelLinkActivated();
|
||||||
|
signal editingFinished();
|
||||||
|
|
||||||
spacing: 0
|
spacing: 0
|
||||||
Rectangle {
|
Rectangle {
|
||||||
@@ -65,11 +96,17 @@ ColumnLayout {
|
|||||||
anchors.top: parent.top
|
anchors.top: parent.top
|
||||||
anchors.left: parent.left
|
anchors.left: parent.left
|
||||||
font.family: MoneroComponents.Style.fontRegular.name
|
font.family: MoneroComponents.Style.fontRegular.name
|
||||||
font.pixelSize: 16 * scaleRatio
|
font.pixelSize: item.labelFontSize
|
||||||
font.bold: labelFontBold
|
font.bold: labelFontBold
|
||||||
textFormat: Text.RichText
|
textFormat: Text.RichText
|
||||||
color: MoneroComponents.Style.defaultFontColor
|
color: item.labelFontColor
|
||||||
onLinkActivated: inputLabelLinkActivated()
|
onLinkActivated: inputLabelLinkActivated()
|
||||||
|
|
||||||
|
MouseArea {
|
||||||
|
anchors.fill: parent
|
||||||
|
acceptedButtons: Qt.NoButton
|
||||||
|
cursorShape: parent.hoveredLink ? Qt.PointingHandCursor : Qt.ArrowCursor
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
MoneroComponents.LabelButton {
|
MoneroComponents.LabelButton {
|
||||||
@@ -80,14 +117,14 @@ ColumnLayout {
|
|||||||
|
|
||||||
MoneroComponents.LabelButton {
|
MoneroComponents.LabelButton {
|
||||||
id: copyButtonId
|
id: copyButtonId
|
||||||
visible: copyButton && multiLine.text !== ""
|
visible: copyButton && input.text !== ""
|
||||||
text: qsTr("Copy")
|
text: qsTr("Copy")
|
||||||
anchors.right: labelButton.visible ? inputLabel.right : parent.right
|
anchors.right: labelButton.visible ? inputLabel.right : parent.right
|
||||||
anchors.rightMargin: labelButton.visible? 4 : 0
|
anchors.rightMargin: labelButton.visible? 4 : 0
|
||||||
onClicked: {
|
onClicked: {
|
||||||
if (multiLine.text.length > 0) {
|
if (input.text.length > 0) {
|
||||||
console.log("Copied to clipboard");
|
console.log("Copied to clipboard");
|
||||||
clipboard.setText(multiLine.text);
|
clipboard.setText(input.text);
|
||||||
appWindow.showStatusMessage(qsTr("Copied to clipboard"), 3);
|
appWindow.showStatusMessage(qsTr("Copied to clipboard"), 3);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -95,27 +132,32 @@ ColumnLayout {
|
|||||||
}
|
}
|
||||||
|
|
||||||
MoneroComponents.InputMulti {
|
MoneroComponents.InputMulti {
|
||||||
id: multiLine
|
id: input
|
||||||
readOnly: false
|
readOnly: false
|
||||||
addressValidation: true
|
addressValidation: false
|
||||||
anchors.top: parent.showingHeader ? inputLabelRect.bottom : parent.top
|
anchors.top: item.showingHeader ? inputLabelRect.bottom : item.top
|
||||||
Layout.fillWidth: true
|
Layout.fillWidth: true
|
||||||
topPadding: parent.showingHeader ? 10 * scaleRatio : 0
|
topPadding: item.showingHeader ? 10 * scaleRatio : 0
|
||||||
bottomPadding: 10 * scaleRatio
|
bottomPadding: 10 * scaleRatio
|
||||||
wrapAnywhere: parent.wrapAnywhere
|
wrapMode: item.wrapMode
|
||||||
fontSize: parent.fontSize
|
fontSize: item.fontSize
|
||||||
fontBold: parent.fontBold
|
fontBold: item.fontBold
|
||||||
|
fontColor: item.fontColor
|
||||||
|
mouseSelection: item.mouseSelection
|
||||||
|
onEditingFinished: item.editingFinished()
|
||||||
|
error: item.error
|
||||||
|
|
||||||
Text {
|
Text {
|
||||||
id: placeholderLabel
|
id: placeholderLabel
|
||||||
visible: multiLine.text ? false : true
|
visible: input.text ? false : true
|
||||||
anchors.verticalCenter: parent.verticalCenter
|
anchors.verticalCenter: parent.verticalCenter
|
||||||
anchors.left: parent.left
|
anchors.left: parent.left
|
||||||
anchors.leftMargin: 10 * scaleRatio
|
anchors.leftMargin: 10 * scaleRatio
|
||||||
opacity: 0.35
|
opacity: item.placeholderOpacity
|
||||||
color: MoneroComponents.Style.defaultFontColor
|
color: item.placeholderColor
|
||||||
font.family: MoneroComponents.Style.fontRegular.name
|
font.family: item.placeholderFontFamily
|
||||||
font.pixelSize: 18 * scaleRatio
|
font.bold: item.placeholderFontBold
|
||||||
|
font.pixelSize: item.placeholderFontSize
|
||||||
text: ""
|
text: ""
|
||||||
z: 3
|
z: 3
|
||||||
}
|
}
|
||||||
@@ -123,18 +165,10 @@ ColumnLayout {
|
|||||||
Rectangle {
|
Rectangle {
|
||||||
color: "transparent"
|
color: "transparent"
|
||||||
border.width: 1
|
border.width: 1
|
||||||
border.color: {
|
border.color: item.borderColor
|
||||||
if(multiLine.error && multiLine.text !== ""){
|
|
||||||
return MoneroComponents.Style.inputBorderColorInvalid;
|
|
||||||
} else if(multiLine.activeFocus){
|
|
||||||
return MoneroComponents.Style.inputBorderColorActive;
|
|
||||||
} else {
|
|
||||||
return MoneroComponents.Style.inputBorderColorInActive;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
radius: 4
|
radius: 4
|
||||||
anchors.fill: parent
|
anchors.fill: parent
|
||||||
visible: lineditmulti.showBorder
|
visible: !item.borderDisabled
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -108,6 +108,8 @@ Item {
|
|||||||
leftPadding: 10
|
leftPadding: 10
|
||||||
topPadding: 10
|
topPadding: 10
|
||||||
color: MoneroComponents.Style.defaultFontColor
|
color: MoneroComponents.Style.defaultFontColor
|
||||||
|
selectionColor: MoneroComponents.Style.dimmedFontColor
|
||||||
|
selectedTextColor: MoneroComponents.Style.defaultFontColor
|
||||||
|
|
||||||
background: Rectangle {
|
background: Rectangle {
|
||||||
radius: 2
|
radius: 2
|
||||||
@@ -125,6 +127,7 @@ Item {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Keys.enabled: root.visible
|
||||||
Keys.onReturnPressed: {
|
Keys.onReturnPressed: {
|
||||||
root.close()
|
root.close()
|
||||||
root.accepted()
|
root.accepted()
|
||||||
|
|||||||
@@ -26,6 +26,8 @@
|
|||||||
// STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
|
// STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
|
||||||
// THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
// THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
|
||||||
|
// @TODO: Remove component after wizard redesign
|
||||||
|
|
||||||
import QtQuick 2.0
|
import QtQuick 2.0
|
||||||
|
|
||||||
Item {
|
Item {
|
||||||
|
|||||||
@@ -26,6 +26,8 @@
|
|||||||
// STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
|
// STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
|
||||||
// THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
// THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
|
||||||
|
// @TODO: Remove component after wizard redesign
|
||||||
|
|
||||||
import QtQuick 2.0
|
import QtQuick 2.0
|
||||||
|
|
||||||
Item {
|
Item {
|
||||||
|
|||||||
@@ -67,7 +67,7 @@ Rectangle {
|
|||||||
font.pixelSize: 13 * scaleRatio
|
font.pixelSize: 13 * scaleRatio
|
||||||
font.bold: true
|
font.bold: true
|
||||||
color: "white"
|
color: "white"
|
||||||
text: qsTr("Synchronizing %1").arg(syncType)
|
text: qsTr("Synchronizing %1").arg(syncType) + translationManager.emptyString
|
||||||
height: 18 * scaleRatio
|
height: 18 * scaleRatio
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -53,6 +53,8 @@ GridLayout {
|
|||||||
property string lineEditBorderColor: Qt.rgba(0, 0, 0, 0.15)
|
property string lineEditBorderColor: Qt.rgba(0, 0, 0, 0.15)
|
||||||
property string lineEditBackgroundColor: "white"
|
property string lineEditBackgroundColor: "white"
|
||||||
property string lineEditFontColor: "black"
|
property string lineEditFontColor: "black"
|
||||||
|
property int lineEditFontSize: 18 * scaleRatio
|
||||||
|
property int labelFontSize: 16 * scaleRatio
|
||||||
property bool lineEditFontBold: true
|
property bool lineEditFontBold: true
|
||||||
|
|
||||||
signal editingFinished()
|
signal editingFinished()
|
||||||
@@ -61,7 +63,7 @@ GridLayout {
|
|||||||
return daemonAddr.text.trim() + ":" + daemonPort.text.trim()
|
return daemonAddr.text.trim() + ":" + daemonPort.text.trim()
|
||||||
}
|
}
|
||||||
|
|
||||||
LineEdit {
|
LineEditMulti {
|
||||||
id: daemonAddr
|
id: daemonAddr
|
||||||
Layout.fillWidth: true
|
Layout.fillWidth: true
|
||||||
placeholderText: qsTr("Remote Node Hostname / IP") + translationManager.emptyString
|
placeholderText: qsTr("Remote Node Hostname / IP") + translationManager.emptyString
|
||||||
@@ -70,14 +72,16 @@ GridLayout {
|
|||||||
placeholderFontSize: root.placeholderFontSize
|
placeholderFontSize: root.placeholderFontSize
|
||||||
placeholderColor: root.placeholderColor
|
placeholderColor: root.placeholderColor
|
||||||
placeholderOpacity: root.placeholderOpacity
|
placeholderOpacity: root.placeholderOpacity
|
||||||
onEditingFinished: root.editingFinished()
|
labelFontSize: root.labelFontSize
|
||||||
borderColor: lineEditBorderColor
|
borderColor: lineEditBorderColor
|
||||||
backgroundColor: lineEditBackgroundColor
|
backgroundColor: lineEditBackgroundColor
|
||||||
fontColor: lineEditFontColor
|
fontColor: lineEditFontColor
|
||||||
fontBold: lineEditFontBold
|
fontBold: lineEditFontBold
|
||||||
|
fontSize: lineEditFontSize
|
||||||
|
onEditingFinished: root.editingFinished()
|
||||||
}
|
}
|
||||||
|
|
||||||
LineEdit {
|
LineEditMulti {
|
||||||
id: daemonPort
|
id: daemonPort
|
||||||
Layout.fillWidth: true
|
Layout.fillWidth: true
|
||||||
placeholderText: qsTr("Port") + translationManager.emptyString
|
placeholderText: qsTr("Port") + translationManager.emptyString
|
||||||
@@ -86,10 +90,13 @@ GridLayout {
|
|||||||
placeholderFontSize: root.placeholderFontSize
|
placeholderFontSize: root.placeholderFontSize
|
||||||
placeholderColor: root.placeholderColor
|
placeholderColor: root.placeholderColor
|
||||||
placeholderOpacity: root.placeholderOpacity
|
placeholderOpacity: root.placeholderOpacity
|
||||||
onEditingFinished: root.editingFinished()
|
labelFontSize: root.labelFontSize
|
||||||
borderColor: lineEditBorderColor
|
borderColor: lineEditBorderColor
|
||||||
backgroundColor: lineEditBackgroundColor
|
backgroundColor: lineEditBackgroundColor
|
||||||
fontColor: lineEditFontColor
|
fontColor: lineEditFontColor
|
||||||
fontBold: lineEditFontBold
|
fontBold: lineEditFontBold
|
||||||
|
fontSize: lineEditFontSize
|
||||||
|
|
||||||
|
onEditingFinished: root.editingFinished()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -32,6 +32,7 @@ import "../components" as MoneroComponents
|
|||||||
|
|
||||||
Item {
|
Item {
|
||||||
id: dropdown
|
id: dropdown
|
||||||
|
property int itemTopMargin: 0
|
||||||
property alias dataModel: repeater.model
|
property alias dataModel: repeater.model
|
||||||
property string shadowPressedColor
|
property string shadowPressedColor
|
||||||
property string shadowReleasedColor
|
property string shadowReleasedColor
|
||||||
@@ -76,6 +77,7 @@ Item {
|
|||||||
anchors.left: parent.left
|
anchors.left: parent.left
|
||||||
anchors.right: parent.right
|
anchors.right: parent.right
|
||||||
anchors.top: parent.top
|
anchors.top: parent.top
|
||||||
|
anchors.topMargin: parent.itemTopMargin
|
||||||
height: dropdown.dropdownHeight
|
height: dropdown.dropdownHeight
|
||||||
|
|
||||||
Rectangle {
|
Rectangle {
|
||||||
|
|||||||
@@ -11,7 +11,6 @@ QtObject {
|
|||||||
property string grey: "#404040"
|
property string grey: "#404040"
|
||||||
|
|
||||||
property string defaultFontColor: "white"
|
property string defaultFontColor: "white"
|
||||||
property string greyFontColor: "#808080"
|
|
||||||
property string dimmedFontColor: "#BBBBBB"
|
property string dimmedFontColor: "#BBBBBB"
|
||||||
property string inputBoxBackground: "black"
|
property string inputBoxBackground: "black"
|
||||||
property string inputBoxBackgroundError: "#FFDDDD"
|
property string inputBoxBackgroundError: "#FFDDDD"
|
||||||
|
|||||||
@@ -68,7 +68,7 @@ Rectangle {
|
|||||||
z: parent.z + 1
|
z: parent.z + 1
|
||||||
|
|
||||||
Image {
|
Image {
|
||||||
anchors.fill: titleBar
|
anchors.fill: parent
|
||||||
height: titleBar.height
|
height: titleBar.height
|
||||||
width: titleBar.width
|
width: titleBar.width
|
||||||
source: "../images/titlebarGradient.jpg"
|
source: "../images/titlebarGradient.jpg"
|
||||||
|
|||||||
63
components/WarningBox.qml
Normal file
@@ -0,0 +1,63 @@
|
|||||||
|
import QtQuick 2.7
|
||||||
|
import QtQuick.Layouts 1.1
|
||||||
|
import QtQuick.Controls 2.0
|
||||||
|
|
||||||
|
import "." as MoneroComponents
|
||||||
|
|
||||||
|
Rectangle {
|
||||||
|
id: root
|
||||||
|
property alias text: content.text
|
||||||
|
property int fontSize: 15 * scaleRatio
|
||||||
|
|
||||||
|
Layout.fillWidth: true
|
||||||
|
Layout.preferredHeight: warningLayout.height
|
||||||
|
|
||||||
|
color: "#09FFFFFF"
|
||||||
|
radius: 4
|
||||||
|
border.color: MoneroComponents.Style.inputBorderColorInActive
|
||||||
|
border.width: 1
|
||||||
|
|
||||||
|
signal linkActivated;
|
||||||
|
|
||||||
|
RowLayout {
|
||||||
|
id: warningLayout
|
||||||
|
spacing: 0
|
||||||
|
anchors.left: parent.left
|
||||||
|
anchors.right: parent.right
|
||||||
|
|
||||||
|
Image {
|
||||||
|
Layout.alignment: Qt.AlignVCenter
|
||||||
|
Layout.preferredHeight: 33
|
||||||
|
Layout.preferredWidth: 33
|
||||||
|
Layout.rightMargin: 14
|
||||||
|
Layout.leftMargin: 14
|
||||||
|
Layout.topMargin: 12
|
||||||
|
Layout.bottomMargin: 12
|
||||||
|
source: "../images/warning.png"
|
||||||
|
}
|
||||||
|
|
||||||
|
TextArea {
|
||||||
|
id: content
|
||||||
|
Layout.fillWidth: true
|
||||||
|
color: MoneroComponents.Style.defaultFontColor
|
||||||
|
font.family: MoneroComponents.Style.fontRegular.name
|
||||||
|
font.pixelSize: root.fontSize
|
||||||
|
horizontalAlignment: TextInput.AlignLeft
|
||||||
|
selectByMouse: false
|
||||||
|
textFormat: Text.RichText
|
||||||
|
wrapMode: Text.WordWrap
|
||||||
|
textMargin: 0
|
||||||
|
leftPadding: 0
|
||||||
|
topPadding: 6
|
||||||
|
readOnly: true
|
||||||
|
onLinkActivated: root.linkActivated();
|
||||||
|
|
||||||
|
// @TODO: Legacy. Remove after Qt 5.8.
|
||||||
|
// https://stackoverflow.com/questions/41990013
|
||||||
|
MouseArea {
|
||||||
|
anchors.fill: parent
|
||||||
|
enabled: false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -17,7 +17,7 @@ if [ ! -d $MONERO_DIR/src ]; then
|
|||||||
fi
|
fi
|
||||||
git submodule update --remote
|
git submodule update --remote
|
||||||
git -C $MONERO_DIR fetch
|
git -C $MONERO_DIR fetch
|
||||||
git -C $MONERO_DIR checkout v0.12.3.0
|
git -C $MONERO_DIR checkout release-v0.13
|
||||||
|
|
||||||
# get monero core tag
|
# get monero core tag
|
||||||
get_tag
|
get_tag
|
||||||
@@ -75,8 +75,7 @@ else
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "$BUILD_LIBWALLET" != true ]; then
|
if [ "$BUILD_LIBWALLET" != true ]; then
|
||||||
# exit this script
|
exit 0
|
||||||
return
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "GUI_MONERO_VERSION=\"$VERSIONTAG\"" > $MONERO_DIR/version.sh
|
echo "GUI_MONERO_VERSION=\"$VERSIONTAG\"" > $MONERO_DIR/version.sh
|
||||||
|
|||||||
BIN
images/settings_local.png
Normal file
|
After Width: | Height: | Size: 651 B |
BIN
images/settings_navbar_side.png
Executable file
|
After Width: | Height: | Size: 15 KiB |
BIN
images/settings_navbar_side_active.png
Executable file
|
After Width: | Height: | Size: 15 KiB |
BIN
images/settings_remote.png
Normal file
|
After Width: | Height: | Size: 440 B |
@@ -8,7 +8,7 @@ AppName=Monero GUI Wallet
|
|||||||
; Thus it's important to keep this stable over releases
|
; Thus it's important to keep this stable over releases
|
||||||
; With a different "AppName" InnoSetup would treat a mere update as a completely new application and thus mess up
|
; With a different "AppName" InnoSetup would treat a mere update as a completely new application and thus mess up
|
||||||
|
|
||||||
AppVersion=0.12.0.0
|
AppVersion=0.12.3.0
|
||||||
DefaultDirName={pf}\Monero GUI Wallet
|
DefaultDirName={pf}\Monero GUI Wallet
|
||||||
DefaultGroupName=Monero GUI Wallet
|
DefaultGroupName=Monero GUI Wallet
|
||||||
UninstallDisplayIcon={app}\monero-wallet-gui.exe
|
UninstallDisplayIcon={app}\monero-wallet-gui.exe
|
||||||
@@ -19,6 +19,8 @@ WizardSmallImageFile=WizardSmallImage.bmp
|
|||||||
WizardImageFile=WelcomeImage.bmp
|
WizardImageFile=WelcomeImage.bmp
|
||||||
DisableWelcomePage=no
|
DisableWelcomePage=no
|
||||||
LicenseFile=LICENSE
|
LicenseFile=LICENSE
|
||||||
|
AppPublisher=The Monero Developer Community
|
||||||
|
AppPublisherURL=https://getmonero.org
|
||||||
|
|
||||||
|
|
||||||
[Languages]
|
[Languages]
|
||||||
@@ -39,7 +41,7 @@ Name: "en"; MessagesFile: "compiler:Default.isl"
|
|||||||
; .exe/.dll file possibly with version info).
|
; .exe/.dll file possibly with version info).
|
||||||
;
|
;
|
||||||
; This is far more robust than relying on version info or on file dates (flag "comparetimestamp").
|
; This is far more robust than relying on version info or on file dates (flag "comparetimestamp").
|
||||||
; As of version 0.12.0.0, the Monero .exe files do not carry version info anyway in their .exe headers.
|
; As of version 0.12.3.0, the Monero .exe files do not carry version info anyway in their .exe headers.
|
||||||
; The only small drawback seems to be somewhat longer update times because each and every file is
|
; The only small drawback seems to be somewhat longer update times because each and every file is
|
||||||
; copied again, even if already present with correct file date and identical content.
|
; copied again, even if already present with correct file date and identical content.
|
||||||
;
|
;
|
||||||
@@ -60,6 +62,7 @@ Source: "monero-wallet-gui.log"; DestDir: "{app}"; Flags: onlyifdoesntexist; Per
|
|||||||
|
|
||||||
; Monero CLI wallet
|
; Monero CLI wallet
|
||||||
Source: "bin\monero-wallet-cli.exe"; DestDir: "{app}"; Flags: ignoreversion
|
Source: "bin\monero-wallet-cli.exe"; DestDir: "{app}"; Flags: ignoreversion
|
||||||
|
Source: "bin\monero-gen-trusted-multisig.exe"; DestDir: "{app}"; Flags: ignoreversion
|
||||||
|
|
||||||
; Monero wallet RPC interface implementation
|
; Monero wallet RPC interface implementation
|
||||||
Source: "bin\monero-wallet-rpc.exe"; DestDir: "{app}"; Flags: ignoreversion
|
Source: "bin\monero-wallet-rpc.exe"; DestDir: "{app}"; Flags: ignoreversion
|
||||||
@@ -73,6 +76,9 @@ Source: "monero-daemon.bat"; DestDir: "{app}"; Flags: ignoreversion;
|
|||||||
; Monero blockchain utilities
|
; Monero blockchain utilities
|
||||||
Source: "bin\monero-blockchain-export.exe"; DestDir: "{app}"; Flags: ignoreversion
|
Source: "bin\monero-blockchain-export.exe"; DestDir: "{app}"; Flags: ignoreversion
|
||||||
Source: "bin\monero-blockchain-import.exe"; DestDir: "{app}"; Flags: ignoreversion
|
Source: "bin\monero-blockchain-import.exe"; DestDir: "{app}"; Flags: ignoreversion
|
||||||
|
Source: "bin\monero-blockchain-blackball.exe"; DestDir: "{app}"; Flags: ignoreversion
|
||||||
|
Source: "bin\monero-blockchain-usage.exe"; DestDir: "{app}"; Flags: ignoreversion
|
||||||
|
Source: "bin\monero-blockchain-import.exe"; DestDir: "{app}"; Flags: ignoreversion
|
||||||
|
|
||||||
; was present in 0.10.3.1, not present anymore in 0.11.1.0 and after
|
; was present in 0.10.3.1, not present anymore in 0.11.1.0 and after
|
||||||
; Source: "bin\monero-utils-deserialize.exe"; DestDir: "{app}"; Flags: ignoreversion
|
; Source: "bin\monero-utils-deserialize.exe"; DestDir: "{app}"; Flags: ignoreversion
|
||||||
@@ -97,7 +103,7 @@ Source: "bin\bearer\*"; DestDir: "{app}\bearer"; Flags: recursesubdirs ignorever
|
|||||||
; Qt Windows platform plugins
|
; Qt Windows platform plugins
|
||||||
Source: "bin\platforms\*"; DestDir: "{app}\platforms"; Flags: recursesubdirs ignoreversion
|
Source: "bin\platforms\*"; DestDir: "{app}\platforms"; Flags: recursesubdirs ignoreversion
|
||||||
Source: "bin\platforminputcontexts\*"; DestDir: "{app}\platforminputcontexts"; Flags: recursesubdirs ignoreversion
|
Source: "bin\platforminputcontexts\*"; DestDir: "{app}\platforminputcontexts"; Flags: recursesubdirs ignoreversion
|
||||||
Source: "bin\styles\*"; DestDir: "{app}\styles"; Flags: recursesubdirs ignoreversion
|
; No more "styles" subdirectory in 0.12.3.0
|
||||||
|
|
||||||
; Qt support for SVG icons
|
; Qt support for SVG icons
|
||||||
Source: "bin\iconengines\*"; DestDir: "{app}\iconengines"; Flags: recursesubdirs ignoreversion
|
Source: "bin\iconengines\*"; DestDir: "{app}\iconengines"; Flags: recursesubdirs ignoreversion
|
||||||
@@ -116,7 +122,8 @@ Source: "bin\playlistformats\*"; DestDir: "{app}\playlistformats"; Flags: recurs
|
|||||||
; Qt graphical effects as part of the core runtime, effects like blurring and blending
|
; Qt graphical effects as part of the core runtime, effects like blurring and blending
|
||||||
Source: "bin\QtGraphicalEffects\*"; DestDir: "{app}\QtGraphicalEffects"; Flags: recursesubdirs ignoreversion
|
Source: "bin\QtGraphicalEffects\*"; DestDir: "{app}\QtGraphicalEffects"; Flags: recursesubdirs ignoreversion
|
||||||
|
|
||||||
; No more Qt "private" directory in 0.12.0.0
|
; Qt "private" directory with "effects"
|
||||||
|
Source: "bin\private\*"; DestDir: "{app}\private"; Flags: recursesubdirs ignoreversion
|
||||||
|
|
||||||
; Qt QML files
|
; Qt QML files
|
||||||
Source: "bin\QtQml\*"; DestDir: "{app}\QtQml"; Flags: recursesubdirs ignoreversion
|
Source: "bin\QtQml\*"; DestDir: "{app}\QtQml"; Flags: recursesubdirs ignoreversion
|
||||||
@@ -125,6 +132,10 @@ Source: "bin\QtQml\*"; DestDir: "{app}\QtQml"; Flags: recursesubdirs ignoreversi
|
|||||||
Source: "bin\QtQuick\*"; DestDir: "{app}\QtQuick"; Flags: recursesubdirs ignoreversion
|
Source: "bin\QtQuick\*"; DestDir: "{app}\QtQuick"; Flags: recursesubdirs ignoreversion
|
||||||
Source: "bin\QtQuick.2\*"; DestDir: "{app}\QtQuick.2"; Flags: recursesubdirs ignoreversion
|
Source: "bin\QtQuick.2\*"; DestDir: "{app}\QtQuick.2"; Flags: recursesubdirs ignoreversion
|
||||||
|
|
||||||
|
; Qt Quick Controls 2 modules of the Qt Toolkit
|
||||||
|
Source: "bin\Material\*"; DestDir: "{app}\Material"; Flags: recursesubdirs ignoreversion
|
||||||
|
Source: "bin\Universal\*"; DestDir: "{app}\Universal"; Flags: recursesubdirs ignoreversion
|
||||||
|
|
||||||
; Qt Quick 2D Renderer fallback for systems / environments with "low-level graphics" i.e. without 3D support
|
; Qt Quick 2D Renderer fallback for systems / environments with "low-level graphics" i.e. without 3D support
|
||||||
Source: "bin\scenegraph\*"; DestDir: "{app}\scenegraph"; Flags: recursesubdirs ignoreversion
|
Source: "bin\scenegraph\*"; DestDir: "{app}\scenegraph"; Flags: recursesubdirs ignoreversion
|
||||||
Source: "bin\start-low-graphics-mode.bat"; DestDir: "{app}"; Flags: ignoreversion
|
Source: "bin\start-low-graphics-mode.bat"; DestDir: "{app}"; Flags: ignoreversion
|
||||||
@@ -167,12 +178,13 @@ Source: "bin\libiconv-2.dll"; DestDir: "{app}"; Flags: ignoreversion
|
|||||||
|
|
||||||
; ICU, International Components for Unicode
|
; ICU, International Components for Unicode
|
||||||
; After changes for supporting UTF-8 path and file names by using Boost Locale, all those 5
|
; After changes for supporting UTF-8 path and file names by using Boost Locale, all those 5
|
||||||
; ICU libraries are needed in 0.12.0.0
|
; ICU libraries are needed starting from 0.12.0.0
|
||||||
Source: "bin\libicudt58.dll"; DestDir: "{app}"; Flags: ignoreversion
|
; Use wildcards instead of specific version number like 61 because that seems to change frequently
|
||||||
Source: "bin\libicuin58.dll"; DestDir: "{app}"; Flags: ignoreversion
|
Source: "bin\libicudt??.dll"; DestDir: "{app}"; Flags: ignoreversion
|
||||||
Source: "bin\libicuio58.dll"; DestDir: "{app}"; Flags: ignoreversion
|
Source: "bin\libicuin??.dll"; DestDir: "{app}"; Flags: ignoreversion
|
||||||
Source: "bin\libicutu58.dll"; DestDir: "{app}"; Flags: ignoreversion
|
Source: "bin\libicuio??.dll"; DestDir: "{app}"; Flags: ignoreversion
|
||||||
Source: "bin\libicuuc58.dll"; DestDir: "{app}"; Flags: ignoreversion
|
Source: "bin\libicutu??.dll"; DestDir: "{app}"; Flags: ignoreversion
|
||||||
|
Source: "bin\libicuuc??.dll"; DestDir: "{app}"; Flags: ignoreversion
|
||||||
|
|
||||||
; Library for native language support, part of GNU gettext
|
; Library for native language support, part of GNU gettext
|
||||||
Source: "bin\libintl-8.dll"; DestDir: "{app}"; Flags: ignoreversion
|
Source: "bin\libintl-8.dll"; DestDir: "{app}"; Flags: ignoreversion
|
||||||
@@ -194,7 +206,8 @@ Source: "bin\liblzma-5.dll"; DestDir: "{app}"; Flags: ignoreversion
|
|||||||
Source: "bin\libmng-2.dll"; DestDir: "{app}"; Flags: ignoreversion
|
Source: "bin\libmng-2.dll"; DestDir: "{app}"; Flags: ignoreversion
|
||||||
|
|
||||||
; PCRE, Perl Compatible Regular Expressions
|
; PCRE, Perl Compatible Regular Expressions
|
||||||
; "libpcre2-16-0.dll" is new for 0.12.0.0; unclear whether "libpcre16-0.dll" is still needed
|
; "libpcre2-16-0.dll" is new for 0.12.0.0
|
||||||
|
; Uclear whether "libpcre16-0.dll" is still needed; some versions of "Qt5Core.dll" seem to reference it, some not
|
||||||
Source: "bin\libpcre-1.dll"; DestDir: "{app}"; Flags: ignoreversion
|
Source: "bin\libpcre-1.dll"; DestDir: "{app}"; Flags: ignoreversion
|
||||||
Source: "bin\libpcre16-0.dll"; DestDir: "{app}"; Flags: ignoreversion
|
Source: "bin\libpcre16-0.dll"; DestDir: "{app}"; Flags: ignoreversion
|
||||||
Source: "bin\libpcre2-16-0.dll"; DestDir: "{app}"; Flags: ignoreversion
|
Source: "bin\libpcre2-16-0.dll"; DestDir: "{app}"; Flags: ignoreversion
|
||||||
@@ -215,7 +228,6 @@ Source: "bin\libwinpthread-1.dll"; DestDir: "{app}"; Flags: ignoreversion
|
|||||||
Source: "bin\zlib1.dll"; DestDir: "{app}"; Flags: ignoreversion
|
Source: "bin\zlib1.dll"; DestDir: "{app}"; Flags: ignoreversion
|
||||||
|
|
||||||
; Stack protection
|
; Stack protection
|
||||||
; New for 0.12.0.0
|
|
||||||
Source: "bin\libssp-0.dll"; DestDir: "{app}"; Flags: ignoreversion
|
Source: "bin\libssp-0.dll"; DestDir: "{app}"; Flags: ignoreversion
|
||||||
|
|
||||||
|
|
||||||
@@ -238,6 +250,7 @@ var
|
|||||||
procedure InitializeWizard;
|
procedure InitializeWizard;
|
||||||
var s: String;
|
var s: String;
|
||||||
width: Integer;
|
width: Integer;
|
||||||
|
blockChainDir: String;
|
||||||
begin
|
begin
|
||||||
// Large image for the "Welcome" page, with page reconfigured
|
// Large image for the "Welcome" page, with page reconfigured
|
||||||
WizardForm.WelcomeLabel1.Visible := false;
|
WizardForm.WelcomeLabel1.Visible := false;
|
||||||
@@ -252,7 +265,7 @@ begin
|
|||||||
// Additional wizard page for entering a special blockchain location
|
// Additional wizard page for entering a special blockchain location
|
||||||
blockChainDefaultDir := ExpandConstant('{commonappdata}\bitmonero');
|
blockChainDefaultDir := ExpandConstant('{commonappdata}\bitmonero');
|
||||||
s := 'The default folder to store the Monero blockchain is ' + blockChainDefaultDir;
|
s := 'The default folder to store the Monero blockchain is ' + blockChainDefaultDir;
|
||||||
s := s + '. As this will need more than 50 GB of free space, you may want to use a folder on a different drive.';
|
s := s + '. As this will need more than 60 GB of free space, you may want to use a folder on a different drive.';
|
||||||
s := s + ' If yes, specify that folder here.';
|
s := s + ' If yes, specify that folder here.';
|
||||||
|
|
||||||
BlockChainDirPage := CreateInputDirPage(wpSelectDir,
|
BlockChainDirPage := CreateInputDirPage(wpSelectDir,
|
||||||
@@ -261,11 +274,17 @@ begin
|
|||||||
False, '');
|
False, '');
|
||||||
BlockChainDirPage.Add('');
|
BlockChainDirPage.Add('');
|
||||||
|
|
||||||
BlockChainDirPage.Values[0] := GetPreviousData('BlockChainDir', '');
|
// Evaluate proposal for the blockchain location
|
||||||
if BlockChainDirPage.Values[0] = '' then begin
|
// In case of an update take the blockchain location from the actual setting in the registry
|
||||||
// Unfortunately 'TInputDirWizardDirPage' does not allow empty field
|
RegQueryStringValue(HKEY_CURRENT_USER, 'Software\monero-project\monero-core', 'blockchainDataDir', blockChainDir);
|
||||||
BlockChainDirPage.Values[0] := blockChainDefaultDir;
|
if blockChainDir = '' then begin
|
||||||
|
blockChainDir := GetPreviousData('BlockChainDir', '');
|
||||||
end;
|
end;
|
||||||
|
if blockChainDir = '' then begin
|
||||||
|
// Unfortunately 'TInputDirWizardDirPage' does not allow empty field, so "propose" Monero default location
|
||||||
|
blockChainDir := blockChainDefaultDir;
|
||||||
|
end;
|
||||||
|
BlockChainDirPage.Values[0] := blockChainDir;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure RegisterPreviousData(PreviousDataKey: Integer);
|
procedure RegisterPreviousData(PreviousDataKey: Integer);
|
||||||
@@ -283,6 +302,17 @@ begin
|
|||||||
// No quotes for folder name with blanks as this is never used as part of a command line
|
// No quotes for folder name with blanks as this is never used as part of a command line
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
function BlockChainDirOrEmpty(Param: String) : String;
|
||||||
|
VAR s: String;
|
||||||
|
begin
|
||||||
|
s := BlockChainDir('');
|
||||||
|
if s = blockChainDefaultDir then begin
|
||||||
|
// No need to add the default dir as setting
|
||||||
|
s := '';
|
||||||
|
end;
|
||||||
|
Result := s;
|
||||||
|
end;
|
||||||
|
|
||||||
function UpdateReadyMemo(Space, NewLine, MemoUserInfoInfo, MemoDirInfo, MemoTypeInfo,
|
function UpdateReadyMemo(Space, NewLine, MemoUserInfoInfo, MemoDirInfo, MemoTypeInfo,
|
||||||
MemoComponentsInfo, MemoGroupInfo, MemoTasksInfo: String): String;
|
MemoComponentsInfo, MemoGroupInfo, MemoTasksInfo: String): String;
|
||||||
var s: String;
|
var s: String;
|
||||||
@@ -384,5 +414,5 @@ Name: "{userdesktop}\GUI Wallet"; Filename: "{app}\monero-wallet-gui.exe"; Tasks
|
|||||||
; Side effect, mostly positive: The uninstaller will clean the registry
|
; Side effect, mostly positive: The uninstaller will clean the registry
|
||||||
Root: HKCU; Subkey: "Software\monero-project"; Flags: uninsdeletekeyifempty
|
Root: HKCU; Subkey: "Software\monero-project"; Flags: uninsdeletekeyifempty
|
||||||
Root: HKCU; Subkey: "Software\monero-project\monero-core"; Flags: uninsdeletekey
|
Root: HKCU; Subkey: "Software\monero-project\monero-core"; Flags: uninsdeletekey
|
||||||
Root: HKCU; Subkey: "Software\monero-project\monero-core"; ValueType: string; ValueName: "daemonFlags"; ValueData: {code:DaemonFlags};
|
Root: HKCU; Subkey: "Software\monero-project\monero-core"; ValueType: string; ValueName: "blockchainDataDir"; ValueData: {code:BlockChainDirOrEmpty};
|
||||||
|
|
||||||
|
|||||||
@@ -38,7 +38,7 @@ The build steps in detail:
|
|||||||
|
|
||||||
1. Install *Inno Setup*. You can get it from [here](http://www.jrsoftware.org/isdl.php)
|
1. Install *Inno Setup*. You can get it from [here](http://www.jrsoftware.org/isdl.php)
|
||||||
2. Get the Inno Setup script plus related files by cloning the whole [monero-core GitHub repository](https://github.com/monero-project/monero-core); you will only need the files in the installer directory `installers\windows` however
|
2. Get the Inno Setup script plus related files by cloning the whole [monero-core GitHub repository](https://github.com/monero-project/monero-core); you will only need the files in the installer directory `installers\windows` however
|
||||||
3. The setup script is written to take the GUI wallet files from a subdirectory named `bin`; so create `installers\windows\bin`, get the zip file of the GUI wallet from [here](https://getmonero.org/downloads/), unpack it somewhere, and copy all the files and subdirectories in the `monero-gui-0.12.0.0` directory to this `bin` subdirectory
|
3. The setup script is written to take the GUI wallet files from a subdirectory named `bin`; so create `installers\windows\bin`, get the zip file of the GUI wallet from [here](https://getmonero.org/downloads/), unpack it somewhere, and copy all the files and subdirectories in the `monero-gui-0.12.3.0` directory to this `bin` subdirectory
|
||||||
4. Start Inno Setup, load `Monero.iss` and compile it
|
4. Start Inno Setup, load `Monero.iss` and compile it
|
||||||
5. The result i.e. the finished installer will be the file `mysetup.exe` in the `installers\windows\Output` subdirectory
|
5. The result i.e. the finished installer will be the file `mysetup.exe` in the `installers\windows\Output` subdirectory
|
||||||
|
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
<h1>Monero Lithium Luna GUI Wallet</h1>
|
<h1>Monero Lithium Luna GUI Wallet</h1>
|
||||||
|
|
||||||
<p>Copyright (c) 2014-2018, The Monero Project<br>
|
<p>Copyright (c) 2014-2018, The Monero Project<br>
|
||||||
Date: March 18, 2018</p>
|
Date: July 27, 2018</p>
|
||||||
|
|
||||||
<h2>Preface</h2>
|
<h2>Preface</h2>
|
||||||
|
|
||||||
@@ -23,7 +23,7 @@
|
|||||||
|
|
||||||
<h2>Content of the Package</h2>
|
<h2>Content of the Package</h2>
|
||||||
|
|
||||||
<p>You just installed the <i>Monero GUI wallet</i> for Windows, release Lithium Luna, more exact version 0.12.0.0.
|
<p>You just installed the <i>Monero GUI wallet</i> for Windows, release Lithium Luna, more exact version 0.12.3.0.
|
||||||
The wallet enables you to send and receive Moneroj in a secure and very private way.
|
The wallet enables you to send and receive Moneroj in a secure and very private way.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
@@ -61,7 +61,7 @@
|
|||||||
provides the most security and privacy possible for you.</p>
|
provides the most security and privacy possible for you.</p>
|
||||||
|
|
||||||
<p>However if your Internet access makes it difficult to run a full node, or if you have simply no room to store
|
<p>However if your Internet access makes it difficult to run a full node, or if you have simply no room to store
|
||||||
the blockchain locally (around 50 GB in spring 2018, and of course growing), you can compromise and try to connect
|
the blockchain locally (around 60 GB in summer 2018, and of course growing), you can compromise and try to connect
|
||||||
to a remote node. One way of finding such a node is checking
|
to a remote node. One way of finding such a node is checking
|
||||||
<a href="https://moneroworld.com/#nodes">this page</a>.
|
<a href="https://moneroworld.com/#nodes">this page</a>.
|
||||||
</p>
|
</p>
|
||||||
@@ -75,15 +75,13 @@
|
|||||||
Beside the GUI wallet there is second program, the so-called <i>Monero daemon</i>, which will carry out that download.
|
Beside the GUI wallet there is second program, the so-called <i>Monero daemon</i>, which will carry out that download.
|
||||||
You find it in the <i>Utilities</i> sub-folder of the program group.</p>
|
You find it in the <i>Utilities</i> sub-folder of the program group.</p>
|
||||||
|
|
||||||
<p>Depending on your Internet access and the speed of your computer this can take
|
<p>Depending on your Internet access, the speed of your computer and the type of disk you use (HDD or SSD) this can take
|
||||||
<b>several hours</b>, in some cases <b>more than a day</b>. Furthermore there are unfortunate cases where the
|
<b>several hours</b>, in some cases <b>more than a day</b>. Furthermore there are unfortunate cases where the
|
||||||
download gets stuck somehow or doesn't work at all, e.g. because a firewall prevents access to other nodes of the
|
download gets stuck somehow or doesn't work at all, e.g. because a firewall prevents access to other nodes of the
|
||||||
Monero network.</p>
|
Monero network.</p>
|
||||||
|
|
||||||
<p>The GUI wallet can start the daemon for you, but that way you will not see much during initial blockchain
|
<p>The GUI wallet can start the daemon for you. You can also use the <i>Monero Daemon</i> icon in the <i>Utilities</i>
|
||||||
download, especially you probably won't see any error messages in case something goes wrong. By starting the
|
sub-folder of the Monero program group.</p>
|
||||||
daemon yourself "by hand" using the <i>Monero Daemon</i> icon in the <i>Utilities</i> sub-folder of the
|
|
||||||
Monero program group you will see it running and displaying messages in a separate window.</p>
|
|
||||||
|
|
||||||
<p>If all goes well the daemon will finally display a message like this:
|
<p>If all goes well the daemon will finally display a message like this:
|
||||||
<i>You are now synchronized with the network.</i></p>
|
<i>You are now synchronized with the network.</i></p>
|
||||||
|
|||||||
27
js/Utils.js
@@ -26,4 +26,31 @@ function formatDate( date, params ) {
|
|||||||
|
|
||||||
function isNumeric(n) {
|
function isNumeric(n) {
|
||||||
return !isNaN(parseFloat(n)) && isFinite(n);
|
return !isNaN(parseFloat(n)) && isFinite(n);
|
||||||
|
}
|
||||||
|
|
||||||
|
function showSeedPage() {
|
||||||
|
// Shows `Settings->Seed & keys`. Prompts a password dialog.
|
||||||
|
passwordDialog.onAcceptedCallback = function() {
|
||||||
|
if(walletPassword === passwordDialog.password){
|
||||||
|
if(currentWallet.seedLanguage == "") {
|
||||||
|
console.log("No seed language set. Using English as default");
|
||||||
|
currentWallet.setSeedLanguage("English");
|
||||||
|
}
|
||||||
|
// Load keys page
|
||||||
|
appWindow.showPageRequest("Keys");
|
||||||
|
} else {
|
||||||
|
informationPopup.title = qsTr("Error") + translationManager.emptyString;
|
||||||
|
informationPopup.text = qsTr("Wrong password");
|
||||||
|
informationPopup.open()
|
||||||
|
informationPopup.onCloseCallback = function() {
|
||||||
|
passwordDialog.open()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
passwordDialog.onRejectedCallback = function() {
|
||||||
|
leftPanel.selectItem(middlePanel.state);
|
||||||
|
}
|
||||||
|
passwordDialog.open();
|
||||||
|
if(isMobile) hideMenu();
|
||||||
|
updateBalance();
|
||||||
}
|
}
|
||||||
@@ -11,12 +11,11 @@ function setCustomWindowDecorations(custom) {
|
|||||||
var y = appWindow.y
|
var y = appWindow.y
|
||||||
if (x < 0) x = 0
|
if (x < 0) x = 0
|
||||||
if (y < 0) y = 0
|
if (y < 0) y = 0
|
||||||
|
|
||||||
// Update persistentSettings
|
// Update persistentSettings
|
||||||
persistentSettings.customDecorations = custom;
|
persistentSettings.customDecorations = custom;
|
||||||
|
|
||||||
titleBar.visible = custom;
|
titleBar.visible = custom;
|
||||||
daemonConsolePopup.titleBar.visible = custom;
|
|
||||||
|
|
||||||
if (custom) {
|
if (custom) {
|
||||||
appWindow.flags = flagsCustomDecorations;
|
appWindow.flags = flagsCustomDecorations;
|
||||||
@@ -25,7 +24,7 @@ function setCustomWindowDecorations(custom) {
|
|||||||
appWindow.flags = flags;
|
appWindow.flags = flags;
|
||||||
daemonConsolePopup.flags = flags;
|
daemonConsolePopup.flags = flags;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Reset window
|
// Reset window
|
||||||
appWindow.hide()
|
appWindow.hide()
|
||||||
appWindow.x = x
|
appWindow.x = x
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 9.1 KiB |
BIN
lang/flags/bd.png
Normal file
|
After Width: | Height: | Size: 2.1 KiB |
BIN
lang/flags/br.png
Normal file
|
After Width: | Height: | Size: 4.4 KiB |
|
Before Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 6.7 KiB After Width: | Height: | Size: 1.4 KiB |
|
Before Width: | Height: | Size: 9.4 KiB |
BIN
lang/flags/cn.png
Normal file
|
After Width: | Height: | Size: 2.6 KiB |
|
Before Width: | Height: | Size: 6.8 KiB |
BIN
lang/flags/cz.png
Normal file
|
After Width: | Height: | Size: 1.6 KiB |
|
Before Width: | Height: | Size: 5.9 KiB |
BIN
lang/flags/de.png
Normal file
|
After Width: | Height: | Size: 1.3 KiB |
|
Before Width: | Height: | Size: 3.6 KiB |
BIN
lang/flags/dk.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
lang/flags/eg.png
Normal file
|
After Width: | Height: | Size: 3.2 KiB |
|
Before Width: | Height: | Size: 6.5 KiB |
BIN
lang/flags/es.png
Normal file
|
After Width: | Height: | Size: 4.8 KiB |
|
Before Width: | Height: | Size: 4.4 KiB After Width: | Height: | Size: 2.0 KiB |
BIN
lang/flags/fi.png
Normal file
|
After Width: | Height: | Size: 1.4 KiB |
|
Before Width: | Height: | Size: 4.9 KiB |
BIN
lang/flags/fr.png
Normal file
|
After Width: | Height: | Size: 1.4 KiB |
|
Before Width: | Height: | Size: 7.5 KiB |
BIN
lang/flags/gb.png
Normal file
|
After Width: | Height: | Size: 2.0 KiB |
|
Before Width: | Height: | Size: 7.0 KiB |
BIN
lang/flags/hr.png
Normal file
|
After Width: | Height: | Size: 4.3 KiB |
BIN
lang/flags/hu.png
Executable file
|
After Width: | Height: | Size: 1.2 KiB |
BIN
lang/flags/id.png
Normal file
|
After Width: | Height: | Size: 1.2 KiB |
BIN
lang/flags/il.png
Normal file
|
After Width: | Height: | Size: 2.8 KiB |
BIN
lang/flags/in.png
Normal file
|
After Width: | Height: | Size: 3.4 KiB |
|
Before Width: | Height: | Size: 10 KiB |
|
Before Width: | Height: | Size: 7.0 KiB |
|
Before Width: | Height: | Size: 8.7 KiB |
BIN
lang/flags/it.png
Normal file
|
After Width: | Height: | Size: 1.3 KiB |
|
Before Width: | Height: | Size: 7.8 KiB |
|
Before Width: | Height: | Size: 2.9 KiB |
BIN
lang/flags/jp.png
Normal file
|
After Width: | Height: | Size: 2.0 KiB |
BIN
lang/flags/kr.png
Normal file
|
After Width: | Height: | Size: 4.1 KiB |
BIN
lang/flags/lt.png
Normal file
|
After Width: | Height: | Size: 1.3 KiB |
|
Before Width: | Height: | Size: 3.8 KiB |
BIN
lang/flags/nl.png
Normal file
|
After Width: | Height: | Size: 1.3 KiB |
|
Before Width: | Height: | Size: 7.0 KiB |
BIN
lang/flags/pirate.png
Normal file
|
After Width: | Height: | Size: 11 KiB |
BIN
lang/flags/pl.png
Normal file
|
After Width: | Height: | Size: 1.3 KiB |
|
Before Width: | Height: | Size: 4.0 KiB |
|
Before Width: | Height: | Size: 13 KiB |
BIN
lang/flags/ps.png
Normal file
|
After Width: | Height: | Size: 1.8 KiB |
BIN
lang/flags/pt.png
Normal file
|
After Width: | Height: | Size: 5.3 KiB |
BIN
lang/flags/ro.png
Normal file
|
After Width: | Height: | Size: 1.4 KiB |
|
Before Width: | Height: | Size: 7.3 KiB |
|
Before Width: | Height: | Size: 11 KiB |
BIN
lang/flags/rs.png
Normal file
|
After Width: | Height: | Size: 8.6 KiB |
BIN
lang/flags/ru.png
Normal file
|
After Width: | Height: | Size: 1.3 KiB |
|
Before Width: | Height: | Size: 8.7 KiB |
BIN
lang/flags/se.png
Normal file
|
After Width: | Height: | Size: 1.4 KiB |
BIN
lang/flags/si.png
Normal file
|
After Width: | Height: | Size: 3.1 KiB |
BIN
lang/flags/sk.png
Normal file
|
After Width: | Height: | Size: 3.3 KiB |
|
Before Width: | Height: | Size: 10 KiB |
|
Before Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 9.4 KiB |
|
Before Width: | Height: | Size: 6.9 KiB |
|
Before Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 4.8 KiB |
|
Before Width: | Height: | Size: 8.9 KiB |
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 3.0 KiB |
BIN
lang/flags/tw.png
Normal file
|
After Width: | Height: | Size: 3.2 KiB |
BIN
lang/flags/ua.png
Normal file
|
After Width: | Height: | Size: 1.3 KiB |
|
Before Width: | Height: | Size: 13 KiB |
|
Before Width: | Height: | Size: 9.0 KiB |
BIN
lang/flags/us.png
Normal file
|
After Width: | Height: | Size: 3.5 KiB |
|
Before Width: | Height: | Size: 11 KiB |
BIN
lang/flags/za.png
Normal file
|
After Width: | Height: | Size: 2.5 KiB |
@@ -17,39 +17,42 @@ Deutsch (German)
|
|||||||
Esperanto
|
Esperanto
|
||||||
Lojban
|
Lojban
|
||||||
-->
|
-->
|
||||||
<language display_name="English (US)" locale="en_US" wallet_language="English" flag="/lang/flags/usa.png" qs="none"/>
|
<language display_name="English (US)" locale="en_US" wallet_language="English" flag="/lang/flags/us.png" qs="none"/>
|
||||||
<!-- <language display_name="English (GB)" locale="en_GB" wallet_language="English" flag="/lang/flags/uk.png" qs="none"/> -->
|
<!-- <language display_name="English (GB)" locale="en_GB" wallet_language="English" flag="/lang/flags/gb.png" qs="none"/> -->
|
||||||
<!-- <language display_name="English (ZA)" locale="en_SA" wallet_language="English" flag="/lang/flags/rpa.png" qs="none"/> -->
|
<!-- <language display_name="English (ZA)" locale="en_SA" wallet_language="English" flag="/lang/flags/za.png" qs="none"/> -->
|
||||||
<!-- <language display_name="العربية (PS)" locale="ar_PS" wallet_language="English" flag="/lang/flags/palestine.png" qs="none"/> -->
|
<!-- <language display_name="العربية (PS)" locale="ar_PS" wallet_language="English" flag="/lang/flags/ps.png" qs="none"/> -->
|
||||||
<language display_name="Deutsch" locale="de_DE" wallet_language="Deutsch" flag="/lang/flags/german.png" qs="none"/>
|
<language display_name="Deutsch" locale="de_DE" wallet_language="Deutsch" flag="/lang/flags/de.png" qs="none"/>
|
||||||
<language display_name="Esperanto" locale="eo" wallet_language="Esperanto" flag="/lang/flags/esperanto.png" qs="none"/>
|
<language display_name="Esperanto" locale="eo" wallet_language="Esperanto" flag="/lang/flags/esperanto.png" qs="none"/>
|
||||||
<language display_name="Español" locale="es_ES" wallet_language="Español" flag="/lang/flags/spain.png" qs="none"/>
|
<language display_name="Español" locale="es_ES" wallet_language="Español" flag="/lang/flags/es.png" qs="none"/>
|
||||||
<!-- <language display_name="Suomen kieli" locale="fi" wallet_language="English" flag="/lang/flags/finland.png" qs="none"/> -->
|
<language display_name="Français" locale="fr_FR" wallet_language="Français" flag="/lang/flags/fr.png" qs="none"/>
|
||||||
<language display_name="Français" locale="fr_FR" wallet_language="Français" flag="/lang/flags/france.png" qs="none"/>
|
<language display_name="Svenska" locale="sv_SE" wallet_language="English" flag="/lang/flags/se.png" qs="none"/>
|
||||||
<language display_name="Svenska" locale="sv_SE" wallet_language="English" flag="/lang/flags/sweden.png" qs="none"/>
|
<language display_name="Hrvatski" locale="hr_HR" wallet_language="English" flag="/lang/flags/hr.png" qs="none"/>
|
||||||
<language display_name="Hrvatski" locale="hr_HR" wallet_language="English" flag="/lang/flags/croatia.png" qs="none"/>
|
<language display_name="Magyar" locale="hu_HU" wallet_language="Hungarian" flag="/lang/flags/hu.png" qs="none"/>
|
||||||
<!-- <language display_name="हिन्दी" locale="hi_IN" wallet_language="English" flag="/lang/flags/india.png" qs="none"/> -->
|
<!-- <language display_name="हिन्दी" locale="hi_IN" wallet_language="English" flag="/lang/flags/in.png" qs="none"/> -->
|
||||||
<language display_name="Bahasa Indonesia" locale="id_ID" wallet_language="English" flag="/lang/flags/indonesia.png" qs="none"/>
|
<language display_name="Bahasa Indonesia" locale="id_ID" wallet_language="English" flag="/lang/flags/id.png" qs="none"/>
|
||||||
<language display_name="Italiano" locale="it_IT" wallet_language="Italiano" flag="/lang/flags/italy.png" qs="none"/>
|
<language display_name="Italiano" locale="it_IT" wallet_language="Italiano" flag="/lang/flags/it.png" qs="none"/>
|
||||||
<language display_name="日本語" locale="ja_JP" wallet_language="日本語" flag="/lang/flags/japan.png" qs="none"/>
|
<language display_name="日本語" locale="ja_JP" wallet_language="日本語" flag="/lang/flags/jp.png" qs="none"/>
|
||||||
<language display_name="Nederlands" locale="nl_NL" wallet_language="Nederlands" flag="/lang/flags/netherlands.png" qs="none"/>
|
<language display_name="Nederlands" locale="nl_NL" wallet_language="Nederlands" flag="/lang/flags/nl.png" qs="none"/>
|
||||||
<language display_name="Polski" locale="pl_PL" wallet_language="English" flag="/lang/flags/poland.png" qs="none"/>
|
<language display_name="Polski" locale="pl_PL" wallet_language="English" flag="/lang/flags/pl.png" qs="none"/>
|
||||||
<!-- <language display_name="Polski" locale="pl_PL" wallet_language="English" flag="/lang/flags/poland.png" qs="none"/> -->
|
<!-- <language display_name="Polski" locale="pl_PL" wallet_language="English" flag="/lang/flags/pl.png" qs="none"/> -->
|
||||||
<language display_name="Português (PT)" locale="pt-pt_PT" wallet_language="Português" flag="/lang/flags/portugal.png" qs="none"/>
|
<language display_name="Português (PT)" locale="pt-pt_PT" wallet_language="Português" flag="/lang/flags/pt.png" qs="none"/>
|
||||||
<language display_name="Português (BR)" locale="pt-br_BR" wallet_language="Português" flag="/lang/flags/brazil.png" qs="none"/>
|
<language display_name="Português (BR)" locale="pt-br_BR" wallet_language="Português" flag="/lang/flags/br.png" qs="none"/>
|
||||||
<language display_name="Русский язык" locale="ru_RU" wallet_language="русский язык" flag="/lang/flags/russia.png" qs="none"/>
|
<language display_name="Русский язык" locale="ru_RU" wallet_language="русский язык" flag="/lang/flags/ru.png" qs="none"/>
|
||||||
<language display_name="简体中文 (中国)" locale="zh-cn_CN" wallet_language="简体中文 (中国)" flag="/lang/flags/china.png" qs="none"/>
|
<language display_name="简体中文 (中国)" locale="zh-cn_CN" wallet_language="简体中文 (中国)" flag="/lang/flags/cn.png" qs="none"/>
|
||||||
<language display_name="繁體中文 (台灣)" locale="zh-tw_CN" wallet_language="English" flag="/lang/flags/taiwan.png" qs="none"/>
|
<language display_name="繁體中文 (台灣)" locale="zh-tw_CN" wallet_language="English" flag="/lang/flags/tw.png" qs="none"/>
|
||||||
<language display_name="עברית" locale="he_HE" wallet_language="English" flag="/lang/flags/israel.png" qs="none"/>
|
<language display_name="עברית" locale="he_HE" wallet_language="English" flag="/lang/flags/il.png" qs="none"/>
|
||||||
<language display_name="한국어" locale="ko_KO" wallet_language="English" flag="/lang/flags/south_korea.png" qs="none"/>
|
<language display_name="한국어" locale="ko_KO" wallet_language="English" flag="/lang/flags/kr.png" qs="none"/>
|
||||||
<language display_name="Română" locale="ro_RO" wallet_language="English" flag="/lang/flags/romania.png" qs="none"/>
|
<language display_name="Română" locale="ro_RO" wallet_language="English" flag="/lang/flags/ro.png" qs="none"/>
|
||||||
<language display_name="Dansk" locale="da_DK" wallet-language="English" flag="/lang/flags/denmark.png" qs="none"/>
|
<language display_name="Dansk" locale="da_DK" wallet-language="English" flag="/lang/flags/dk.png" qs="none"/>
|
||||||
<language display_name="Česky" locale="cs_CZ" wallet_language="English" flag="/lang/flags/czech.png" qs="none"/>
|
<language display_name="Česky" locale="cs_CZ" wallet_language="English" flag="/lang/flags/cz.png" qs="none"/>
|
||||||
<language display_name="Slovensky" locale="sk_SK" wallet_language="English" flag="/lang/flags/slovakia.png" qs="none"/>
|
<language display_name="Slovensky" locale="sk_SK" wallet_language="English" flag="/lang/flags/sk.png" qs="none"/>
|
||||||
<language display_name="العربية" locale="ar_AR" wallet_language="English" flag="/lang/flags/egypt.png" qs="none"/>
|
<language display_name="العربية" locale="ar_AR" wallet_language="English" flag="/lang/flags/eg.png" qs="none"/>
|
||||||
<language display_name="Slovenski" locale="sl_SI" wallet_language="English" flag="/lang/flags/slovenia.png" qs="none"/>
|
<language display_name="Slovenski" locale="sl_SI" wallet_language="English" flag="/lang/flags/si.png" qs="none"/>
|
||||||
<language display_name="Srpski" locale="rs_RS" wallet_language="English" flag="/lang/flags/srbija.png" qs="none"/>
|
<language display_name="Srpski" locale="rs_RS" wallet_language="English" flag="/lang/flags/rs.png" qs="none"/>
|
||||||
<language display_name="Català" locale="cat_ES" wallet_language="English" flag="/lang/flags/catalonia.png" qs="none"/>
|
<language display_name="Català" locale="cat_ES" wallet_language="English" flag="/lang/flags/catalonia.png" qs="none"/>
|
||||||
<language display_name="Türkçe" locale="tr_TR" wallet_language="English" flag="/lang/flags/tr.png" qs="none"/>
|
<language display_name="Türkçe" locale="tr_TR" wallet_language="English" flag="/lang/flags/tr.png" qs="none"/>
|
||||||
<language display_name="Українська" locale="uk_UA" wallet_language="English" flag="/lang/flags/ukraine.png" qs="none"/>
|
<language display_name="Українська" locale="uk_UA" wallet_language="English" flag="/lang/flags/ua.png" qs="none"/>
|
||||||
|
<language display_name="Lietuvių" locale="lt_LT" wallet_language="English" flag="/lang/flags/lt.png" qs="none"/>
|
||||||
|
<language display_name="Suomi" locale="fi_FI" wallet_language="English" flag="/lang/flags/fi.png" qs="none"/>
|
||||||
|
<language display_name="Pirate" locale="prt" wallet_language="English" flag="/lang/flags/pirate.png" qs="none"/>
|
||||||
</languages>
|
</languages>
|
||||||
|
|||||||
@@ -48,7 +48,7 @@ export QT_PLUGIN_PATH=\`pwd\`/plugins
|
|||||||
export QML2_IMPORT_PATH=\`pwd\`/qml
|
export QML2_IMPORT_PATH=\`pwd\`/qml
|
||||||
# make it so that it can be called from anywhere and also through soft links
|
# make it so that it can be called from anywhere and also through soft links
|
||||||
SCRIPT_DIR="\$(dirname "\$(test -L "\${BASH_SOURCE[0]}" && readlink "\${BASH_SOURCE[0]}" || echo "\${BASH_SOURCE[0]}")")"
|
SCRIPT_DIR="\$(dirname "\$(test -L "\${BASH_SOURCE[0]}" && readlink "\${BASH_SOURCE[0]}" || echo "\${BASH_SOURCE[0]}")")"
|
||||||
"\$SCRIPT_DIR"/$GUI_EXEC
|
"\$SCRIPT_DIR"/$GUI_EXEC "\$@"
|
||||||
EOL
|
EOL
|
||||||
|
|
||||||
chmod +x $TARGET/start-gui.sh
|
chmod +x $TARGET/start-gui.sh
|
||||||
|
|||||||
63
main.qml
@@ -40,6 +40,7 @@ import moneroComponents.NetworkType 1.0
|
|||||||
|
|
||||||
import "components"
|
import "components"
|
||||||
import "wizard"
|
import "wizard"
|
||||||
|
import "../js/Utils.js" as Utils
|
||||||
import "js/Windows.js" as Windows
|
import "js/Windows.js" as Windows
|
||||||
|
|
||||||
ApplicationWindow {
|
ApplicationWindow {
|
||||||
@@ -102,13 +103,13 @@ ApplicationWindow {
|
|||||||
if(seq === "Ctrl+S") middlePanel.state = "Transfer"
|
if(seq === "Ctrl+S") middlePanel.state = "Transfer"
|
||||||
else if(seq === "Ctrl+R") middlePanel.state = "Receive"
|
else if(seq === "Ctrl+R") middlePanel.state = "Receive"
|
||||||
else if(seq === "Ctrl+K") middlePanel.state = "TxKey"
|
else if(seq === "Ctrl+K") middlePanel.state = "TxKey"
|
||||||
else if(seq === "Ctrl+S") middlePanel.state = "SharedRingDB"
|
|
||||||
else if(seq === "Ctrl+H") middlePanel.state = "History"
|
else if(seq === "Ctrl+H") middlePanel.state = "History"
|
||||||
else if(seq === "Ctrl+B") middlePanel.state = "AddressBook"
|
else if(seq === "Ctrl+B") middlePanel.state = "AddressBook"
|
||||||
else if(seq === "Ctrl+M") middlePanel.state = "Mining"
|
else if(seq === "Ctrl+M") middlePanel.state = "Mining"
|
||||||
else if(seq === "Ctrl+I") middlePanel.state = "Sign"
|
else if(seq === "Ctrl+I") middlePanel.state = "Sign"
|
||||||
else if(seq === "Ctrl+A") middlePanel.state = "SharedRingDB"
|
else if(seq === "Ctrl+G") middlePanel.state = "SharedRingDB"
|
||||||
else if(seq === "Ctrl+E") middlePanel.state = "Settings"
|
else if(seq === "Ctrl+E") middlePanel.state = "Settings"
|
||||||
|
else if(seq === "Ctrl+Y") leftPanel.keysClicked()
|
||||||
else if(seq === "Ctrl+D") middlePanel.state = "Advanced"
|
else if(seq === "Ctrl+D") middlePanel.state = "Advanced"
|
||||||
else if(seq === "Ctrl+Tab" || seq === "Alt+Tab") {
|
else if(seq === "Ctrl+Tab" || seq === "Alt+Tab") {
|
||||||
/*
|
/*
|
||||||
@@ -222,6 +223,9 @@ ApplicationWindow {
|
|||||||
if (typeof wizard.m_wallet !== 'undefined') {
|
if (typeof wizard.m_wallet !== 'undefined') {
|
||||||
console.log("using wizard wallet")
|
console.log("using wizard wallet")
|
||||||
//Set restoreHeight
|
//Set restoreHeight
|
||||||
|
if (persistentSettings.restore_height == 0 && persistentSettings.is_recovering_from_device && walletManager.localDaemonSynced()) {
|
||||||
|
persistentSettings.restore_height = walletManager.blockchainHeight() - 1;
|
||||||
|
}
|
||||||
if(persistentSettings.restore_height > 0){
|
if(persistentSettings.restore_height > 0){
|
||||||
// We store restore height in own variable for performance reasons.
|
// We store restore height in own variable for performance reasons.
|
||||||
restoreHeight = persistentSettings.restore_height
|
restoreHeight = persistentSettings.restore_height
|
||||||
@@ -332,6 +336,8 @@ ApplicationWindow {
|
|||||||
|
|
||||||
console.log("initializing with daemon address: ", currentDaemonAddress)
|
console.log("initializing with daemon address: ", currentDaemonAddress)
|
||||||
currentWallet.initAsync(currentDaemonAddress, 0, persistentSettings.is_recovering, persistentSettings.is_recovering_from_device, persistentSettings.restore_height);
|
currentWallet.initAsync(currentDaemonAddress, 0, persistentSettings.is_recovering, persistentSettings.is_recovering_from_device, persistentSettings.restore_height);
|
||||||
|
// save wallet keys in case wallet settings have been changed in the init
|
||||||
|
currentWallet.setPassword(walletPassword);
|
||||||
}
|
}
|
||||||
|
|
||||||
function walletPath() {
|
function walletPath() {
|
||||||
@@ -358,7 +364,7 @@ ApplicationWindow {
|
|||||||
middlePanel.updateStatus();
|
middlePanel.updateStatus();
|
||||||
leftPanel.networkStatus.connected = status
|
leftPanel.networkStatus.connected = status
|
||||||
|
|
||||||
// update local daemon status
|
// update local daemon status.
|
||||||
if(!isMobile && walletManager.isDaemonLocal(appWindow.persistentSettings.daemon_address))
|
if(!isMobile && walletManager.isDaemonLocal(appWindow.persistentSettings.daemon_address))
|
||||||
daemonRunning = status;
|
daemonRunning = status;
|
||||||
|
|
||||||
@@ -629,9 +635,6 @@ ApplicationWindow {
|
|||||||
transactionConfirmationPopup.text += qsTr("\n\nAmount: ") + walletManager.displayAmount(transaction.amount);
|
transactionConfirmationPopup.text += qsTr("\n\nAmount: ") + walletManager.displayAmount(transaction.amount);
|
||||||
transactionConfirmationPopup.text += qsTr("\nFee: ") + walletManager.displayAmount(transaction.fee);
|
transactionConfirmationPopup.text += qsTr("\nFee: ") + walletManager.displayAmount(transaction.fee);
|
||||||
transactionConfirmationPopup.text += qsTr("\nRingsize: ") + (mixinCount + 1);
|
transactionConfirmationPopup.text += qsTr("\nRingsize: ") + (mixinCount + 1);
|
||||||
if(mixinCount !== 6){
|
|
||||||
transactionConfirmationPopup.text += qsTr("\n\nWARNING: non default ring size, which may harm your privacy. Default of 7 is recommended.");
|
|
||||||
}
|
|
||||||
transactionConfirmationPopup.text += qsTr("\n\nNumber of transactions: ") + transaction.txCount
|
transactionConfirmationPopup.text += qsTr("\n\nNumber of transactions: ") + transaction.txCount
|
||||||
transactionConfirmationPopup.text += (transactionDescription === "" ? "" : (qsTr("\nDescription: ") + transactionDescription))
|
transactionConfirmationPopup.text += (transactionDescription === "" ? "" : (qsTr("\nDescription: ") + transactionDescription))
|
||||||
for (var i = 0; i < transaction.subaddrIndices.length; ++i){
|
for (var i = 0; i < transaction.subaddrIndices.length; ++i){
|
||||||
@@ -1300,6 +1303,25 @@ ApplicationWindow {
|
|||||||
anchors.left: parent.left
|
anchors.left: parent.left
|
||||||
anchors.right: parent.right
|
anchors.right: parent.right
|
||||||
height: visible? 65 * scaleRatio : 0
|
height: visible? 65 * scaleRatio : 0
|
||||||
|
|
||||||
|
MouseArea {
|
||||||
|
enabled: persistentSettings.customDecorations
|
||||||
|
property var previousPosition
|
||||||
|
anchors.fill: parent
|
||||||
|
propagateComposedEvents: true
|
||||||
|
onPressed: previousPosition = globalCursor.getPosition()
|
||||||
|
onPositionChanged: {
|
||||||
|
if (pressedButtons == Qt.LeftButton) {
|
||||||
|
var pos = globalCursor.getPosition()
|
||||||
|
var dx = pos.x - previousPosition.x
|
||||||
|
var dy = pos.y - previousPosition.y
|
||||||
|
|
||||||
|
appWindow.x += dx
|
||||||
|
appWindow.y += dy
|
||||||
|
previousPosition = pos
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
LeftPanel {
|
LeftPanel {
|
||||||
@@ -1319,7 +1341,6 @@ ApplicationWindow {
|
|||||||
onTransferClicked: {
|
onTransferClicked: {
|
||||||
middlePanel.state = "Transfer";
|
middlePanel.state = "Transfer";
|
||||||
middlePanel.flickable.contentY = 0;
|
middlePanel.flickable.contentY = 0;
|
||||||
mainFlickable.contentY = 0;
|
|
||||||
if(isMobile) {
|
if(isMobile) {
|
||||||
hideMenu();
|
hideMenu();
|
||||||
}
|
}
|
||||||
@@ -1398,31 +1419,7 @@ ApplicationWindow {
|
|||||||
updateBalance();
|
updateBalance();
|
||||||
}
|
}
|
||||||
|
|
||||||
onKeysClicked: {
|
onKeysClicked: Utils.showSeedPage();
|
||||||
passwordDialog.onAcceptedCallback = function() {
|
|
||||||
if(walletPassword === passwordDialog.password){
|
|
||||||
if(currentWallet.seedLanguage == "") {
|
|
||||||
console.log("No seed language set. Using English as default");
|
|
||||||
currentWallet.setSeedLanguage("English");
|
|
||||||
}
|
|
||||||
// Load keys page
|
|
||||||
middlePanel.state = "Keys"
|
|
||||||
} else {
|
|
||||||
informationPopup.title = qsTr("Error") + translationManager.emptyString;
|
|
||||||
informationPopup.text = qsTr("Wrong password");
|
|
||||||
informationPopup.open()
|
|
||||||
informationPopup.onCloseCallback = function() {
|
|
||||||
passwordDialog.open()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
passwordDialog.onRejectedCallback = function() {
|
|
||||||
appWindow.showPageRequest("Settings");
|
|
||||||
}
|
|
||||||
passwordDialog.open();
|
|
||||||
if(isMobile) hideMenu();
|
|
||||||
updateBalance();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
RightPanel {
|
RightPanel {
|
||||||
@@ -1614,7 +1611,7 @@ ApplicationWindow {
|
|||||||
showMoneroLogo: true
|
showMoneroLogo: true
|
||||||
onCloseClicked: appWindow.close();
|
onCloseClicked: appWindow.close();
|
||||||
onMaximizeClicked: {
|
onMaximizeClicked: {
|
||||||
appWindow.visibility = appWindow.visibility !== Window.FullScreen ? Window.FullScreen :
|
appWindow.visibility = appWindow.visibility !== Window.Maximized ? Window.Maximized :
|
||||||
Window.Windowed
|
Window.Windowed
|
||||||
}
|
}
|
||||||
onMinimizeClicked: appWindow.visibility = Window.Minimized
|
onMinimizeClicked: appWindow.visibility = Window.Minimized
|
||||||
|
|||||||