Quixe, Chrome, cursor position

Games played in Quixe, in (desktop, macos) Chrome, have spontaneously begun to misbehave as far as placing the text cursor to the right of the command prompt. This seems to be a problem with Chrome moreso than with Quixe (it’s not happening in Safari or on mobile), but I don’t know why it would happen regardless!

The cursor seems to be in the correct place to begin with:

03%20PM

But when I start typing, it moves to the left, behaving as if the command prompt isn’t there:

09%20PM

02%20PM

Oddly, when I try to inspect the text to figure out what the heck is going on, the whole input field pops back into the right place:

But if the input is modified, it pops back into the wrong place.

I haven’t seen this happen, but browsers are always changing and introducing new bugs. Which version of Quixe is it? Does it happen in Lectrote? Though Lectrote uses an older version of Chrome so…

This is Quixe 2.1.2. It’s not an issue in Lectrote. I hadn’t thought to look into newer Quixe versions so I’ll check that out.

Turns out it happens in 2.1.6 too.

1 Like

Looks like it happens because the input field is absolutely positioned in relation to an inline element, which is a Chromium bug reported here: https://bugs.chromium.org/p/chromium/issues/detail?id=1001438 (they’re saying it’s going to be fixed for not the next Chrome release but the one after that.)

You can monkeypatch it by adding this CSS somewhere on the page:

.InvisibleCursor {
    display: inline-block;
}
2 Likes

Thanks! Do you think this is the kind of thing I’ll have to un-fix when the bug is fixed?

No, if it works correctly now it’ll keep working later as well. The entire command line should preferably be changed anyway to use flexbox now that it has universal browser support, instead of using Javascript to calculate the input field width.

1 Like

Thanks for digging into this.

The flexbox idea makes sense. I don’t know that I’m going to get to it any time soon, though. Can someone work up a patch?

I can probably find time for it later this week.