Упрощение git/превью: copyCodeBlock, parseBlocks на splitMdBlocks, кэш diff, пагинация
- MdParser.copyCodeBlock(id): один вызов вместо get+copy в 3 QML-местах - parseBlocks переписан на splitMdBlocks (убит regex только для ```, заодно чинит ~~~); renderInner без побочек, save/restore удалены - Кэш diff-блоков (хеши+пути, 8 шт, >1МБ не кэшируем); регистрация кодов всегда в главном потоке - История: пагинация limit+Показать ещё с сохранением выбора; willDelete; busy только на время async - GitManager: commitFile точечно (общий commitFromIndex), fileExistedAt, workdirContent через DocumentManager.readTextFile, fileGitStatus через relativePath; удалены fileDiffText/Html и 2-arg fileHistory - MarkdownView: дебаунс async-ветки 80мс + гашение протухших ответов
This commit is contained in:
@@ -157,9 +157,7 @@ Item {
|
||||
background: Rectangle { color: Theme.editorBg }
|
||||
onLinkActivated: (href) => {
|
||||
if (href.startsWith("flora://copycode/")) {
|
||||
const id = href.substring(17)
|
||||
const code = mdParser.getCodeBlock(id)
|
||||
if (code.length > 0) { mdParser.copyToClipboard(code); copyFeedback.visible = true; copyTimer.restart() }
|
||||
if (mdParser.copyCodeBlock(href.substring(17))) { copyFeedback.visible = true; copyTimer.restart() }
|
||||
return
|
||||
}
|
||||
if (href.startsWith("flora://task/")) {
|
||||
|
||||
Reference in New Issue
Block a user