* fix(electron): menu undo & redo not working
* refactor(electron): use editMenu from electron src code
* chore(electron): add FIXME comments
* fix(electron): menu copy & cut not working
* remove: custom fn in menu cut
* fix: add accelerator to menu copy item
* feat(electron): add page/append to quickCapture
fix: quickCapture not working on journal pages
enhance: handle quickCapture to the same block
enhance: handle page name when journals are not enabled
- Added to CI now that it passes
- Added no-doc for docstrings that don't add any more than what's in the
ns name or for ones where I didn't know the ns that well
* fix: state shouldn't be returned in ipc
* feat: download && upload processing
* enhance(ui): interaction of show password checkbox
* feat: time left
* feat: download progress
* Set download batch size to 100
* improve(ui): progress pane of file sync indicator
* improve(ui): progress pie of each file state
* improve(ui): progress pie of each file state
* improve(ui): progress pie of each downloading file
* fix: add last changed time
* enhance: time left
* fix: total needs to be larger than finished
* fix: wait for update-graphs-txid!
* enhance: show in-progress files first
* chore: ui polish
* improve(ui): persist stauts of sync files list toggle switch
* fix(ui): visibility of sync now button on mobile
* chore: remove ios static out after sync
* fix: debounce clicking on sync icon
* fix: repos not refreshed after unlink or delete
* enhance: automatically save page-metadata.edn to avoid sync when restart
* improve(ui): sync now shortcut for file sync progress pane
* enhance: data transfer icons
* fix: stop sync if switched to another graph
* fix: can't switch
* enhance: sort files first before uploading or downloading
* fix: clear current graph uuid when sync stops
* fix: separate progress by graphs
* fix: check files only in the current progress
* fix: prevent multiple sync managers for the same graph
* fix: remove redundant files watchers
* enhance(sync): re-exec remote->local-full-sync when exception
re-exec remote->local-full-sync when <update-local-files return exceptions
* enhance(sync): re-exec remote->local-full-sync when exception
re-exec remote->local-full-sync when <update-local-files return exceptions
* fix(sync): set-progress-callback, update rsapi
* fix(sync): uploading progress bar
Co-authored-by: Tienson Qin <tiensonqin@gmail.com>
Co-authored-by: charlie <xyhp915@qq.com>
Co-authored-by: rcmerci <rcmerci@gmail.com>
* Add outliner nested transact!
Copied the code mostly from https://github.com/logseq/logseq/pull/4671
by zhiyuan
* refactor: insert-blocks
* fix: insert-blocks
* fix: move cursor to the last block when inserting
* fix: replace the current block when inserting and its content is empty
* keep only :insert-blocks
* expose only :delete-blocks
* Use existing implementations for move-nodes-up-down and
indent/outdent.
* fix editing state not updated immediately
* fix editing status
* fix: avoid recursive copy
* fix: inserting blocks after an empty block
* Implement move-blocks with insert-blocks
* fix: block left
* Implement move-blocks-up-down with move-blocks
* fix: paste text
* Implement indent-outdent-blocks with move-blocks
* fix: indent/outdent
* feat: multiple blocks drag && drop
* fix: indent/outdent blocks
* fix: drag drop
* Port unit tests for outliner.core
* enhance: open collapsed parent when indenting blocks
* refactor: block selection
* fix: indent/outdent blocks with different levels
* Add instrument on invalid outliner structure
* fix: can't write a block if the page has any outdated blocks
* fix: editing status for empty page
* fix: multiple drag & drop
* fix: drag & drop disallows moving from parents to its child
* fix: public property
* fix: can't delete first empty block
* Remove unused code
* fix: e2e tests
A workaround is to not select/highlight the block when pressing esc if it has
fenced code.
* remove unused code
* Add batch transaction test
* fix: update :block/page when dragging targets' children to another page
* Add more tests
* Simplify extract
* Replace db/get-conn with db/get-db
* Simplify extracting blocks from ast
* Code cleanup
* Code cleanup
* Add outliner core fuzzy tests
* Remove unused code
* fix: cursor not jump to the upper block when pressing Enter in the beginning
* fix: Enter in the beginning of a non-empty block
* Fix lint warnings
* Add editor random e2e tests
* Fix typo
* enhance: move some fns and add some comments
* enhance(outliner): add page-block? util
* fix: increase td width to prevent content overflow
Signed-off-by: Yue Yang <g1enyy0ung@gmail.com>
* First pass at file tests for file-sync
Each action usually passes by 5th try
* Fix two incorrect calls caught by tests
* More test improvements
- Easier auth setup
- subdirectory is configurable
- list graphs api also exercised
* Address cleanup from #3839
- Remove unused translation key
- Delete or TODO commented code
- Capitalize notifications to users
* fix quick capture template not working
* enhance(sync): add logout
* enhance: add logout i18n
* fix(plugin): sometimes plugin settings of gui not work when entry from app settings
* enable show-brackets? toggle for orgmode [[file:./pages/demo.org][demo]]
* fix(sync): fix unfinishable sync loop
* feature: logseq protocol; refactor persistGraph
* fix: deeplink support
* fix: broadcast persist graph on opening new graph with logseq protocol
* feat: logseq protocol open action for page-name and uuid
* fix: logseq protocol graph param validation
* ux: copy logseq URL of block
* enhance: remove the redundant 'open' from logseq protocol (v0.1)
* ux: page dropdown button for copy page URL
* chore: logseq protocol comments
* don't create new contents file when changing format
Logseq now creates a new contents file when users try to toggle the
preferred format, which causes file duplications error.
* fix pasting in src block not working on iOS
close https://github.com/logseq/logseq/issues/4914
* fix playing video goes into editing mode on iOS
* fix copy to clipboard failure on iOS
* add Podfile item
* fix mobile toolbar order not persisting after restart
* test(e2e): add test for backspace and cursor pos (#4896)
* test(e2e): add test for backspace and cursor pos
* fix(test): refine, fix wrong helper
* fix(ui): warn about illegal git commit interval
* enhance(editor): allow global git cmd shortcut
* style(settings): line-space of general/journals
* enhance(editor): accept enter in dummy block
Fix#4931
* fix editing state not updated immediately
* fix: can't write a block if the page has any outdated blocks
TODO: clean outdated blocks
* fix: editing status for empty page
* Random tree for outliner core tests
* Add pre assertions and fn docs based on Zhiyuan's suggestions
* Made some changes based on Gabriel's suggestions
* fix: tests
* fix: save current block before moving
* Updated the timeout to 100ms based on llcc's suggestion
https://github.com/logseq/logseq/pull/4880#discussion_r851966301
* api-insert-new-block! supports replace-empty-target?
* fix: replace all :reuse-last-block? usage
Co-authored-by: rcmerci <rcmerci@gmail.com>
Co-authored-by: Yue Yang <g1enyy0ung@gmail.com>
Co-authored-by: Gabriel Horner <gabriel@logseq.com>
Co-authored-by: llcc <lzhes43@gmail.com>
Co-authored-by: charlie <xyhp915@qq.com>
Co-authored-by: Junyi Du <junyidu.cn@gmail.com>
Co-authored-by: Andelf <andelf@gmail.com>