|
| 1 | +<!-- |
| 2 | + * Copyright (C) 2025 Raghul-tech |
| 3 | + * https://github.com/raghul-tech |
| 4 | + * This file is part of JavaFX Markdown Preview. |
| 5 | + * |
| 6 | + * JavaFX Markdown Preview is free software: you can redistribute it and/or modify |
| 7 | + * it under the terms of the GNU General Public License as published by |
| 8 | + * the Free Software Foundation, either version 3 of the License, or |
| 9 | + * (at your option) any later version. |
| 10 | + * |
| 11 | + * JavaFX Markdown Preview is distributed in the hope that it will be useful, |
| 12 | + * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| 13 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| 14 | + * GNU General Public License for more details. |
| 15 | + * |
| 16 | + * You should have received a copy of the GNU General Public License |
| 17 | + * along with JavaFX Markdown Preview. If not, see <https://www.gnu.org/licenses/>. |
| 18 | +--> |
| 19 | + |
1 | 20 | # 📦 Changelog |
2 | 21 |
|
3 | 22 | All notable changes to **JavaFX Markdown Preview** will be documented in this file. |
4 | 23 |
|
5 | 24 | --- |
6 | 25 |
|
| 26 | +## [1.0.2] - 2025-07-09 |
| 27 | + |
| 28 | +### ✨ Added |
| 29 | +- ✅ **Tab and TabPane Integration** |
| 30 | + - Simplified APIs to embed previews directly inside `TabPane`. |
| 31 | + - Improved `MarkdownTab` to support `relaunchTab()` and enhanced lifecycle management. |
| 32 | +- ✅ **Standalone WebView Component** |
| 33 | + - Introduced a new class that returns a `WebView` node, allowing you to embed previews **anywhere** in your JavaFX layouts (e.g., `VBox`, `HBox`, `BorderPane`). |
| 34 | +- ✅ **Syntax Highlighting** |
| 35 | + - Code blocks now automatically use syntax highlighting. |
| 36 | +- ✅ **Copy Button** |
| 37 | + - Added a convenient copy button for all code blocks in the preview. |
| 38 | +- ✅ **Improved Dark and Light Themes** |
| 39 | + - Visual styles now more closely match GitHub Markdown rendering. |
| 40 | +- ✅ **Enhanced Real-Time Updates** |
| 41 | + - File changes are instantly reflected without flicker. |
| 42 | +- ✅ **MarkdownRenderer Enhancements** |
| 43 | + - Added ability to get **styled HTML** for exporting or embedding. |
| 44 | +- ✅ **Example Projects** |
| 45 | + - Added multiple example apps demonstrating: |
| 46 | + - Scene embedding |
| 47 | + - Stage embedding |
| 48 | + - VBox embedding |
| 49 | + - TabPane integration |
| 50 | + - Custom WebView integration |
| 51 | + |
| 52 | +### 🛠️ Improved |
| 53 | +- 🪄 **Window Launch Logic** |
| 54 | + - More reliable lifecycle—no crashes when reopening windows. |
| 55 | +- ⚡ **Performance** |
| 56 | + - Faster initial rendering and reduced memory usage with large Markdown files. |
| 57 | +- 🧹 **Refactoring** |
| 58 | + - Clear separation between: |
| 59 | + - **`javafx-markdown-preview`** (minimal core build) |
| 60 | + - **`javafx-markdown-preview-all`** (with Flexmark and full source) |
| 61 | +- 🪟 **Window Customization** |
| 62 | + - Easier configuration of window title, size, and icons. |
| 63 | +- 🎯 **Compatibility** |
| 64 | + - Switched from JavaFX 23 to **JavaFX 17** for better support across older Java versions (Java 11+). |
| 65 | + |
| 66 | +### 🧩 Artifacts |
| 67 | +- 🏷️ **`javafx-markdown-preview`** |
| 68 | + - Minimal build with only essential classes. |
| 69 | +- 🏷️ **`javafx-markdown-preview-all`** |
| 70 | + - Bundled version including Flexmark and example sources. |
| 71 | + |
| 72 | +### 🐞 Fixed |
| 73 | +- 🐛 Resolved dark/light theme switching issues. |
| 74 | +- 🐛 Fixed occasional `NullPointerException` when re-adding `MarkdownTab`. |
| 75 | +- 🐛 Corrected encoding problems in previews with special characters. |
| 76 | + |
| 77 | +--- |
| 78 | + |
| 79 | +## ⚖️ License Change |
| 80 | +- 📝 **License updated**: |
| 81 | + - **From:** MIT |
| 82 | + - **To:** GNU General Public License v3 (GPL-3.0) |
| 83 | + |
| 84 | + > This ensures contributions remain open-source while allowing broader usage. |
| 85 | +
|
| 86 | +--- |
| 87 | + |
| 88 | +## 💡 Tip |
| 89 | +- You can now use the **WebView-based preview in any JavaFX Node** (e.g., `VBox`, `StackPane`, `BorderPane`) for maximum flexibility. |
| 90 | + |
| 91 | +--- |
| 92 | + |
7 | 93 | ## [1.0.1] - 2025-06-12 |
8 | 94 |
|
9 | 95 | ### ✨ Added |
|
0 commit comments