diff --git a/app/build.gradle b/app/build.gradle index 6142bac..6e64366 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -7,10 +7,10 @@ android { defaultConfig { applicationId "com.git.amarradi.palatschinkencounter" - minSdkVersion 16 - targetSdkVersion 30 - versionCode 9 - versionName "1.0.6" + minSdkVersion 26 + targetSdkVersion 32 + versionCode 10 + versionName "1.0.7" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } @@ -32,11 +32,19 @@ dependencies { // Java language implementation implementation "androidx.preference:preference:$preference_version" + implementation 'androidx.appcompat:appcompat:1.4.2' +/* implementation 'androidx.appcompat:appcompat:1.3.1' - implementation 'com.google.android.material:material:1.4.0' implementation 'androidx.constraintlayout:constraintlayout:2.1.1' testImplementation 'junit:junit:4.12' androidTestImplementation 'androidx.test.ext:junit:1.1.3' androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0' + + */ + implementation 'com.google.android.material:material:1.6.1' + implementation 'androidx.constraintlayout:constraintlayout:2.1.4' + testImplementation 'junit:junit:4.13.2' + androidTestImplementation 'androidx.test.ext:junit:1.1.3' + androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0' } \ No newline at end of file diff --git a/app/src/main/java/com/git/amarradi/palatschinkencounter/AboutActivity.java b/app/src/main/java/com/git/amarradi/palatschinkencounter/AboutActivity.java index 0e9bb73..f473933 100644 --- a/app/src/main/java/com/git/amarradi/palatschinkencounter/AboutActivity.java +++ b/app/src/main/java/com/git/amarradi/palatschinkencounter/AboutActivity.java @@ -2,17 +2,14 @@ import android.annotation.SuppressLint; import android.graphics.Typeface; -import android.os.Build; import android.os.Bundle; import android.widget.TextView; import androidx.annotation.Nullable; -import androidx.annotation.RequiresApi; import androidx.appcompat.app.AppCompatActivity; public class AboutActivity extends AppCompatActivity { - @RequiresApi(api = Build.VERSION_CODES.O) @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); @@ -22,13 +19,15 @@ protected void onCreate(@Nullable Bundle savedInstanceState) { TextView havefun = findViewById(R.id.tvhavefun); TextView oss = findViewById(R.id.itsos); TextView appVersion = findViewById(R.id.tvVersion); - Typeface typeface = getResources().getFont(R.font.opensans_regular); - appVersion.setTypeface(typeface); - title.setTypeface(typeface); - whatsdo.setTypeface(typeface); - havefun.setTypeface(typeface); - oss.setTypeface(typeface); - //Resources resources = getResources(); + Typeface typeface_regular = getResources().getFont(R.font.opensans_regular); + Typeface typeface_bold = getResources().getFont(R.font.opensans_extrabold); + appVersion.setTypeface(typeface_regular); + title.setTypeface(typeface_regular); + whatsdo.setTypeface(typeface_regular); + havefun.setTypeface(typeface_bold); + oss.setTypeface(typeface_regular); + TextView resethow = findViewById(R.id.resethowto); + resethow.setTypeface(typeface_regular); @SuppressLint({"StringFormatInvalid", "LocalSuppress"}) String version = String.format(getResources().getString(R.string.version), BuildConfig.VERSION_NAME); appVersion.setText(version); } diff --git a/app/src/main/java/com/git/amarradi/palatschinkencounter/MainActivity.java b/app/src/main/java/com/git/amarradi/palatschinkencounter/MainActivity.java index 06ece93..f6510c8 100644 --- a/app/src/main/java/com/git/amarradi/palatschinkencounter/MainActivity.java +++ b/app/src/main/java/com/git/amarradi/palatschinkencounter/MainActivity.java @@ -6,9 +6,7 @@ import android.annotation.SuppressLint; import android.content.Intent; import android.content.SharedPreferences; -import android.graphics.Color; import android.graphics.Typeface; -import android.os.Build; import android.os.Bundle; import android.util.Log; import android.view.Menu; @@ -16,15 +14,15 @@ import android.view.MenuItem; import android.widget.Button; import android.widget.TextView; +import android.widget.Toast; -import androidx.annotation.RequiresApi; import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.app.AppCompatDelegate; import androidx.preference.PreferenceManager; import java.util.Objects; -public class MainActivity extends AppCompatActivity implements SharedPreferences.OnSharedPreferenceChangeListener { +public class MainActivity extends AppCompatActivity implements SharedPreferences.OnSharedPreferenceChangeListener, WipeDataDialog.WipeDialogListener { public static final String SHARED_PREFS = "sharedPrefs"; public static final String COUNTER = "text"; @@ -37,7 +35,7 @@ public class MainActivity extends AppCompatActivity implements Shared private boolean safedNightMode; @SuppressLint("DefaultLocale") - @RequiresApi(api = Build.VERSION_CODES.O) + @Override protected void onCreate(Bundle savedInstanceState) { @@ -51,6 +49,8 @@ protected void onCreate(Bundle savedInstanceState) { setContentView(R.layout.activity_main); Button counterTextButton = findViewById(R.id.counter_text_button); + counterTextButton.setTypeface(getResources().getFont(R.font.opensans_bold)); + textView = findViewById(R.id.textview); TextView textView_start = findViewById(R.id.tv_startpage); textView.setTypeface(typeface); @@ -59,13 +59,32 @@ protected void onCreate(Bundle savedInstanceState) { setupSharedPreferences(); + + textView.setOnLongClickListener(v -> { + openDialog(); + return false; + }); + + SharedPreferences sharedPreferences = getSharedPreferences(SHARED_PREFS,MODE_PRIVATE); + String themes = sharedPreferences.getString(NIGHT_MODE,""); + + changeTheme(themes); + + + + + /* SharedPreferences sharedPreferencesNDM = getSharedPreferences(SHARED_PREFS, MODE_PRIVATE); + safedNightMode = sharedPreferencesNDM.getBoolean(NIGHT_MODE, false); + + + if (safedNightMode) { AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES); counterTextButton.setTextColor(Color.WHITE); } else { AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_NO); } - +*/ load_data(); updateViews(); @@ -78,31 +97,74 @@ protected void onCreate(Bundle savedInstanceState) { updateViews(); } + private void setupSharedPreferences() { + SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(this); + sharedPreferences.registerOnSharedPreferenceChangeListener(this); + } + + @Override public boolean onCreateOptionsMenu(Menu menu) { MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.menu, menu); + return true; } - @SuppressLint("NonConstantResourceId") + @Override public boolean onOptionsItemSelected(MenuItem item) { - switch (item.getItemId()) { - case R.id.item_setting: - Intent intentSetting = new Intent(this, SettingActivity.class); - startActivity(intentSetting); - return true; - default: - return super.onOptionsItemSelected(item); + if (item.getItemId() == R.id.item_setting) { + Intent intentSetting = new Intent(this, SettingActivity.class); + startActivity(intentSetting); + return true; + } + return super.onOptionsItemSelected(item); + + } + + @Override + public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) { + Log.d("key", key); + if (key.equals("theme")) { + loadThemeFromPreference(sharedPreferences); } + } + + + // Method to pass value from SharedPreferences + private void loadThemeFromPreference(SharedPreferences sharedPreferences) { + // Log.d("Parzival",sharedPreferences.getString(getString(R.string.theme_active), + // getString(R.string.lightmode_preference_option_value))); + changeTheme(sharedPreferences.getString(getString(R.string.theme_key), + getString(R.string.lightmode_preference_option_value))); + } + + // Method to set Color of Text. + private void changeTheme(String theme_value) { + Log.d("changeTheme", theme_value); + if (theme_value.equals("lightmode")||theme_value.equals("hell")) { + AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_NO); + SharedPreferences sharedPreferences = getSharedPreferences(SHARED_PREFS,MODE_PRIVATE); + SharedPreferences.Editor editor = sharedPreferences.edit(); + editor.putString(NIGHT_MODE,theme_value); + editor.apply(); + } else if (theme_value.equals("darkmode")||theme_value.equals("dunkel")) { + AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES); + SharedPreferences sharedPreferences = getSharedPreferences(SHARED_PREFS,MODE_PRIVATE); + SharedPreferences.Editor editor = sharedPreferences.edit(); + editor.putString(NIGHT_MODE,theme_value); + editor.apply(); + } } - /* + + + public void openDialog() { WipeDataDialog dialog = new WipeDataDialog(); dialog.show(getSupportFragmentManager(), "open dialog"); - }*/ + } public void save_data() { SharedPreferences sharedPreferences = getSharedPreferences(SHARED_PREFS, MODE_PRIVATE); @@ -113,8 +175,7 @@ public void save_data() { public void load_data() { SharedPreferences sharedPreferences = getSharedPreferences(SHARED_PREFS, MODE_PRIVATE); - int safedCounter = sharedPreferences.getInt(COUNTER, 0); - counter = safedCounter; + counter = sharedPreferences.getInt(COUNTER, 0); } @SuppressLint("DefaultLocale") @@ -123,8 +184,6 @@ public void updateViews() { } - /* - public void reset_counter() { counter = 0; updateViews(); @@ -136,43 +195,10 @@ public void reset_counter() { public void onYesClicked() { reset_counter(); } -*/ - private void setupSharedPreferences() { - SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(this); - sharedPreferences.registerOnSharedPreferenceChangeListener(this); - } - @Override - public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) { - if (key.equals("darkmode")) { - Log.d("Value mode onShared:", key); - AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_NO); - } else { - Log.d("Value mode onShared:", key); - AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES); - } - } - // Method to pass value from SharedPreferences - private void loadColorFromPreference(SharedPreferences sharedPreferences) { - Log.d("Parzival",sharedPreferences.getString(getString(R.string.theme_key), - getString(R.string.lightmode_preference_option_value))); - changeDarkLightMode(sharedPreferences.getString(getString(R.string.theme_key), - getString(R.string.lightmode_preference_option_value))); - } - // Method to set Color of Text. - private void changeDarkLightMode(String mode) { - Log.d("Value mode:", mode); - if (mode.equals("lightmode")) { - Log.d("Value mode:", mode); - AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_NO); - } else if(mode.equals("darkmode")) { - Log.d("Value mode:", mode); - AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES); - } - } } \ No newline at end of file diff --git a/app/src/main/java/com/git/amarradi/palatschinkencounter/RecipeActivity.java b/app/src/main/java/com/git/amarradi/palatschinkencounter/RecipeActivity.java index c227eaf..f893085 100644 --- a/app/src/main/java/com/git/amarradi/palatschinkencounter/RecipeActivity.java +++ b/app/src/main/java/com/git/amarradi/palatschinkencounter/RecipeActivity.java @@ -1,48 +1,28 @@ package com.git.amarradi.palatschinkencounter; -import android.graphics.Typeface; -import android.os.Build; import android.os.Bundle; -import android.widget.TextView; +import android.widget.ArrayAdapter; +import android.widget.ListView; import androidx.annotation.Nullable; -import androidx.annotation.RequiresApi; import androidx.appcompat.app.AppCompatActivity; public class RecipeActivity extends AppCompatActivity { + ListView listView_Recipe; + String[] listItem_Recipe; + - @RequiresApi(api = Build.VERSION_CODES.O) @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_recipe); - TextView recipe = findViewById(R.id.tv_recipe_txt); - TextView ingredients = findViewById(R.id.pancake_ingredients); - TextView flour = findViewById(R.id.tv_flour); - TextView eggs = findViewById(R.id.tv_eggs); - TextView milk = findViewById(R.id.tv_milk); - TextView mineralWater = findViewById(R.id.tv_mineral_water); - TextView salt = findViewById(R.id.tv_salt); - TextView preparation = findViewById(R.id.pancake_preparation); - TextView deliuteEggs = findViewById(R.id.tv_dilute_eggs); - TextView addFlour = findViewById(R.id.tv_add_flour); - TextView addMilk = findViewById(R.id.tv_add_oil); - TextView addOil = findViewById(R.id.tv_add_mineral_water); - - Typeface typeface = getResources().getFont(R.font.opensans_regular); - - recipe.setTypeface(typeface); - ingredients.setTypeface(typeface); - flour.setTypeface(typeface); - eggs.setTypeface(typeface); - milk.setTypeface(typeface); - mineralWater.setTypeface(typeface); - salt.setTypeface(typeface); - preparation.setTypeface(typeface); - deliuteEggs.setTypeface(typeface); - addFlour.setTypeface(typeface); - addMilk.setTypeface(typeface); - addOil.setTypeface(typeface); + listView_Recipe = findViewById(R.id.listViewIngredients); + listItem_Recipe = getResources().getStringArray(R.array.ingredients_array); + final ArrayAdapter arrayAdapter_Ingredients = new ArrayAdapter<>(this, + R.layout.simple_list_item_1, listItem_Recipe); + listView_Recipe.setAdapter(arrayAdapter_Ingredients); + + } } diff --git a/app/src/main/java/com/git/amarradi/palatschinkencounter/SettingActivity.java b/app/src/main/java/com/git/amarradi/palatschinkencounter/SettingActivity.java index 2cd2bce..5c25bac 100644 --- a/app/src/main/java/com/git/amarradi/palatschinkencounter/SettingActivity.java +++ b/app/src/main/java/com/git/amarradi/palatschinkencounter/SettingActivity.java @@ -22,7 +22,6 @@ public void onBackPressed() { protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - getSupportFragmentManager().beginTransaction() .replace(android.R.id.content, new SettingsFragment()) .commit(); @@ -31,5 +30,7 @@ protected void onCreate(Bundle savedInstanceState) { if (actionBar != null) { actionBar.setDisplayShowHomeEnabled(true); } + + } } \ No newline at end of file diff --git a/app/src/main/java/com/git/amarradi/palatschinkencounter/SettingsFragment.java b/app/src/main/java/com/git/amarradi/palatschinkencounter/SettingsFragment.java index 8ac2925..9451857 100644 --- a/app/src/main/java/com/git/amarradi/palatschinkencounter/SettingsFragment.java +++ b/app/src/main/java/com/git/amarradi/palatschinkencounter/SettingsFragment.java @@ -4,82 +4,115 @@ import android.content.SharedPreferences; import android.net.Uri; import android.os.Bundle; -import android.widget.Toast; import androidx.annotation.NonNull; -import androidx.annotation.Nullable; +import androidx.preference.CheckBoxPreference; +import androidx.preference.EditTextPreference; +import androidx.preference.ListPreference; import androidx.preference.Preference; import androidx.preference.PreferenceFragmentCompat; import androidx.preference.PreferenceScreen; +import java.util.Objects; -public class SettingsFragment extends PreferenceFragmentCompat implements SharedPreferences.OnSharedPreferenceChangeListener, Preference.OnPreferenceClickListener { +/** + * Created by Parzival on 18-03-2018. + */ +public class SettingsFragment extends PreferenceFragmentCompat implements SharedPreferences.OnSharedPreferenceChangeListener { @Override - public void onCreatePreferences(@Nullable Bundle savedInstanceState, @Nullable String rootKey) { - + public void onCreatePreferences(Bundle savedInstanceState, String rootKey) { addPreferencesFromResource(R.xml.preferences); SharedPreferences sharedPreferences = getPreferenceScreen().getSharedPreferences(); PreferenceScreen prefScreen = getPreferenceScreen(); - Preference feedback_preference = (Preference) findPreference("feedback_preference"); - + Preference feedback_preference = findPreference("feedback_preference"); + assert feedback_preference != null; feedback_preference.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() { @Override public boolean onPreferenceClick(@NonNull Preference preference) { Intent intent = new Intent(Intent.ACTION_SENDTO); intent.setData(Uri.parse("mailto:")); - intent.putExtra(Intent.EXTRA_EMAIL, "info@palatschinkencounter.de"); + intent.putExtra(Intent.EXTRA_EMAIL, new String[]{"info@palatschinkencounter.de"}); intent.putExtra(Intent.EXTRA_SUBJECT, "Feedback"); startActivity(intent); - return true; - } - }); - Preference recipe_preference = (Preference) findPreference("recipe"); - recipe_preference.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() { - @Override - public boolean onPreferenceClick(@NonNull Preference preference) { - Intent intentRecipe = new Intent(getActivity(), RecipeActivity.class); - startActivity(intentRecipe); return false; } }); - Preference about_preference = (Preference) findPreference("about"); - about_preference.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() { - @Override - public boolean onPreferenceClick(@NonNull Preference preference) { - Intent intentAbout = new Intent(getActivity(),AboutActivity.class); - startActivity(intentAbout); - return false; + Preference version_preference = getPreferenceManager().findPreference("version_preference"); + + assert version_preference != null; + version_preference.setTitle("Palatschinkencounter " + BuildConfig.VERSION_NAME); + int count = prefScreen.getPreferenceCount(); + + // Go through all of the preferences, and set up their preference summary. + for (int i = 0; i < count; i++) { + Preference p = prefScreen.getPreference(i); + + // You don't need to set up preference summaries for checkbox preferences because + // they are already set up in xml using summaryOff and summary On + if (!(p instanceof CheckBoxPreference)) { + String value = sharedPreferences != null ? sharedPreferences.getString(p.getKey(), "") : null; + + setPreferenceSummary(p, value); } + } + + Preference recipe_preference = getPreferenceManager().findPreference("recipe"); + Objects.requireNonNull(recipe_preference).setOnPreferenceClickListener(preference -> { + Intent recipe_intent = new Intent(getActivity(), RecipeActivity.class); + startActivity(recipe_intent); + return false; + }); + Preference about_preference = getPreferenceManager().findPreference("about"); + Objects.requireNonNull(about_preference).setOnPreferenceClickListener(preference -> { + Intent about_intent = new Intent(getActivity(), AboutActivity.class); + startActivity(about_intent); + return false; }); } - - @Override public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) { - + // Figure out which preference was changed + Preference preference = findPreference(key); + if (null != preference) { + // Updates the summary for the preference + if (!(preference instanceof CheckBoxPreference)) { + String value = sharedPreferences.getString(preference.getKey(), ""); + setPreferenceSummary(preference, value); + } + } } - @Override - public boolean onPreferenceClick(@NonNull Preference preference) { - return false; + private void setPreferenceSummary(Preference preference, String value) { + if (preference instanceof ListPreference) { + // For list preferences, figure out the label of the selected value + ListPreference listPreference = (ListPreference) preference; + int prefIndex = listPreference.findIndexOfValue(value); + if (prefIndex >= 0) { + // Set the summary to that label + listPreference.setSummary(listPreference.getEntries()[prefIndex]); + } + } else if (preference instanceof EditTextPreference) { + // For EditTextPreferences, set the summary to the value's simple string representation. + preference.setSummary(value); + } } @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - getPreferenceScreen().getSharedPreferences() + Objects.requireNonNull(getPreferenceScreen().getSharedPreferences()) .registerOnSharedPreferenceChangeListener(this); } @Override public void onDestroy() { super.onDestroy(); - getPreferenceScreen().getSharedPreferences() + Objects.requireNonNull(getPreferenceScreen().getSharedPreferences()) .unregisterOnSharedPreferenceChangeListener(this); } } \ No newline at end of file diff --git a/app/src/main/res/drawable-night/ic_baseline_bug_report_24.xml b/app/src/main/res/drawable-night/ic_baseline_bug_report_24.xml new file mode 100644 index 0000000..4b17e96 --- /dev/null +++ b/app/src/main/res/drawable-night/ic_baseline_bug_report_24.xml @@ -0,0 +1,7 @@ + + + diff --git a/app/src/main/res/drawable/ic_baseline_list_24.xml b/app/src/main/res/drawable-night/ic_baseline_contact_support_24.xml similarity index 55% rename from app/src/main/res/drawable/ic_baseline_list_24.xml rename to app/src/main/res/drawable-night/ic_baseline_contact_support_24.xml index 1fa2e3c..69e5e87 100644 --- a/app/src/main/res/drawable/ic_baseline_list_24.xml +++ b/app/src/main/res/drawable-night/ic_baseline_contact_support_24.xml @@ -7,5 +7,5 @@ android:viewportHeight="24"> + android:pathData="M11.5,2C6.81,2 3,5.81 3,10.5S6.81,19 11.5,19h0.5v3c4.86,-2.34 8,-7 8,-11.5C20,5.81 16.19,2 11.5,2zM12.5,16.5h-2v-2h2v2zM12.5,13h-2c0,-3.25 3,-3 3,-5 0,-1.1 -0.9,-2 -2,-2s-2,0.9 -2,2h-2c0,-2.21 1.79,-4 4,-4s4,1.79 4,4c0,2.5 -3,2.75 -3,5z" /> diff --git a/app/src/main/res/drawable-night/ic_baseline_delete_forever_24.xml b/app/src/main/res/drawable-night/ic_baseline_delete_forever_24.xml new file mode 100644 index 0000000..789dd4f --- /dev/null +++ b/app/src/main/res/drawable-night/ic_baseline_delete_forever_24.xml @@ -0,0 +1,10 @@ + + + diff --git a/app/src/main/res/drawable-night/ic_baseline_description_24.xml b/app/src/main/res/drawable-night/ic_baseline_description_24.xml new file mode 100644 index 0000000..827429d --- /dev/null +++ b/app/src/main/res/drawable-night/ic_baseline_description_24.xml @@ -0,0 +1,5 @@ + + + diff --git a/app/src/main/res/drawable-night/ic_baseline_mail_24.xml b/app/src/main/res/drawable-night/ic_baseline_mail_24.xml index 279b280..5a0fef2 100644 --- a/app/src/main/res/drawable-night/ic_baseline_mail_24.xml +++ b/app/src/main/res/drawable-night/ic_baseline_mail_24.xml @@ -1,7 +1,7 @@ + + diff --git a/app/src/main/res/drawable-night/ic_baseline_settings_24.xml b/app/src/main/res/drawable-night/ic_baseline_settings_24.xml new file mode 100644 index 0000000..a532d4c --- /dev/null +++ b/app/src/main/res/drawable-night/ic_baseline_settings_24.xml @@ -0,0 +1,7 @@ + + + diff --git a/app/src/main/res/drawable-night/ic_dn_switch.xml b/app/src/main/res/drawable-night/ic_dn_switch.xml index 6ac1fe2..e144d0f 100644 --- a/app/src/main/res/drawable-night/ic_dn_switch.xml +++ b/app/src/main/res/drawable-night/ic_dn_switch.xml @@ -1,10 +1,12 @@ + android:fillColor="@android:color/holo_orange_dark" + android:pathData="M12,7c-2.76,0 -5,2.24 -5,5s2.24,5 5,5s5,-2.24 5,-5S14.76,7 12,7L12,7zM2,13l2,0c0.55,0 1,-0.45 1,-1s-0.45,-1 -1,-1l-2,0c-0.55,0 -1,0.45 -1,1S1.45,13 2,13zM20,13l2,0c0.55,0 1,-0.45 1,-1s-0.45,-1 -1,-1l-2,0c-0.55,0 -1,0.45 -1,1S19.45,13 20,13zM11,2v2c0,0.55 0.45,1 1,1s1,-0.45 1,-1V2c0,-0.55 -0.45,-1 -1,-1S11,1.45 11,2zM11,20v2c0,0.55 0.45,1 1,1s1,-0.45 1,-1v-2c0,-0.55 -0.45,-1 -1,-1C11.45,19 11,19.45 11,20zM5.99,4.58c-0.39,-0.39 -1.03,-0.39 -1.41,0c-0.39,0.39 -0.39,1.03 0,1.41l1.06,1.06c0.39,0.39 1.03,0.39 1.41,0s0.39,-1.03 0,-1.41L5.99,4.58zM18.36,16.95c-0.39,-0.39 -1.03,-0.39 -1.41,0c-0.39,0.39 -0.39,1.03 0,1.41l1.06,1.06c0.39,0.39 1.03,0.39 1.41,0c0.39,-0.39 0.39,-1.03 0,-1.41L18.36,16.95zM19.42,5.99c0.39,-0.39 0.39,-1.03 0,-1.41c-0.39,-0.39 -1.03,-0.39 -1.41,0l-1.06,1.06c-0.39,0.39 -0.39,1.03 0,1.41s1.03,0.39 1.41,0L19.42,5.99zM7.05,18.36c0.39,-0.39 0.39,-1.03 0,-1.41c-0.39,-0.39 -1.03,-0.39 -1.41,0l-1.06,1.06c-0.39,0.39 -0.39,1.03 0,1.41s1.03,0.39 1.41,0L7.05,18.36z" + tools:ignore="VectorPath" /> diff --git a/app/src/main/res/drawable/counter_txt_button_bg.xml b/app/src/main/res/drawable/counter_plus_btn_bg_shape.xml similarity index 69% rename from app/src/main/res/drawable/counter_txt_button_bg.xml rename to app/src/main/res/drawable/counter_plus_btn_bg_shape.xml index 810a926..f80d9a9 100644 --- a/app/src/main/res/drawable/counter_txt_button_bg.xml +++ b/app/src/main/res/drawable/counter_plus_btn_bg_shape.xml @@ -2,8 +2,9 @@ + - + \ No newline at end of file diff --git a/app/src/main/res/drawable/ic_baseline_bug_report_24.xml b/app/src/main/res/drawable/ic_baseline_bug_report_24.xml new file mode 100644 index 0000000..4b17e96 --- /dev/null +++ b/app/src/main/res/drawable/ic_baseline_bug_report_24.xml @@ -0,0 +1,7 @@ + + + diff --git a/app/src/main/res/drawable/ic_baseline_description_24.xml b/app/src/main/res/drawable/ic_baseline_description_24.xml new file mode 100644 index 0000000..827429d --- /dev/null +++ b/app/src/main/res/drawable/ic_baseline_description_24.xml @@ -0,0 +1,5 @@ + + + diff --git a/app/src/main/res/drawable/ic_baseline_emoji_emotions_24.xml b/app/src/main/res/drawable/ic_baseline_emoji_emotions_24.xml new file mode 100644 index 0000000..68a3a63 --- /dev/null +++ b/app/src/main/res/drawable/ic_baseline_emoji_emotions_24.xml @@ -0,0 +1,5 @@ + + + diff --git a/app/src/main/res/drawable/ic_baseline_mail_24.xml b/app/src/main/res/drawable/ic_baseline_mail_24.xml index baf15be..2c85217 100644 --- a/app/src/main/res/drawable/ic_baseline_mail_24.xml +++ b/app/src/main/res/drawable/ic_baseline_mail_24.xml @@ -1,7 +1,7 @@ + + diff --git a/app/src/main/res/drawable/ic_baseline_settings_24.xml b/app/src/main/res/drawable/ic_baseline_settings_24.xml new file mode 100644 index 0000000..4679c3b --- /dev/null +++ b/app/src/main/res/drawable/ic_baseline_settings_24.xml @@ -0,0 +1,7 @@ + + + diff --git a/app/src/main/res/layout/activity_about.xml b/app/src/main/res/layout/activity_about.xml index 7ad15b9..148aa8f 100644 --- a/app/src/main/res/layout/activity_about.xml +++ b/app/src/main/res/layout/activity_about.xml @@ -33,10 +33,11 @@ + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index ce11216..0c68162 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -6,6 +6,7 @@ android:layout_height="match_parent" tools:context=".MainActivity"> + + app:layout_constraintStart_toStartOf="parent" + /> - + android:layout_height="wrap_content" + android:orientation="vertical"> - + android:layout_height="match_parent" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toTopOf="parent" + android:paddingBottom="15dp"/> + - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/app/src/main/res/layout/fragment_settings.xml b/app/src/main/res/layout/fragment_settings.xml index 48e1133..f7bf436 100644 --- a/app/src/main/res/layout/fragment_settings.xml +++ b/app/src/main/res/layout/fragment_settings.xml @@ -1,8 +1,7 @@ - + \ No newline at end of file + android:layout_width="match_parent" + android:layout_height="match_parent"/> \ No newline at end of file diff --git a/app/src/main/res/layout/simple_list_item_1.xml b/app/src/main/res/layout/simple_list_item_1.xml new file mode 100644 index 0000000..71281ec --- /dev/null +++ b/app/src/main/res/layout/simple_list_item_1.xml @@ -0,0 +1,27 @@ + + + + \ No newline at end of file diff --git a/app/src/main/res/menu/menu.xml b/app/src/main/res/menu/menu.xml index 878ab10..af51ac4 100644 --- a/app/src/main/res/menu/menu.xml +++ b/app/src/main/res/menu/menu.xml @@ -5,6 +5,7 @@ + android:icon="@drawable/ic_baseline_settings_24" + app:showAsAction="always" /> \ No newline at end of file diff --git a/app/src/main/res/values-de-rDE/strings.xml b/app/src/main/res/values-de-rDE/strings.xml index f394d01..acdc8e8 100644 --- a/app/src/main/res/values-de-rDE/strings.xml +++ b/app/src/main/res/values-de-rDE/strings.xml @@ -1,13 +1,13 @@ +1 + \'Also: Iss dein Brot mit Freude, und trink deinen Wein mit frohem + Herzen! Denn schon längst hat Gott Gefallen an deinem Tun.\' Prediger 9:7 Einstellungen Feedback geben Melden Sie ein technisches Problem oder reichen Sie eine neue Funktion ein Allgemein - - Umschalten zwischen dunkel und hell Deaktivieren Sie den Darkmode durch Deaktivieren des Kontrollkästchens Aktivieren Sie den Darkmode, indem Sie das Kontrollkästchen @@ -18,34 +18,71 @@ Zähler zurücksetzen Abbrechen OK - Möchten Sie den Zähler zurücksetzen? - Möchten Sie die Möglichkeit haben den Zähler NEIN/JA - zurückzusetzen? - Über die App + Möchten Sie den Zähler wirklich zurücksetzen? (echt nicht + empfohlen) + + + + Ich nehme für die besten ungarischen Palatschinken vom + Balaton für 2 Personen folgende Zutaten + 200 Gramm Weizenmehl (Typ 405) + 2 Eier + 300 ml Milch + 300 ml Mineralwasser, vorzugsweise mit Kohlensäure + 1 Prise Salz + 2 Esslöffel Sonnenblumenöl + 24 cm Pfanne + Ein wenig Öl oder Schmalz zum Backen + Die Zubereitung der ungarischen Palatschinken + Als erstes bereite ich alle Zutaten vor. Mit einer Pfanne dieser Größe kann ich 5-6 + Stück backen + Ich mixe die Eier leicht, bis ein homogener Teig entstanden ist + Dann füge ich das sorgfältig gesiebte Weizenmehl hinzu und mixe weiter + Ich mixe den Teig vorsichtig (bei niedriger Geschwindigkeit) weiter + Jetzt gieße ich vorsichtig die Milch und das kohlensäurehaltige Mineralwasser hinein + Zum Schluss gebe ich das Sonnenblumenöl und die Prise Salz unter ständigem mixen + hinzu + Jetzt rühre ich den Teig noch einmal 5-7 Minuten lang gut durch + Jetzt lasse ich den Teig für 10-20 Minuten ruhen + In der Zwischenzeit kann ich die Pfanne mit einer sehr kleinen Menge Öl oder + Schmalz erhitzen. Achtung nicht zu heiß! Auf unserem Elektroherd habe ich bei Stufe 7 von 10 gute Ergebnisse erzielt + Jetzt ist es Zeit, die Palatschinken zu backen :-) + Mit einer Schöpfkelle oder etwas anderem geeignetem, gebe ich relativ zügig so viel + Teig in die Pfanne, dass die Schicht dünn ist (hier ist es eine Sache des Ausprobierens) + + Ich warte, bis die sichtbare Seite getrocknet ist, dann wende ich den + Palatschinken + Wenn mir die Unterseite, die jetzt oben liegt, nicht braun genug ist, wende ich später ein zweites Mal + Ich nehme den Palatschinken aus der Pfanne und kann ihn nach Belieben belegen oder + bestreuen + Beim Belag ist alles möglich und alles erlaubt, von Thunfisch über Schinken bis hin + zu Zimt und Zucker kann ich alles empfehlen. Am besten schmeckt mir aber + Aprikosenmarmelade + + Danke Papa für das Rezept + + + Über uns Bild Zähler zurückgesetzt Mit dieser App kannst du alle deine gegessenen Palatschinken zählen. Habt Spaß :-) - Rezept - Ich nehme für die besten ungarischen Palatschinken folgende Zutaten - 200 gr. Mehl - 2 Eier - 300 ml Milch - 300 ml Mineralwasser - 1 Prise Salz - 2 EL Sonnenblumenöl + Das Palatschinkenrezept + Ich nehme für die besten ungarischen Palatschinken vom + Balaton für 2 Personen folgende Zutaten. + Zutaten Zubereitung - 1. Rühren Sie zuerst die Eier ein wenig und geben anschließend das Mehl dazu. - 2. Geben Sie jetzt die Milch, das Mineralwasser und das Salz dazu. - 3. Geben Sie anschließend das Öl dazu und rühren den Teig weiter - 4. Geben Sie abschließend nur so viel Teig in die Bratpfanne, dass der Teig nicht zu dick ist. Backen Sie den Teig von beiden Seiten goldbraun Dieses Projekt ist OpenSource und auf GitHub unter https://github.com/amarradi/palatschinkencounter zu finden. Nachtmodus dunkel hell - Das Rezept für die besten Palatschinken + Das Rezept für die weltbesten Palatschinken Was ist das für eine app + Allgemeine Einstellungen für den Palatschinkencounter + Farbschema + Das Palatschinkenrezept + Es ist nicht nötig und unter absolut keinem Umstand empfohlen den Zähler jemals zurückzusetzen. Falls Du es trotzdem machen möchtet, muss du auf der Startseite auf deinen den Zähler tippen und halten. Nach dem zurücksetzen ist der Zähler unwiederbringlich gelöscht. \ No newline at end of file diff --git a/app/src/main/res/values-night/themes.xml b/app/src/main/res/values-night/themes.xml index acd6115..43fbc52 100644 --- a/app/src/main/res/values-night/themes.xml +++ b/app/src/main/res/values-night/themes.xml @@ -1,6 +1,7 @@ - + - + + + + + + + diff --git a/app/src/main/res/values/arrays.xml b/app/src/main/res/values/arrays.xml index 161c94a..59a5b0a 100644 --- a/app/src/main/res/values/arrays.xml +++ b/app/src/main/res/values/arrays.xml @@ -1,14 +1,13 @@ - - @string/darkmode_preference @string/lightmode_preference + @string/darkmode_preference - - @string/darkmode_preference - @string/lightmode_preference + + @string/lightmode_preference + @string/darkmode_preference \ No newline at end of file diff --git a/app/src/main/res/values/ids.xml b/app/src/main/res/values/ids.xml new file mode 100644 index 0000000..8921b52 --- /dev/null +++ b/app/src/main/res/values/ids.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 746a6ea..3493fd2 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -1,59 +1,98 @@ Palatschinkencounter + + \'Go thy way, eat thy bread with joy, and drink thy wine with a + merry heart; for God hath already accepted thy works.\' Ecclesiastes 9:7 +1 settings send feedback Report a technical issues or submit new features General + General settings for Palatschinkencounter Disable darkmode by unsetting the checkbox Enable darkmode by setting the checkbox - - + Version Toggle between dark and light theme 0 Pancake count reset counter Counter reset - Do you want to reset the counter? - Do you want to be able to reset the counter? - NO/YES + Do you really want to reset the counter? (really not + recommended) theme lightmode - blue + darkmode + + reset cancel yes - about the app + About us image reset counter %1$s - With this app you can count all your eaten pancakes. + With this app you can count all your eaten pancakes have fun :-) - recipe + It is not necessary and under absolutely no circumstances recommended to ever reset the counter. If you want to do it anyway, you should tap and hold your counter on the home page. After resetting the counter is permanently deleted. + + + + + I take for the best Hungarian pancakes from the + Balaton for 2 people the following ingredients. + 200 Gramm of wheat flour (Type 405) + 2 eggs + 300 ml of milk + 300 ml mineral water preferably sparkling + 1 pinch of salt + 2 tablespoon of sunflower oil + 24 cm pan + a little bit of oil or lard for baking + =The Preparation of pancake= + At first, I prepare myself all the ingredients. With a pan of this size I can bake + 5-6 pieces + I stir the eggs lightly until a homogeneous dough is formed + Then I add the sifted carefully wheat flour and continue stirring + I stir the dough carefully (at low speed) further + Now I carefully fill the milk and the sparkling mineral water into it + Lastly I put in the sunflower oil und the pinch of salt under stirring + I now stir the dough well again for 5-7 minutes + Now I let the dough rest for 10-20 min. + + Meanwhile, I can heat the pan with a very small amount of oil or lard. Attention + not too hot! On our electric stove I got good results at level 7 of 10 + Now its time for baking the pancakes :-) + With a ladle or something else suitable, I put quite quickly so much batter in the + pan that the layer is thin (here it is a matter of trying out) + I wait until the visible side dries, then I turn the pancake + If the underside that is now on top is not brown enough for me, I turn a second time later + I take the pancake out of the pan and can top or + sprinkle. + When it comes to toppings, everything is possible and everything is allowed, from + tuna to ham or cinnamon and sugar, I can recommend anything. But I like best Apricot + jam. + Thank you dad for the recipe. + + + The pancake recipe The recipe for the best pancakes ever - I take the following ingredients for the best Hungarian pancakes + I take for the best Hungarian pancakes from the + Balaton for 2 people the following ingredients. Ingredients - 200 grams of flour - 2 eggs - 300 ml of milk - 300 ml mineral water - 1 pinch of salt - 2 tablespoons of sunflower oil + Preparation - 1. First, scramble the eggs a little bit and then add the flour. - 2. Now add the milk, mineral water and salt. - 3. Then add the oil and continue to scramble the dough - 4. Finally, add only enough batter to the roasting pan so that the batter is not too thick. Bake the dough until golden brown on both sides This project is open source and can be found under https://github.com/amarradi/palatschinkencounter GitHub. Night mode - darkmode + darkmode lightmode What is that app - + Display Text + Theme + The pancake recipe \ No newline at end of file diff --git a/app/src/main/res/values/themes.xml b/app/src/main/res/values/themes.xml index 1f34f0b..001cefd 100644 --- a/app/src/main/res/values/themes.xml +++ b/app/src/main/res/values/themes.xml @@ -1,6 +1,7 @@ - + - + + + + + diff --git a/app/src/main/res/xml/preferences.xml b/app/src/main/res/xml/preferences.xml index 7a9c236..26c3c35 100644 --- a/app/src/main/res/xml/preferences.xml +++ b/app/src/main/res/xml/preferences.xml @@ -1,36 +1,46 @@ + + - - - - - - + app:icon="@drawable/ic_dn_switch" + android:defaultValue="lightmode_preference_option_value" + android:entries="@array/design_mode_preference_key" + android:entryValues="@array/design_mode_preference_value" + android:key="@string/theme_key" + android:title="@string/theme_preference" + android:summary="@string/theme_summary"/> + + - - + + + + + + + + \ No newline at end of file