moved window update func to signal callbacks