Commit graph

18 commits

Author SHA1 Message Date
YazanAmmar
71aac0dee3 chore(release): bump to v2.1.0 and update min app version 2026-05-14 17:55:03 +03:00
YazanAmmar
61fa8f29ad refactor: modularize core engine and settings UI
- extracted core logic into dedicated modules
- simplified main.ts and settingsTab.ts
- improved maintainability and separation of concerns
- no functional changes intended
2026-02-17 18:19:42 +03:00
YazanAmmar
c8ab4ae28c chore(deps): bump eslint-plugin-eslint-comments to 4.4.0 2026-02-15 22:37:13 +03:00
YazanAmmar
be0f16e17b fix: correct version to 2.0.0 and update README project structure 2026-02-14 23:12:29 +03:00
YazanAmmar
791f9a750d fix(manifest): remove obsidian from plugin id/description 2026-02-14 18:53:10 +03:00
YazanAmmar
29f6188f63 feat!: rebrand plugin to Theme Engine and implement full ID migration
- change manifest ID from color-master to theme-engine
- add first-run migration for settings, hotkeys, and enabled-plugin list
- refactor architecture and modularize UI
- migrate styles to structured SCSS setup
- clean lint configuration and remove deprecated eslint plugin
- update README, dev paths, and release metadata
2026-02-14 16:53:36 +03:00
YazanAmmar
66d7c6c455 chore(lint): align ESLint config with Obsidian bot rules for consistent local validation 2026-02-14 00:14:53 +03:00
YazanAmmar
d968d401b6 chore(deps): update dependencies and unignore manifest 2026-02-12 15:09:34 +03:00
YazanAmmar
ad2ddc6c44 refactor(build): integrate Prettier formatting and improve SCSS structure
Integrates Prettier into the build process for automatic code formatting
and refactors the SCSS file structure for better maintainability.

- Added `prettier` and `cpy-cli` as dev dependencies.
- Updated `package.json` scripts:
  - `npm run format` now runs automatically before `dev` and `build`.
  - `dev` script now uses `cpy-cli` for cross-platform compatibility instead of native `copy`.
- Refactored SCSS files:
  - Consolidated all `@keyframes` into `_base.scss` and removed duplicates from `_components.scss` and `_modals.scss`.
  - Moved modal-specific CSS from `_base.scss` to `_modals.scss`.
  - Moved `.notice` styling from `_components.scss` to `_base.scss`.
- Fixed UI/UX issues:
  - The snippet "Lock" button now correctly shows `cursor: pointer` and changes color based on its locked/unlocked state.
  - The snippet drag handle (`.cm-snippet-drag-handle`) now correctly shows `cursor: not-allowed` when locked.
  - Fixed text wrapping issues in modals by removing `max-width: 80%` from `.setting-item-description`.
2025-12-02 07:24:41 +03:00
YazanAmmar
1e32797551 chore(release): v1.2.0 2025-11-29 23:16:56 +03:00
YazanAmmar
2b160e9a06 feat: Huge Update: Add Video Backgrounds & Rebuild Custom Variables (v1.1.1)
This massive update introduces the plugin's most-requested feature: **Video Backgrounds**. We've also completely rebuilt the "Custom Variable" system and delivered major performance and user experience enhancements.

- **Video Background Support:** Fully supports `.mp4` and `.webm` video files as backgrounds.
- **Redesigned Settings Modal:** The "Background Settings" (⚙️) modal is now completely redesigned with dedicated **Image** and **Video** tabs.
- **Dedicated Video Settings:** Includes a **Video Opacity** slider and a **Mute Video** toggle.
- **Interactive Previews:** Video previews in the "Browse Backgrounds" modal are now interactive (click to play/pause).
- **Active Background Highlight:** The currently active background is now highlighted in the "Browse Backgrounds" modal.

- **Support for Multiple Data Types:** Rebuilt the feature to support 'Color', 'Size (px/em)', 'Text', and 'Number' types.
- **Context-Aware Controls:** The UI now renders the correct control for each custom variable type on both the creation modal and the main settings page.
- **Duplicate Prevention:** The modal intelligently checks against all existing variables to prevent duplicates.
- **Improved Search & Highlighting:** Custom variables are now fully searchable by their name *and* description, with highlighting on both.

- **Remember Settings State:** The plugin now remembers your last search query and scroll position in the settings tab.
- **Smarter Plugin Reset:** The "Reset All Data" function now preserves crucial data: Installation Date ("Days of Use"), Language, and RTL/LTR layout settings.
- **Fixed: Background Switching Flicker:** The visual flicker that occurred when switching between backgrounds has been eliminated.
- **Performance:** Includes the new **"Convert to JPG"** image conversion feature for better file size management.

---
[For full details on code changes and fixes, please see the CHANGELOG.md]
2025-11-01 12:34:06 +03:00
YazanAmmar
d4baa87c66 feat: Add Custom Backgrounds feature (v1.1.0)
This major update introduces the highly requested Custom Backgrounds feature, allowing users to set per-profile background images.

**Features:**
- Add images via file upload, paste (URL/image), or drag & drop.
- Images are saved to profile-specific folders (`.obsidian/backgrounds/<ProfileName>`).
- New Image Browser modal to view, select, rename (with locked extension), and delete profile images.
- Added Enable/Disable toggle for background images in a new settings modal.

**Improvements:**
- Implemented smart transparency: Key UI variables are set to transparent when background is active and restored when disabled/removed.
- Enhanced UI/RTL consistency, fixing issues in modals and with the language icon.
2025-10-25 08:25:25 +03:00
YazanAmmar
7fa54e2d59 feat: Release v1.0.9
This is a major quality-of-life release that introduces deep integration with the user's Obsidian environment, adds several powerful new features, and includes a significant code refactoring for better security and stability.

Key changes include:
- Implemented a quick theme toggle button (light/dark/auto) in the Profile Manager.
- Added a new command/hotkey to cycle the active profile's theme.
- Added a "Reset Plugin to Factory Defaults" feature.
- Redesigned the "Advanced Settings" section with a modern card-based UI.
- Major code refactoring to remove inline `.style` and `.innerHTML` usage, improving security and themability.
- Fixed a critical bug with multi-word tag rendering (e.g., #tag_with_words).
2025-10-18 00:02:11 +03:00
YazanAmmar
9588849879 feat: Release version 1.0.8
This release introduces Global CSS Snippets, new workflow hotkeys,
and a major UI overhaul for a cleaner and more intuitive experience.

Key features include:
- Global Snippets for styles that apply to all profiles.
- New hotkeys for cycling to the previous profile and opening settings.
- A dedicated ribbon icon for quick settings access.
- Flexible RTL layout control for RTL language users.

Fixes & Improvements:
- Redesigned and streamlined settings UI.
- Simplified CSS import workflow.
- Reorganized Iconize plugin settings into a dedicated modal.

For full details, see the CHANGELOG.md.
2025-09-22 22:54:28 +03:00
Yazan Ammar
347ff06e4d
Update package-lock.json - v1.0.7 2025-09-19 18:47:24 +03:00
Yazan Ammar
459c5f79eb
Update package-lock.json - v1.0.7 2025-09-19 18:42:53 +03:00
Yazan Ammar
1ac86a28cc
Update package-lock.json 2025-09-14 01:38:30 +03:00
Yazan Ammar
7383bdc3a7
Add files via upload 2025-09-14 01:25:32 +03:00