Users cannot see trashed listings anywhere.
Draft listings are available for users to renew, see image.
Log in as a user with listings, and follow the links to your listings from the login widget to your dashboard. For example /author/username/?geodir_dashbord=true&stype=gd_place
Another solution is to create a very basic price package, let’s say without any available custom fields, except 1 category; no tags, minimum characters of description, no links, no contact details, no send to friend etc.
Then on expiry, the listings go to this package.
That will keep them available to the user to upgrade again
You could even hide them with CSS from widgets and location pages, but not from the user’s dashboard page.
Thanks