EU-Utility/core
LemonNexus 706a5710a9 feat: Auto-install plugin dependencies when enabling plugins
NEW FEATURES:

1. Plugin Dependency Declaration (BasePlugin):
   - Added 'dependencies' class attribute
   - Format: {'pip': ['package1', 'package2'], 'optional': {...}}
   - Plugins can declare required pip packages

2. Plugin Dependency Manager (core/plugin_dependency_manager.py):
   - Checks if declared dependencies are installed
   - Installs missing packages via pip
   - Tracks installation status
   - Shows progress dialog during installation

3. Settings Dialog Integration:
   - When enabling a plugin with dependencies, shows dialog
   - Lists missing dependencies
   - Asks user if they want to install
   - Shows progress bar during installation
   - Handles installation failures gracefully

4. Example: Game Reader Test plugin:
   - Declares dependencies: pillow, numpy
   - Optional: easyocr, pytesseract, paddleocr
   - When enabled, prompts to install if missing

WORKFLOW:
1. User enables a plugin in Settings → Plugins
2. System checks if plugin has dependencies
3. If dependencies missing, shows dialog
4. User clicks Yes to install
5. Progress dialog shows installation progress
6. Plugin loads after dependencies installed

This eliminates manual pip install steps for plugins!
2026-02-14 23:46:01 +00:00
..
__init__.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
audio.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
clipboard.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
dashboard.py fix: Remove redundant Settings plugin and baked-in Spotify widget 2026-02-14 19:58:18 +00:00
data_store.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
data_store_secure.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
data_store_vulnerable.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
eu_styles.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
event_bus.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
floating_icon.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
hotkey_manager.py feat: Fix system tray and add configurable hotkeys 2026-02-14 19:17:42 +00:00
http_client.py fix: Fix HTTPClient, Dashboard, and Log Parser errors 2026-02-14 23:40:09 +00:00
icon_extractor.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
icon_helper.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
icon_manager.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
log_reader.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
log_reader_optimized.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
log_watcher_optimized.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
logger.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
main.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
main_optimized.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
memory_leak_detector.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
nexus_api.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
notifications.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
ocr_backend_manager.py feat: Fix OCR errors and add backend installation/management 2026-02-14 23:38:18 +00:00
ocr_service.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
ocr_service_optimized.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
ocr_service_optimized_v2.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
overlay_widgets.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
overlay_window.py feat: Auto-install plugin dependencies when enabling plugins 2026-02-14 23:46:01 +00:00
performance_optimizations.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
plugin_api.py fix: Add missing dependencies and fix type mismatch 2026-02-14 18:16:56 +00:00
plugin_dependency_manager.py feat: Auto-install plugin dependencies when enabling plugins 2026-02-14 23:46:01 +00:00
plugin_manager.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
plugin_manager_optimized.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
plugin_store.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
plugin_ui_components.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
screenshot.py fix: Fix initialization order bug in ScreenshotService 2026-02-14 18:50:45 +00:00
screenshot_secure.py fix: Fix initialization order bug in ScreenshotService 2026-02-14 18:50:45 +00:00
screenshot_vulnerable.py fix: Fix initialization order bug in ScreenshotService 2026-02-14 18:50:45 +00:00
security_utils.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
settings.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
settings_secure.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
startup_profiler.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
tasks.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
theme_manager.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
ui_optimizations.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
ui_render_optimized.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00
window_manager.py fix: Clean repository - remove workspace pollution 2026-02-14 03:34:04 +00:00