Skip to content

Add clipboard history feature integrated into SYM pages#68

Merged
palsoftware merged 11 commits intopalsoftware:mainfrom
itsthisjustin:clipboard-feature
Dec 8, 2025
Merged

Add clipboard history feature integrated into SYM pages#68
palsoftware merged 11 commits intopalsoftware:mainfrom
itsthisjustin:clipboard-feature

Conversation

@itsthisjustin
Copy link
Contributor

@itsthisjustin itsthisjustin commented Dec 8, 2025

Summary

Adds a clipboard history feature to Pastiera keyboard, integrated as page 3 in the SYM button cycle.

Features

  • Clipboard History Tracking: Automatically captures clipboard content via ClipboardManager.OnPrimaryClipChangedListener
  • SQLite Storage: Persistent clipboard history with in-memory caching via ClipboardDao
  • SYM Page Integration: Accessible as page 3 when cycling through SYM pages (Emoji → Symbols → Clipboard)
  • UI Features:
    • Scrollable list of clipboard entries
    • Delete individual entries with trash icon
    • "Clear All" button in header
    • Pin/unpin functionality support (displays 📌 for pinned items)
    • Empty state display when no clipboard history
  • Settings:
    • Enable/disable clipboard page in SYM customization settings
    • Enabled by default

Implementation Details

  • Created clipboard package with ClipboardDao, ClipboardDatabase, ClipboardHistoryEntry, ClipboardHistoryManager
  • Added CLIPBOARD as page 3 to SymLayoutController
  • Added clipboard settings to SettingsManager

Resolved conflicts by combining both features:
- StatusBarController and CandidatesBarController now accept both clipboard and assets/imeServiceClass parameters
- SettingsManager includes both clipboard settings and custom input styles
- VariationBarView keeps clipboard branch's separate settings button alongside upstream improvements
- build.properties: Accepted upstream's newer build number

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
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