Releases: crim50n/Pocket-Diffusion-Android
Releases · crim50n/Pocket-Diffusion-Android
0.7.1
PDAI v0.7.1 — Release Notes
New Features
Favorites (Like)
- "Favorite" button (heart) in image detail view
- Like indicator in gallery grid (red heart in the top right corner)
- Bulk like: "Like" button in selection mode likes all selected images
- "Delete Unliked" function in gallery menu — deletes all images without a like
- Real-time sync of like status between detail view and grid
- Like status persists between sessions
Hide Images
- Bulk hide: "Hide" button in selection mode hides all selected images
- Bulk unhide: tapping "Hide" when all selected are hidden — reveals them
- Real-time sync of hide status between detail view and grid
- Fallback for Android < 12: dimming with icon instead of blur
Completely Redesigned Gallery with Improved Performance
Smart Loading:
- Thumbnails load only for visible items
- File-based thumbnail loading (no Base64) — fixed OOM on fast scrolling
- BlurHash placeholders — blurred preview while thumbnail loads
- Shimmer animation for items without BlurHash
- Two-level cache for thumbnails and full images
Grid Management:
- Grid size from 1 to 6 columns (previously 2-5)
- Pinch to resize thumbnails
- Draggable scrollbar for fast navigation
Drag Selection:
- Long press activates selection mode
- Dragging finger selects a range of images
- Dragging back deselects
- Auto-scroll when reaching screen edges
- Smooth animations when opening images
Selection Mode Actions:
- Like (heart) — like all selected (or unlike if all already liked)
- Hide (eye) — hide all selected (or unhide if all already hidden)
- Delete — delete all selected
- Save to device gallery
- Export
Update on Delete:
- Gallery auto-updates when deleting images from detail view
- Gallery auto-updates after generation completes
UI Improvements
Floating Generation Indicator:
- Global generation status widget over all screens
- Swipe left/right to temporarily hide
- Automatically appears on status change (generation start/result)
- Does not block navigation (drawer opens over widget)
Collapsible Header:
- Top bar hides on scroll down
- Appears on scroll up or when reaching top of list
- Standard NestedScrollConnection pattern (like Google Photos)
- Unified height of 72dp on all screens
- Background color unified to
background(wassurface) - Consistent bottom padding accounting for navigation bar across all screens (txt2img, settings)
Swipe Navigation:
- Swipe between home screen tabs (HorizontalPager)
- Drawer opens only by button (not edge swipe)
Image Viewing:
- Double tap to zoom/reset
- Swipe up/down to show/hide info
- Fixed artifacts when swiping between images
Navigation Bar:
- Smoothly hides in fullscreen view
- Automatically appears when returning to gallery
Image Details:
- "Share" button
- "Save to device gallery" button
- "Favorite" (like) button
Fixes
Image Export
- Fixed OOM when exporting many images
- Direct file copy instead of loading into memory (Base64)
- Parallel processing (4 threads) for faster export
"Report" Button
- Disabled for Full and FOSS builds (Play Store only)
Aspect Ratio
- Aspect ratio now always uses width as the base (not the longer side)
Fal AI
- Fixed issue with API keys containing control characters
requestIdfield in Fal AI response is now optional (fixed crash on fast completion)
Visual Changes
- Updated notification icon
Technical Changes
Dependencies
- Added BlurHash 0.3.0 for blurred placeholders in gallery
Database
- Migration v10 → v11: added
blur_hashfield to generation results table - Migration v11 → v12: added
likedfield for favorites feature
New Components
ImageEditor— image editing screenCollapsibleScaffold— scaffold with collapsible headerDraggableScrollbar— draggable scrollbarDragSelectionState/DragSelectionUtils— drag selectionThumbnailGenerator— thumbnail generatorImageCacheManager— image cache managerBlurHashEncoder/BlurHashDecoder— BlurHash encoding/decodingGalleryItemStateEvent— real-time sync of hide/like statesGetThumbnailInfoUseCase/GetGalleryItemsRawUseCase— use cases for file-based thumbnail loadingToggleLikeUseCase/DeleteAllUnlikedUseCase— use cases for favorites featureLikeItemsUseCase/UnlikeItemsUseCase— use cases for bulk like/unlike operationsHideItemsUseCase/UnhideItemsUseCase— use cases for bulk hide/unhide operations
Localization
Added strings:
- Share, Edit, Save to gallery
- Rotate, Settings, Brightness, Contrast, Saturation
- Delete unliked, confirm delete unliked
0.7.0
PDAI v0.7.0 — Release Notes
New Features (compared to SDAI v0.6.8)
Fal.AI — Cloud Generation with FLUX Models
Full integration with the Fal.AI platform for cloud-based image generation.
Default models:
- FLUX Schnell, FLUX Schnell Redux
- FLUX Dev, FLUX Dev Redux, FLUX Dev Image-to-Image
- FLUX 2, FLUX 2 Flash, FLUX 2 Edit, FLUX 2 Flash Edit
- FLUX Lora, FLUX Lora Image-to-Image, FLUX Lora Inpainting
- FLUX Kontext Dev
- (and other models available via custom endpoints)
Modes:
- Text-to-Image, Image-to-Image, Inpainting
Highlights:
- Dynamic parameter form generation based on OpenAPI specifications
Qualcomm QNN — Local Generation on NPU
Image generation on Snapdragon devices using NPU and GPU.
Supported chipsets: Snapdragon 8 Gen 1 and newer
Runtimes:
- HTP (NPU) — optimized for neural networks
- GPU (OpenCL/Adreno) — general-purpose graphics processor
- CPU — central processor (fallback option)
Modes:
- Text-to-Image, Image-to-Image
Resolution support:
- NPU (HTP): 512×512 to 1024×1024
- CPU/GPU: 256×256 to 512×512
Hires.Fix (NPU only):
- Generate at 512×512 or 768×768, upscale to larger square resolution, refine with img2img pass
- Only square resolutions support Hires.Fix (512×512 → 768/1024, 768×768 → 1024)
- Configurable target resolution, steps, and denoising strength
Local Diffusion Enhancements
Improved support for all local backends (ONNX, MediaPipe, QNN):
- Custom models scanning — automatic detection of user-provided models from custom directories
- Strict model validation — each backend validates model structure before loading
- Prompt persistence — last used prompt is saved and restored per backend
- Model selection in generation UI — switch between models directly from the generation screen
ADetailer and Hires.Fix for A1111/Forge
- ADetailer — automatic face and hand enhancement
- Hires.Fix — high-resolution generation with upscaling
- Forge Modules — basic support for Forge modules (API endpoint)
UI Improvements
ZoomableImage
- Improved scaling and gestures
- Smoother transition animations
InPaint
- Enhanced scaling and canvas panning controls
- Pinch-to-zoom support
Gallery
- Model name displayed in image details
- Optimized swipe navigation between images
- Save selected images to device gallery (in selection mode)
Log Export
- Log file export function for diagnostics
Light Theme
- Support for light status bar in app theme
Optimization
Image File Storage
- Migration from Base64 to file-based storage
- Significantly improved performance and reduced DB size
- Added
mediaPath,inputMediaPathfields in DB (migration v8)
Network Requests
- Requests are sent only to the active generation source
Technical Changes
Rebranding SDAI → PDAI
- Log tag:
[PDAI]instead of[SDAI] - Log file:
pdaiv1.loginstead ofsdaiv1.log - Model path:
/Download/PDAI/instead of/Download/SDAI/ SdaiWorkerFactory→PdaiWorkerFactory- Documentation and website updates
Dependency Updates
- Compose BOM → 2025.12.01
- Lifecycle → 2.10.0
- Navigation → 2.9.6
- Work → 2.11.0
- Koin → 4.1.1
- Retrofit → 3.0.0
- ONNX Runtime → 1.23.2
- Core KTX → 1.17.0
- Material → 1.13.0
- RxJava → 3.1.12
- Apache String Utils → 3.20.0
- MediaPipe → 0.10.21
- Serialization → 1.9.0
- Turbine → 1.2.1
- Appcompat → 1.7.1
- Compose Activity → 1.12.2
- Crypto → 1.1.0
- EXIF → 1.4.2
- Gson → 2.13.2
- compileSdk: 35 → 36
Database Migration
- Schema version: 7 → 9 — two sequential migrations
- New fields:
modelName(v9),mediaPath,inputMediaPath(v8) - Automatic migration of existing data on update
Fixes
- Requests to inactive servers are no longer executed
- Light status bar works correctly
- Localization files updated (RU, TR, UK, ZH)
- Added module tests for Fal.AI and Forge, updated existing tests
- Removed donate button from settings