@@ -80,7 +80,6 @@ export class ReminderPanel {
8080 // 如果事件来自自己或显式要求跳过面板刷新,则忽略
8181 if ( event && event . detail ) {
8282 if ( event . detail . source === this . panelId ) return ;
83- if ( event . detail . skipPanelRefresh ) return ;
8483 }
8584
8685 // 防抖处理,避免短时间内的多次更新
@@ -2553,7 +2552,7 @@ export class ReminderPanel {
25532552 await saveReminders ( this . plugin , reminderData ) ;
25542553 window . dispatchEvent ( new CustomEvent ( 'reminderUpdated' , { detail : { source : this . panelId } } ) ) ;
25552554 // 刷新界面显示
2556- this . loadReminders ( true ) ;
2555+ this . loadReminders ( ) ;
25572556 }
25582557 } catch ( e ) {
25592558 console . error ( "完成每日可做任务失败" , e ) ;
@@ -2581,7 +2580,7 @@ export class ReminderPanel {
25812580 await saveReminders ( this . plugin , reminderData ) ;
25822581 window . dispatchEvent ( new CustomEvent ( 'reminderUpdated' , { detail : { source : this . panelId } } ) ) ;
25832582 // 刷新界面显示
2584- this . loadReminders ( true ) ;
2583+ this . loadReminders ( ) ;
25852584 showMessage ( "已取消今日完成标记" ) ;
25862585 }
25872586 }
@@ -2612,7 +2611,7 @@ export class ReminderPanel {
26122611 await saveReminders ( this . plugin , reminderData ) ;
26132612 window . dispatchEvent ( new CustomEvent ( 'reminderUpdated' , { detail : { source : this . panelId } } ) ) ;
26142613 // 刷新界面显示
2615- this . loadReminders ( true ) ;
2614+ this . loadReminders ( ) ;
26162615 showMessage ( "今日已忽略该任务" ) ;
26172616 }
26182617 } catch ( e ) {
@@ -2636,7 +2635,7 @@ export class ReminderPanel {
26362635 await saveReminders ( this . plugin , reminderData ) ;
26372636 window . dispatchEvent ( new CustomEvent ( 'reminderUpdated' , { detail : { source : this . panelId } } ) ) ;
26382637 // 刷新界面显示
2639- this . loadReminders ( true ) ;
2638+ this . loadReminders ( ) ;
26402639 showMessage ( "已取消今日忽略" ) ;
26412640 }
26422641 }
@@ -3462,7 +3461,7 @@ export class ReminderPanel {
34623461
34633462 // 触发UI刷新
34643463 window . dispatchEvent ( new CustomEvent ( 'reminderUpdated' , { detail : { source : this . panelId } } ) ) ;
3465-
3464+ this . loadReminders ( ) ;
34663465 return ;
34673466 }
34683467
@@ -3509,12 +3508,13 @@ export class ReminderPanel {
35093508
35103509 // 触发UI刷新
35113510 window . dispatchEvent ( new CustomEvent ( 'reminderUpdated' , { detail : { source : this . panelId } } ) ) ;
3512-
3511+ this . loadReminders ( ) ;
35133512 } catch ( error ) {
35143513 console . error ( '切换提醒状态失败:' , error ) ;
35153514 showMessage ( i18n ( "operationFailed" ) ) ;
35163515 // 即使出错也要触发UI刷新,确保界面状态同步
35173516 window . dispatchEvent ( new CustomEvent ( 'reminderUpdated' , { detail : { source : this . panelId } } ) ) ;
3517+ this . loadReminders ( ) ;
35183518 }
35193519 }
35203520 /**
@@ -4104,11 +4104,9 @@ export class ReminderPanel {
41044104 await saveReminders ( this . plugin , reminderData ) ;
41054105
41064106 // 刷新界面
4107- await this . loadReminders ( true ) ;
4108-
41094107 // 通知其他组件
41104108 window . dispatchEvent ( new CustomEvent ( 'reminderUpdated' , { detail : { source : this . panelId } } ) ) ;
4111-
4109+ await this . loadReminders ( ) ;
41124110 showMessage ( i18n ( "reminderUpdated" ) || "任务已更新" ) ;
41134111 }
41144112 } else {
@@ -4175,6 +4173,7 @@ export class ReminderPanel {
41754173
41764174 // 触发刷新以重新渲染整个列表(因为层级结构变化需要重新渲染)
41774175 window . dispatchEvent ( new CustomEvent ( 'reminderUpdated' , { detail : { source : this . panelId } } ) ) ;
4176+ await this . loadReminders ( ) ;
41784177
41794178 } catch ( error ) {
41804179 console . error ( '移除父子关系失败:' , error ) ;
@@ -4600,6 +4599,7 @@ export class ReminderPanel {
46004599
46014600 // 触发刷新以重新渲染整个列表(因为层级结构变化需要重新渲染)
46024601 window . dispatchEvent ( new CustomEvent ( 'reminderUpdated' , { detail : { source : this . panelId } } ) ) ;
4602+ await this . loadReminders ( ) ;
46034603
46044604 } catch ( error ) {
46054605 console . error ( '设置父子关系失败:' , error ) ;
@@ -4702,10 +4702,8 @@ export class ReminderPanel {
47024702
47034703 await saveReminders ( this . plugin , reminderData ) ;
47044704
4705- // 触发全局刷新以更新UI(包括优先级颜色和位置)
4706- // 不使用 skipPanelRefresh,因为优先级改变需要重新渲染样式
47074705 window . dispatchEvent ( new CustomEvent ( 'reminderUpdated' , { detail : { source : this . panelId } } ) ) ;
4708- // showMessage(t("priorityUpdated") || "优先级已更新" );
4706+ await this . loadReminders ( ) ;
47094707
47104708 } else {
47114709 // 同优先级排序(原有逻辑)
@@ -4733,8 +4731,9 @@ export class ReminderPanel {
47334731 await saveReminders ( this . plugin , reminderData ) ;
47344732 // 注意:同优先级排序不触发强制刷新,因为 manually updateDOMOrder 会处理
47354733 window . dispatchEvent ( new CustomEvent ( 'reminderUpdated' , {
4736- detail : { skipPanelRefresh : true , source : this . panelId }
4734+ detail : { source : this . panelId }
47374735 } ) ) ;
4736+ await this . loadReminders ( ) ;
47384737 }
47394738
47404739 } catch ( error ) {
@@ -6109,7 +6108,7 @@ export class ReminderPanel {
61096108 }
61106109
61116110 // 全量刷新面板,保证父任务进度、分页和异步数据都能够正确更新
6112- await this . loadReminders ( true ) ;
6111+ await this . loadReminders ( ) ;
61136112 showMessage ( i18n ( "reminderDeleted" ) ) ;
61146113
61156114 // 触发其他组件更新
@@ -6266,13 +6265,11 @@ export class ReminderPanel {
62666265 }
62676266
62686267 // 如果当前按优先级排序,需要触发刷新以重新排序
6269- if ( this . currentSort === 'priority' ) {
6270- window . dispatchEvent ( new CustomEvent ( 'reminderUpdated' , { detail : { source : this . panelId } } ) ) ;
6271- } else {
6272- window . dispatchEvent ( new CustomEvent ( 'reminderUpdated' , {
6273- detail : { skipPanelRefresh : true , source : this . panelId }
6274- } ) ) ;
6275- }
6268+ window . dispatchEvent ( new CustomEvent ( 'reminderUpdated' , {
6269+ detail : { source : this . panelId }
6270+ } ) ) ;
6271+ await this . loadReminders ( ) ;
6272+
62766273 }
62776274 } else {
62786275 showMessage ( i18n ( "reminderNotExist" ) ) ;
@@ -6371,15 +6368,10 @@ export class ReminderPanel {
63716368 }
63726369 }
63736370
6374- // 如果当前有分类过滤(不是"全部分类"),需要触发刷新以更新列表
6375- // 因为修改分类后,任务可能不再匹配当前的过滤条件
6376- if ( this . currentCategoryFilter !== 'all' ) {
6377- window . dispatchEvent ( new CustomEvent ( 'reminderUpdated' , { detail : { source : this . panelId } } ) ) ;
6378- } else {
6379- window . dispatchEvent ( new CustomEvent ( 'reminderUpdated' , {
6380- detail : { skipPanelRefresh : true , source : this . panelId }
6381- } ) ) ;
6382- }
6371+ window . dispatchEvent ( new CustomEvent ( 'reminderUpdated' , {
6372+ detail : { source : this . panelId }
6373+ } ) ) ;
6374+ await this . loadReminders ( ) ;
63836375 }
63846376 } else {
63856377 showMessage ( i18n ( "reminderNotExist" ) ) ;
@@ -6597,7 +6589,7 @@ export class ReminderPanel {
65976589 // 5. 更新界面
65986590 this . loadReminders ( ) ;
65996591 window . dispatchEvent ( new CustomEvent ( 'reminderUpdated' , {
6600- detail : { skipPanelRefresh : true }
6592+ detail : { source : this . panelId }
66016593 } ) ) ;
66026594 showMessage ( i18n ( "seriesSplitSuccess" ) ) ;
66036595
@@ -6668,7 +6660,7 @@ export class ReminderPanel {
66686660 } else {
66696661 await this . loadReminders ( ) ;
66706662 }
6671- window . dispatchEvent ( new CustomEvent ( 'reminderUpdated' , { detail : { skipPanelRefresh : true , source : this . panelId } } ) ) ;
6663+ window . dispatchEvent ( new CustomEvent ( 'reminderUpdated' , { detail : { source : this . panelId } } ) ) ;
66726664 } catch ( e ) {
66736665 console . error ( '实例编辑乐观更新失败,回退刷新' , e ) ;
66746666 this . loadReminders ( ) ;
@@ -6737,7 +6729,7 @@ export class ReminderPanel {
67376729 async ( ) => {
67386730 this . loadReminders ( ) ;
67396731 window . dispatchEvent ( new CustomEvent ( 'reminderUpdated' , {
6740- detail : { skipPanelRefresh : true }
6732+ detail : { source : this . panelId }
67416733 } ) ) ;
67426734 } ,
67436735 undefined ,
@@ -6770,7 +6762,7 @@ export class ReminderPanel {
67706762 showMessage ( i18n ( "instanceDeleted" ) ) ;
67716763 this . loadReminders ( ) ;
67726764 window . dispatchEvent ( new CustomEvent ( 'reminderUpdated' , {
6773- detail : { skipPanelRefresh : true }
6765+ detail : { source : this . panelId }
67746766 } ) ) ;
67756767 } catch ( error ) {
67766768 console . error ( '删除重复实例失败:' , error ) ;
@@ -6915,7 +6907,7 @@ export class ReminderPanel {
69156907 showMessage ( i18n ( "firstOccurrenceSkipped" ) ) ;
69166908 this . loadReminders ( ) ;
69176909 window . dispatchEvent ( new CustomEvent ( 'reminderUpdated' , {
6918- detail : { skipPanelRefresh : true }
6910+ detail : { source : this . panelId }
69196911 } ) ) ;
69206912 } catch ( error ) {
69216913 console . error ( '跳过首次发生失败:' , error ) ;
@@ -7031,7 +7023,7 @@ export class ReminderPanel {
70317023 parentTask : parentReminder ,
70327024 onSuccess : ( totalCount ) => {
70337025 showMessage ( `${ totalCount } 个子任务已创建` ) ;
7034- this . loadReminders ( true ) ;
7026+ this . loadReminders ( ) ;
70357027 window . dispatchEvent ( new CustomEvent ( 'reminderUpdated' , { detail : { source : this . panelId } } ) ) ;
70367028 }
70377029 } ) ;
@@ -7369,7 +7361,7 @@ export class ReminderPanel {
73697361
73707362 // 触发更新事件
73717363 window . dispatchEvent ( new CustomEvent ( 'reminderUpdated' , {
7372- detail : { skipPanelRefresh : true }
7364+ detail : { source : this . panelId }
73737365 } ) ) ;
73747366 } else {
73757367 throw new Error ( '提醒不存在' ) ;
0 commit comments