change(tracker): send percent of removed nodes instead of int
This commit is contained in:
parent
f9872f5965
commit
a34d557f7f
4 changed files with 11 additions and 7 deletions
|
|
@ -653,8 +653,8 @@ class MessageCodec(Codec):
|
|||
)
|
||||
|
||||
if message_id == 115:
|
||||
return RemovedNodesCount(
|
||||
nodes_count=self.read_uint(reader)
|
||||
return UnbindNodes(
|
||||
total_removed_percent=self.read_uint(reader)
|
||||
)
|
||||
|
||||
if message_id == 125:
|
||||
|
|
|
|||
|
|
@ -448,7 +448,6 @@ end
|
|||
|
||||
# 90-111 reserved iOS
|
||||
|
||||
|
||||
message 112, 'InputChange', :replayer => false do
|
||||
uint 'ID'
|
||||
string 'Value'
|
||||
|
|
@ -468,8 +467,8 @@ message 114, 'MouseThrashing' do
|
|||
uint 'Timestamp'
|
||||
end
|
||||
|
||||
message 115, 'RemovedNodesCount', :replayer => false do
|
||||
uint 'NodesCount'
|
||||
message 115, 'UnbindNodes', :replayer => false do
|
||||
uint 'TotalRemovedPercent'
|
||||
end
|
||||
|
||||
## Backend-only
|
||||
|
|
|
|||
|
|
@ -73,6 +73,10 @@ export default class Nodes {
|
|||
return this.nodes[id]
|
||||
}
|
||||
|
||||
getNodeCount() {
|
||||
return this.nodes.filter(Boolean).length
|
||||
}
|
||||
|
||||
clear(): void {
|
||||
for (let id = 0; id < this.nodes.length; id++) {
|
||||
const node = this.nodes[id]
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ import {
|
|||
CreateElementNode,
|
||||
MoveNode,
|
||||
RemoveNode,
|
||||
RemovedNodesCount,
|
||||
UnbindNodes,
|
||||
} from '../messages.gen.js'
|
||||
import App from '../index.js'
|
||||
import {
|
||||
|
|
@ -237,11 +237,12 @@ export default abstract class Observer {
|
|||
)
|
||||
|
||||
let removed = 0
|
||||
const total = this.app.nodes.getNodeCount()
|
||||
while (walker.nextNode()) {
|
||||
removed += 1
|
||||
this.app.nodes.unregisterNode(walker.currentNode)
|
||||
}
|
||||
this.app.send(RemovedNodesCount(removed))
|
||||
this.app.send(UnbindNodes(Math.floor((removed / total) * 100)))
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue