Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
c8a2c2b
feat: 添加课表视觉设置功能,支持自定义已完成课程的样式和当前时间指示器
Lagrange-X Apr 16, 2026
3757863
feat: 添加当前日期列方框显示功能,增强课表视觉设置
Lagrange-X Apr 16, 2026
841ec0e
feat: 更新课表视觉设置,增强时间指示器和样式自定义功能,对指示器等新增样式进行微调
Lagrange-X Apr 17, 2026
d8da6fd
feat: 更新周选择视图,增强课程状态指示,支持已完成课程的样式处理
Lagrange-X Apr 17, 2026
5174d6c
feat: 在各控制器中添加异步错误处理,优化课表更新逻辑
Lagrange-X Apr 17, 2026
39c25dc
feat: 优化当前时间指示器的样式和配置
Lagrange-X Apr 17, 2026
ed6f3c4
fix: 修正注释拼写错误,优化代码格式
Lagrange-X Apr 17, 2026
82baf22
refactor(classtable): 课表时间刷新改为本地桥接,移除新增全局signal依赖
Lagrange-X Apr 17, 2026
b0c53ea
更新 gradle-wrapper.properties
Lagrange-X Apr 17, 2026
94ea853
feat(classtable): 样式设置增加亮度调节,改变了强调显示样式,改变了时间标签的位置
Lagrange-X Apr 18, 2026
1f93fc3
Merge commit 'b0c53ea91135f9d366b9488b17931c7a83f13428' into feat-cla…
Lagrange-X Apr 18, 2026
96273b2
fix(global_timer): 将定时器间隔从15秒更改为1分钟
Lagrange-X Apr 18, 2026
96cf227
Merge commit '96273b2146ce1da94a4a8c13249dad5409701bae'
Lagrange-X Apr 18, 2026
39fcdc3
Merge branch into b9f56456: resolve conflicts keeping current version
Lagrange-X Apr 18, 2026
4b565aa
fix: add missing currentTime support to enable new visual features
Lagrange-X Apr 18, 2026
dcb866c
Merge branch 'main' into feat-classtable-visual-improve
Lagrange-X Apr 18, 2026
9df0ba7
feat: 添加当前时间指示器和已完成课程样式的偏好设置支持
Lagrange-X Apr 24, 2026
2224c8f
Merge commit '9df0ba79242f7a9542c7ca77a2e67177da5a3463' into feat-cla…
Lagrange-X Apr 24, 2026
c6ec5bd
feat: 处理冲突
Lagrange-X Apr 24, 2026
f154dad
Merge branch 'main' into feat-classtable-visual-improve
Lagrange-X Apr 24, 2026
f75a56d
feat: 修复冲突
Lagrange-X Apr 24, 2026
7f0e4ab
feat: 优化当前时间指示器的标签位置计算
Lagrange-X Apr 24, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion android/gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#Sat Feb 15 15:33:20 CST 2025
#Thu Apr 16 09:43:18 CST 2026
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-bin.zip
Expand Down
19 changes: 19 additions & 0 deletions assets/flutter_i18n/en_US.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -159,6 +159,25 @@ classtable:
output_to_system: "Export to system calendar"
refresh_classtable: "Refresh schedule"
switch_semester: "Switch classtable semester"
current_time_settings: "Time indicator settings"
class_color_settings: "Class color settings"
visual_settings:
current_time_settings_title: "Time indicator settings"
class_color_settings_title: "Class color settings"
current_time_section: "Time indicators"
show_current_time_indicator: "Show current time indicator"
show_current_time_label: "Show mini time label"
show_today_column_highlight: "Highlight today's column"
unfinished_section: "Unstarted class style"
active_brightness_factor: "Brightness: {value}"
active_border_alpha: "Border opacity: {value}"
active_inner_alpha: "Fill opacity: {value}"
completed_section: "Completed class style"
completed_saturation_factor: "Fill saturation: {value}"
completed_brightness_factor: "Brightness: {value}"
completed_text_saturation_factor: "Text saturation: {value}"
completed_border_alpha: "Border opacity: {value}"
completed_inner_alpha: "Fill opacity: {value}"
status_source:
class_table: "Class Table"
exam: "Exams"
Expand Down
19 changes: 19 additions & 0 deletions assets/flutter_i18n/zh_CN.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -154,6 +154,25 @@ classtable:
output_to_system: "导出到系统日历"
refresh_classtable: "刷新日程表"
switch_semester: "切换课程表学期"
current_time_settings: "时间指示设置"
class_color_settings: "课表样式设置"
visual_settings:
current_time_settings_title: "时间指示设置"
class_color_settings_title: "课表样式设置"
current_time_section: "时间指示"
show_current_time_indicator: "显示当前时间指示线"
show_current_time_label: "显示迷你数字时钟"
show_today_column_highlight: "强调显示今天的纵列"
unfinished_section: "未开始课程样式"
active_brightness_factor: "亮度: {value}"
active_border_alpha: "边框透明度: {value}"
active_inner_alpha: "底色透明度: {value}"
completed_section: "已结束课程样式"
completed_saturation_factor: "底色饱和度: {value}"
completed_brightness_factor: "亮度: {value}"
completed_text_saturation_factor: "文字饱和度: {value}"
completed_border_alpha: "边框透明度: {value}"
completed_inner_alpha: "底色透明度: {value}"
status_source:
class_table: "课表"
exam: "考试"
Expand Down
19 changes: 19 additions & 0 deletions assets/flutter_i18n/zh_TW.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -130,6 +130,25 @@ classtable:
output_to_system: 導出到系統日曆
refresh_classtable: 刷新日程表
switch_semester: 切換課程表學期
current_time_settings: 時間指示設置
class_color_settings: 课表样式设置
visual_settings:
current_time_settings_title: 時間指示設置
class_color_settings_title: 课表样式设置
current_time_section: 時間指示
show_current_time_indicator: 顯示當前時間指示線
show_current_time_label: 顯示迷你数字時钟
show_today_column_highlight: 強調顯示今天的纵列
unfinished_section: 未开始課程樣式
active_brightness_factor: 亮度: {value}
active_border_alpha: 邊框透明度: {value}
active_inner_alpha: 底色透明度: {value}
completed_section: 已结束課程樣式
completed_saturation_factor: 底色飽和度: {value}
completed_brightness_factor: 亮度: {value}
completed_text_saturation_factor: 文字飽和度: {value}
completed_border_alpha: 邊框透明度: {value}
completed_inner_alpha: 底色透明度: {value}
class_change_page:
title: 課程調整
empty_message: 目前沒有調課信息
Expand Down
20 changes: 16 additions & 4 deletions lib/page/classtable/class_page/classtable_page.dart
Original file line number Diff line number Diff line change
Expand Up @@ -12,19 +12,31 @@ class ClassTablePage extends StatefulWidget {

class _ClassTablePageState extends State<ClassTablePage> {
late ClassTableWidgetState classTableState;
ClassTableWidgetState? _attachedClassTableState;

void _reload() => setState(() {});
void _reload() {
if (mounted) {
setState(() {});
}
}

@override
void didChangeDependencies() {
super.didChangeDependencies();
classTableState = ClassTableState.of(context)!.controllers;
classTableState.addListener(_reload);
final nextClassTableState = ClassTableState.of(context)!.controllers;

if (_attachedClassTableState != nextClassTableState) {
_attachedClassTableState?.removeListener(_reload);
_attachedClassTableState = nextClassTableState;
_attachedClassTableState!.addListener(_reload);
}

classTableState = nextClassTableState;
}

@override
void dispose() {
classTableState.removeListener(_reload);
_attachedClassTableState?.removeListener(_reload);
classTableState.dispose();
super.dispose();
}
Expand Down
Loading