Контакт прислал сообщение. Это событие записалось в базу. Вы это сообщение прочитали (то есть, оно пришло, вы сделали вкладку/окно активным = это считается, что прочитали). Оно пометилось прочитанным в базе. Вы обменились файлами. Это событие записалось в базу (и вот тут, если используется H++, то он не пометил именно это событие прочитанным, а другие вышеупомянутые журналы пометили бы, если бы вы их использовали). Пока эти события есть в базе, журналы истории их показывают в окне сообщений. Дальше отрабатывают плагины удаления истории, стирая эти события из базы. Всё, их нет. Эти события больше не будут видны нигде никогда, их тупо нет в базе.
Выставите, например, в HistorySweeperLight очищение истории при закрытии окна сообщений. При каждом закрытии окна он сразу начнёт стирать сообщение из базы. Переоткрыв окно, в журнале вы уже ничего не увидите, потому что журнал при открытии окна беседы полез в базу, чтобы подгрузить историю, а там пусто.
Плагины удаления истории стирают все прочитанные сообщения по правилам, которые вы укажете в их настройках. Укажете при выходе - сотрут при выходе. Укажете при закрытии окна сообщений - сотрут при закрытии окна. Просто поменяйте себе H++ на любой другой журнал.