khanshoaib3 / stardew-access

An accessibility mod for Stardew Valley with screen reader and keyboard only support!
GNU General Public License v3.0
65 stars 19 forks source link

Bug: Fix Speaking Queued Texts in MacOS #325

Open fz0308 opened 2 months ago

fz0308 commented 2 months ago

Stardew Access on Stardew Valley for mac still can't read the most text of intro. The readable text are grandpa's letter, conversation of Robin and Lewis, and their buble text.

Flameborn commented 2 months ago

Is this something happening since the 1.6 SDV release for you?

fz0308 commented 2 months ago

It happens scenes Stardew Access works for Stardew Valley for Mac

Flameborn commented 2 months ago

Odd, so you mean ever since the mod has Mac support this happens.

It's the exact same code that also narrates menus, and the intro definitely reads here, on an intel Mac (late 2014 Mac Mini) and on an M1 series Macbook Air.

fz0308 commented 2 months ago

Well, I'm using Intel MacBook Air 2020, and the mod doesn't read anything after character creation menu until Robin greets the character

Flameborn commented 2 months ago

That is definitely strange and will probably need some investigating.

I'll see if I can get SDV 1.6 up and running as time permits and look into this. Probably going to take a few days.

Flameborn commented 2 months ago

It appears that for some reason queued speech (when interrupt is false) is not spoken because the DoneSpeaking callback is not called.

When I implemented Mac speech for SDV 1.5.X the callback was firing as expected, so my guess is either Apple has changed something since, or something broke during porting Mac speech to CrossSpeak.

Unfortunately, I don't have enough .net expertise to see what exactly the issue is. The thread and the runloop for the speaker seem to be working as expected, and the callback should be firing too, which would remove one queued item and speak it, in this case one block of narration from Grandpa's story.

Any ideas are more than welcome.