Chat window keeping focus...? (Maybe Linux.)


je_saist

 

Posted

Okay, my other problem went away, this one stayed.

I play on a Mac, and I play on Linux. The Linux machine is faster and runs cooler, but it has a very odd user interface quirk, which is that the chat window is very reluctant to yield focus.

On both machines, if I hit enter and start typing, I am typing in the chat window on the selected channel.

When I hit enter again, the message is sent to the selected channel. If I'm on the Mac, focus is now back to the world -- hitting movement keys moves me. On my Linux machine, there's no cursor in the chat window, but the chat window still has focus; hitting wasd enters "wasd" as text in the chat entry box.

Hitting escape when the window is empty yields focus and I'm back to being able to move. Hitting escape once after something has been typed empties the window but keeps focus on it. Sending an empty message does not yield focus. On the Mac, of course, it does.

What mystifies me about this is that I asked about it on /hc, and someone said it was a Linux issue, but another of my friends plays on Linux and doesn't have this problem...


 

Posted

this may be related to the method of which you play the game under Linux.

The OSX Version of CoH leverages Cider, the Darwin-BSD Build of Transgaming's Cedega technology. It is likely that your friend might also be leveraging the Cedega tech.

If I recall correctly you were playing your client under straight WINE.


 

Posted

I've been using Crossover Games, which is closer to plain WINE. (The Cedega people are a fork who split off some time back, the Crossover people are much closer to a branch, and contribute a lot more code back to the WINE project, which is why I tend to prefer them.)

I agree that this might be it, but it's still totally mystifying to me, because I can't conceive of what WINE could be doing that would cause the chat window to retain focus like that.


 

Posted

Quote:
Originally Posted by seebs View Post
I've been using Crossover Games, which is closer to plain WINE. (The Cedega people are a fork who split off some time back, the Crossover people are much closer to a branch, and contribute a lot more code back to the WINE project, which is why I tend to prefer them.)

I agree that this might be it, but it's still totally mystifying to me, because I can't conceive of what WINE could be doing that would cause the chat window to retain focus like that.
couldn't tell you why it's behaving like that.

What I can tell you is that Cedega isn't actually forked. A large amount of the code in use today shares no development connection with WINE or the old WINEX branch. Transgaming openly uses licensed technologies that WINE can't implement due to licensing restrictions, or won't implement due to licensing restrictions, and thus have to build reverse-engineered solutions or just simply not implement at all.. This is one of the reasons little code makes it way back into WINE from Transgaming these days. Transgaming really isn't using the WINE code to begin with. Ergo, if they aren't using the WINE code-base, there's not anything to contribute back.

I really don't want to get into a debate on whether or not Transgaming SHOULD contribute changes and concepts to the underlying tech-design back to WINE. It'd be nice to see that happen, but Transgaming's success, and Crossover's lack-there-of, at courting Major publishers for porting work speaks volumes about the state of the gaming industry.

The type of technology though, the aspect of a real-time wrapper? That really hasn't changed, hence why I refer to the class of technologies as WINE-derived. If it weren't for WINE, Transgaming's current tech wouldn't exist at all.

Getting back to your particular problem, what we don't know is how the game parses chat handle signal requests. What is likely happening is that the game issues a command to return focus to the background window. For whatever reason, this command isn't being parsed by Crossover.


 

Posted

Could be.

I will poke around more, it might be possible to track it down and turn it into a bug report, whereupon it could perhaps get fixed. Maybe someday I'll have an idle weekend and I can work on it.


 

Posted

Quote:
Originally Posted by je_saist View Post







Getting back to your particular problem, what we don't know is how the game parses chat handle signal requests. What is likely happening is that the game issues a command to return focus to the background window. For whatever reason, this command isn't being parsed by Crossover.
There's only one problem with your theory: CoH does its own window management. As far as Windows or WINE is concerned, CoH is just one big window with a bunch of OpenGL drawn on it. CoH takes the various clicks and keypresses on that window, and turns them into activity of its internal windows and controls. This makes for easy porting from one OS to another, and makes things easy for WINE, but writing a window manager and widget set is hard to do, which is why CoH has strange quirks in how it handles things like slide controls and the mouse wheel.