Skip to content

Commit

Permalink
added InputIntentBuilder
Browse files Browse the repository at this point in the history
  • Loading branch information
DevEmperor committed Oct 2, 2024
1 parent c1f7e6e commit b47764d
Show file tree
Hide file tree
Showing 6 changed files with 118 additions and 39 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@
import net.devemperor.wristassist.database.ChatHistoryModel;
import net.devemperor.wristassist.database.UsageDatabaseHelper;
import net.devemperor.wristassist.items.ChatItem;
import net.devemperor.wristassist.util.InputIntentBuilder;
import net.devemperor.wristassist.util.WristAssistUtil;

import org.json.JSONArray;
Expand Down Expand Up @@ -210,9 +211,10 @@ protected void onActivityResult(int requestCode, int resultCode, Intent data) {

public void saveReset(View view) throws JSONException, IOException {
if (!saveThisChat) {
Intent intent = new Intent(this, InputActivity.class);
intent.putExtra("net.devemperor.wristassist.input.title", getString(R.string.wristassist_set_chat_title));
intent.putExtra("net.devemperor.wristassist.input.hint", getString(R.string.wristassist_chat_title));
Intent intent = new InputIntentBuilder(this)
.setTitle(getString(R.string.wristassist_set_chat_title))
.setHint(getString(R.string.wristassist_chat_title))
.build();
startActivityForResult(intent, 1338);
} else {
for (int i = chatAdapter.getCount() - 1; i > ((chatAdapter.getItem(0).getChatMessage().getRole().equals(ChatMessageRole.SYSTEM.value())) ? 1 : 0); i--) {
Expand All @@ -230,10 +232,11 @@ public void ask(View view) throws JSONException, IOException {
if (errorTv.getVisibility() == View.VISIBLE) {
query(chatAdapter.getChatItems().get(chatAdapter.getCount() - 1).getChatMessage().getContent());
} else {
Intent intent = new Intent(this, InputActivity.class);
intent.putExtra("net.devemperor.wristassist.input.title", getString(R.string.wristassist_enter_prompt));
intent.putExtra("net.devemperor.wristassist.input.hint", getString(R.string.wristassist_prompt));
intent.putExtra("net.devemperor.wristassist.input.hands_free", sp.getBoolean("net.devemperor.wristassist.hands_free", false));
Intent intent = new InputIntentBuilder(this)
.setTitle(getString(R.string.wristassist_enter_prompt))
.setHint(getString(R.string.wristassist_prompt))
.setHandsFree(sp.getBoolean("net.devemperor.wristassist.hands_free", false))
.build();
startActivityForResult(intent, 1337);
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@

import net.devemperor.wristassist.R;
import net.devemperor.wristassist.database.ChatHistoryDatabaseHelper;
import net.devemperor.wristassist.util.InputIntentBuilder;

import org.json.JSONException;

Expand Down Expand Up @@ -72,9 +73,10 @@ protected void onCreate(Bundle savedInstanceState) {
}

public void editTitle(View view) {
Intent intent = new Intent(this, InputActivity.class);
intent.putExtra("net.devemperor.wristassist.input.title", getString(R.string.wristassist_edit_chat_title));
intent.putExtra("net.devemperor.wristassist.input.content", titleTv.getText().toString());
Intent intent = new InputIntentBuilder(this)
.setTitle(getString(R.string.wristassist_edit_chat_title))
.setContent(titleTv.getText().toString())
.build();
editTitleLauncher.launch(intent);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
import net.devemperor.wristassist.adapters.ImageAdapter;
import net.devemperor.wristassist.database.ImageModel;
import net.devemperor.wristassist.database.ImagesDatabaseHelper;
import net.devemperor.wristassist.util.InputIntentBuilder;

import java.util.List;

Expand Down Expand Up @@ -75,20 +76,19 @@ protected void onCreate(Bundle savedInstanceState) {

imageAdapter = new ImageAdapter(imageData, (menuPosition, image) -> {
if (menuPosition == 0) {
Intent inputIntent = new Intent(this, InputActivity.class);
inputIntent.putExtra("net.devemperor.wristassist.input.title", getString(R.string.wristassist_describe_image));
inputIntent.putExtra("net.devemperor.wristassist.input.hint", getString(R.string.wristassist_image_hint));
inputIntent.putExtra("net.devemperor.wristassist.input.hands_free", getSharedPreferences("net.devemperor.wristassist", MODE_PRIVATE)
.getBoolean("net.devemperor.wristassist.hands_free", false));

inputLauncher.launch(inputIntent);
Intent intent = new InputIntentBuilder(this)
.setTitle(getString(R.string.wristassist_describe_image))
.setHint(getString(R.string.wristassist_image_hint))
.setHandsFree(getSharedPreferences("net.devemperor.wristassist", MODE_PRIVATE).getBoolean("net.devemperor.wristassist.hands_free", false))
.build();
inputLauncher.launch(intent);
} else {
currentOpenPosition = menuPosition;
Intent openImageIntent = new Intent(this, OpenImageActivity.class);
openImageIntent.putExtra("net.devemperor.wristassist.imageId", imageData.get(menuPosition).getId());
Intent intent = new Intent(this, OpenImageActivity.class);
intent.putExtra("net.devemperor.wristassist.imageId", imageData.get(menuPosition).getId());
ActivityOptionsCompat options = ActivityOptionsCompat.makeSceneTransitionAnimation(this, image, "image");

openImageLauncher.launch(openImageIntent, options);
openImageLauncher.launch(intent, options);
}
});
galleryWrv.setAdapter(imageAdapter);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
import net.devemperor.wristassist.R;
import net.devemperor.wristassist.adapters.MainAdapter;
import net.devemperor.wristassist.items.MainItem;
import net.devemperor.wristassist.util.InputIntentBuilder;

import java.util.ArrayList;
import java.util.Random;
Expand Down Expand Up @@ -137,17 +138,20 @@ protected void onCreate(Bundle savedInstanceState) {
}

private void input(boolean withSystemMessage) {
Intent intent = new Intent(this, InputActivity.class);
if (withSystemMessage) {
intent.putExtra("net.devemperor.wristassist.input.title", getString(R.string.wristassist_enter_system_prompt));
intent.putExtra("net.devemperor.wristassist.input.hint", getString(R.string.wristassist_system_prompt));
intent.putExtra("net.devemperor.wristassist.input.title2", getString(R.string.wristassist_enter_prompt));
intent.putExtra("net.devemperor.wristassist.input.hint2", getString(R.string.wristassist_prompt));
Intent intent = new InputIntentBuilder(this)
.setTitle(getString(R.string.wristassist_enter_system_prompt))
.setHint(getString(R.string.wristassist_system_prompt))
.setTitle2(getString(R.string.wristassist_enter_prompt))
.setHint2(getString(R.string.wristassist_prompt))
.build();
inputWithSystemMessageLauncher.launch(intent);
} else {
intent.putExtra("net.devemperor.wristassist.input.title", getString(R.string.wristassist_enter_prompt));
intent.putExtra("net.devemperor.wristassist.input.hint", getString(R.string.wristassist_prompt));
intent.putExtra("net.devemperor.wristassist.input.hands_free", sp.getBoolean("net.devemperor.wristassist.hands_free", false));
Intent intent = new InputIntentBuilder(this)
.setTitle(getString(R.string.wristassist_enter_prompt))
.setHint(getString(R.string.wristassist_prompt))
.setHandsFree(sp.getBoolean("net.devemperor.wristassist.hands_free", false))
.build();
inputLauncher.launch(intent);
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@
import androidx.preference.SwitchPreference;

import net.devemperor.wristassist.R;
import net.devemperor.wristassist.util.InputIntentBuilder;

import org.apache.commons.validator.routines.UrlValidator;

Expand Down Expand Up @@ -87,12 +88,12 @@ public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
sp.edit().remove("net.devemperor.wristassist.custom_server_model").apply();
chatModelPreference.setEnabled(true);
} else {
Intent intent = new Intent(getContext(), InputActivity.class);
intent.putExtra("net.devemperor.wristassist.input.title", getString(R.string.wristassist_custom_host));
intent.putExtra("net.devemperor.wristassist.input.hint", getString(R.string.wristassist_custom_host_hint));
intent.putExtra("net.devemperor.wristassist.input.title2", getString(R.string.wristassist_custom_model));
intent.putExtra("net.devemperor.wristassist.input.hint2", getString(R.string.wristassist_custom_model_hint));

Intent intent = new InputIntentBuilder(getContext())
.setTitle(getString(R.string.wristassist_custom_host))
.setHint(getString(R.string.wristassist_custom_host_hint))
.setTitle2(getString(R.string.wristassist_custom_model))
.setHint2(getString(R.string.wristassist_custom_model_hint))
.build();
customServerInputLauncher.launch(intent);
}
return true;
Expand All @@ -105,11 +106,11 @@ public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
Preference globalSystemQueryPreference = findPreference("net.devemperor.wristassist.global_system_query");
if (globalSystemQueryPreference != null) {
globalSystemQueryPreference.setOnPreferenceClickListener(preference -> {
Intent intent = new Intent(getContext(), InputActivity.class);
intent.putExtra("net.devemperor.wristassist.input.title", getString(R.string.wristassist_define_global_system_prompt));
intent.putExtra("net.devemperor.wristassist.input.hint", getString(R.string.wristassist_system_prompt));
intent.putExtra("net.devemperor.wristassist.input.content", sp.getString("net.devemperor.wristassist.global_system_query", ""));

Intent intent = new InputIntentBuilder(getContext())
.setTitle(getString(R.string.wristassist_define_global_system_prompt))
.setHint(getString(R.string.wristassist_system_prompt))
.setContent(sp.getString("net.devemperor.wristassist.global_system_query", ""))
.build();
globalSystemPromptLauncher.launch(intent);
return true;
});
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
package net.devemperor.wristassist.util;

import android.content.Context;
import android.content.Intent;

import net.devemperor.wristassist.activities.InputActivity;

public class InputIntentBuilder {

private final Context context;
private String title;
private String content;
private String hint;
private String title2;
private String content2;
private String hint2;
private boolean handsFree;

public InputIntentBuilder(Context context) {
this.context = context;
}

public InputIntentBuilder setTitle(String title) {
this.title = title;
return this;
}

public InputIntentBuilder setContent(String content) {
this.content = content;
return this;
}

public InputIntentBuilder setHint(String hint) {
this.hint = hint;
return this;
}

public InputIntentBuilder setTitle2(String title2) {
this.title2 = title2;
return this;
}

public InputIntentBuilder setContent2(String content2) {
this.content2 = content2;
return this;
}

public InputIntentBuilder setHint2(String hint2) {
this.hint2 = hint2;
return this;
}

public InputIntentBuilder setHandsFree(boolean handsFree) {
this.handsFree = handsFree;
return this;
}

public Intent build() {
Intent intent = new Intent(context, InputActivity.class);
intent.putExtra("net.devemperor.wristassist.input.title", title);
intent.putExtra("net.devemperor.wristassist.input.content", content);
intent.putExtra("net.devemperor.wristassist.input.hint", hint);
intent.putExtra("net.devemperor.wristassist.input.title2", title2);
intent.putExtra("net.devemperor.wristassist.input.content2", content2);
intent.putExtra("net.devemperor.wristassist.input.hint2", hint2);
intent.putExtra("net.devemperor.wristassist.input.hands_free", handsFree);
return intent;
}
}

0 comments on commit b47764d

Please sign in to comment.