# Changelog

## [4.0.0] — 2026-06-18

### Added
- `CHANGELOG.md`
- `src/ui/combobox.rs` — ComboBox yardımcıları (`show_combo_box`, `selectable_value`, `selectable_value_custom`, `draw_gradient_bg`)
- `src/ui/combobox_stil.rs` — ComboBox görsel sabitleri ve `apply_visuals()`
- `src/steps/location.rs` — Bölge/zaman dilimi seçimi adımı
- `src/steps/network.rs` — Ağ yapılandırma adımı
- `src/steps/rescue.rs` — Kurtarma modu
- `xkbcommon` bağımlılığı
- Klavye görseli: XKB keymap → egui çizim (`compile_layout`, `draw_layout`, `keysym_to_label`)
- ISO‑105 tuş pozisyon eşlemesi (function tuşları, numpad, navigasyon dahil)
- Her tuşta tek karakter gösterimi (büyük harf tercihli)

### Changed
- Klavye görseli: KLE JSON indirme/parse → xkbcommon ile doğrudan keymap derleme
- `Cargo.toml`: `ureq`, `serde_json` kaldırıldı; `xkbcommon` eklendi
- ComboBox stilleri `theme.rs` → `combobox_stil.rs` taşındı
- `secondary_button` gradient renklerine açıklama satırları eklendi
- `draw_gradient_bg` → `combobox_stil.rs` taşındı
- Tüm ComboBox kullanımları `theme::show_combo_box` / `theme::selectable_value` ile güncellendi
- Klavye adımı (`keyboard.rs`): `ScrollArea`+`selectable_label` → ComboBox
- `TextEdit::multiline` arka planı per-widget `Frame::group` ile yapıldı
- `locale/` dosyaları güncellendi
- Font boyutları büyütüldü (label 9→12, secondary 7→9)

### Removed
- `ureq`, `serde_json` bağımlılıkları
- `assets/keyboards/KLE_*.json` önbellek dosyaları
- `assets/keyboards/KB_*.svg` dosyaları
- Eski klavye SVG yükleme kodu
- KLE JSON download/cache mantığı
- Demo sayfasındaki eski buton örnekleri

### Fixed
- `set_style`/`set_visuals` sırası: `set_style` önce çağrılıyor
- Bölge/zaman dilimi etiketleri dikey hizalandı
- Klavye adımında `on_enter` ilk render'da çağrılmama sorunu — layout `show()` içinde de initialize edilir
- `xkbcommon::Keycode` iterasyonu (`raw()` ile dönüşüm)
- `None::<&str>` → `None::<String>` tip uyuşmazlığı

---

## [4.0.1] — 2026-06-19

### Added
- `c_root_bg()` tema fonksiyonu
- `show_root_password`, `show_root_password_confirm` alanları (`UsersStep`)
- `form_input_text` / `form_input_password`'a `Frame` sarmalı ve `.frame(false)`

### Changed
- `form_input_text`: Frame içine alındı, stroke/fill/rounding eklendi, yükseklik 32→10
- `form_input_password`: SVG göz ikonları (emoji yerine), Frame sarmalı, `override_text_color`
- Disk grid seçim renkleri `theme::c_*()` → sabit `(237,237,224,1)`
- Disk listesi header ve sütun başlıkları: `Align::Center` → `Align::LEFT`, `vertical_centered` kaldırıldı
- Root şifre alanları raw `TextEdit` → `form_input_password` (göz ikonu + frame ile)
- Kullanıcı formu Frame rengi `theme::c_bg_widget()` → `(240,243,198)`
- Manuel disk listesinde marka/model etiketi sıralaması değiştirildi

### Fixed
- `users.rs:154` — `Color32` import hatası (missing `egui::` prefix)

---

## [4.0.0] — 2026-06-06

### Added
- Kurtarma modu (rescue step)
- Ağ yapılandırma adımı (NetworkManager/Wicd)
- Netinstall adımı
- LVM ve LUKS şifreleme desteği
- Demo modu (`--demo`)
- Otomatik kurulum (`--auto-install answer.toml`)
- `rust-i18n` ile çoklu dil desteği (Türkçe, İngilizce)
- Gradient butonlar (`gradient_button`, `secondary_button`)
- Dil seçici (bayrak + etiket)
- SVG yükleme desteği (`egui_extras` + `image`)
- Slayt gösterisi (branding.toml ile yapılandırılabilir)
- Adım listesi sidebar'da (işlenen adımlar yeşil ✔️)
- Anlık kurulum dosyası takibi
- Gelişmiş bölümleme UI'ı (kullanım çubuğu, LUKS göstergesi, mount-point seçici)

### Changed
- `pspec.xml`/`actions.py` → Cargo tabanlı derleme
- `comar`/`mudur` çağrıları → `zbus` D-Bus ve doğrudan komut çalıştırma
- Shell tabanlı şifre yönetimi → güvenli stdin piping (LUKS/GRUB)
- Kullanıcı adı otomatik türetme (gerçek isim → sistem kullanıcı adı)
- Hostname doğrulama/sanitizasyon
- Temizlik işlemleri: kullanıcı silme, havuz yönetimi, önyükleme dizini temizliği
- Rsync komutu dinamik hariç tutma ile
- Versiyon 4.0.1 → 4.0.0 (Cargo.toml uyumu)

### Fixed
- GRUB şifre yazma güvenliği
- Dracut/Mkinitcpio LVM modülü ekleme
- EFI bölümü algılama ve mount etme
- Şifre gücü göstergesi renkleri
- Otomatik bölümleme (LVM/LUKS sıralaması)

---

## [0.1.0] — 2026-05-20

### Added
- İlk kararlı sürüm
- Proje iskeleti (egui + wgpu)
- Adım tabanlı kurulum sihirbazı
- Otomatik disk bölümleme (GPT/MBR)
- Kullanıcı oluşturma (şifre gücü kontrolü dahil)
- Bootloader yapılandırması (GRUB)
- Görüntü yöneticisi seçimi
- Özet ekranı
- Temel renk teması (açık/koyu)
- Özelleştirilebilir branding (branding.toml)
- Kurtarma amaçlı hata ekranı
- İşlem kuyruğu (JobQueue / async task yönetimi)
- YALI serileştirme (installer state save/load)
