修改 forkgram/tdesktop 实现不查看某人的头像

前言

某些人的头像18X 或者 是那种闪来闪去的动图 瞎眼睛.

所以需要屏蔽显示头像.

面向GPT开发1

Herems 对接 mimo-v2.5-pro

https://github.com/crazypeace/forkgram-tdesktop 基于 dev 新开一个 branch

ban-avatar-pic

新建一个yml文件, 基于这个branch编译

分析代码 显示 avatar 图片的场景.

包括但不限于:

在群消息中显示,

在profile窗口显示,

在profile窗口点了avatar图片后全屏显示

讨论, 如果我希望某个用户的avatar图片显示时, 就和没有设置avatar图片一样的处理逻辑. 最高效的修改方式是怎样的?

采用 方案 A:在 PeerData 层拦截,

判断方式为该用户是否被blocked.

* 我就用 blocked 用户列表简单演示一下基本功能.

效果

群消息还显示头像, 点开 profile 窗口也显示头像.

不过profile 窗口的头像点不出来全屏显示了.

面向GPT开发2

向 Agent 描述了测试结果.

Agent又分析了一圈, 说还有个函数要改.

效果

一打开群链接, 看到了群消息, 是能看到应该屏蔽的头像图片的.

但是点击 群消息的头像, 打开 profile 窗口之后, 头像就按未设置的样子显示了, 群消息里也不显示头像了.

面向GPT开发3

向 Agent 描述了测试结果.

Agent又分析了一圈, 说 用户的 blocked 状态是慢加载的.

我换了一种方法验证.

先打开 Settings - Privacy and Security - Blocked users

加载了 blocked 用户列表后.

再打开群链接, 就能看到群消息的头像是按期望被屏蔽的.

* 好吧. 只是演示一下基本功能, 我决定就做到这个样子为止了.

演示效果

Github