Commit Graph
75 Commits
Author SHA1 Message Date
Alhan bad48167c8 feat: horizontal flip with R key, baked into crop save (v1.6.0)
- R mirrors the view about the viewport centre and clears the active effects
  (same reset as double right click); pressing R again restores the original
  orientation. Pan/zoom are kept.
- Image switch, fill/fit toggle and right double click also clear the flip.
- Crop save (Ctrl+S) mirrors the output too, so the saved JPEG matches the
  on-screen view (verified in combination with rotation).
- Shortcut lists (tr/en), README and CHANGELOG updated; deb rebuilt as 1.6.0.
2026-10-14 02:28:24 +03:00
Alhan 24cab6f908 docs: document crop save feature in README (save button / Ctrl+S)
Build & Release / build-linux (push) Has been cancelled
Build & Release / build-windows (push) Has been cancelled
Build & Release / create-release (push) Has been cancelled
2026-10-12 23:45:45 +03:00
Alhan 2cd9e6c357 feat: persist fill/fit view mode in window.json (v1.5.0)
Build & Release / build-linux (push) Has been cancelled
Build & Release / build-windows (push) Has been cancelled
Build & Release / create-release (push) Has been cancelled
The double-click fill/fit mode was hardcoded (image_canvas: _isFilled = true) and
reset on every image change, so it never survived a restart. It is now stored as
"filled" in window.json and restored on launch and on image switch.

WindowPersistence.saveSync() now merges with the existing file, otherwise the
startup/move/resize geometry writes would drop the mode key.

Also: version 1.5.0, CHANGELOG entry, dist/ ships imajviewer_1.5.0_amd64.deb
(replaces 1.4.2).
2026-10-12 22:33:43 +03:00
Alhan b3bd540549 fix: crop save dropped blue channel brightness/contrast offset (v1.4.2)
Build & Release / build-linux (push) Has been cancelled
Build & Release / build-windows (push) Has been cancelled
Build & Release / create-release (push) Has been cancelled
m[13] (blue alpha coefficient, always 0) was read as the blue offset instead of
m[14], so saved JPEGs lost the blue brightness/contrast offset and came out with a
color cast. Saturation/rotate were unaffected (no offsets).

Also: version 1.4.2, CHANGELOG entry, dist/ ships imajviewer_1.4.2_amd64.deb
(replaces 1.4.1).
2026-10-12 22:22:04 +03:00
Alhan afe99198ff build: ship 1.4.1 .deb (replace 1.3.1 as latest in dist/)
Build & Release / build-linux (push) Has been cancelled
Build & Release / build-windows (push) Has been cancelled
Build & Release / create-release (push) Has been cancelled
2026-10-11 22:23:55 +03:00
Alhan c34a3bfd95 fix: crop save always JPEG q93 + save rotated view 1:1 (v1.4.1)
Build & Release / build-linux (push) Has been cancelled
Build & Release / build-windows (push) Has been cancelled
Build & Release / create-release (push) Has been cancelled
- Output extension is always .jpg regardless of source format (was: PNG in -> PNG out)
- Rotation now saved correctly: viewport grid resampled bilinearly in source
  space (was: unrotated bounding box copy)
- Quality 90 -> 93; l10n strings updated (JPEG 93)
- New: tool/crop_test.dart — pure-Dart end-to-end test (dart run tool/crop_test.dart)
2026-10-11 22:16:25 +03:00
Alhan 268dc879c8 chore: remove internal docs and old release binaries from tracking
Build & Release / build-linux (push) Has been cancelled
Build & Release / build-windows (push) Has been cancelled
Build & Release / create-release (push) Has been cancelled
- docs/ untracked: internal dev docs (reports, sessions, plans) stay local
- dist/: keep only latest .deb (1.3.1) and .exe (1.1.0); remove 4 old builds
- .gitignore: ignore /docs/ and all dist binaries except the two latest
2026-10-11 21:47:33 +03:00
Alhan 168e087c8b feat: crop save (save visible area at original resolution) v1.4.0
Build & Release / build-linux (push) Has been cancelled
Build & Release / build-windows (push) Has been cancelled
Build & Release / create-release (push) Has been cancelled
- Save visible area at original resolution as JPEG q90 (title bar button or Ctrl+S)
- Output name: original name + _HHmmss suffix; no overwrite, warning shown
- Active color effects baked in; rotation saves bounding box
- New: crop_save_service, l10n strings TR/EN, docs/plan-crop-save.md
2026-10-11 21:36:20 +03:00
Alhan 73c1ff51d6 fix: window position/size persistence under Wayland (v1.3.2)
Build & Release / build-linux (push) Has been cancelled
Build & Release / build-windows (push) Has been cancelled
Build & Release / create-release (push) Has been cancelled
2026-10-11 17:51:47 +03:00
Alhan 1002156cd4 fix: aspect ratio distortion on image switch (v1.3.1)
Build & Release / build-linux (push) Has been cancelled
Build & Release / build-windows (push) Has been cancelled
Build & Release / create-release (push) Has been cancelled
Downsample used ResizeImagePolicy.exact which forced a 2048×2048
square and stretched non-square images. Switch to ResizeImagePolicy.fit
to preserve aspect ratio while still capping both dimensions.
2026-08-14 22:17:48 +03:00
Alhan 72c35a8a26 fix: image_canvas correctness + RAM fixes (v1.3.0)
Build & Release / build-linux (push) Has been cancelled
Build & Release / build-windows (push) Has been cancelled
Build & Release / create-release (push) Has been cancelled
- _imageSize reset on image switch (wrong swap threshold on nav)
- downsample caps both dims (tall images no longer full-res decode)
- single _readImageSize instead of leaking loadingBuilder listeners
- evict old downsample provider on full-res swap
- remove imageCache.clear() that dropped live image (gallery flash)
2026-08-14 21:54:34 +03:00
Alhan addece7ade build: Linux .deb installer v1.2.0 (imajviewer_1.2.0_amd64.deb)
Build & Release / build-linux (push) Has been cancelled
Build & Release / build-windows (push) Has been cancelled
Build & Release / create-release (push) Has been cancelled
2026-08-14 21:26:55 +03:00
Alhan 45cf56a1e6 feat: downsampling + full-res swap + RAM leak fix
Build & Release / build-linux (push) Has been cancelled
Build & Release / build-windows (push) Has been cancelled
Build & Release / create-release (push) Has been cancelled
- Büyük resimler ilk yüklemede max 2048px'e downsampling (RAM ~1.6MB)
- Zoom 1.5x stretch'i geçince full-res'e swap (orijinal çözünürlük)
- Resim geçişinde eski provider evict + ImageCache.evict() (RAM leak)
- Tiled render kodu tamamen kaldırıldı
2026-08-14 21:22:26 +03:00
Alhan 64dc1ec53d build: track Windows installer in dist/
Build & Release / build-linux (push) Has been cancelled
Build & Release / build-windows (push) Has been cancelled
Build & Release / create-release (push) Has been cancelled
2026-08-11 00:19:25 +03:00
Alhan 5ba5315d81 Revert "build: add Windows portable build (dist/windows) — exe, DLLs, flutter assets"
Build & Release / build-linux (push) Has been cancelled
Build & Release / build-windows (push) Has been cancelled
Build & Release / create-release (push) Has been cancelled
This reverts commit bea2f4d4be.
2026-08-11 00:16:20 +03:00
Alhan bea2f4d4be build: add Windows portable build (dist/windows) — exe, DLLs, flutter assets
Build & Release / build-linux (push) Has been cancelled
Build & Release / build-windows (push) Has been cancelled
Build & Release / create-release (push) Has been cancelled
2026-08-11 00:10:28 +03:00
Alhan 88500ab800 feat: Windows development tooling — build, install, uninstall scripts + setup guide
Build & Release / build-linux (push) Has been cancelled
Build & Release / build-windows (push) Has been cancelled
Build & Release / create-release (push) Has been cancelled
- build-windows.ps1: one-command Flutter build + Inno Setup installer pipeline
- install.ps1: manual Windows installer (registry, shortcuts, file associations)
- uninstall.ps1: clean removal script
- docs/windows-setup.md: Windows dev environment setup guide
- docs/index.md: updated with new files
2026-08-10 23:32:08 +03:00
Alhan 714c4c998e chore: gitattributes, CI cache, changelog unreleased, ikon 256px (934KB->68KB)
Build & Release / build-linux (push) Has been cancelled
Build & Release / build-windows (push) Has been cancelled
Build & Release / create-release (push) Has been cancelled
2026-08-07 00:19:36 +03:00
Alhan 504d84f6f6 feat: i18n (en/tr), zoom orijinal cozunurluk + max 20x + gaplessPlayback, app id com.softmediadesign.imajviewer, CI analyze+test
Build & Release / build-linux (push) Has been cancelled
Build & Release / build-windows (push) Has been cancelled
Build & Release / create-release (push) Has been cancelled
2026-08-07 00:16:48 +03:00
Alhan b9e433d032 ci: use overwrite_files (softprops v2 input name)
Build & Release / build-linux (push) Has been cancelled
Build & Release / build-windows (push) Has been cancelled
Build & Release / create-release (push) Has been cancelled
2026-08-06 06:28:01 +03:00
Alhan 2592d5d3d3 fix: rebuild-deb.sh — create target dir (deb/usr/lib/imajviewer no longer tracked)
Build & Release / build-linux (push) Has been cancelled
Build & Release / build-windows (push) Has been cancelled
Build & Release / create-release (push) Has been cancelled
2026-08-06 06:20:57 +03:00
Alhan 166812c3f7 ci: install Linux build deps (libgtk-3-dev etc.)
Build & Release / build-linux (push) Has been cancelled
Build & Release / build-windows (push) Has been cancelled
Build & Release / create-release (push) Has been cancelled
2026-08-06 06:15:18 +03:00
Alhan 5f23a0b704 ci: gitea actions windows workflow kaldirildi — Windows build artik GitHub Actions'ta (gitea runner Linux, windows-latest yok)
Build & Release / build-linux (push) Has been cancelled
Build & Release / build-windows (push) Has been cancelled
Build & Release / create-release (push) Has been cancelled
2026-08-06 06:13:50 +03:00
Alhan b33e8e9f3e ci: overwrite release assets (idempotent tag releases) 2026-08-06 06:10:51 +03:00
Alhan 8972ef7225 build: github acik kaynak hazirligi — LICENSE/CI/topluluk dosyalari eklendi, binary'ler takipten cikarildi, README EN, kok dokumanlar docs/'a tasindi 2026-08-06 05:49:43 +03:00
git_alhan cd3f573f57 build: windows setup.exe 1.1.0 guncellendi (ctrl+Q fix, gezinme oklari, ayarlar, print, shader warmup) 2026-08-06 05:03:00 +03:00
Alhan ef7692469d build: 1.1.0 release — ctrl+Q pencere kapatma fixi (onKeyEvent), kisa yol bilgileri guncellendi (ctrl+shift+Q), readme guncellendi, pan-kilitleme nuks raporu; .deb guncellendi 2026-08-06 04:41:32 +03:00
Alhan f3a5aeb604 feat: gezinme oklari (hover), ayarlar penceresi (zaman/isme gore siralama), yazdirma (printing paketi), title hover saydamligi; .deb guncellendi 2026-08-06 03:43:48 +03:00
Alhan 185653f34e perf: sag tik efektlerinde ilk kullanim donmasi fix — shader warmup (gizli katman ile acilista derleme), .deb guncellendi 2026-08-06 02:32:19 +03:00
git_alhan 8a617558d0 build: windows setup.exe 1.0.1 guncellendi (zoom/pan fix + image provider memoize) 2026-08-03 12:16:45 +03:00
Alhan 2e82a47ae3 build: semver baslangici — versiyon tek kaynak pubspec.yaml (1.0.1), rebuild-deb.sh + installer.iss pubspec'tan turetir, eski 1.0.0 uretimleri kaldirildi 2026-08-03 12:06:57 +03:00
Alhan 35bbb0b885 perf: sag tik efekt suruklemesinde kitlenme fix — image provider memoize (her frame'de yeniden decode onlendi) 2026-08-03 11:38:27 +03:00
Alhan c8ec0644d8 fix: .deb kurulumu — hicolor-icon-theme ile index.theme cakismasi giderildi, gercek dpkg -i testi gecti 2026-08-03 11:28:04 +03:00
Alhan f479a1c528 fix: .deb kurulum hatasi — libgtk-3-0t64 | libgtk-3-0 alternatif bagimlilik, 644 izinler, update-mime-database, plugin RUNPATH $ORIGIN 2026-08-03 11:23:46 +03:00
Alhan 6da1858b45 build: .deb guncellendi (cift tik zoom/pan fix dahil) 2026-08-03 11:10:35 +03:00
git_alhan 65c78c4c38 fix: cift tiklamada zoom/pan olumu (_vpSize sifirlamasi kaldirildi), windows setup.exe guncellendi
_toggleFillFit/_resetView icinde _vpSize = Size.zero, LayoutBuilder
yeniden calismadiginda zoom'u olduruyor ve pan'i sinirsiz yapiyordu.
_vpSize artik yalnizca constraints.biggest'ten beslenir.
2026-08-03 11:06:12 +03:00
Alhan 5c98482070 fix: linux taskbar ikonu (gtk default icon + hicolor tema indeksi + StartupWMClass), windows .ico yenilendi, .deb guncellendi 2026-08-03 10:33:12 +03:00
Alhan b6c2d9599f perf: efekt suruklemesinde kitlenme fix (kare hizi throttle, repaint izolasyonu, downsampling, cache sinirlari), .deb guncellendi 2026-08-03 08:55:19 +03:00
Alhan d4c243b445 feat: klasor tabanli galeri, brightness efekti (Ctrl+Shift+sag tik), .deb guncellendi 2026-08-03 08:26:31 +03:00
Alhan 56ab4b5495 fix: coklu monitorde cascade dogru ekrani kullanir, .deb guncellendi
- window_persistence: onceki pencerenin bulundugu monitorun calisma alani kullanilir (getAllDisplays), primary degil
- viewer_screen: catchError donus tipi duzeltildi (analyze warning)
- dist/imajviewer_1.0.0_amd64.deb yeniden derlendi
2026-08-03 06:54:22 +03:00
Alhan a65bdc152c feat: jfif/jpe/wbmp format destegi, pencere cascade yerlesimi, konum kaydi duzeltmesi
- file_handler/image_manager: jfif, jpe, wbmp uzantilari
- .desktop + install.sh MimeType: image/vnd.wap.wbmp eklendi
- main.dart: yeni pencere oncekinin saginda acilir (screen_retriever ile ekran tespiti)
- viewer_screen: 2sn polling kaldirildi, konum kaydi tek akisa oturtuldu (acilis + move/resize debounce + close senkron)
- dist/rebuild-deb.sh: .desktop kaynaktan kopyalanir (MimeType/StartupWMClass guncel kalir)
- .deb guncellendi, docs: session-2026-08-03 + plan dokumanlari
2026-08-03 06:44:57 +03:00
Alhan d09351feef docs: README guncelle — shortcuts, CI, rotate/contrast/saturation
Build Windows Installer / build-windows (push) Has been cancelled
Build Windows Installer / create-release (push) Has been cancelled
2026-07-27 21:13:20 +03:00
git_alhan 139ce5a8ae chore: Windows setup.exe yeniden derlendi, Gitea CI Inno Setup adimi eklendi
Build Windows Installer / build-windows (push) Has been cancelled
Build Windows Installer / create-release (push) Has been cancelled
2026-07-27 21:05:26 +03:00
Alhan 171476d30b feat: rotate (Shift+sag tik), StartupWMClass taskbar gruplama, dist guncelle
Build Windows / build-windows (push) Has been cancelled
2026-07-27 20:41:14 +03:00
Alhan 35d3bc3749 feat: right-click contrast, Ctrl+saturation, Shift+rotate filters
Build Windows / build-windows (push) Has been cancelled
- Add ColorFilter.matrix (row-major) for saturation and contrast
- Saturation: 0=grayscale, 1=normal, 2=oversaturated (luminance-weighted)
- Contrast: standard contrast matrix (pivot at 0.5)
- Keyboard modifier tracking via HardwareKeyboard.addHandler
- Right-click + vertical drag: contrast (0-2)
- Ctrl + right-click + vertical drag: saturation (0-2)
- Shift + right-click + vertical drag: rotate
- Right double-click: reset all values
- Update install.sh to check debug/ bundle before release/
- Update .deb package with new release build
2026-07-27 19:39:54 +03:00
Alhan 440513e7be feat: use imajviewericon.png as app icon for both Linux and Windows
Build Windows / build-windows (push) Has been cancelled
- Replace generated icon in install.sh with proper imajviewericon.png (64x64 resize)
- Update deb/ icon to match source icon (64x64 PNG)
- Update windows/runner/resources/app_icon.ico from imajviewericon.png (6 sizes: 16-256)
- Add SetupIconFile to Inno Setup installer config
2026-07-27 17:15:07 +03:00
Alhan a4567af902 chore: reorganize dist/, remove release/, update install paths
Build Windows / build-windows (push) Has been cancelled
- Move all distribution binaries to dist/ (Linux .deb + Windows .exe)
- Remove release/ directory (redundant, merged into dist/)
- Remove root-level .deb and .tar.gz leftovers
- Update install.sh to reference dist/ instead of release/
- Update README.md with correct dist/ paths and .deb-first Linux install
- Update .gitignore: ignore root binaries, keep dist/*.deb and dist/*.exe
2026-07-27 17:11:34 +03:00
git_alhan 7173254857 feat: Windows setup.exe eklendi (dist/)
Build Windows / build-windows (push) Has been cancelled
Inno Setup ile oluşturulmuş installer. İndirip çift tıklayarak kurabilirsiniz.
2026-07-27 16:57:09 +03:00
git_alhan 12e14a76f0 chore: Windows build, Inno Setup installer, MSIX support, README güncellemesi
Build Windows / build-windows (push) Has been cancelled
- flutter build windows --release başarılı
- Inno Setup installer (dist/imajviewer_setup_1.0.0.exe)
- MSIX paketi mevcut (imzasız, Developer Mode gerekli)
- pubspec.yaml: msix_config eklendi
- .gitignore: dist/, *.pfx, *.cer, *.msix
- README.md: Windows kurulum seçenekleri güncellendi
2026-07-27 16:53:03 +03:00
Alhan 99b1c8bbe8 chore: rename .deb to imajviewer_1.0.0_amd64.deb, rebuild with root-owner-group
Build Windows / build-windows (push) Has been cancelled
2026-07-24 06:34:19 +03:00