When renaming an ID somewhere in the UI after marking it as asset, it would often get lost in the Asset Browser (scrolled out of view). It would also get deactivated.
This patch makes sure that if an asset is active whose ID gets renamed, it is kept active and visible.
Old code stored the new file-name to identify a file after re-reading the file-list after the rename. For assets that doesn't work because there may be multiple assets with the same name. Here the simple solution of just storing the pointer to the renamed ID is chosen, rather than relying on the file-name in this case. (Should be fine with undo, since the `ID *` reference is short lived, it's not stored over possible undo steps. If it turns out to have issues, I rather switch to a `rename_id_uuid`, but keep that separate from the `file->uid`).
* The smooth-scrolling seems to have some issues in master already. Fixing that is a separate thing to do.
* Partially includes D9994. These changes were needed for this to work.