Alhan 5f4d4ffe1a
Build & Release / build-linux (push) Has been cancelled
Build & Release / build-windows (push) Has been cancelled
Build & Release / create-release (push) Has been cancelled
fix: window resize crash by building with Flutter 3.47.7 (v1.6.3)
The GTK embedder's OpenGL compositor uploaded the frame with the window's new
dimensions while its pixel buffer still held the previous size, so memcpy read
past the end of the buffer and the process died with SIGSEGV
(fl_compositor_opengl.cc). Upstream fix: flutter#187626, present in Flutter
3.47.7 but not in 3.44.7.

Linux builds now use /home/alhan/development/flutter-3.47.7; pubspec.lock was
re-resolved for Dart 3.13.5 and the new tool added its build/platform excludes
to analysis_options.yaml. dist/ carries the 1.6.3 package instead of 1.6.2.
2026-10-20 22:22:17 +03:00

imajViewer

License: MIT Build Release

Ultra-lightweight image viewer written in Flutter — Linux & Windows.

imajViewer

Features

  • Formats: PNG, JPEG, JFIF, WebP, BMP, GIF, WBMP
  • Pan: Left drag
  • Zoom: Mouse wheel (cursor-centered; viewport-centered in rotate mode)
  • Fill/Fit toggle: Double left click
  • Contrast: Right drag + vertical move
  • Saturation: Ctrl + Right drag + vertical move
  • Brightness: Ctrl+Shift + Right drag + vertical move
  • Rotate: Shift + Right drag + vertical move (~100px = 90°)
  • Flip horizontally: Ctrl+R — mirrors the view and clears the active effects (same reset as double right click); press Ctrl+R again to undo. Also matches the physical R key position, so keymaps that report the R key as a different character still work
  • Reset (all effects): Double right click
  • Navigation arrows: bottom corners, visible on hover
  • Settings (gear): sort by time/name, print, shortcut info
  • Print: send the image to a printer (A4, fit)
  • Save visible area: title bar save icon or Ctrl+S — the on-screen region is written at original resolution as JPEG (quality 95) next to the source file (photo.jpg → photo_143025.jpg); active effects (contrast/saturation/brightness), rotation and horizontal flip are baked into the output; if that name already exists, nothing is written and a warning is shown
  • Drag & drop to open images
  • Window size/position memory (JSON persistence)
  • Set as default image viewer
  • Cascade placement for new windows
  • Taskbar grouping (Linux: StartupWMClass)

Install

No Flutter SDK needed — grab the latest .deb from the Releases page:

sudo dpkg -i imajviewer_*_amd64.deb
sudo apt-get install -f  # install missing dependencies, if any

After install, open an image with xdg-open <file> or double-click it.

Windows (installer)

Download imajviewer_setup_*.exe from the Releases page and run it. The installer:

  • Installs to Program Files
  • Adds a Start Menu shortcut (optional desktop shortcut)
  • Registers file associations (PNG, JPG, JPEG, WebP, BMP, GIF)
  • Supports uninstall (Settings > Apps)

Build from source

Requirement Notes
Flutter SDK stable channel
Linux: GTK dev libs libgtk-3-dev, ninja-build, clang, cmake
Windows: VS 2022 Build Tools "Desktop development with C++" workload
flutter pub get
flutter build linux    # Linux
flutter build windows --release   # Windows

Linux output: build/linux/x64/release/bundle/ Windows output: build\windows\x64\runner\Release\ (portable: copy the whole folder including imajviewer.exe and all DLLs).

Keyboard & Mouse Shortcuts

Interaction Action
Left drag Pan
Mouse wheel Zoom (cursor-centered)
Double left click Fill / Fit toggle
Right drag + vertical Contrast (0.0 – 2.0)
Ctrl + Right drag + vertical Saturation (0.0 – 2.0)
Ctrl+Shift + Right drag + vertical Brightness (-100 – 100)
Shift + Right drag + vertical Rotate (free)
Ctrl + R Flip horizontally (clears effects; press again to undo)
Double right click Reset (all effects)
Left / Right arrow Previous / next image
Ctrl + S Save visible area (JPEG 95, original resolution)
Ctrl + Q Close window
Ctrl + Shift + Q Close all windows

CI / Releases

GitHub Actions builds Linux .deb and Windows installer on every push to main. Pushing a v* tag creates a GitHub Release with both installers as assets.

Development

flutter pub get
flutter analyze
flutter test

To rebuild the .deb locally:

flutter build linux --release
bash dist/rebuild-deb.sh

License

MIT

S
Description
Ultra hafif Linux görüntü izleyici - Flutter
Readme MIT
588 MiB
0 Stars 1 Watchers 0 Forks
v1.9.2
Latest
2026-10-31 05:24:07 +00:00
Languages
Dart 59.1%
C++ 14.4%
PowerShell 11.2%
CMake 10.3%
Shell 2.8%
Other 2.2%