|
@@ -229,8 +229,9 @@ static void tetris_game_render_callback(Canvas* const canvas, void* ctx) {
|
|
|
furi_mutex_release(tetris_state->mutex);
|
|
furi_mutex_release(tetris_state->mutex);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-static void tetris_game_input_callback(InputEvent* input_event, FuriMessageQueue* event_queue) {
|
|
|
|
|
- furi_assert(event_queue);
|
|
|
|
|
|
|
+static void tetris_game_input_callback(InputEvent* input_event, void* ctx) {
|
|
|
|
|
+ furi_assert(ctx);
|
|
|
|
|
+ FuriMessageQueue* event_queue = ctx;
|
|
|
|
|
|
|
|
TetrisEvent event = {.type = EventTypeKey, .input = *input_event};
|
|
TetrisEvent event = {.type = EventTypeKey, .input = *input_event};
|
|
|
furi_message_queue_put(event_queue, &event, FuriWaitForever);
|
|
furi_message_queue_put(event_queue, &event, FuriWaitForever);
|
|
@@ -382,8 +383,9 @@ static bool tetris_game_piece_at_bottom(TetrisState* tetris_state, Piece* newPie
|
|
|
return false;
|
|
return false;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-static void tetris_game_update_timer_callback(FuriMessageQueue* event_queue) {
|
|
|
|
|
- furi_assert(event_queue);
|
|
|
|
|
|
|
+static void tetris_game_update_timer_callback(void* ctx) {
|
|
|
|
|
+ furi_assert(ctx);
|
|
|
|
|
+ FuriMessageQueue* event_queue = ctx;
|
|
|
|
|
|
|
|
TetrisEvent event = {.type = EventTypeTick};
|
|
TetrisEvent event = {.type = EventTypeTick};
|
|
|
furi_message_queue_put(event_queue, &event, FuriWaitForever);
|
|
furi_message_queue_put(event_queue, &event, FuriWaitForever);
|