这是一个探索时间线视图是否可以将同一来源的多个条目聚合到单个节点下,以减少本地历史中的垃圾邮件。
其他产品中的例子:
注意事项
//cc @JacksonKearl@daviddossett @misolori
pjngdqdw1#
这实际上是一个出乎意料的小变化,所以我推动了它:
@daviddossett @misolori 请注意,我很乐意收到反馈:
//cc @JacksonKearl 这个方法通过使 Timeline 能够返回 children 来工作:vscode/src/vs/workbench/contrib/timeline/common/timeline.ts第56行到第61行的代码:| | /** || | * 可选的支持,用于将多个时间线项目分组 || | * 在父时间线上,例如将同一类型的条目展平。 || | */ || | children?: TimelineItem[]; |
Timeline
children
fae0ux8s2#
哦,我不得不撤销那个更改,我忘记了聚合不应该在提供者级别发生,而是需要在时间轴视图内部发生,因为我们想要对所有来源的所有项目进行聚合,而不是在源内部。否则时间轴将不再显示一个真实的时间轴,其中的条目一个接一个...
axkjgtzd3#
看起来不错!是否可以使用显式的树形父节点与打开/关闭?如果我不知道行为是什么,我就不会知道它是可点击的,以显示实际条目。例如:
聚合条目数量作为标签的一部分显示我想知道这里是否也可以使用类似于SCM徽章的效果。括号中的纯文本很清晰,但在这里感觉有些定制化,因为我们在其他地方也有类似的计数子项的模式:
它可以看起来像这样:
t1qtbnec4#
对于这两个建议,我表示赞同。
qmb5sa225#
虽然这很酷,但我会让这个想法再沉淀一段时间,等待用户反馈。有趣的是到目前为止,我没有听到用户的需求,但这也还很早。如果有人想提前尝试这个想法,这里有一些建议:
timelinePane
*getItems()
挑战可能在于*getItems()中实现这一点的同时,仍然支持yield,所以这也需要一些窥视操作 -> 有趣。
yield
5条答案
按热度按时间pjngdqdw1#
这实际上是一个出乎意料的小变化,所以我推动了它:
@daviddossett @misolori 请注意,我很乐意收到反馈:
//cc @JacksonKearl 这个方法通过使
Timeline
能够返回children
来工作:vscode/src/vs/workbench/contrib/timeline/common/timeline.ts
第56行到第61行的代码:
| | /** |
| | * 可选的支持,用于将多个时间线项目分组 |
| | * 在父时间线上,例如将同一类型的条目展平。 |
| | */ |
| | children?: TimelineItem[]; |
fae0ux8s2#
哦,我不得不撤销那个更改,我忘记了聚合不应该在提供者级别发生,而是需要在时间轴视图内部发生,因为我们想要对所有来源的所有项目进行聚合,而不是在源内部。否则时间轴将不再显示一个真实的时间轴,其中的条目一个接一个...
axkjgtzd3#
看起来不错!是否可以使用显式的树形父节点与打开/关闭?如果我不知道行为是什么,我就不会知道它是可点击的,以显示实际条目。例如:
聚合条目数量作为标签的一部分显示
我想知道这里是否也可以使用类似于SCM徽章的效果。括号中的纯文本很清晰,但在这里感觉有些定制化,因为我们在其他地方也有类似的计数子项的模式:
它可以看起来像这样:
t1qtbnec4#
对于这两个建议,我表示赞同。
qmb5sa225#
虽然这很酷,但我会让这个想法再沉淀一段时间,等待用户反馈。有趣的是到目前为止,我没有听到用户的需求,但这也还很早。
如果有人想提前尝试这个想法,这里有一些建议:
timelinePane
看到显示树节点所需的更改*getItems()
需要改变,以便以一种方式实现分组,只要有相同类型的条目被产生,它们就应该在1个节点下分组挑战可能在于
*getItems()
中实现这一点的同时,仍然支持yield
,所以这也需要一些窥视操作 -> 有趣。