Well, that's annoying. I don't want to mess with typeid
, so I guess this is the best solution.
What is the issue with HOOK
and non-extern"C"
-functions?
Is this check needed? Because if old_pos == self->history_pos
, wouldn't that just call setText
with the current text, doing nothing?
Why? This seems really useless. Considering it needs std::vector
... which only exists on C++.
I'm basing this off GNOME Terminal, which IMO, has a much superior history function to Minecraft.
Hmm, that could be a problem.
Maybe when ChatScreen
is created, it copies history
into it's own property (history_local
?). That gets modified when you hit up/down. But when you hit enter,…
This all looks good, but I have one concern.
What if I type something and then accidentally hit up/down, what happens to what I typed.
I'd suggest this system (forgive the pseudo-code):
What's the point of this check?
This should probably be in one big if (self->chat->isFocused())
statement.
Yup, it's EntityRenderer::entityRenderDispatcher
.
This seems wrong. I think this address actually refers to an EntityRenderDispatcher
. Which then has a first property of ItemInHandRenderer
.
What do you mean? Just add code to keyPressed
in chat/ui.cpp
.
Then, why not just... add setText
and isFocused
methods? Realistically chat is the only thing that will ever need this code. And if something else does need it, it can also just be re-implement…
IMO the history code should be part of chat, not the text input widget.