'shadowCursor' in the class name doesn't really make a lot of sense. Perhaps 'virtualSelections' or something similar is a better name.