Screen PointerUp should not be cancellable

This commit is contained in:
UnknownShadow200 2020-12-29 18:49:35 +11:00
parent 4d9c975b1f
commit 3758fc3e84
5 changed files with 35 additions and 32 deletions

View File

@ -496,6 +496,7 @@ void Screen_ContextLost(void* screen) {
int Screen_InputDown(void* screen, int key) { return key < KEY_F1 || key > KEY_F24; } int Screen_InputDown(void* screen, int key) { return key < KEY_F1 || key > KEY_F24; }
void Screen_InputUp(void* screen, int key) { } void Screen_InputUp(void* screen, int key) { }
void Screen_PointerUp(void* s, int id, int x, int y) { }
/*########################################################################################################################* /*########################################################################################################################*

View File

@ -72,7 +72,7 @@ struct ScreenVTABLE {
void (*BuildMesh)(void* elem); void (*BuildMesh)(void* elem);
/* Returns non-zero if an input press is handled. */ /* Returns non-zero if an input press is handled. */
int (*HandlesInputDown)(void* elem, int key); int (*HandlesInputDown)(void* elem, int key);
/* Called when an input key or buttonm is released */ /* Called when an input key or button is released */
void (*OnInputUp)(void* elem, int key); void (*OnInputUp)(void* elem, int key);
/* Returns non-zero if a key character press is handled. */ /* Returns non-zero if a key character press is handled. */
int (*HandlesKeyPress)(void* elem, char keyChar); int (*HandlesKeyPress)(void* elem, char keyChar);
@ -80,8 +80,8 @@ struct ScreenVTABLE {
int (*HandlesTextChanged)(void* elem, const cc_string* str); int (*HandlesTextChanged)(void* elem, const cc_string* str);
/* Returns non-zero if a pointer press is handled. */ /* Returns non-zero if a pointer press is handled. */
int (*HandlesPointerDown)(void* elem, int id, int x, int y); int (*HandlesPointerDown)(void* elem, int id, int x, int y);
/* Returns non-zero if a pointer release is handled. */ /* Called when a pointer is released. */
int (*HandlesPointerUp)(void* elem, int id, int x, int y); void (*OnPointerUp)(void* elem, int id, int x, int y);
/* Returns non-zero if a pointer movement is handled. */ /* Returns non-zero if a pointer movement is handled. */
int (*HandlesPointerMove)(void* elem, int id, int x, int y); int (*HandlesPointerMove)(void* elem, int id, int x, int y);
/* Returns non-zero if a mouse wheel scroll is handled. */ /* Returns non-zero if a mouse wheel scroll is handled. */
@ -126,6 +126,9 @@ int Screen_InputDown(void* screen, int key);
/* Default input up implementation for a screen */ /* Default input up implementation for a screen */
/* (does nothing) */ /* (does nothing) */
void Screen_InputUp(void* screen, int key); void Screen_InputUp(void* screen, int key);
/* Default pointer release implementation for a screen */
/* (does nothing) */
void Screen_PointerUp(void* s, int id, int x, int y);
typedef void (*Widget_LeftClick)(void* screen, void* widget); typedef void (*Widget_LeftClick)(void* screen, void* widget);
struct WidgetVTABLE { struct WidgetVTABLE {

View File

@ -1003,7 +1003,7 @@ static void OnPointerUp(void* obj, int idx) {
for (i = 0; i < Gui.ScreensCount; i++) { for (i = 0; i < Gui.ScreensCount; i++) {
s = Gui_Screens[i]; s = Gui_Screens[i];
s->dirty = true; s->dirty = true;
if (s->VTABLE->HandlesPointerUp(s, 1 << idx, x, y)) return; s->VTABLE->OnPointerUp(s, 1 << idx, x, y);
} }
} }

View File

@ -415,7 +415,7 @@ static const struct ScreenVTABLE ListScreen_VTABLE = {
ListScreen_Init, Screen_NullUpdate, ListScreen_Free, ListScreen_Init, Screen_NullUpdate, ListScreen_Free,
ListScreen_Render, Screen_BuildMesh, ListScreen_Render, Screen_BuildMesh,
ListScreen_KeyDown, Screen_InputUp, Screen_TKeyPress, Screen_TText, ListScreen_KeyDown, Screen_InputUp, Screen_TKeyPress, Screen_TText,
Menu_PointerDown, Screen_FPointer, Menu_PointerMove, ListScreen_MouseScroll, Menu_PointerDown, Screen_PointerUp, Menu_PointerMove, ListScreen_MouseScroll,
ListScreen_Layout, ListScreen_ContextLost, ListScreen_ContextRecreated ListScreen_Layout, ListScreen_ContextLost, ListScreen_ContextRecreated
}; };
void ListScreen_Show(void) { void ListScreen_Show(void) {
@ -545,7 +545,7 @@ static const struct ScreenVTABLE PauseScreen_VTABLE = {
PauseScreen_Init, Screen_NullUpdate, PauseScreen_Free, PauseScreen_Init, Screen_NullUpdate, PauseScreen_Free,
MenuScreen_Render2, Screen_BuildMesh, MenuScreen_Render2, Screen_BuildMesh,
Screen_InputDown, Screen_InputUp, Screen_TKeyPress, Screen_TText, Screen_InputDown, Screen_InputUp, Screen_TKeyPress, Screen_TText,
Menu_PointerDown, Screen_FPointer, Menu_PointerMove, Screen_TMouseScroll, Menu_PointerDown, Screen_PointerUp, Menu_PointerMove, Screen_TMouseScroll,
PauseScreen_Layout, Screen_ContextLost, PauseScreen_ContextRecreated PauseScreen_Layout, Screen_ContextLost, PauseScreen_ContextRecreated
}; };
void PauseScreen_Show(void) { void PauseScreen_Show(void) {
@ -596,7 +596,7 @@ static const struct ScreenVTABLE ClassicPauseScreen_VTABLE = {
ClassicPauseScreen_Init, Screen_NullUpdate, Screen_NullFunc, ClassicPauseScreen_Init, Screen_NullUpdate, Screen_NullFunc,
MenuScreen_Render2, Screen_BuildMesh, MenuScreen_Render2, Screen_BuildMesh,
Screen_InputDown, Screen_InputUp, Screen_TKeyPress, Screen_TText, Screen_InputDown, Screen_InputUp, Screen_TKeyPress, Screen_TText,
Menu_PointerDown, Screen_FPointer, Menu_PointerMove, Screen_TMouseScroll, Menu_PointerDown, Screen_PointerUp, Menu_PointerMove, Screen_TMouseScroll,
PauseScreenBase_Layout, Screen_ContextLost, ClassicPauseScreen_ContextRecreated PauseScreenBase_Layout, Screen_ContextLost, ClassicPauseScreen_ContextRecreated
}; };
void ClassicPauseScreen_Show(void) { void ClassicPauseScreen_Show(void) {
@ -723,7 +723,7 @@ static const struct ScreenVTABLE OptionsGroupScreen_VTABLE = {
OptionsGroupScreen_Init, Screen_NullUpdate, OptionsGroupScreen_Free, OptionsGroupScreen_Init, Screen_NullUpdate, OptionsGroupScreen_Free,
MenuScreen_Render2, Screen_BuildMesh, MenuScreen_Render2, Screen_BuildMesh,
Screen_InputDown, Screen_InputUp, Screen_TKeyPress, Screen_TText, Screen_InputDown, Screen_InputUp, Screen_TKeyPress, Screen_TText,
Menu_PointerDown, Screen_FPointer, OptionsGroupScreen_PointerMove, Screen_TMouseScroll, Menu_PointerDown, Screen_PointerUp, OptionsGroupScreen_PointerMove, Screen_TMouseScroll,
OptionsGroupScreen_Layout, OptionsGroupScreen_ContextLost, OptionsGroupScreen_ContextRecreated OptionsGroupScreen_Layout, OptionsGroupScreen_ContextLost, OptionsGroupScreen_ContextRecreated
}; };
void OptionsGroupScreen_Show(void) { void OptionsGroupScreen_Show(void) {
@ -984,7 +984,7 @@ static const struct ScreenVTABLE EditHotkeyScreen_VTABLE = {
EditHotkeyScreen_Init, EditHotkeyScreen_Update, Menu_CloseKeyboard, EditHotkeyScreen_Init, EditHotkeyScreen_Update, Menu_CloseKeyboard,
EditHotkeyScreen_Render, Screen_BuildMesh, EditHotkeyScreen_Render, Screen_BuildMesh,
EditHotkeyScreen_KeyDown, Screen_InputUp, EditHotkeyScreen_KeyPress, EditHotkeyScreen_TextChanged, EditHotkeyScreen_KeyDown, Screen_InputUp, EditHotkeyScreen_KeyPress, EditHotkeyScreen_TextChanged,
Menu_PointerDown, Screen_FPointer, Menu_PointerMove, Screen_TMouseScroll, Menu_PointerDown, Screen_PointerUp, Menu_PointerMove, Screen_TMouseScroll,
EditHotkeyScreen_Layout, EditHotkeyScreen_ContextLost, EditHotkeyScreen_ContextRecreated EditHotkeyScreen_Layout, EditHotkeyScreen_ContextLost, EditHotkeyScreen_ContextRecreated
}; };
void EditHotkeyScreen_Show(struct HotkeyData original) { void EditHotkeyScreen_Show(struct HotkeyData original) {
@ -1188,7 +1188,7 @@ static const struct ScreenVTABLE GenLevelScreen_VTABLE = {
GenLevelScreen_Init, GenLevelScreen_Update, Menu_CloseKeyboard, GenLevelScreen_Init, GenLevelScreen_Update, Menu_CloseKeyboard,
MenuScreen_Render2, Screen_BuildMesh, MenuScreen_Render2, Screen_BuildMesh,
GenLevelScreen_KeyDown, Screen_InputUp, GenLevelScreen_KeyPress, GenLevelScreen_TextChanged, GenLevelScreen_KeyDown, Screen_InputUp, GenLevelScreen_KeyPress, GenLevelScreen_TextChanged,
GenLevelScreen_PointerDown, Screen_FPointer, Menu_PointerMove, Screen_TMouseScroll, GenLevelScreen_PointerDown, Screen_PointerUp, Menu_PointerMove, Screen_TMouseScroll,
GenLevelScreen_Layout, GenLevelScreen_ContextLost, GenLevelScreen_ContextRecreated GenLevelScreen_Layout, GenLevelScreen_ContextLost, GenLevelScreen_ContextRecreated
}; };
void GenLevelScreen_Show(void) { void GenLevelScreen_Show(void) {
@ -1264,7 +1264,7 @@ static const struct ScreenVTABLE ClassicGenScreen_VTABLE = {
ClassicGenScreen_Init, Screen_NullUpdate, Screen_NullFunc, ClassicGenScreen_Init, Screen_NullUpdate, Screen_NullFunc,
MenuScreen_Render2, Screen_BuildMesh, MenuScreen_Render2, Screen_BuildMesh,
Screen_InputDown, Screen_InputUp, Screen_TKeyPress, Screen_TText, Screen_InputDown, Screen_InputUp, Screen_TKeyPress, Screen_TText,
Menu_PointerDown, Screen_FPointer, Menu_PointerMove, Screen_TMouseScroll, Menu_PointerDown, Screen_PointerUp, Menu_PointerMove, Screen_TMouseScroll,
ClassicGenScreen_Layout, Screen_ContextLost, ClassicGenScreen_ContextRecreated ClassicGenScreen_Layout, Screen_ContextLost, ClassicGenScreen_ContextRecreated
}; };
void ClassicGenScreen_Show(void) { void ClassicGenScreen_Show(void) {
@ -1543,7 +1543,7 @@ static const struct ScreenVTABLE SaveLevelScreen_VTABLE = {
SaveLevelScreen_Init, SaveLevelScreen_Update, Menu_CloseKeyboard, SaveLevelScreen_Init, SaveLevelScreen_Update, Menu_CloseKeyboard,
SaveLevelScreen_Render, Screen_BuildMesh, SaveLevelScreen_Render, Screen_BuildMesh,
SaveLevelScreen_KeyDown, Screen_InputUp, SaveLevelScreen_KeyPress, SaveLevelScreen_TextChanged, SaveLevelScreen_KeyDown, Screen_InputUp, SaveLevelScreen_KeyPress, SaveLevelScreen_TextChanged,
Menu_PointerDown, Screen_FPointer, Menu_PointerMove, Screen_TMouseScroll, Menu_PointerDown, Screen_PointerUp, Menu_PointerMove, Screen_TMouseScroll,
SaveLevelScreen_Layout, SaveLevelScreen_ContextLost, SaveLevelScreen_ContextRecreated SaveLevelScreen_Layout, SaveLevelScreen_ContextLost, SaveLevelScreen_ContextRecreated
}; };
void SaveLevelScreen_Show(void) { void SaveLevelScreen_Show(void) {
@ -1946,7 +1946,7 @@ static const struct ScreenVTABLE KeyBindsScreen_VTABLE = {
KeyBindsScreen_Init, Screen_NullUpdate, Screen_NullFunc, KeyBindsScreen_Init, Screen_NullUpdate, Screen_NullFunc,
MenuScreen_Render2, Screen_BuildMesh, MenuScreen_Render2, Screen_BuildMesh,
KeyBindsScreen_KeyDown, Screen_InputUp, Screen_TKeyPress, Screen_TText, KeyBindsScreen_KeyDown, Screen_InputUp, Screen_TKeyPress, Screen_TText,
Menu_PointerDown, Screen_FPointer, Menu_PointerMove, Screen_TMouseScroll, Menu_PointerDown, Screen_PointerUp, Menu_PointerMove, Screen_TMouseScroll,
KeyBindsScreen_Layout, KeyBindsScreen_ContextLost, KeyBindsScreen_ContextRecreated KeyBindsScreen_Layout, KeyBindsScreen_ContextLost, KeyBindsScreen_ContextRecreated
}; };
@ -2214,7 +2214,7 @@ static const struct ScreenVTABLE MenuInputOverlay_VTABLE = {
MenuInputOverlay_Init, MenuInputOverlay_Update, MenuInputOverlay_Free, MenuInputOverlay_Init, MenuInputOverlay_Update, MenuInputOverlay_Free,
MenuInputOverlay_Render, Screen_BuildMesh, MenuInputOverlay_Render, Screen_BuildMesh,
MenuInputOverlay_KeyDown, Screen_InputUp, MenuInputOverlay_KeyPress, MenuInputOverlay_TextChanged, MenuInputOverlay_KeyDown, Screen_InputUp, MenuInputOverlay_KeyPress, MenuInputOverlay_TextChanged,
MenuInputOverlay_PointerDown, Screen_FPointer, MenuInputOverlay_PointerMove, Screen_TMouseScroll, MenuInputOverlay_PointerDown, Screen_PointerUp, MenuInputOverlay_PointerMove, Screen_TMouseScroll,
MenuInputOverlay_Layout, MenuInputOverlay_ContextLost, MenuInputOverlay_ContextRecreated MenuInputOverlay_Layout, MenuInputOverlay_ContextLost, MenuInputOverlay_ContextRecreated
}; };
void MenuInputOverlay_Show(struct MenuInputDesc* desc, const cc_string* value, MenuInputDone onDone, cc_bool screenMode) { void MenuInputOverlay_Show(struct MenuInputDesc* desc, const cc_string* value, MenuInputDone onDone, cc_bool screenMode) {
@ -2504,7 +2504,7 @@ static const struct ScreenVTABLE MenuOptionsScreen_VTABLE = {
MenuOptionsScreen_Init, Screen_NullUpdate, MenuOptionsScreen_Free, MenuOptionsScreen_Init, Screen_NullUpdate, MenuOptionsScreen_Free,
MenuOptionsScreen_Render, MenuOptionsScreen_BuildMesh, MenuOptionsScreen_Render, MenuOptionsScreen_BuildMesh,
Screen_InputDown, Screen_InputUp, Screen_TKeyPress, Screen_TText, Screen_InputDown, Screen_InputUp, Screen_TKeyPress, Screen_TText,
Menu_PointerDown, Screen_FPointer, MenuOptionsScreen_PointerMove, Screen_TMouseScroll, Menu_PointerDown, Screen_PointerUp, MenuOptionsScreen_PointerMove, Screen_TMouseScroll,
MenuOptionsScreen_Layout, MenuOptionsScreen_ContextLost, MenuOptionsScreen_ContextRecreated MenuOptionsScreen_Layout, MenuOptionsScreen_ContextLost, MenuOptionsScreen_ContextRecreated
}; };
void MenuOptionsScreen_Show(struct MenuInputDesc* descs, const char** descriptions, int descsCount, InitMenuOptions init) { void MenuOptionsScreen_Show(struct MenuInputDesc* descs, const char** descriptions, int descsCount, InitMenuOptions init) {
@ -3427,7 +3427,7 @@ static const struct ScreenVTABLE TexIdsOverlay_VTABLE = {
TexIdsOverlay_Init, Screen_NullUpdate, TexIdsOverlay_Free, TexIdsOverlay_Init, Screen_NullUpdate, TexIdsOverlay_Free,
TexIdsOverlay_Render, TexIdsOverlay_BuildMesh, TexIdsOverlay_Render, TexIdsOverlay_BuildMesh,
TexIdsOverlay_KeyDown, Screen_InputUp, Screen_FKeyPress, Screen_FText, TexIdsOverlay_KeyDown, Screen_InputUp, Screen_FKeyPress, Screen_FText,
Menu_PointerDown, Screen_FPointer, Menu_PointerMove, Screen_TMouseScroll, Menu_PointerDown, Screen_PointerUp, Menu_PointerMove, Screen_TMouseScroll,
TexIdsOverlay_Layout, TexIdsOverlay_ContextLost, TexIdsOverlay_ContextRecreated TexIdsOverlay_Layout, TexIdsOverlay_ContextLost, TexIdsOverlay_ContextRecreated
}; };
void TexIdsOverlay_Show(void) { void TexIdsOverlay_Show(void) {
@ -3509,7 +3509,7 @@ static const struct ScreenVTABLE UrlWarningOverlay_VTABLE = {
UrlWarningOverlay_Init, Screen_NullUpdate, Screen_NullFunc, UrlWarningOverlay_Init, Screen_NullUpdate, Screen_NullFunc,
MenuScreen_Render2, Screen_BuildMesh, MenuScreen_Render2, Screen_BuildMesh,
Screen_InputDown, Screen_InputUp, Screen_TKeyPress, Screen_TText, Screen_InputDown, Screen_InputUp, Screen_TKeyPress, Screen_TText,
Menu_PointerDown, Screen_FPointer, Menu_PointerMove, Screen_TMouseScroll, Menu_PointerDown, Screen_PointerUp, Menu_PointerMove, Screen_TMouseScroll,
UrlWarningOverlay_Layout, Screen_ContextLost, UrlWarningOverlay_ContextRecreated UrlWarningOverlay_Layout, Screen_ContextLost, UrlWarningOverlay_ContextRecreated
}; };
void UrlWarningOverlay_Show(const cc_string* url) { void UrlWarningOverlay_Show(const cc_string* url) {
@ -3683,7 +3683,7 @@ static const struct ScreenVTABLE TexPackOverlay_VTABLE = {
TexPackOverlay_Init, TexPackOverlay_Update, Screen_NullFunc, TexPackOverlay_Init, TexPackOverlay_Update, Screen_NullFunc,
MenuScreen_Render2, Screen_BuildMesh, MenuScreen_Render2, Screen_BuildMesh,
Screen_InputDown, Screen_InputUp, Screen_TKeyPress, Screen_TText, Screen_InputDown, Screen_InputUp, Screen_TKeyPress, Screen_TText,
Menu_PointerDown, Screen_FPointer, Menu_PointerMove, Screen_TMouseScroll, Menu_PointerDown, Screen_PointerUp, Menu_PointerMove, Screen_TMouseScroll,
TexPackOverlay_Layout, TexPackOverlay_ContextLost, TexPackOverlay_ContextRecreated TexPackOverlay_Layout, TexPackOverlay_ContextLost, TexPackOverlay_ContextRecreated
}; };
void TexPackOverlay_Show(const cc_string* url) { void TexPackOverlay_Show(const cc_string* url) {
@ -3825,7 +3825,7 @@ static const struct ScreenVTABLE TouchOnscreenScreen_VTABLE = {
TouchOnscreenScreen_Init, Screen_NullUpdate, Screen_NullFunc, TouchOnscreenScreen_Init, Screen_NullUpdate, Screen_NullFunc,
MenuScreen_Render2, Screen_BuildMesh, MenuScreen_Render2, Screen_BuildMesh,
Screen_InputDown, Screen_InputUp, Screen_TKeyPress, Screen_TText, Screen_InputDown, Screen_InputUp, Screen_TKeyPress, Screen_TText,
Menu_PointerDown, Screen_FPointer, Menu_PointerMove, Screen_TMouseScroll, Menu_PointerDown, Screen_PointerUp, Menu_PointerMove, Screen_TMouseScroll,
TouchOnscreenScreen_Layout, TouchOnscreenScreen_ContextLost, TouchOnscreenScreen_ContextRecreated TouchOnscreenScreen_Layout, TouchOnscreenScreen_ContextLost, TouchOnscreenScreen_ContextRecreated
}; };
void TouchOnscreenScreen_Show(void) { void TouchOnscreenScreen_Show(void) {
@ -3987,7 +3987,7 @@ static const struct ScreenVTABLE TouchCtrlsScreen_VTABLE = {
TouchCtrlsScreen_Init, Screen_NullUpdate, Screen_NullFunc, TouchCtrlsScreen_Init, Screen_NullUpdate, Screen_NullFunc,
MenuScreen_Render2, Screen_BuildMesh, MenuScreen_Render2, Screen_BuildMesh,
Screen_InputDown, Screen_InputUp, Screen_TKeyPress, Screen_TText, Screen_InputDown, Screen_InputUp, Screen_TKeyPress, Screen_TText,
Menu_PointerDown, Screen_FPointer, Menu_PointerMove, Screen_TMouseScroll, Menu_PointerDown, Screen_PointerUp, Menu_PointerMove, Screen_TMouseScroll,
TouchCtrlsScreen_Layout, TouchCtrlsScreen_ContextLost, TouchCtrlsScreen_ContextRecreated TouchCtrlsScreen_Layout, TouchCtrlsScreen_ContextLost, TouchCtrlsScreen_ContextRecreated
}; };
void TouchCtrlsScreen_Show(void) { void TouchCtrlsScreen_Show(void) {
@ -4081,7 +4081,7 @@ static const struct ScreenVTABLE TouchMoreScreen_VTABLE = {
TouchMoreScreen_Init, Screen_NullUpdate, Screen_NullFunc, TouchMoreScreen_Init, Screen_NullUpdate, Screen_NullFunc,
MenuScreen_Render2, Screen_BuildMesh, MenuScreen_Render2, Screen_BuildMesh,
Screen_InputDown, Screen_InputUp, Screen_TKeyPress, Screen_TText, Screen_InputDown, Screen_InputUp, Screen_TKeyPress, Screen_TText,
Menu_PointerDown, Screen_FPointer, Menu_PointerMove, Screen_TMouseScroll, Menu_PointerDown, Screen_PointerUp, Menu_PointerMove, Screen_TMouseScroll,
TouchMoreScreen_Layout, Screen_ContextLost, TouchMoreScreen_ContextRecreated TouchMoreScreen_Layout, Screen_ContextLost, TouchMoreScreen_ContextRecreated
}; };
void TouchMoreScreen_Show(void) { void TouchMoreScreen_Show(void) {

View File

@ -300,7 +300,7 @@ static const struct ScreenVTABLE HUDScreen_VTABLE = {
HUDScreen_Init, HUDScreen_Update, HUDScreen_Free, HUDScreen_Init, HUDScreen_Update, HUDScreen_Free,
HUDScreen_Render, HUDScreen_BuildMesh, HUDScreen_Render, HUDScreen_BuildMesh,
HUDScreen_KeyDown, HUDScreen_KeyUp, Screen_FKeyPress, Screen_FText, HUDScreen_KeyDown, HUDScreen_KeyUp, Screen_FKeyPress, Screen_FText,
HUDscreen_PointerDown, Screen_FPointer, Screen_FPointer, HUDscreen_MouseScroll, HUDscreen_PointerDown, Screen_PointerUp, Screen_FPointer, HUDscreen_MouseScroll,
HUDScreen_Layout, HUDScreen_ContextLost, HUDScreen_ContextRecreated HUDScreen_Layout, HUDScreen_ContextLost, HUDScreen_ContextRecreated
}; };
void HUDScreen_Show(void) { void HUDScreen_Show(void) {
@ -714,7 +714,7 @@ static const struct ScreenVTABLE TabListOverlay_VTABLE = {
TabListOverlay_Init, Screen_NullUpdate, TabListOverlay_Free, TabListOverlay_Init, Screen_NullUpdate, TabListOverlay_Free,
TabListOverlay_Render, TabListOverlay_BuildMesh, TabListOverlay_Render, TabListOverlay_BuildMesh,
Screen_FInput, TabListOverlay_KeyUp, Screen_FKeyPress, Screen_FText, Screen_FInput, TabListOverlay_KeyUp, Screen_FKeyPress, Screen_FText,
TabListOverlay_PointerDown, Screen_FPointer, Screen_FPointer, Screen_FMouseScroll, TabListOverlay_PointerDown, Screen_PointerUp, Screen_FPointer, Screen_FMouseScroll,
TabListOverlay_Layout, TabListOverlay_ContextLost, TabListOverlay_ContextRecreated TabListOverlay_Layout, TabListOverlay_ContextLost, TabListOverlay_ContextRecreated
}; };
void TabListOverlay_Show(void) { void TabListOverlay_Show(void) {
@ -1292,7 +1292,7 @@ static const struct ScreenVTABLE ChatScreen_VTABLE = {
ChatScreen_Init, Screen_NullUpdate, ChatScreen_Free, ChatScreen_Init, Screen_NullUpdate, ChatScreen_Free,
ChatScreen_Render, ChatScreen_BuildMesh, ChatScreen_Render, ChatScreen_BuildMesh,
ChatScreen_KeyDown, ChatScreen_KeyUp, ChatScreen_KeyPress, ChatScreen_TextChanged, ChatScreen_KeyDown, ChatScreen_KeyUp, ChatScreen_KeyPress, ChatScreen_TextChanged,
ChatScreen_PointerDown, Screen_FPointer, Screen_FPointer, ChatScreen_MouseScroll, ChatScreen_PointerDown, Screen_PointerUp, Screen_FPointer, ChatScreen_MouseScroll,
ChatScreen_Layout, ChatScreen_ContextLost, ChatScreen_ContextRecreated ChatScreen_Layout, ChatScreen_ContextLost, ChatScreen_ContextRecreated
}; };
void ChatScreen_Show(void) { void ChatScreen_Show(void) {
@ -1448,9 +1448,9 @@ static int InventoryScreen_PointerDown(void* screen, int id, int x, int y) {
return true; return true;
} }
static int InventoryScreen_PointerUp(void* screen, int id, int x, int y) { static void InventoryScreen_PointerUp(void* screen, int id, int x, int y) {
struct InventoryScreen* s = (struct InventoryScreen*)screen; struct InventoryScreen* s = (struct InventoryScreen*)screen;
return Elem_HandlesPointerUp(&s->table, id, x, y); Elem_HandlesPointerUp(&s->table, id, x, y);
} }
static int InventoryScreen_PointerMove(void* screen, int id, int x, int y) { static int InventoryScreen_PointerMove(void* screen, int id, int x, int y) {
@ -1655,7 +1655,7 @@ static const struct ScreenVTABLE LoadingScreen_VTABLE = {
LoadingScreen_Init, Screen_NullUpdate, LoadingScreen_Free, LoadingScreen_Init, Screen_NullUpdate, LoadingScreen_Free,
LoadingScreen_Render, LoadingScreen_BuildMesh, LoadingScreen_Render, LoadingScreen_BuildMesh,
Screen_TInput, Screen_InputUp, Screen_TKeyPress, Screen_TText, Screen_TInput, Screen_InputUp, Screen_TKeyPress, Screen_TText,
Screen_TPointer, Screen_FPointer, Screen_TPointer, Screen_TMouseScroll, Screen_TPointer, Screen_PointerUp, Screen_TPointer, Screen_TMouseScroll,
LoadingScreen_Layout, LoadingScreen_ContextLost, LoadingScreen_ContextRecreated LoadingScreen_Layout, LoadingScreen_ContextLost, LoadingScreen_ContextRecreated
}; };
void LoadingScreen_Show(const cc_string* title, const cc_string* message) { void LoadingScreen_Show(const cc_string* title, const cc_string* message) {
@ -1730,7 +1730,7 @@ static const struct ScreenVTABLE GeneratingScreen_VTABLE = {
GeneratingScreen_Init, GeneratingScreen_Update, GeneratingScreen_Free, GeneratingScreen_Init, GeneratingScreen_Update, GeneratingScreen_Free,
GeneratingScreen_Render, LoadingScreen_BuildMesh, GeneratingScreen_Render, LoadingScreen_BuildMesh,
Screen_TInput, Screen_InputUp, Screen_TKeyPress, Screen_TText, Screen_TInput, Screen_InputUp, Screen_TKeyPress, Screen_TText,
Screen_TPointer, Screen_FPointer, Screen_FPointer, Screen_TMouseScroll, Screen_TPointer, Screen_PointerUp, Screen_FPointer, Screen_TMouseScroll,
LoadingScreen_Layout, LoadingScreen_ContextLost, LoadingScreen_ContextRecreated LoadingScreen_Layout, LoadingScreen_ContextLost, LoadingScreen_ContextRecreated
}; };
void GeneratingScreen_Show(void) { void GeneratingScreen_Show(void) {
@ -1874,7 +1874,7 @@ static const struct ScreenVTABLE DisconnectScreen_VTABLE = {
DisconnectScreen_Init, DisconnectScreen_Update, DisconnectScreen_Free, DisconnectScreen_Init, DisconnectScreen_Update, DisconnectScreen_Free,
DisconnectScreen_Render, Screen_BuildMesh, DisconnectScreen_Render, Screen_BuildMesh,
Screen_InputDown, Screen_InputUp, Screen_TKeyPress, Screen_TText, Screen_InputDown, Screen_InputUp, Screen_TKeyPress, Screen_TText,
Menu_PointerDown, Screen_FPointer, Menu_PointerMove, Screen_TMouseScroll, Menu_PointerDown, Screen_PointerUp, Menu_PointerMove, Screen_TMouseScroll,
DisconnectScreen_Layout, DisconnectScreen_ContextLost, DisconnectScreen_ContextRecreated DisconnectScreen_Layout, DisconnectScreen_ContextLost, DisconnectScreen_ContextRecreated
}; };
void DisconnectScreen_Show(const cc_string* title, const cc_string* message) { void DisconnectScreen_Show(const cc_string* title, const cc_string* message) {
@ -2081,7 +2081,7 @@ static int TouchScreen_PointerDown(void* screen, int id, int x, int y) {
return i >= 0; return i >= 0;
} }
static int TouchScreen_PointerUp(void* screen, int id, int x, int y) { static void TouchScreen_PointerUp(void* screen, int id, int x, int y) {
struct TouchScreen* s = (struct TouchScreen*)screen; struct TouchScreen* s = (struct TouchScreen*)screen;
int i; int i;
//Chat_Add1("POINTER UP: %i", &id); //Chat_Add1("POINTER UP: %i", &id);
@ -2095,9 +2095,8 @@ static int TouchScreen_PointerUp(void* screen, int id, int x, int y) {
Input_Set(KeyBinds[s->descs[i].bind], false); Input_Set(KeyBinds[s->descs[i].bind], false);
} }
s->btns[i].active &= ~id; s->btns[i].active &= ~id;
return true; return;
} }
return false;
} }
static void TouchScreen_Layout(void* screen) { static void TouchScreen_Layout(void* screen) {