generating an id per element if one does not exist. centering viewport on click of surface