Repository navigation
Releases: dormail/gds-viewer-android
Release list
GDS Viewer 0.8
Added
- The project is now under the MIT license, and the README credits KLayout, whose design the large-file support follows, and the icons and libraries it uses.
- A privacy policy, published with GitHub Pages from the
docs/folder.
Changed
- New app ID and signing key, so this version installs as a separate app. Uninstall the old GDS Viewer (0.7 or earlier) once; your recent files list starts empty. The new ID is
io.github.dormail.gdsviewer, as needed for Google Play, and the APKs are now signed with a proper release key instead of a development key. - The app's data (recent files and their copies, settings) is no longer included in Android backups or in transfers to a new phone, so confidential layouts do not end up in a cloud backup.
Fixed
- Damaged or deliberately crafted files can no longer freeze the app or use up its memory. Cells that contain themselves, huge or nested arrays, zip bombs, very many cells or layers, huge polygons and ruler snapping on crafted arrays all have limits now; normal layouts are not affected. Found with a security review that opened thousands of crafted and corrupted files.
- An unexpected error while drawing now shows a message instead of closing the app.
Security
- File names are no longer written to the system log.
Download
gds-viewer-0.8.apk: download it on your phone and open it to install. Android asks once to allow "Install unknown apps".
SHA-256 of the APK: bcbbe699be7576a7b9ae11b680b1fcd08f4d6d905dfce7b7d7b293a30856d8f7
Signing certificate SHA-256: B2:81:8B:81:CF:BA:3C:43:ED:D7:81:8C:83:18:62:10:29:21:7C:39:B4:1D:69:DE:20:05:49:19:FC:8F:CA:0E
GDS Viewer 0.7
Older version. It uses the old app ID
com.example.gdsviewerand a development signing key. Version 0.8 and later install as a separate app, so uninstall this one when you switch.
Added
- Large files: layouts of 100-200 MB now open and show completely. A 150 MB standard-cell layout (100 million shapes when expanded) opens in about 2 seconds. The app works like KLayout: the cell hierarchy is kept instead of expanded, only what is on screen is drawn, and shapes smaller than a few pixels are drawn as dots.
- While a file is read, the progress is shown in MB.
- A thin progress bar appears at the top when preparing a new view takes a moment.
Changed
- The APK is now an optimized release build (gds-viewer-0.7.apk instead of …-debug.apk). It installs over earlier versions as usual and is much faster with big layouts.
- The app now needs OpenGL ES 3.0, which every phone from the last ten years supports.
Removed
- The "Layout too large — only part of it is shown" warning, since layouts are no longer cut off.
Download
gds-viewer-0.7.apk: download it on your phone and open it to install. Android asks once to allow "Install unknown apps".
SHA-256 of the APK: 25a1e5aad9bf0f4c2f7e543bbd04c8fbb8ab1c9f1de5d1161a4137d2eb8a704f
GDS Viewer 0.6
Older version. It uses the old app ID
com.example.gdsviewerand a development signing key. Version 0.8 and later install as a separate app, so uninstall this one when you switch.
Changed
- One-finger zoom (double-tap and hold, then slide) now keeps the spot you touched under your finger. It moves with your finger while the layout zooms around it, instead of zooming around the point of the first tap.
Download
gds-viewer-0.6-debug.apk: download it on your phone and open it to install. Android asks once to allow "Install unknown apps".
SHA-256 of the APK: b22685df74b68c95962b04dfb17f03942a62c4a0bb36968515f6ec9759cd41d3
GDS Viewer 0.5
Older version. It uses the old app ID
com.example.gdsviewerand a development signing key. Version 0.8 and later install as a separate app, so uninstall this one when you switch.
Added
- Theme option under ⋮ → Theme: System default (the default), Light or Dark. The layout canvas follows the theme; in light mode it has a white background and darker layer colors that stay readable on white.
Fixed
- The "remove" (×) button in the recent files list was hard to see on the dark background.
Download
gds-viewer-0.5-debug.apk: download it on your phone and open it to install. Android asks once to allow "Install unknown apps".
SHA-256 of the APK: 7cf8d7965d149da91e1238b6c781c48c50a1f214d23c4737b7b61bbb3ecd84c8
GDS Viewer 0.4
Older version. It uses the old app ID
com.example.gdsviewerand a development signing key. Version 0.8 and later install as a separate app, so uninstall this one when you switch.
Added
- Recent files: your last 8 files are listed on the start screen and under ⋮ → Recent files. Tap one to reopen it, or × to remove it.
- Long-press the app icon on the home screen to open one of your 4 most recent files directly.
- Files opened via "Open with" or "Share" (where Android only grants temporary access) are kept as a private copy (up to 100 MB each, 300 MB in total) so they can be reopened later.
Download
gds-viewer-0.4-debug.apk: download it on your phone and open it to install. Android asks once to allow "Install unknown apps".
SHA-256 of the APK: e060524d08cb6dc8dc87175161c55b73b7c0b0e29c5b1241bccb0727ee95bf4e
GDS Viewer 0.3
Older version. It uses the old app ID
com.example.gdsviewerand a development signing key. Version 0.8 and later install as a separate app, so uninstall this one when you switch.
Added
- Double-tap to zoom in, and two-finger tap to zoom out. The zoom is animated.
- Double-tap and hold, then slide down or up to zoom in or out, like in Google Maps.
- Rotation snaps to 0°, 90°, 180° or 270°. You need to twist past about 20° to rotate away from a snap point. The view snaps back when you are close to it and settles there when you let go nearby, so pinching no longer rotates the view by accident.
Changed
- Panning with one finger starts only after a small movement, so taps no longer nudge the view.
- In ruler mode, a single tap no longer clears the ruler. Start a new drag to replace it, or turn ruler mode off.
Download
gds-viewer-0.3-debug.apk: download it on your phone and open it to install. Android asks once to allow "Install unknown apps".
SHA-256 of the APK: 1d1055269e9a93717666205dbecad644d64a46ce69f0a82cbdd9d7033a35dea4
GDS Viewer 0.2
Older version. It uses the old app ID
com.example.gdsviewerand a development signing key. Version 0.8 and later install as a separate app, so uninstall this one when you switch.
Added
- Open .gds and .gds.gz files directly from file managers ("Open with → GDS Viewer"), from e-mail attachments and from "Share".
Fixed
- A code-quality (lint) issue in how numbers are formatted in the layer list.
Download
gds-viewer-0.2-debug.apk: download it on your phone and open it to install. Android asks once to allow "Install unknown apps".
SHA-256 of the APK: 2e749167a669f4d756b19183a4da4a2a698072d5e6a80406e9ac48996246fa87
GDS Viewer 0.1
Older version. It uses the old app ID
com.example.gdsviewerand a development signing key. Version 0.8 and later install as a separate app, so uninstall this one when you switch.
First version.
Added
- Open GDSII files (.gds and .gds.gz) with the system file picker.
- A built-in sample layout to try the app without a file of your own.
- Fast OpenGL rendering with semi-transparent layer fills and outlines.
- Layer list: tap to show or hide a layer, long-press to show only that layer, and All / None buttons.
- Pinch to zoom, pan, two-finger rotate, fit to screen, a compass to reset the rotation, and a rotation lock.
- Ruler that snaps to shape corners and edges and shows the length, dx and dy.
- Scale bar.
- Cell picker with top cells listed first and a search box.
- Support for cell hierarchies (SREF and AREF, with rotation, mirroring and magnification), all path types, and boxes.
Fixed
- A crash when opening the layer list.
Download
gds-viewer-0.1-debug.apk: download it on your phone and open it to install. Android asks once to allow "Install unknown apps".
SHA-256 of the APK: 403b836ba922c447f3c7e6968df33fd9eb97e79f6fd8ee32bf38876662604635