Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
G
Geth-Modification
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
张蕾
Geth-Modification
Commits
cebb149f
Commit
cebb149f
authored
Jan 28, 2015
by
obscuren
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
removed key while in the process of moving to the new key storage
parent
1c51e12c
Changes
9
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
63 additions
and
714 deletions
+63
-714
browser.qml
cmd/mist/assets/qml/browser.qml
+0
-486
main.qml
cmd/mist/assets/qml/main.qml
+1
-1
browser2.qml
cmd/mist/assets/qml/views/browser2.qml
+0
-209
bindings.go
cmd/mist/bindings.go
+1
-1
main.go
cmd/mist/main.go
+3
-0
ui_lib.go
cmd/mist/ui_lib.go
+0
-1
types.go
javascript/types.go
+1
-1
packages.go
rpc/packages.go
+2
-2
xeth.go
xeth/xeth.go
+55
-13
No files found.
cmd/mist/assets/qml/browser.qml
deleted
100644 → 0
View file @
1c51e12c
This diff is collapsed.
Click to expand it.
cmd/mist/assets/qml/main.qml
View file @
cebb149f
...
...
@@ -109,7 +109,7 @@ ApplicationWindow {
}
function
newBrowserTab
(
url
)
{
var
window
=
addPlugin
(
"./views/browser
2
.qml"
,
{
noAdd
:
true
,
close
:
true
,
section
:
"apps"
,
active
:
true
});
var
window
=
addPlugin
(
"./views/browser.qml"
,
{
noAdd
:
true
,
close
:
true
,
section
:
"apps"
,
active
:
true
});
window
.
view
.
url
=
url
;
window
.
menuItem
.
title
=
"Browser Tab"
;
activeView
(
window
.
view
,
window
.
menuItem
);
...
...
cmd/mist/assets/qml/views/browser2.qml
deleted
100644 → 0
View file @
1c51e12c
import
QtQuick
2.0
import
QtQuick
.
Controls
1.0
;
import
QtQuick
.
Controls
.
Styles
1.0
import
QtQuick
.
Layouts
1.0
;
import
QtWebEngine
1.0
//import QtWebEngine.experimental 1.0
import
QtQuick
.
Window
2.0
;
Rectangle
{
id
:
window
anchors.fill
:
parent
color
:
"#00000000"
property
var
title
:
"DApps"
property
var
iconSource
:
"../browser.png"
property
var
menuItem
property
var
hideUrl
:
true
property
alias
url
:
webview
.
url
property
alias
windowTitle
:
webview
.
title
property
alias
webView
:
webview
property
var
cleanPath
:
false
property
var
open
:
function
(
url
)
{
if
(
!
window
.
cleanPath
)
{
var
uri
=
url
;
if
(
!
/.*
\:\/\/
.*/
.
test
(
uri
))
{
uri
=
"http://"
+
uri
;
}
var
reg
=
/
(
^https
?\:\/\/(?:
www
\.)?)([
a-zA-Z0-9_
\-]
*
\.
eth
)(
.*
)
/
if
(
reg
.
test
(
uri
))
{
uri
.
replace
(
reg
,
function
(
match
,
pre
,
domain
,
path
)
{
uri
=
pre
;
var
lookup
=
eth
.
lookupDomain
(
domain
.
substring
(
0
,
domain
.
length
-
4
));
var
ip
=
[];
for
(
var
i
=
0
,
l
=
lookup
.
length
;
i
<
l
;
i
++
)
{
ip
.
push
(
lookup
.
charCodeAt
(
i
))
}
if
(
ip
.
length
!=
0
)
{
uri
+=
lookup
;
}
else
{
uri
+=
domain
;
}
uri
+=
path
;
});
}
window
.
cleanPath
=
true
;
webview
.
url
=
uri
;
//uriNav.text = uri.text.replace(/(^https?\:\/\/(?:www\.)?)([a-zA-Z0-9_\-]*\.\w{2,3})(.*)/, "$1$2<span style='color:#CCC'>$3</span>");
uriNav
.
text
=
uri
;
}
else
{
// Prevent inf loop.
window
.
cleanPath
=
false
;
}
}
Component.onCompleted
:
{
}
Item
{
objectName
:
"root"
id
:
root
anchors.fill
:
parent
state
:
"inspectorShown"
RowLayout
{
id
:
navBar
height
:
40
anchors
{
left
:
parent
.
left
right
:
parent
.
right
leftMargin
:
7
}
Button
{
id
:
back
onClicked
:
{
webview
.
goBack
()
}
style
:
ButtonStyle
{
background
:
Image
{
source
:
"../../back.png"
width
:
30
height
:
30
}
}
}
TextField
{
anchors
{
left
:
back
.
right
right
:
toggleInspector
.
left
leftMargin
:
10
rightMargin
:
10
}
text
:
webview
.
url
;
id
:
uriNav
y
:
parent
.
height
/
2
-
this
.
height
/
2
Keys.onReturnPressed
:
{
webview
.
url
=
this
.
text
;
}
}
Button
{
id
:
toggleInspector
anchors
{
right
:
parent
.
right
}
iconSource
:
"../../bug.png"
onClicked
:
{
// XXX soon
return
if
(
inspector
.
visible
==
true
){
inspector
.
visible
=
false
}
else
{
inspector
.
visible
=
true
inspector
.
url
=
webview
.
experimental
.
remoteInspectorUrl
}
}
}
}
// Border
Rectangle
{
id
:
divider
anchors
{
left
:
parent
.
left
right
:
parent
.
right
top
:
navBar
.
bottom
}
z
:
-
1
height
:
1
color
:
"#CCCCCC"
}
WebEngineView
{
objectName
:
"webView"
id
:
webview
anchors
{
left
:
parent
.
left
right
:
parent
.
right
bottom
:
parent
.
bottom
top
:
divider
.
bottom
}
onLoadingChanged
:
{
console
.
log
(
url
)
if
(
loadRequest
.
status
==
WebEngineView
.
LoadSucceededStatus
)
{
webview
.
runJavaScript
(
eth
.
readFile
(
"bignumber.min.js"
));
webview
.
runJavaScript
(
eth
.
readFile
(
"dist/ethereum.js"
));
}
}
onJavaScriptConsoleMessage
:
{
console
.
log
(
sourceID
+
":"
+
lineNumber
+
":"
+
JSON
.
stringify
(
message
));
}
}
Rectangle
{
id
:
sizeGrip
color
:
"gray"
visible
:
false
height
:
10
anchors
{
left
:
root
.
left
right
:
root
.
right
}
y
:
Math
.
round
(
root
.
height
*
2
/
3
)
MouseArea
{
anchors.fill
:
parent
drag.target
:
sizeGrip
drag.minimumY
:
0
drag.maximumY
:
root
.
height
drag.axis
:
Drag
.
YAxis
}
}
WebEngineView
{
id
:
inspector
visible
:
false
anchors
{
left
:
root
.
left
right
:
root
.
right
top
:
sizeGrip
.
bottom
bottom
:
root
.
bottom
}
}
states
:
[
State
{
name
:
"inspectorShown"
PropertyChanges
{
target
:
inspector
}
}
]
}
}
cmd/mist/bindings.go
View file @
cebb149f
...
...
@@ -61,7 +61,7 @@ func (gui *Gui) Transact(recipient, value, gas, gasPrice, d string) (string, err
data
=
ethutil
.
Bytes2Hex
(
utils
.
FormatTransactionData
(
d
))
}
return
gui
.
xeth
.
Transact
(
gui
.
privateKey
(),
recipient
,
value
,
gas
,
gasPrice
,
data
)
return
gui
.
xeth
.
Transact
(
recipient
,
value
,
gas
,
gasPrice
,
data
)
}
func
(
gui
*
Gui
)
SetCustomIdentifier
(
customIdentifier
string
)
{
...
...
cmd/mist/main.go
View file @
cebb149f
...
...
@@ -30,6 +30,7 @@ import (
"github.com/ethereum/go-ethereum/eth"
"github.com/ethereum/go-ethereum/logger"
"github.com/ethereum/go-ethereum/p2p"
"github.com/ethereum/go-ethereum/ui/qt/webengine"
"github.com/obscuren/qml"
)
...
...
@@ -42,6 +43,8 @@ var ethereum *eth.Ethereum
var
mainlogger
=
logger
.
NewLogger
(
"MAIN"
)
func
run
()
error
{
webengine
.
Initialize
()
// precedence: code-internal flag default < config file < environment variables < command line
Init
()
// parsing command line
...
...
cmd/mist/ui_lib.go
View file @
cebb149f
...
...
@@ -179,7 +179,6 @@ func (self *UiLib) Transact(params map[string]interface{}) (string, error) {
object
:=
mapToTxParams
(
params
)
return
self
.
XEth
.
Transact
(
object
[
"from"
],
object
[
"to"
],
object
[
"value"
],
object
[
"gas"
],
...
...
javascript/types.go
View file @
cebb149f
...
...
@@ -75,7 +75,7 @@ func (self *JSEthereum) GetStateObject(addr string) otto.Value {
}
func
(
self
*
JSEthereum
)
Transact
(
key
,
recipient
,
valueStr
,
gasStr
,
gasPriceStr
,
dataStr
string
)
otto
.
Value
{
r
,
err
:=
self
.
XEth
.
Transact
(
key
,
recipient
,
valueStr
,
gasStr
,
gasPriceStr
,
dataStr
)
r
,
err
:=
self
.
XEth
.
Transact
(
recipient
,
valueStr
,
gasStr
,
gasPriceStr
,
dataStr
)
if
err
!=
nil
{
fmt
.
Println
(
err
)
...
...
rpc/packages.go
View file @
cebb149f
...
...
@@ -65,7 +65,7 @@ func (p *EthereumApi) Transact(args *NewTxArgs, reply *interface{}) error {
if
err
!=
nil
{
return
err
}
result
,
_
:=
p
.
xeth
.
Transact
(
/* TODO specify account */
""
,
args
.
Recipient
,
args
.
Value
,
args
.
Gas
,
args
.
GasPrice
,
args
.
Body
)
result
,
_
:=
p
.
xeth
.
Transact
(
/* TODO specify account */
args
.
Recipient
,
args
.
Value
,
args
.
Gas
,
args
.
GasPrice
,
args
.
Body
)
*
reply
=
result
return
nil
}
...
...
@@ -76,7 +76,7 @@ func (p *EthereumApi) Create(args *NewTxArgs, reply *interface{}) error {
return
err
}
result
,
_
:=
p
.
xeth
.
Transact
(
/* TODO specify account */
""
,
""
,
args
.
Value
,
args
.
Gas
,
args
.
GasPrice
,
args
.
Body
)
result
,
_
:=
p
.
xeth
.
Transact
(
/* TODO specify account */
""
,
args
.
Value
,
args
.
Gas
,
args
.
GasPrice
,
args
.
Body
)
*
reply
=
result
return
nil
}
...
...
xeth/xeth.go
View file @
cebb149f
...
...
@@ -22,7 +22,6 @@ var pipelogger = logger.NewLogger("XETH")
type
Backend
interface
{
BlockProcessor
()
*
core
.
BlockProcessor
ChainManager
()
*
core
.
ChainManager
Coinbase
()
[]
byte
KeyManager
()
*
crypto
.
KeyManager
IsMining
()
bool
IsListening
()
bool
...
...
@@ -82,14 +81,6 @@ func (self *XEth) Accounts() []string {
return
[]
string
{
toHex
(
self
.
eth
.
KeyManager
()
.
Address
())}
}
/*
func (self *XEth) StateObject(addr string) *Object {
object := &Object{self.State().safeGet(fromHex(addr))}
return NewObject(object)
}
*/
func
(
self
*
XEth
)
PeerCount
()
int
{
return
self
.
eth
.
PeerCount
()
}
...
...
@@ -190,10 +181,6 @@ func (self *XEth) FromNumber(str string) string {
return
ethutil
.
BigD
(
fromHex
(
str
))
.
String
()
}
func
(
self
*
XEth
)
Transact
(
key
,
toStr
,
valueStr
,
gasStr
,
gasPriceStr
,
codeStr
string
)
(
string
,
error
)
{
return
""
,
nil
}
func
ToMessages
(
messages
state
.
Messages
)
*
ethutil
.
List
{
var
msgs
[]
Message
for
_
,
m
:=
range
messages
{
...
...
@@ -216,3 +203,58 @@ func (self *XEth) PushTx(encodedTx string) (string, error) {
}
return
toHex
(
tx
.
Hash
()),
nil
}
func
(
self
*
XEth
)
Transact
(
toStr
,
valueStr
,
gasStr
,
gasPriceStr
,
codeStr
string
)
(
string
,
error
)
{
var
(
to
[]
byte
value
=
ethutil
.
NewValue
(
valueStr
)
gas
=
ethutil
.
NewValue
(
gasStr
)
price
=
ethutil
.
NewValue
(
gasPriceStr
)
data
[]
byte
key
=
self
.
eth
.
KeyManager
()
.
KeyPair
()
contractCreation
bool
)
data
=
fromHex
(
codeStr
)
to
=
fromHex
(
toStr
)
if
len
(
to
)
==
0
{
contractCreation
=
true
}
var
tx
*
types
.
Transaction
if
contractCreation
{
tx
=
types
.
NewContractCreationTx
(
value
.
BigInt
(),
gas
.
BigInt
(),
price
.
BigInt
(),
data
)
}
else
{
tx
=
types
.
NewTransactionMessage
(
to
,
value
.
BigInt
(),
gas
.
BigInt
(),
price
.
BigInt
(),
data
)
}
state
:=
self
.
chainManager
.
TransState
()
nonce
:=
state
.
GetNonce
(
key
.
Address
())
tx
.
SetNonce
(
nonce
)
tx
.
Sign
(
key
.
PrivateKey
)
// Do some pre processing for our "pre" events and hooks
block
:=
self
.
chainManager
.
NewBlock
(
key
.
Address
())
coinbase
:=
state
.
GetOrNewStateObject
(
key
.
Address
())
coinbase
.
SetGasPool
(
block
.
GasLimit
())
self
.
blockProcessor
.
ApplyTransactions
(
coinbase
,
state
,
block
,
types
.
Transactions
{
tx
},
true
)
err
:=
self
.
eth
.
TxPool
()
.
Add
(
tx
)
if
err
!=
nil
{
return
""
,
err
}
state
.
SetNonce
(
key
.
Address
(),
nonce
+
1
)
if
contractCreation
{
addr
:=
core
.
AddressFromMessage
(
tx
)
pipelogger
.
Infof
(
"Contract addr %x
\n
"
,
addr
)
}
if
types
.
IsContractAddr
(
to
)
{
return
toHex
(
core
.
AddressFromMessage
(
tx
)),
nil
}
return
toHex
(
tx
.
Hash
()),
nil
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment