Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

refactor(fabric-history): refactor the fabric-history and tuning the HistoryPlugin #521

Merged
merged 11 commits into from
Oct 26, 2024

Conversation

GeorgeSmith215
Copy link
Contributor

@GeorgeSmith215 GeorgeSmith215 commented Oct 15, 2024

贡献者你好

很高兴你能付出自己的时间参与到vue-fabric-editor的共享当中去,相信很多人都因为你提交的代码而收益。

原则

我们希望每次提交尽量小,较大重构除外,确保我们每次的改动影响范围清晰明了,能够方便项目维护者快速的将代码合并到主分支。

确保你的代码与主仓库没有冲突

在PR前,请确保你的代码与主仓库保持同步,可以参考这篇文章

确保你的代码代码能正常打包构建

在PR前,请在本地进行打包构建,并进行功能测试,确保功能正常,且不影响其他功能。

  • 代码构建正常

告知项目维护者本次修改的功能

重构了 fabric-history.js 文件。并调整了 HistoryPlugin.ts 文件以适配新的 fabric-history。
大致实现/修复了以下功能:
1、修复了每次都要撤销两次的bug。
2、实现保存历史前先清除可redo的旧记录,不然可能会redo之前某个阶段的操作记录。
3、实现保存历史数添加上限值。
4、修复历史记录恢复后,鼠标悬浮 workspace 会出现可操作样式的bug。
5、修复 当页面复杂且快速 undo/redo 多次后,可能会在之前的历史上 redo/undo(loadFromJSON 是异步操作)。
具体内容参看代码及注释。

@nihaojob
Copy link
Member

感谢大佬 PR, 晚点我测试后合并,[抱拳]

@GeorgeSmith215
Copy link
Contributor Author

嗯嗯,作者大大的这个项目很不错,我也学到了很多的东西。
还有对于最后一个bug可以如下测试:
1、添加裁剪并复制多个图像:
test-after
2、按住ctrl+z重复撤销后:
test-before

@GeorgeSmith215
Copy link
Contributor Author

上面的图片反了😂

@nihaojob nihaojob mentioned this pull request Oct 26, 2024
@nihaojob nihaojob merged commit e134fc0 into ikuaitu:main Oct 26, 2024
1 check passed
@nihaojob
Copy link
Member

@GeorgeSmith215 感谢大佬,已经合并到主分支,之前有开发者反馈,一直也没时间处理,被大佬搞定了 [抱拳]。

@nihaojob nihaojob mentioned this pull request Oct 26, 2024
@nihaojob
Copy link
Member

@GeorgeSmith215 大佬早上好呀,方便留一个联系方式吗?给您寄一个礼品过去。

@GeorgeSmith215
Copy link
Contributor Author

GeorgeSmith215 commented Oct 29, 2024

还有小礼品吗,谢谢作者。
还有不敢说是大佬,一个在升级的小趴菜罢了。
很喜欢加缪的一句话:不要走在我后面,因为我可能不会引路;不要走在我前面,因为我可能不会跟随;请走在我的身边,做我的朋友。
能站在大佬的肩膀上一起成长才是最令人愉快的事了。
共勉。

已经收到了,谢谢作者。

@nihaojob
Copy link
Member

nihaojob commented Oct 29, 2024

希望大家一起一同行,一起成长,准备了一款雷蛇(Razer)炼狱蝰蛇标准版有线鼠标,已经再路上了,请您查收。
image

@nihaojob
Copy link
Member

@GeorgeSmith215 大佬 有兴趣搞定这个问题吗?#374

@GeorgeSmith215
Copy link
Contributor Author

哦哦,我重构 fabric-history 的时候加了一个 refreshHistory 方法就是专门解决这个问题的。
不过需要额外写些逻辑,我试试看。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants