Network upgrade and new reconnection mode:
* users can disconnect or close app without game progress loose now;
* disconnect dialog will show active tables stats and additional options;
* all active tables will be restored on reconnect (tables, tourneys, games, drafts, sideboarding, constructing);
* user must use same server and username on next connection;
* there are few minutes for reconnect until server kick off a disconnected player from all player's tables (concede/loose);
* now you can safety reconnect after IP change (after proxy/vpn/wifi/router restart);
Other improvements and fixes:
* gui: main menu - improved switch panel button, added stats about current tables/panels;
* gui: improved data sync and updates (fixes many use cases with empty battlefield, not started games/drafts/tourneys, not updatable drafts, etc);
* gui: improved stability on game updates (fixes some random errors related to wrong threads);
* server: fixed miss messages about player's disconnection problems for other players in the chat;
* refactor: simplified and improved connection and network related code, deleted outdated code, added docs;
* tests: improved load test to support lands only set for more stable performance/network testing (set TEST_AI_RANDOM_DECK_SETS = PELP and run test_TwoAIPlayGame_Multiple);
* new help window can be opened from a player panel;
* it collect and show all visible game hints from all players and all zones;
* it updates in real time on game update;
* allows to customize visible data;
* allows to open multiple windows (current limit is 5 windows, can be slow to render);
* allows to minimize opened windows;
* workable card popup on mouse move over card name or card id;
* filter modes:
* all - show hints from all players;
* player - show hints from single player;
* group mode:
* by hints - show same hints as one with all used cards;
* by cards - show full cards list with own hints;
* search mode:
* allows to filter card hints by player name, card name, card id or card hint;
* allows to search multiple words (equals to "or")
* current limitation:
* card popup shows a card instead a real object, e.g. miss card hints in it (relelated to game logs problem);
* unsupport of emblems, dungeons and other non card objects from a command zone;
* unsupport of revealed and library's top cards;
GUI - player's panel improves:
* added hints helper button;
* added player hithlight as possible target in choose dialogs;
* improved player name button in small mode;
* fixed wrong height in small mode;
Other fixes:
* game logs: added card popup support for logs with custom object name;
* UI Changes
* Add new buffer time options
* Main functionality
* Final implementation
Also added player UI for when they are using their buffer time (timer turns green)
* Added partly valid status for deck legality panel (if all cards are fine but user must add more cards to complete, see #6854);
* Improved legality errors sorting (important errors visible at the top now, e.g. commander's errors);
* Improved formats list in deck legality panel (#6854);
* Added hide button to deck legality panel (#6854);
* Fixed themes names and added theme info in startup logs;
* Added chooseable render testing (click by mouse on cards);
* Added column style render testing (many cards mode);
* Added tapped, face down and manifested render testing for permanents;
* CardView: fixed missing copy data (NPE for transformed cards);
* CardArea: added support to draw permanents;
* CardArea: added support of offsets between cards/columns;
* Added hotkeys to select options (1-9 for choice, SPACE/ENTER for done, ESC for cancel);
* "Up to" modes choose dialog - added "done" button in dialog;
* "Up to" modes choose dialog - fixed that user can't cancel if already selected one mode;
* Added extra info about source object, selected and remaining modes to select, ability number for hotkey;
* Fixed that mode choose dialog doesn't close on cancel (#6199);