All Versions
27
Latest Version
Avg Release Cycle
173 days
Latest Release
1206 days ago

Changelog History
Page 3

  • v2.1.2 Changes

    โž• Added

    • RadioCheckBoxList.getCheckedItem()

    ๐Ÿ”„ Changed

    • โœจ Enhanced restoration of the terminal control codes (especially on Solaris)
    • ๐Ÿ›  Fixed a bug that occurred when SwingTerminal is reduced to 0 rows
    • ๐Ÿ›  Fixed a bug that prevented the cursor from becoming visible again after leaving private mode
    • ActionListDialog now increases in size as you add items
    • TextBox can now tell you the current edit cursor position
  • v2.1.1 Changes

    โž• Added

    • ๐Ÿ—„ Re-added GUIScreen.closeWindow() (as deprecated)
    • ๐Ÿ—„ Re-added Panel.setBetweenComponentsPadding(...) (as deprecated)

    ๐Ÿ”„ Changed

    • Owner window can now be correctly derived from a component
    • Classes extending AbstractListBox now follow the preferred size override correctly

    โž• Added

    • โž• Added a new component, ActivityIndicator
    • โž• Added support for showing and hiding the text cursor
    • Included ANSI colour palettes for the SwingTerminal to mimic the appearance of several popular terminal emulators
    • Introduced the BorderLayout layout managed
    • ๐Ÿ‘Œ Support 8-bit and 24-bit colours (not supported by all terminal emulators)
    • ๐Ÿ‘Œ Support detection of CTRL and ALT key status
    • GUIScreen backgrounds can now be customized

    ๐Ÿ”„ Changed

    • ๐Ÿ Close windows using Window.close() instead of GUIScreen.closeWindow(...)
    • Generalized component alignment
    • ๐Ÿ GUI windows can now be display in full-screen mode, taking up the entire terminal
    • ๐Ÿ›  Lots of bug fixes
    • Reworked GUI layout system
    • Reworked the theme system
    • Window size is overridable
    • SwingTerminal now uses a new class, TerminalAppearance, to retrieve the visual settings, such as fonts and colours

    โœ‚ Removed

    • โœ‚ Removed dependencies on proprietary Sun API
  • v2.1.0 Changes

    2.1.X is not strictly API compatible with 2.0.X but compared to going from 1.0.X to 2.0.X there will be fewer API breaking changes

  • v2.0.4 Changes

    โž• Added

    • The PageUp, PageDown, Home, and End keys now work in the TextArea component

    ๐Ÿ”„ Changed

    • โž• Adding rows to a Table will trigger the screen to redraw
    • ๐Ÿ‘Œ Improved API for RadioCheckBoxList
  • v2.0.3 Changes

    โž• Added

    • โž• Added experimental support for F1-F12 keys
    • TextArea can now be modified (experimental feature)

    ๐Ÿ”„ Changed

    • ๐Ÿง Font fixes. Hopefully it will look better on Linux now
    • Invisible components no longer receive focus
    • ๐Ÿš€ The size policies are working better now but they are still somewhat mysterious. I will try to come up with something better for the 2.1.0 release

    What about 2.0.2?

    ๐Ÿš€ There is no 2.0.2. I did a mistake staging the new release and had to start over again but 2.0.2 had already been tagged in Mercurial so I could not re-release it. Instead we skipped a number and landed on 2.0.3

  • v2.0.1 Changes

    โž• Added

    • โž• Added Screen.clear() that allows resetting the content of the screen
    • โž• Added Terminal.getTerminalSize() to synchronously retrieve the current size of the terminal
    • โž• Added new overloads so that you can specify a separate font to use for bold text in SwingTerminal
    • SwingTerminal will now render underlined text
    • SwingTerminal will expose its internal JFrame through a new method getJFrame(), allowing you to set a custom title, icon, image list etc.

    ๐Ÿ”„ Changed

    • ๐Ÿ—„ queryTerminalSize() has been marked as deprecated but will still work as before
    • ๐Ÿ›  TextBox and PasswordBox constructors that did not take a width parameter were broken, fixed and changed so that the initial size (unless forced) will be at least 10 columns wide
  • v2.0.0 Changes

    โž• Added

    • โž• Added a new facade class, TerminalFacade, which provides some convenience methods for creating terminal objects
    • โž• Added experimental, but not very functional, support for Cygwin
    • Expanded Interactable.Result and Interactable.FocusChangeDirection to allow focus switching in four directions instead of only two
    • Introduced AbstractListBox which has standardized the format and the methods of the list-based GUI elements
    • Mavenized the project, will try to push it to Maven Central somehow

    ๐Ÿ”„ Changed

    • ๐Ÿšš Moved com.googlecode.lanterna.TerminalFactory to com.googlecode.lanterna.terminal where it belongs
    • ๐Ÿšš Moved Terminal.addInputProfile(...) to InputProvider
    • ๐Ÿ’… Moved Terminal.Style to an outer class in com.googlecode.lanterna.screen
    • ๐Ÿšš Moved SwingTerminal to com.googlecode.lanterna.terminal.swing
    • ๐Ÿšš Moved Terminal.setCBreak(...) and Terminal.setEcho(...) into ANSITerminal. You probably don't need to call these directly anyway, since they are automatically called for the UnixTerminal when entering private mode
    • Rearranged the Terminal hierarchy. This is mostly internal but you might have been using CommonUnixTerminal before which is now known as com.googlecode.lanterna.terminal.text.UnixTerminal
    • ๐Ÿ“ฆ Renamed the project's package name from org.lantern to com.googlecode.lanterna
    • ๐Ÿ“‡ Renamed LanternException to LanternaException for consistency
    • LanternaException is now a RuntimeException since IOExceptions coming from stdin and stdout are quite rare
    • ๐Ÿ“‡ Renamed some enums and an internal class in Theme. You probably will not be affected by this unless you have defined your own theme

    โœ‚ Removed

    • โœ‚ Removed LanternTerminal and TerminalFactory as they were quite confusing and not really necessary
    • โœ‚ Removed ListBox as there is not much purpose for it in this environment
    • โœ‚ Removed RadioCheckBox and RadioCheckBoxGroup. RadioCheckBoxList acts as a replacement
    • โœ‚ Removed TermInfo classes (they did not really work so hopefully no one was using them)

    Maven

    ๐Ÿš€ Starting with the 2.0.0 release, Lanterna has been using Maven and the Sonatype OSS repository which is synchronized with Maven Central. Please see the [Maven information page](Maven.md) for more details