| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154 |
- #include <alloc/free.h>
- void free_all()
- {
- free_text_input();
- flip_social_free_friends();
- flip_social_free_messages();
- flip_social_free_explore();
- flip_social_free_feed_dialog();
- }
- void free_text_input()
- {
- if (app_instance->text_input)
- {
- uart_text_input_free(app_instance->text_input);
- app_instance->text_input = NULL;
- view_dispatcher_remove_view(app_instance->view_dispatcher, FlipSocialViewTextInput);
- }
- }
- void flip_social_free_explore_dialog()
- {
- if (app_instance->dialog_explore)
- {
- dialog_ex_free(app_instance->dialog_explore);
- app_instance->dialog_explore = NULL;
- view_dispatcher_remove_view(app_instance->view_dispatcher, FlipSocialViewExploreDialog);
- }
- }
- void flip_social_free_friends_dialog()
- {
- if (app_instance->dialog_friends)
- {
- dialog_ex_free(app_instance->dialog_friends);
- app_instance->dialog_friends = NULL;
- view_dispatcher_remove_view(app_instance->view_dispatcher, FlipSocialViewFriendsDialog);
- }
- }
- void flip_social_free_messages_dialog()
- {
- if (app_instance->dialog_messages)
- {
- dialog_ex_free(app_instance->dialog_messages);
- app_instance->dialog_messages = NULL;
- view_dispatcher_remove_view(app_instance->view_dispatcher, FlipSocialViewMessagesDialog);
- return;
- }
- }
- void flip_social_free_compose_dialog()
- {
- if (app_instance->dialog_compose)
- {
- dialog_ex_free(app_instance->dialog_compose);
- app_instance->dialog_compose = NULL;
- view_dispatcher_remove_view(app_instance->view_dispatcher, FlipSocialViewComposeDialog);
- }
- }
- void flip_social_free_feed_dialog()
- {
- if (app_instance->dialog_feed)
- {
- dialog_ex_free(app_instance->dialog_feed);
- app_instance->dialog_feed = NULL;
- view_dispatcher_remove_view(app_instance->view_dispatcher, FlipSocialViewFeedDialog);
- }
- }
- bool about_widget_alloc(bool is_logged_in)
- {
- if (!is_logged_in)
- {
- if (!app_instance->widget_logged_out_about)
- {
- return easy_flipper_set_widget(&app_instance->widget_logged_out_about, FlipSocialViewLoggedOutAbout, "Welcome to FlipSocial\n---\nThe social media app for\nFlipper Zero, created by\nJBlanked: www.flipsocial.net\n---\nPress BACK to return.", flip_social_callback_to_submenu_logged_out, &app_instance->view_dispatcher);
- }
- }
- else
- {
- if (!app_instance->widget_logged_in_about)
- {
- return easy_flipper_set_widget(&app_instance->widget_logged_in_about, FlipSocialViewLoggedInSettingsAbout, "Welcome to FlipSocial\n---\nThe social media app for\nFlipper Zero, created by\nJBlanked: www.flipsocial.net\n---\nPress BACK to return.", flip_social_callback_to_settings_logged_in, &app_instance->view_dispatcher);
- }
- }
- return true;
- }
- void free_about_widget(bool is_logged_in)
- {
- if (is_logged_in && app_instance->widget_logged_in_about)
- {
- widget_free(app_instance->widget_logged_in_about);
- app_instance->widget_logged_in_about = NULL;
- view_dispatcher_remove_view(app_instance->view_dispatcher, FlipSocialViewLoggedInSettingsAbout);
- }
- if (!is_logged_in && app_instance->widget_logged_out_about)
- {
- widget_free(app_instance->widget_logged_out_about);
- app_instance->widget_logged_out_about = NULL;
- view_dispatcher_remove_view(app_instance->view_dispatcher, FlipSocialViewLoggedOutAbout);
- }
- }
- bool pre_saved_messages_alloc(void)
- {
- if (!app_instance)
- {
- return false;
- }
- if (!app_instance->submenu_compose)
- {
- if (!easy_flipper_set_submenu(&app_instance->submenu_compose, FlipSocialViewLoggedInCompose, "Create A Post", flip_social_callback_to_submenu_logged_in, &app_instance->view_dispatcher))
- {
- return false;
- }
- submenu_reset(app_instance->submenu_compose);
- submenu_add_item(app_instance->submenu_compose, "Add Pre-Save", FlipSocialSubmenuComposeIndexAddPreSave, flip_social_callback_submenu_choices, app_instance);
- // Load the playlist
- if (load_playlist(&app_instance->pre_saved_messages))
- {
- // Update the playlist submenu
- for (uint32_t i = 0; i < app_instance->pre_saved_messages.count; i++)
- {
- if (app_instance->pre_saved_messages.messages[i][0] != '\0') // Check if the string is not empty
- {
- submenu_add_item(app_instance->submenu_compose, app_instance->pre_saved_messages.messages[i], FlipSocialSubemnuComposeIndexStartIndex + i, flip_social_callback_submenu_choices, app_instance);
- }
- }
- }
- }
- return true;
- }
- void free_pre_saved_messages(void)
- {
- if (app_instance->submenu_compose)
- {
- submenu_free(app_instance->submenu_compose);
- app_instance->submenu_compose = NULL;
- view_dispatcher_remove_view(app_instance->view_dispatcher, FlipSocialViewLoggedInCompose);
- }
- }
- void flip_social_free_friends(void)
- {
- if (!flip_social_friends)
- {
- return;
- }
- free(flip_social_friends);
- flip_social_friends = NULL;
- if (app_instance->submenu_friends)
- {
- submenu_free(app_instance->submenu_friends);
- app_instance->submenu_friends = NULL;
- view_dispatcher_remove_view(app_instance->view_dispatcher, FlipSocialViewLoggedInFriendsSubmenu);
- }
- }
|