Releases: Aedial/DiskTerminal
Releases · Aedial/DiskTerminal
Cell Terminal 1.6.4-beta
Added
- Add
$diradvanced search support in Subnet Overview to filter inbound or outbound subnet connections.
Fixed
- Unify subnet direction semantics so AE2 connections now point from the exposing side, matching CELLS subnet proxies, without changing which connections mirror subnet inventory in the overview.
- Fix Subnet Overview being empty after coming back from JEI (which reopen the terminal without triggering the proper refresh).
Cell Terminal 1.6.3-beta
Added
- Add support for search in Subnet Overview ,using the shared mixed/inventory/partition search mode and match subnet content and filters, with the same search syntax as the main terminal tabs.
Cell Terminal 1.6.2-beta
Added
- Show a warning when upgrade insertion fails for a targeted drive, cell, storage bus, or temporary cell.
Cell Terminal 1.6.1-beta
Added
- Add CELLS integration for import/export interfaces and subnet proxies, as direct storage-bus and subnet overview.
- Add strict no-duplicates check for storage bus filters, with user feedback on attempted duplicates.
Fixed
- Fix wireless terminals reopening on the main network instead of restoring the last viewed subnet during the current connection.
Cell Terminal 1.6.0-beta
Added
- New chunked + delta network protocol for terminal data: large grids no longer hit the vanilla packet size cap, and idle refreshes only send what changed.
- Configurable in server config under
network:
maxChunkBytes(default 524288),minRefreshIntervalTicks(default 10),enableDeltaUpdates(default true). - Refreshes are throttled and prioritize the tab the player is currently viewing.
Cell Terminal 1.5.4
Fixed
- Potential fix for setting partition clearing the slot in another row, in some cases, due to a race condition in cell state between clicks (usually when world was just loaded and the cell state was not fully synced yet).
- Fix upgrades not being clickable directly on cells.
- Fix (virtual) slots not being interactible with JEI.
- Fix storage bus contents being truncated to the partition slot count
Cell Terminal 1.5.3
- Fix regression with AE2's Network Tool (Upgrade cards inventory).
Cell Terminal 1.5.2
Added
- Add Gas support to the terminal.
Cell Terminal 1.5.1
Added
- Finish moving text placeholders to proper textures.
- Add proper UX for Inbound/Outbound subnet connections.
Fixed
- Fix Subnets Overview not handling Fluids.
- Fix inline rename field not working in Subnet Overview.
- Fix upgrade slots count being hardcoded to 2 (Cells) and 5 (Storage Buses) instead of retrieved from the server, which could cause issues with mods adding more upgrade slots.
- Fix crash introduced in 1.5.0 when inserting a cell into a free slot.
Cell Terminal 1.5.0
Added
- Add proper content/partition handling to the Subnet Overview, mirroring the behavior of the Temporary Area tab.
- Add tooltip for Temporary Cells stored in the Wireless Terminal.
Fixed
- Fix Upgrade Cards not being handled at all in the Temporary Area tab.
- Fix the Temporary Area not working at all with the Wireless Universal Terminal.
- (and probably many other small bugs I may add later as I compare in parallel)
Changed
- Rewrite the whole GUI part of the mod, with proper icons and missing features implemented. Similar widgets have been unified for a more consistent experience across the different tabs.
Technical
- Convert the heavy-handed context passing into a tree-like widgets structure. Tab Manager -> Tabs (Terminal/Inventory/Partition) -> Headers (Drive/Storage Bus) -> Tree Lines (Cell entries, partition entries, inventory entries). This allows to share a lot of the logic and code between the different tabs, as they are now mostly just different renderings of the same underlying data, and to avoid passing a huge amount of context parameters everywhere.
- The new widgets unify the behaviors by separating the implementation into the relevant widget classes, sharing the common logic and only implementing the specific rendering and interactions in the relevant classes. For example, the inventory and partition entries are the same widget with slightly different data (same data but different key), slightly different rendering, and slightly different interactions.
- The widgets handle clicks, hovering, and keybinds themselves at the lowest level, instead of delegating to a central handler in the main GUI class. This allows to move the logic for each interaction into the relevant widget, and avoid having a huge central handler with a lot of context parameters and special cases for different tabs. The main GUI delegates interactions to the top level widgets which then decide what to do with them, e.g. delegating further down to the relevant child widgets.
- The renaming logic has been moved to a singleton manager that just handles the state of the currently renaming entry and the renaming actions, the widgets themselves just call the manager when they need to trigger a rename. This allows to easily add renaming to pretty much anything in the GUI just by calling the manager with the relevant parameters and adding a new type in confirmEditing() for the network packet.
- The priority fields have also been (partially) moved to a singleton manager controlled by the headers. This case is slightly different, as they still need to keep state and they use a native text field for convenience.