While lazy connecting node sockets or lazy mixing nodes, the drawing position of the node outline is shifted if the node has a parent.
This happens because the dpi factor is applied before adding the locations of the parent nodes.
Fix this by applying the dpi factor after adding the parent nodes' locations.
Also, the TODO task of using a while loop to get the global location of a node has been done since it is closely related to this fix.