Commit Graph

96 Commits

Author SHA1 Message Date
Kenneth Shaw c70fa9169a
Changing to Go modules (#294)
Changes to Go modules, removes vendored files, and runs Go format across
all Go source files.
2021-05-12 12:39:23 +01:00
rrrooommmaaa 86627135dd #180/#234: CSI SM/RM multiple modes, Mouse button-tracking (#233)
* #180: added support for several modes specification in CSI SM/RM

* added Button Mouse Mode and SGR encoding
2019-02-26 13:14:51 +00:00
Menno Finlay-Smits 35193b7981 Gofmt (#216)
* Added Make targets for gofmt

- `make check-gofmt` will check for files that aren't gofmt compliant
- `make gofmt` will fix any gofmt error's in Aminal's source

Vendored files are ignored.

* Add gofmt check to TravisCI checks

* Fix gofmt errors
2019-02-14 16:45:53 +00:00
Max Risuhin 7caa46e443 Recalculate monitor based DPI scale if Window moved; Set DPI awareness of UI on Windows. (#206) 2019-02-11 20:27:42 +00:00
Max Risuhin 1ca1b7c246 Introduce TestMain to run gui tests in goroutine locked to main app thread; Call LockOSThread only once. (#199) 2019-02-06 08:58:31 +00:00
Menno Finlay-Smits 150b0493de Add dpi-scale config option (#198)
If dpi-scale is set in aminal.toml then this overrides aminal's own
DPI calculation. This is useful for working around unusual monitor
setups or users just who prefer a different DPI scale.
2019-02-05 13:18:24 +00:00
Menno Finlay-Smits c2b1b95343 Use primary monitor for DPI calc if monitor could be determined (#197)
This avoids a panic on startup in some specific situations (e.g. when
xrandr's --scale option is in use).
2019-02-05 13:17:07 +00:00
rrrooommmaaa 1f05951012 bug fix: character under cursor rendering (#194) 2019-02-05 13:16:38 +00:00
rrrooommmaaa 07952f7505 Underline support (#193)
* added Tab Stops support

* added support for Screen Mode (DECSCNM) -- reverse colors

* bug fix: cursor rendition in Origin Mode

* bug fix: SGR parameters handling

* Save/Restore Cursor updates. Partial charset implementation.

* added Underline support

* fixed underline position

* underline position measured in MinY
2019-02-05 13:16:16 +00:00
nikitar020 22a5e8063a Implement three selection modes: char, word, and line. Make selection work in the same way as in Putty. (#191) 2019-02-04 13:24:49 +00:00
Max Risuhin f7b162e83e Avoid double mutex lock on programmatic resize (#192) 2019-02-04 08:26:34 +00:00
nikitar020 6ccfba976f Make launching URLs on Windows work (#185) 2019-01-30 15:43:15 +00:00
rrrooommmaaa 23797d50f3 Vttest 2 (#187)
* added Tab Stops support

* added support for Screen Mode (DECSCNM) -- reverse colors

* bug fix: cursor rendition in Origin Mode
2019-01-30 15:42:55 +00:00
nikitar020 97fe7362ce
Add "select with mouse to copy" / "right click to paste" functionality (#181) 2019-01-29 14:56:03 +00:00
Liam Galvin 8cdbe2517d
Tidy up opengl logging to prevent false bug reports (#176)
* add missing deps

* tidying
2019-01-27 14:12:52 +00:00
Max Risuhin 2d2f4c95cc Do not trigger window resizing work if no change in dimensions (#164)
* Do not trigger window resizing work if no change in dimensions;
Redundant dpiScale removed from GUI; dpiScale used to calculate desired size in pixels.

* Keep last applied window size

Signed-off-by: Max Risuhin <risuhin.max@gmail.com>
2019-01-24 13:05:12 +00:00
rrrooommmaaa 9c60167ca8 Vttest (#162)
* Correct handling of DeviceAttributes request

* added DECCOLM support

* added DECALN control sequence support

* added NEL support

* bug fix: Erase To Cursor should be inclusive

* added support for 'Origin Mode' (DECOM) -- top/bottom margins only

* vttest test 1 screen 3: margin tests fixes

* added support for intermediate controls inside CSI sequence

* added support for LNM (Line Feed/New Line Mode)

* removed obsolete 'intermediate' parameter

* window resize on programmatic CSI resize

* DECCOLM should clear screen on both set and reset

* bug fix in autowrap mode

* TestCursorMovement runs all test cases; screen template images updated

Signed-off-by: Max Risuhin <risuhin.max@gmail.com>

* bug fix: line mode messing with autowrap

* added ResetVerticalMargins() method

* IsAutoWrap(), IsNewLineMode()

* corrected DECALN

* fixed NEL to work in Line Feed mode

* tyding up: removed map of 1 element
2019-01-24 13:03:47 +00:00
Max Risuhin 16ea4133cb Run and validate vttest on Travis (#159)
* Run vttest on Travis to validate active buffer data and screenshot.

Signed-off-by: Max Risuhin <risuhin.max@gmail.com>

* Add deps sources to vendor

Signed-off-by: Max Risuhin <risuhin.max@gmail.com>
2019-01-21 18:48:46 +00:00
nikitar020 43072eb024 Changes to minimize memory allocations and to ensure OpenGL objects cleanup (#148) 2019-01-14 20:50:03 +00:00
Liam Galvin 4242442980
Reduce default font size (#141) 2019-01-10 20:55:37 +00:00
nikitar020 89eea0921d Bug: mouse cursors leaks (#136) 2019-01-10 18:58:30 +00:00
Max Risuhin ab80fcd44e
Fix the bug when the application became unresponsible when minimizing (#133) 2019-01-09 01:11:06 +02:00
Max Risuhin a8ed9d472e Windows support and enhancements. (#123)
*  Windows support and enhancements.

 - Added basic platform abstraction layer for Pty and Process creation;
 - Added "platform" package that exposes a few interfaces and provides implementations for different platforms;
 - Windows build and dev env setup instructions;
 - Setup Travis and deploy git tags to GItHub releases;
 - Window scaling awares of monitor's dpi;
 - Resolved memory leaks on window resizing;
 - Default limit for terminal's buffer length.

Co-authored-by: nikitar020 <nikitar020@mail.ru>
Co-authored-by: Max Risuhin <risuhin.max@gmail.com>
Co-authored-by: Roman Shevchenko <rrrooommmaaa@mail.ru>

* ReadMe updated with Windows support; Detecting of currently used monitor.
2019-01-07 12:00:08 +00:00
Vladimir Kravets 731fcf5b08 Add another workaround for darwin SDL blank window bug
As for me it's much better then moving window at one pixel

(Based on the https://github.com/Noofbiz/glfwMojaveFix)
2018-12-05 13:27:13 +02:00
Liam Galvin fd384fa2e6 Add workaround for darwin SDL blank window bug 2018-12-04 12:02:16 +00:00
Liam Galvin fd71169b63 fix resize 2018-12-03 09:02:06 +00:00
Vladimir Kravets b4c4cb7b08 redraw correctly during resize 2018-12-02 20:01:47 +02:00
Liam Galvin 177e928b71 more efficient text rendering and streamlining of output handling 2018-12-01 22:09:20 +00:00
Liam Galvin 3f60dd937b tidied ugliness 2018-11-29 13:25:51 +00:00
Liam Galvin adbbf0f5cf gofmt everythign 2018-11-29 13:04:47 +00:00
Liam Galvin 3d7df26eb5 support old opengl 2018-11-29 08:53:06 +00:00
Liam Galvin 6e34e5ee85 set minimum window size 2018-11-28 20:19:20 +00:00
Liam Galvin 00517d72c8 support for retina displays 2018-11-27 13:06:17 +00:00
Liam Galvin a5f5979608 support for retina displays 2018-11-27 13:04:12 +00:00
Liam Galvin ea56961861 version alerts 2018-11-25 19:50:53 +00:00
Liam Galvin f47e47babd added version check 2018-11-25 19:08:48 +00:00
Liam Galvin 707df1a3a1 added configurable keyboard shortcuts 2018-11-25 14:25:19 +00:00
Liam Galvin 61edd75524 colour hinting 2018-11-25 11:06:05 +00:00
Liam Galvin 3e6b7e4f14 Fixed render issues with cached rectangles and fixed powerline font rendering 2018-11-23 17:01:50 +00:00
Liam Galvin 3193c2c43a added multi font support including emoji, powerline rune ranges etc. 2018-11-15 12:17:40 +00:00
Liam Galvin c7ef0874aa debug mode 2018-11-04 20:31:32 +00:00
Liam Galvin 1c96cb83d5 add hinting 2018-10-29 20:35:49 +00:00
Liam Galvin bdd173f5bf remove render code from buffer package, add to renderer, improve texture drawing efficiency 2018-10-29 09:53:30 +00:00
Liam Galvin 20c3c0cb14 sixel working 2018-10-27 22:06:26 +01:00
Liam Galvin 2f22c41828 fix osx framebuffer issues 2018-10-25 10:15:54 +01:00
Liam Galvin 6df9ad1cf3 text selection and copy/paste 2018-10-24 12:15:43 +01:00
Liam Galvin 6c3f347671 improve font rendering 2018-10-24 09:34:46 +01:00
Liam Galvin fefb675194 fix enter on mac 2018-10-23 19:55:19 +01:00
Liam Galvin 1e1d4c9bc3 Downgrade to stable GLFW (3.2) 2018-10-23 15:58:13 +01:00
Liam Galvin cf2aef96e4 rename 2018-10-21 15:11:10 +01:00