mage icon indicating copy to clipboard operation
mage copied to clipboard

Mac Client freezes when launching new tourney

Open manbradcalf opened this issue 6 years ago • 16 comments

Env: Mac OS 10.13.3 XMage version 1.4.29 v4

Steps 1 - Launch client & server 2 - choose to launch local server 3 - select new tourney 4 - try to change one of the boosters 5 - note freeze

manbradcalf avatar May 09 '18 03:05 manbradcalf

Can you see "search country window" on connection dialog? If you can see it then check where exactly is that window popup on your mac (behind or in front of connection dialog)?

shot_180510_115417

JayDi85 avatar May 10 '18 07:05 JayDi85

screen shot 2018-05-10 at 12 18 04 pm

This is what I see when I tap the magnifying glass. When I drag the list over the dialog, it overlaps in front of the dialog like it does in your screenshot @JayDi85

manbradcalf avatar May 10 '18 16:05 manbradcalf

OK, then try to search client logs and report it here (after your client "freeze" on set selection). It's can contain errors. That's logs can found in black window or in ..\xmage\mage-client\mageclient.log (report last page of logs).

JayDi85 avatar May 10 '18 17:05 JayDi85

mageclient.log @JayDi85

manbradcalf avatar May 10 '18 18:05 manbradcalf

It's old logs (from February 22), maybe you are shown file from wrong folder (check your link/folder to start up launcher/client). Delete mageclient.log file, restart xmage, try to create new match until freeze, close xmage and report logs here.

JayDi85 avatar May 10 '18 18:05 JayDi85

My bad! Wrong path

I just took a screencast of the error happening in real time. It's strange, it seems nothing relevant is being logged. Screencast below:

https://streamable.com/pgfxb

Here's the log from that session:

mageclient.log

Also, for what it's worth, I'm now running High Sierra 10.13.4, I got around to updating today

manbradcalf avatar May 10 '18 18:05 manbradcalf

I am experiencing this in the current version on Mojave as well. I can start up the server locally and log into it. But as soon as I try to change any drop down item (booster packs in tourney, game types, etc...) the client freezes up and is unresponsive. And the logs have nothing in them that is useful. All that is in it is:

INFO  2019-08-03 10:37:34,208 Starting MAGE client version 1.4.37V4 (build: 2019-07-13 15:57)                            =>[main] MageFrame.main 
INFO  2019-08-03 10:37:34,210 Logging level: INFO                                                                        =>[main] MageFrame.main 
INFO  2019-08-03 10:37:36,477 Loading database...                                                                        =>[AWT-EventQueue-0] RepositoryUtil.bootstrapLocalDb 
INFO  2019-08-03 10:37:37,002 Loading symbols...                                                                         =>[AWT-EventQueue-0] ManaSymbols.loadImages 
INFO  2019-08-03 10:37:37,932 Loading plugins...                                                                         =>[AWT-EventQueue-0] Plugins.loadPlugins 
INFO  2019-08-03 10:37:37,978 [Game counter plugin, version 0.1] has been loaded.                                        =>[AWT-EventQueue-0] CounterPluginImpl.newPlugin 
INFO  2019-08-03 10:37:37,989 [Card plugin, version 0.7] has been loaded.                                                =>[AWT-EventQueue-0] CardPluginImpl.newPlugin 
INFO  2019-08-03 10:37:37,992 [Theme plugin, version 0.5] has been loaded.                                               =>[AWT-EventQueue-0] ThemePluginImpl.newPlugin 
INFO  2019-08-03 10:37:37,993 Done.                                                                                      =>[AWT-EventQueue-0] Plugins.loadPlugins 
INFO  2019-08-03 10:37:39,241 Client start up time: 5 seconds                                                            =>[AWT-EventQueue-0] MageFrame.lambda$new$2 
INFO  2019-08-03 10:37:42,093 Connect: connecting to server localhost:17171                                              =>[SwingWorker-pool-5-thread-4] SessionImpl$5.work 
INFO  2019-08-03 10:37:42,349 Connect: DONE                                                                              =>[SwingWorker-pool-5-thread-4] SessionImpl$5.work 
INFO  2019-08-03 10:37:42,350 Logging: as username astraldragon to server localhost:17171                                =>[SwingWorker-pool-5-thread-5] SessionImpl$4.work 
INFO  2019-08-03 10:37:42,398 Logging: DONE                                                                              =>[SwingWorker-pool-5-thread-5] SessionImpl$4.work 

chrislegault avatar Aug 03 '19 13:08 chrislegault

There are possible some text assistance or whatever third party software on MacOs (app freeze on text field enter -- that's third party software try to create quick search buttons or whatever). I still don't know the reason. Someone report in #5130 about Contexts app. You can find that software and disable or add java app to ignore list.

JayDi85 avatar Aug 03 '19 18:08 JayDi85

Hmmmm. I definitely don't use Contexts. I killed all my apps and found out which one is creating the issue. It seems to be Magnet which causes issues. So seems to be window managers/organizers that's messing stuff up.

chrislegault avatar Aug 03 '19 20:08 chrislegault

Ah! Good to know. I use magnet as well. I'm assuming that was the root of my issue.

manbradcalf avatar Aug 05 '19 15:08 manbradcalf

Okay, more findings on this. It's caused by some interaction between window resizing apps (at the very least) and something inside the MageFrame object.

  • The "Connect to Server" dialog on it's own will freeze the UI
  • The "About" dialog does not freeze the UI

Looking at the "About" dialog, the big difference about it is that has the following line in it's constructor this.modal = false;. If I set the "About" dialog to also be modal, then the "About" dialog suddenly starts freezing the UI when the window is resized.

Alex-Vasile avatar Jun 01 '22 19:06 Alex-Vasile

XMage uses custom code to simulate modal dialogs -- see startModal() for related code.

Also you can run client app with -debug param to enable debug menu and run render and popup test tools:

shot_220602_000702 shot_220602_000942

JayDi85 avatar Jun 01 '22 20:06 JayDi85

Updating Java does not solve this issue. I have tried compiling it targeting Java 18 (not 1.8, 18) and running it with Java 18 and the issue is still there.

Strange it is a little better, on 1.8 when it freezes it also stops all haptic feedback on the device. Under Java 18 the feedback still works but the application still freezes.

Alex-Vasile avatar Aug 04 '22 23:08 Alex-Vasile

It gets weirder... If all modal windows are closed, XMage is tiled to take up half the screen, then you can open the connection dialog (or similar) and start re-tiling it as you please without it freezing. But the moment you try to open another window which has been set to modal, the application freezes.

Alex-Vasile avatar Aug 05 '22 02:08 Alex-Vasile