Repository navigation
Conversation
Route screenshot paste through a confirmation preview and surface live server acknowledgements. Complete archived chat discovery, recover group subjects, and keep phone notifications eligible with manual companion presence. Desktop alerts inherit mute/archive policy with a direct-mention exception. Add preference-provenance migration; legacy rows refresh on the next history sync because prior source precedence cannot be reconstructed.
An absent archive field from older frames is unknown, not false. Carry the optional store answer so the GUI can unarchive promptly without pulling archived chats into the active list on unknown state.
Require confirmation before deleting messages or sending picker/drop attachments. Surface accepted edits on own and received bubbles, and allow copying selected message text.
|
Important Draft PR not reviewedDraft PRs are not automatically reviewed by default.
To automatically review draft PRs, update your CodeRabbit configuration: reviews:
auto_review:
drafts: trueThanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Prevent stale archive and read state during asynchronous sync, and retain notification clicks through chat hydration. Keep macOS alerts ordered and audible where notification policy permits.
…s-attachment-preview # Conflicts: # crates/gui/src/app/mod.rs
…chment-categories
…s-attachment-preview
…chment-categories
…s-attachment-preview
…chment-categories
This was referenced Sep 22, 2026
Contributor
Author
|
Superseded by PR #200, which includes the Documento / Fotos e vídeos attachment-category and selection-validation work from this draft in a single branch based on current |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
The attachment button needs an explicit choice between sending the original file and sending supported visual media. This keeps the selected WhatsApp media kind predictable without bypassing the existing confirmation step.
What changed
DocumentoandFotos e vídeos. Dismissing the menu selects and sends nothing.Documentoaccepts a valid file asOutgoingMedia::Document, including JPG, MP4, and HEIC, while preserving its original name, MIME metadata, and bytes.Fotos e vídeoskeeps supported images as images and videos as videos. The browser picker gets anaccepthint; all results are validated after selection. The macOS native picker cannot visually filter extensions, so incompatible selections are refused with guidance to useDocumento.Documentoonly; the client does not convert it to a drawable photo.Validation and remaining checks
cargo fmt --all -- --check,cargo clippy --workspace --all-targets --all-features -- -D warnings, andcargo test --workspace --all-features -q(run with local socket access). The developmentcargo build --bin oxidezappassed; the installed development app was launched and the user confirmed it worked.acceptis unit-tested, but browser runtime was not exercised.No space left on device), not a code error. Build cache was preserved; no cleanup was performed.docs/stories/1.9.story.mdisReady for Reviewand retains unchecked manual/optimized-build tasks.Stacked PR context
This draft targets
oxidezap/client:mainfromassisjp:feat/attachment-categories. Commite68e775is directly on top ofd55b209, the head of #183, which in turn depends on #182. Because the earlier heads exist only on the fork, the GitHub diff againstmainis cumulative and includes the earlier work until those PRs merge or this branch is rebased. Please review the Story 1.9 delta at commite68e775for now. This PR does not merge or modify #182 or #183.Current integration status: GitHub reports this draft branch conflicts with main. Resolve the stacked integration and run CI on the resulting head before marking it Ready for Review. The macOS manual report concerns the combined app, not a standalone validation of this branch.
Summary by cubic
Adds an explicit
DocumentoorFotos e vídeoschoice to the attachment button so the WhatsApp media kind is set before selection; dismissing the menu selects nothing.Documentosends any valid file asOutgoingMedia::Document, preserving its name, MIME metadata, and bytes; JPG, MP4, and HEIC pass through unchanged.Fotos e vídeossends images as images and videos as videos. The picker gets anaccepthint, but files are still validated after selection; macOS's native picker cannot filter extensions, so incompatible picks are refused with guidance to useDocumento.Documento-only.The diff against
mainis cumulative and also carries the unmerged message-action, attachment-preview, and desktop-reliability branches; this PR's change is the attachment-category routing described above.Written for commit f0ae64b. Summary will update on new commits.