Re-Organized code
This commit is contained in:
parent
2f4e1374b5
commit
cb46a7c1b9
6 changed files with 53 additions and 60 deletions
|
@ -54,8 +54,8 @@ typedef struct {
|
||||||
Popup* popup;
|
Popup* popup;
|
||||||
|
|
||||||
Manager* manager;
|
Manager* manager;
|
||||||
|
char* keyboard;
|
||||||
int selection;
|
int selection;
|
||||||
char* temp;
|
|
||||||
} FP_App;
|
} FP_App;
|
||||||
|
|
||||||
#endif
|
#endif
|
|
@ -25,59 +25,49 @@ void FP_Scene_Enter_Create(void* context) {
|
||||||
submenu_reset(app->submenu);
|
submenu_reset(app->submenu);
|
||||||
|
|
||||||
// Checking if we typed something before
|
// Checking if we typed something before
|
||||||
if (app->temp) {
|
if (app->keyboard) {
|
||||||
// Boolean
|
// Did we already start a password?
|
||||||
bool is_field = true;
|
if (!app->manager->new) {
|
||||||
|
app->manager->new = malloc(sizeof(Password));
|
||||||
|
}
|
||||||
|
|
||||||
// Checking if it's any of the following:
|
// Checking what we selected
|
||||||
if (!strcmp(app->temp, "Username")) {is_field = false;}
|
switch (app->selection) {
|
||||||
if (!strcmp(app->temp, "Password")) {is_field = false;}
|
case 0: // Name
|
||||||
|
// Does name already exist?
|
||||||
// We're good!
|
if (app->manager->new->name) {
|
||||||
if(is_field) {
|
free(app->manager->new->name);
|
||||||
// Did we already start a password?
|
|
||||||
if (!app->manager->new) {
|
|
||||||
app->manager->new = malloc(sizeof(Password));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Checking what we selected
|
// Copying it
|
||||||
switch (app->selection) {
|
app->manager->new->name = malloc(sizeof(char*));
|
||||||
case 0: // Name
|
strcpy(app->manager->new->name, app->keyboard);
|
||||||
// Does name already exist?
|
|
||||||
if (app->manager->new->name) {
|
|
||||||
free(app->manager->new->name);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Copying it
|
break;
|
||||||
app->manager->new->name = malloc(sizeof(char*));
|
case 1: // Username
|
||||||
strcpy(app->manager->new->name, app->temp);
|
// Does user already exist?
|
||||||
|
if (app->manager->new->user) {
|
||||||
break;
|
free(app->manager->new->user);
|
||||||
case 1: // Username
|
|
||||||
// Does user already exist?
|
|
||||||
if (app->manager->new->user) {
|
|
||||||
free(app->manager->new->user);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Copying it
|
|
||||||
app->manager->new->user = malloc(sizeof(char*));
|
|
||||||
strcpy(app->manager->new->user, app->temp);
|
|
||||||
break;
|
|
||||||
case 2: // Password
|
|
||||||
// Does phrase already exist?
|
|
||||||
if (app->manager->new->phrase) {
|
|
||||||
free(app->manager->new->phrase);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Copying it
|
|
||||||
app->manager->new->phrase = malloc(sizeof(char*));
|
|
||||||
strcpy(app->manager->new->phrase, app->temp);
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Copying it
|
||||||
|
app->manager->new->user = malloc(sizeof(char*));
|
||||||
|
strcpy(app->manager->new->user, app->keyboard);
|
||||||
|
break;
|
||||||
|
case 2: // Password
|
||||||
|
// Does phrase already exist?
|
||||||
|
if (app->manager->new->phrase) {
|
||||||
|
free(app->manager->new->phrase);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Copying it
|
||||||
|
app->manager->new->phrase = malloc(sizeof(char*));
|
||||||
|
strcpy(app->manager->new->phrase, app->keyboard);
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Freeing temp
|
// Freeing temp
|
||||||
free(app->temp);
|
free(app->keyboard);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Options
|
// Options
|
||||||
|
|
|
@ -17,16 +17,19 @@ void FP_Scene_Enter_Cred(void* context) {
|
||||||
text_box_reset(app->textbox);
|
text_box_reset(app->textbox);
|
||||||
|
|
||||||
// Setting text
|
// Setting text
|
||||||
if (!strcmp(app->temp, "Username")) {
|
switch (app->selection) {
|
||||||
|
case 0: // Username
|
||||||
text_box_set_text(
|
text_box_set_text(
|
||||||
app->textbox,
|
app->textbox,
|
||||||
app->manager->current->user
|
app->manager->current->user
|
||||||
);
|
);
|
||||||
} else {
|
break;
|
||||||
|
case 1: // Password
|
||||||
text_box_set_text(
|
text_box_set_text(
|
||||||
app->textbox,
|
app->textbox,
|
||||||
app->manager->current->phrase
|
app->manager->current->phrase
|
||||||
);
|
);
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Send view to Flipper
|
// Send view to Flipper
|
||||||
|
@ -35,9 +38,6 @@ void FP_Scene_Enter_Cred(void* context) {
|
||||||
void FP_Scene_Exit_Cred(void* context) {
|
void FP_Scene_Exit_Cred(void* context) {
|
||||||
// Setting context
|
// Setting context
|
||||||
FP_App* app = context;
|
FP_App* app = context;
|
||||||
|
|
||||||
// Free the temp string
|
|
||||||
free(app->temp);
|
|
||||||
|
|
||||||
// Reset menu
|
// Reset menu
|
||||||
dialog_ex_reset(app->dialog);
|
dialog_ex_reset(app->dialog);
|
||||||
|
|
|
@ -7,7 +7,7 @@ void FP_Scene_Callback_Type(void* context) {
|
||||||
FP_App* app = context;
|
FP_App* app = context;
|
||||||
|
|
||||||
// DEBUG
|
// DEBUG
|
||||||
FURI_LOG_D(TAG, "Typed: %s", app->temp);
|
FURI_LOG_D(TAG, "Typed: %s", app->keyboard);
|
||||||
|
|
||||||
// Going back a page
|
// Going back a page
|
||||||
scene_manager_previous_scene(app->scene_manager);
|
scene_manager_previous_scene(app->scene_manager);
|
||||||
|
@ -19,15 +19,20 @@ void FP_Scene_Enter_Type(void* context) {
|
||||||
// Reset view
|
// Reset view
|
||||||
text_input_reset(app->textinput);
|
text_input_reset(app->textinput);
|
||||||
|
|
||||||
// Creating temp string
|
// Does the keyboard variable still have something in it?
|
||||||
app->temp = malloc(sizeof(char*));
|
if (app->keyboard) {
|
||||||
|
free(app->keyboard);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Creating keyboard string
|
||||||
|
app->keyboard = malloc(sizeof(char*));
|
||||||
|
|
||||||
// Setting stuff
|
// Setting stuff
|
||||||
text_input_set_result_callback(
|
text_input_set_result_callback(
|
||||||
app->textinput,
|
app->textinput,
|
||||||
FP_Scene_Callback_Type,
|
FP_Scene_Callback_Type,
|
||||||
app,
|
app,
|
||||||
app->temp,
|
app->keyboard,
|
||||||
255,
|
255,
|
||||||
true
|
true
|
||||||
);
|
);
|
||||||
|
|
|
@ -69,13 +69,11 @@ bool FP_Scene_Event_View(void* context, SceneManagerEvent event) {
|
||||||
// What did we press?
|
// What did we press?
|
||||||
switch (event.event) {
|
switch (event.event) {
|
||||||
case FP_Scene_View_Event_Username:
|
case FP_Scene_View_Event_Username:
|
||||||
app->temp = malloc(sizeof(char*));
|
app->selection = 0;
|
||||||
app->temp = "Username";
|
|
||||||
scene_manager_next_scene(app->scene_manager, FP_Scene_Cred);
|
scene_manager_next_scene(app->scene_manager, FP_Scene_Cred);
|
||||||
break;
|
break;
|
||||||
case FP_Scene_View_Event_Password:
|
case FP_Scene_View_Event_Password:
|
||||||
app->temp = malloc(sizeof(char*));
|
app->selection = 1;
|
||||||
app->temp = "Password";
|
|
||||||
scene_manager_next_scene(app->scene_manager, FP_Scene_Cred);
|
scene_manager_next_scene(app->scene_manager, FP_Scene_Cred);
|
||||||
break;
|
break;
|
||||||
case FP_Scene_View_Event_BadUSB:
|
case FP_Scene_View_Event_BadUSB:
|
||||||
|
|
|
@ -143,6 +143,6 @@ void fp_app_free(FP_App* app) {
|
||||||
text_box_free(app->textbox);
|
text_box_free(app->textbox);
|
||||||
submenu_free(app->submenu);
|
submenu_free(app->submenu);
|
||||||
popup_free(app->popup);
|
popup_free(app->popup);
|
||||||
free(app->temp);
|
free(app->keyboard);
|
||||||
free(app);
|
free(app);
|
||||||
}
|
}
|
Loading…
Reference in a new issue