Commit graph

11 commits

Author SHA1 Message Date
Oleg Agafonov
960e896903
Network upgrade and new reconnection mode (#11527)
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);
2023-12-07 20:56:52 +04:00
Oleg Agafonov
b56587a383 Code cleanup (removed outdated client's config.properties settings) 2020-01-26 15:19:22 +04:00
Oleg Agafonov
f81142459d * UI: fixed wrong server reconnect on multiple apps runs (#5495); 2019-04-12 12:15:48 +04:00
spjspj
0942db541f Token refactor 2017-05-08 23:26:33 +10:00
vraskulin
498c8cf60c Made utility classes final to explicitly forbid it's inheritance 2017-02-27 17:03:38 +03:00
Anders Åstrand
f68460603a Add client-side user ignore list
This commit adds a client-side per-server ignore list.
* Whispers and talk from an ignored user is hidden
* Ignored users cannot join your tables
* Ignored users tables are hidden
2017-02-22 22:16:09 +01:00
vraskulin
5e410df39e We should not create additional Strings in loop. It have perfomance impact. Using StringBuilder instead. 2017-02-13 15:03:23 +03:00
spjspj
e18695489f Merge pull request #2849 from spjspj/master
Modify userId string
2017-02-09 19:42:29 +11:00
spjspj
0edd01c293 Modify userId string 2017-02-09 19:41:24 +11:00
vraskulin
f60ebfbb1f All 1-character strings converted to primitives
"b" + "r" now changed to 'b' + 'w'.  It's more straight-forward, and may cause perfomance improvements - character primitives allocation is faster and less expensive than string creation.
2017-02-06 14:32:51 +03:00
Me Car
ea480a6593 Create MagePreferences class for managing preferences. We should move preference related code from MageFrame and PreferencesDialog to the class. Push all raw string preference key manipulations for serverAddress, serverPort, userName, password and email into the class. 2016-01-15 03:08:52 +09:00