feat: replace KLE JSON keyboard rendering with xkbcommon

xkbcommon ile XKB keymap derlenip tuş pozisyonları/sembolleri çıkarılıyor,
egui Painter ile temaya uygun çiziliyor. KLE JSON indirme/kullanma kalktı,
ureq ve serde_json bağımlılıkları kaldırıldı.

- compile_layout() — xkb::Keymap::new_from_names() ile keymap derleme
- key_position() — ISO‑105 tuşları için ondalıklı x,y pozisyonları
- keysym_to_label() — xkbcommon keysym → kısa etiket (⌫, ⇥, AltGr, …)
- draw_layout() — egui Painter ile ölçeklenebilir klavye çizimi
- Her tuşta tek karakter gösterimi (büyük harf tercihli)
- keyboard_layout boşken ilk show()'da varsayılana set edilir
- Eski KLE JSON önbellek dosyaları silindi
This commit is contained in:
Erkan IŞIK
2026-06-18 13:07:18 +03:00
parent a3d4b9534f
commit ae915c2540
7 changed files with 436 additions and 181 deletions
+1
View File
@@ -16,6 +16,7 @@ rust-i18n = "3.1"
lazy_static = "1.4"
async-trait = "0.1"
chrono = "0.4"
xkbcommon = "0.9"
[patch.crates-io]
# Yerel mudur veya comar-api kütüphaneleri buraya eklenebilir