aboutsummaryrefslogtreecommitdiffstats
path: root/ethereal
diff options
context:
space:
mode:
authorMaran <maran.hidskes@gmail.com>2014-05-27 17:49:42 +0800
committerMaran <maran.hidskes@gmail.com>2014-05-27 17:49:42 +0800
commit1ab865a994758cef8a6bf75a3cc263f16a97d847 (patch)
tree59bbf8b696cf0e9a6d5cb7cbb0849a33d4dd896f /ethereal
parent07204f129e277fb5f63f080d6a146e28603f872e (diff)
downloaddexon-1ab865a994758cef8a6bf75a3cc263f16a97d847.tar.gz
dexon-1ab865a994758cef8a6bf75a3cc263f16a97d847.tar.zst
dexon-1ab865a994758cef8a6bf75a3cc263f16a97d847.zip
Adding new blocks on broadcast
Diffstat (limited to 'ethereal')
-rw-r--r--ethereal/assets/qml/wallet.qml13
-rw-r--r--ethereal/ui/gui.go7
2 files changed, 15 insertions, 5 deletions
diff --git a/ethereal/assets/qml/wallet.qml b/ethereal/assets/qml/wallet.qml
index 911422f91..e59e85ab3 100644
--- a/ethereal/assets/qml/wallet.qml
+++ b/ethereal/assets/qml/wallet.qml
@@ -642,13 +642,22 @@ ApplicationWindow {
txModel.insert(0, {inout: inout, hash: tx.hash, address: tx.address, value: tx.value, contract: isContract})
}
- function addBlock(block) {
+ function addBlock(block, initial) {
var txs = JSON.parse(block.transactions);
var amount = 0
+ if(initial == undefined){
+ initial = false
+ }
+
if(txs != null){
amount = txs.length
}
- blockModel.insert(0, {number: block.number, hash: block.hash, txs: txs, txAmount: amount, time: block.time, prettyTime: convertToPretty(block.time)})
+
+ if(initial){
+ blockModel.append({number: block.number, hash: block.hash, txs: txs, txAmount: amount, time: block.time, prettyTime: convertToPretty(block.time)})
+ }else{
+ blockModel.insert(0, {number: block.number, hash: block.hash, txs: txs, txAmount: amount, time: block.time, prettyTime: convertToPretty(block.time)})
+ }
}
function addLog(str) {
diff --git a/ethereal/ui/gui.go b/ethereal/ui/gui.go
index 7577de1fa..18e13d985 100644
--- a/ethereal/ui/gui.go
+++ b/ethereal/ui/gui.go
@@ -141,7 +141,7 @@ func (gui *Gui) setInitialBlockChain() {
blk := gui.eth.BlockChain().GetBlock(sBlk)
for ; blk != nil; blk = gui.eth.BlockChain().GetBlock(sBlk) {
sBlk = blk.PrevHash
- gui.processBlock(blk)
+ gui.processBlock(blk, true)
}
}
@@ -163,8 +163,8 @@ func (gui *Gui) readPreviousTransactions() {
it.Release()
}
-func (gui *Gui) processBlock(block *ethchain.Block) {
- gui.win.Root().Call("addBlock", ethpub.NewPBlock(block))
+func (gui *Gui) processBlock(block *ethchain.Block, initial bool) {
+ gui.win.Root().Call("addBlock", ethpub.NewPBlock(block), initial)
}
func (gui *Gui) setWalletValue(amount, unconfirmedFunds *big.Int) {
@@ -203,6 +203,7 @@ func (gui *Gui) update() {
select {
case b := <-blockChan:
block := b.Resource.(*ethchain.Block)
+ gui.processBlock(block, false)
if bytes.Compare(block.Coinbase, gui.addr) == 0 {
gui.setWalletValue(gui.eth.StateManager().CurrentState().GetAccount(gui.addr).Amount, nil)
}