Improve Widget nosDesktop

only save positions when user drag launchers
on resize window, reorganize launchers with theirs saved positions