4

WinKey+. provides an emoji panel, but it shows recent emojis; How do I clear recent emojis?

emoji panel

JW0914
  • 9,096
Bósài
  • 143

2 Answers2

4

Even a never-used emoji panel shows a pre-filled section of "recent" emojis. And according to this thread there's no way to clear it.

My Workaround is to scroll all the way down and hit all the clock emojis, and your recent panel will look like this:

EDIT

There's a nice article on medium which details how recent emojis are stored in Windows. They are in a series of settings.datfiles stored

  • either in %localappdata%\Packages\InputApp_cw5n1h2txyewy\Settings For Windows 10 1809)
  • or in %localappdata%\Packages\MicrosoftWindows.Client.CBS_cw5n1h2txyewy\Settings (For Windows 10 21H1)

Since these files are not easily modifiable on a live system, we can say that the emoji history is "not modifiable". This does not exclude someone writing a routine which overwrites such files on startup. But this would go beyond the scope of an answer on this forum.

EDIT 2 with SOLUTION

The above mentioned settings.dat file can be modified for any user which is not currently logged in. So, what you can do is:

  • Use the Workaround from above to reset emoji history
  • Create a new Local Admin account, sign out from your MyUser account and log into the new Local Admin
  • Now, you can access the settings.dat of your myUseraccount, which should be located in C:\Users\MyUser\AppData\Local\Packages\MicrosoftWindows.Client.CBS_cw5n1h2txyewy\Settings - Make a copy somewhere
  • Now, whenever you want to reset your history, switch to the LocalAdmin and replace the settings.datof your MyUseraccount with the saved copy.
1NN
  • 10,044
1

After some work, it's not enough to use either hivex in a Python script or reg.exe, even with admin rights. It will say that the settings.dat hive is already in use by another process. Terminating the TextInputHost.exe process and renaming C:\Windows\SystemApps\MicrosoftWindows.Client.CBS_cw5n1h2txyewy\TextInputHost.exe won't fix that.

Hivex has code examples for Python, and documentation

I did manage to view the hive with Registry Explorer (this requires running it as Administrator), and I found how to parse the data for both emoji and GIF recent usage. Here is a gist that you can work from if you manage to find a way around the issues I got stuck at and want to parse the data you find. The GIF MRU (most recently used) data is found at LocalState in the value GifMruList, and it's stored as binary data encoded with UTF-16LE. After decoding it, it will be JSON like this:

[{"id":"tenor:13097806213041341234","timeStampInMs":1713473272006},{"id":"tenor:17661988214323101234","timeStampInMs":1713473272006},{"id":"tenor:13688549082809861234","timeStampInMs":1713473272006},{"id":"tenor:17183177825142971234","timeStampInMs":1713473272006},{"id":"tenor:16273673139442491234","timeStampInMs":1713473272006},{"id":"tenor:6624013396766731234","timeStampInMs":1713473272006},{"id":"tenor:17154360379016251234","timeStampInMs":1713473272006}]

Since the hive can be viewed with Registry Explorer, maybe someone with sleuthing experience can see what method it uses to do so and modify it to allow writing.

If you manage to access or edit the hive successfully with code, that is probably worth a comment or another answer. I'd be interested in how it can be done.

mbomb007
  • 777