Skip to content
This repository was archived by the owner on Sep 2, 2024. It is now read-only.

http connection with nextcloud#216

Open
glgamsh wants to merge 385 commits intomsoultanidis:mainfrom
quillpad:master
Open

http connection with nextcloud#216
glgamsh wants to merge 385 commits intomsoultanidis:mainfrom
quillpad:master

Conversation

@glgamsh
Copy link

@glgamsh glgamsh commented May 17, 2023

add syncing nextcloud via URL http

alinpisica and others added 30 commits December 18, 2025 22:10
- Implement `gemini-review` and `gemini-dispatch` workflows for automated pull request reviews.
- Configure `.gemini` settings directory and workflow-specific credentials in `.gitignore`.
- Add support for `reopened` and `synchronize` pull request events.
- Simplify repository fork condition checks.
- Update `getAll()` method to allow nullable results across sync backends for better error handling.
- Add logic to reset ID mappings when Nextcloud URL or username changes to ensure consistency.
Currently translated at 98.9% (270 of 273 strings)

Translation: Quillpad/app
Translate-URL: https://toolate.othing.xyz/projects/quillpad/app/tr/
Currently translated at 100.0% (273 of 273 strings)

Translation: Quillpad/app
Translate-URL: https://toolate.othing.xyz/projects/quillpad/app/tr/
- Add `updateLocalNote` helper in `SyncNote` to merge local and remote note data effectively.
- Refactor `NoteAction.Update` handling in `NoteRepositoryImpl` to use `updateLocalNote` for streamlined sync logic.
- Shared RecycledViewPool for nested RecyclerViews (tasks and attachments) in Note list.
- Removed redundant background on inner layouts to reduce overdraw.
- Replaced expensive manual ellipsizing with native android:ellipsize="end".
- Refactored tag rendering to reuse views instead of clearing/recreating them.
- Cleaned up unused ViewUtils.ellipsize() extension.

Co-authored-by: jsixface <2518805+jsixface@users.noreply.github.com>
- Restored manual ellipsization logic for note content and tasks to fix visual bug with native ellipsizing.
- Maintained other performance improvements: shared RecycledViewPool, overdraw reduction, and tag view reuse.

Co-authored-by: jsixface <2518805+jsixface@users.noreply.github.com>
This PR implements several performance improvements to the note list:

1. **Optimized Payload Generation**: In `NoteRecyclerAdapter.DiffCallback.getChangePayload`, replaced the allocation-heavy `sequenceOf` and `Pair` approach with a manual `MutableList` and property checks. This significantly reduces GC pressure during list updates and scrolling.

2. **Conditional Rendering in ViewHolder**: Refactored `NoteViewHolder.setContent` to skip expensive operations—such as Markwon (Markdown) parsing and `TasksAdapter` submission—when the note is in compact preview or when the respective views are hidden. Markdown parsing is resource-intensive, and skipping it for non-visible content improves frame stability during scroll.

3. **Cleaner Payload Handling**: Optimized `onBindViewHolder` in `NoteRecyclerAdapter` by removing a redundant `.map { it }` call and using `filterIsInstance` for safer payload processing.

These changes combined make the primary note list measurably more efficient by reducing object allocations and avoiding redundant UI work.

Co-authored-by: jsixface <2518805+jsixface@users.noreply.github.com>
- Adjust `indicatorMoreTasks` logic to ensure proper visibility and text updates only when necessary.
- Minor formatting updates in payload handling for better readability.
Currently translated at 100.0% (273 of 273 strings)

Translation: Quillpad/app
Translate-URL: https://toolate.othing.xyz/projects/quillpad/app/es/
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.