1、今天继续优化NoteWith for Mac的界面交互,测试功能,首先就是修改AI对话和备忘录的界面布局,采用类似苹果备忘录的样式,左边导航栏,中间列表栏,点击列表中的条目在右侧打开,不再使用弹窗形式,条目右侧的编辑、置顶、删除按钮合并到右键菜单里
2、预感修改量会比较大,但这种交互方式比较适合用在Mac应用上,会更直观一些,Cursor首先修改了ContentView来实现三栏布局,修改AIChatSessionView来支持选择功能、移除按钮、添加右键菜单,修改NotesListView实现类似功能、修改AIChatView移除弹窗相关代码,移除返回按钮和dissmiss相关代码,修改NoteEditView,移除返回按钮和dissmiss相关的代码,修改saveNote方法,之后修复编译错误,构建成功
3、Cursor认为三栏布局是macOS应用的经典设计模式,右键菜单是macOS用户熟悉的交互方式,更符合macOS用户的使用习惯
4、继续优化交互:备忘录条目上的的右键菜单不再需要编辑按钮,在列表中点击条目时,第三栏里直接打开编辑界面就行;然后设置界面的第三栏默认显示AI模型管理的详情,点击第二栏时第三栏内容也随之切换
5、针对设置界面交互的变化,Cursor创建了SettingsListView和SettingsDetailView,之后修正新文件没有被添加到项目以及多处编译错误,之后构建成功
6、测试后再次优化多处交互,以及一些功能上的问题:点击备忘录列表中的条目,第三栏没有随之切换;去掉备忘录页面右上角的保存按钮,自动保存我所做的修改就行;设置中,备忘录回收站缺少了AI对话回收站那种恢复和永久删除的功能;左侧导航栏,把搜索按钮放最上面,然后是AI对话、备忘录、设置
7、在排查“点击备忘录列表中的条目,第三栏没有随之切换”的问题时,Cursor添加了一些调试信息,并创建了新的Note类型和onChange监听器,解决了问题,之后再修正新出现的“只要点击一次,即使没有修改标题或内容就会触发更新”的问题,Cursor通过添加标志机制来精确控制何时触发保存,需求达成
8、现有功能已基本稳定,接下来增加“知识库”模块,需求:增加知识库模块,和AI对话、备忘录同级,按钮放在导航栏的AI对话和备忘录之间,样式类似备忘录页面,从AI对话中收藏的内容进入知识库中,不再进入备忘录,同时在设置中添加“知识库回收站”,放在设置中的AI对话回收站和备忘录回收站之间,也可以像AI对话回收站那样清空、恢复和永久删除内容
9、Cursor陆续创建了知识库的数据模型、数据服务、ViewModel、知识库列表视图、知识库编辑视图、知识库回收站视图,然后更新关联的文件并把新创建的文件添加到了项目文件和对应的组,甚至还在搜索窗口的结果显示部分添加了知识库内容,我在提需求时忘了这一点
10、从目前的界面看下来功能已经基本齐备了,接下来测试新增的功能,并继续优化界面的细节,今天没有时间测试了