From 24b26f51403c5f4bcdf12f7db6fbeefd15fb9e06 Mon Sep 17 00:00:00 2001 From: Felix Prahl-Kamps Date: Sat, 12 Oct 2019 19:02:56 +0200 Subject: [PATCH] remove some animations remove unused preference remove not fully implemented fab menu remove incomplete german translation remove badge from readme --- README.md | 2 - .../mispbump/activities/HomeActivity.java | 18 +- .../activities/PreferenceActivity.java | 34 ++-- .../activities/SyncInfoDetailActivity.java | 144 +--------------- ...l_v2.xml => activity_sync_info_detail.xml} | 159 +----------------- app/src/main/res/values-de/strings.xml | 56 ------ app/src/main/res/values/strings.xml | 2 - 7 files changed, 34 insertions(+), 381 deletions(-) rename app/src/main/res/layout/{activity_sync_info_detail_v2.xml => activity_sync_info_detail.xml} (50%) delete mode 100644 app/src/main/res/values-de/strings.xml diff --git a/README.md b/README.md index 145fdff..0a5ba26 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,4 @@ # MISPbump -[![Codacy Badge](https://api.codacy.com/project/badge/Grade/72e7c12910284125b6971bb9d9c08229)](https://www.codacy.com/app/felixpk/misp-bump?utm_source=github.com&utm_medium=referral&utm_content=MISP/misp-bump&utm_campaign=Badge_Grade) - Simple and secure synchronisation of MISP instances # What is MISPbump? diff --git a/app/src/main/java/lu/circl/mispbump/activities/HomeActivity.java b/app/src/main/java/lu/circl/mispbump/activities/HomeActivity.java index d0d7692..64671eb 100644 --- a/app/src/main/java/lu/circl/mispbump/activities/HomeActivity.java +++ b/app/src/main/java/lu/circl/mispbump/activities/HomeActivity.java @@ -10,7 +10,6 @@ import android.widget.TextView; import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.widget.Toolbar; -import androidx.core.app.ActivityOptionsCompat; import androidx.core.util.Pair; import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.RecyclerView; @@ -45,6 +44,11 @@ public class HomeActivity extends AppCompatActivity { private SyncInfoAdapter syncInfoAdapter; private TextView emptyRecyclerView; + private OnRecyclerItemClickListener onItemClick = (v, index) -> { + Intent detailActivity = new Intent(HomeActivity.this, SyncInfoDetailActivity.class); + detailActivity.putExtra(SyncInfoDetailActivity.EXTRA_SYNC_INFO_UUID, syncInformationList.get(index).getUuid()); + startActivity(detailActivity); + }; @Override protected void onCreate(Bundle savedInstanceState) { @@ -106,7 +110,7 @@ public class HomeActivity extends AppCompatActivity { recyclerView = findViewById(R.id.recyclerView); recyclerView.setLayoutManager(new LinearLayoutManager(HomeActivity.this)); syncInfoAdapter = new SyncInfoAdapter(HomeActivity.this); - syncInfoAdapter.setOnRecyclerPositionClickListener(onRecyclerItemClickListener()); + syncInfoAdapter.setOnRecyclerPositionClickListener(onItemClick); recyclerView.setAdapter(syncInfoAdapter); } @@ -261,14 +265,4 @@ public class HomeActivity extends AppCompatActivity { } }); } - - private OnRecyclerItemClickListener onRecyclerItemClickListener() { - return (v, index) -> { - Intent i = new Intent(HomeActivity.this, SyncInfoDetailActivity.class); - i.putExtra(SyncInfoDetailActivity.EXTRA_SYNC_INFO_UUID, syncInformationList.get(index).getUuid()); - - ActivityOptionsCompat options = ActivityOptionsCompat.makeClipRevealAnimation(v.findViewById(R.id.rootLayout), (int) v.getX(), (int) v.getY(), v.getWidth(), v.getHeight()); - startActivity(i, options.toBundle()); - }; - } } diff --git a/app/src/main/java/lu/circl/mispbump/activities/PreferenceActivity.java b/app/src/main/java/lu/circl/mispbump/activities/PreferenceActivity.java index a426aed..cb57e39 100644 --- a/app/src/main/java/lu/circl/mispbump/activities/PreferenceActivity.java +++ b/app/src/main/java/lu/circl/mispbump/activities/PreferenceActivity.java @@ -13,10 +13,8 @@ import androidx.preference.Preference; import androidx.preference.PreferenceCategory; import androidx.preference.PreferenceFragmentCompat; import androidx.preference.PreferenceScreen; -import androidx.preference.SwitchPreference; import lu.circl.mispbump.R; -import lu.circl.mispbump.auxiliary.PreferenceManager; public class PreferenceActivity extends AppCompatActivity { @@ -42,11 +40,9 @@ public class PreferenceActivity extends AppCompatActivity { public static class PreferencesFragment extends PreferenceFragmentCompat { private Context context; - private PreferenceManager preferenceManager; PreferencesFragment(Context context) { this.context = context; - preferenceManager = PreferenceManager.getInstance(context); } @Override @@ -56,21 +52,21 @@ public class PreferenceActivity extends AppCompatActivity { // General - PreferenceCategory generalCategory = new PreferenceCategory(context); - generalCategory.setTitle("General"); - getPreferenceScreen().addPreference(generalCategory); - - SwitchPreference fetchOnlyLocalSyncs = new SwitchPreference(context); - fetchOnlyLocalSyncs.setTitle("Display local syncs only"); - fetchOnlyLocalSyncs.setSummaryOn("Only those syncs that were made with MISPbump are displayed."); - fetchOnlyLocalSyncs.setSummaryOff("Existing syncs from your MISP instance are fetched (experimental)"); - fetchOnlyLocalSyncs.setChecked(preferenceManager.getShowLocalSyncsOnly()); - fetchOnlyLocalSyncs.setOnPreferenceChangeListener((preference, newValue) -> { - preferenceManager.setShowLocalSyncsOnly((boolean) newValue); - return true; - }); - - generalCategory.addPreference(fetchOnlyLocalSyncs); +// PreferenceCategory generalCategory = new PreferenceCategory(context); +// generalCategory.setTitle("General"); +// getPreferenceScreen().addPreference(generalCategory); +// +// SwitchPreference fetchOnlyLocalSyncs = new SwitchPreference(context); +// fetchOnlyLocalSyncs.setTitle("Display local syncs only"); +// fetchOnlyLocalSyncs.setSummaryOn("Only those syncs that were made with MISPbump are displayed."); +// fetchOnlyLocalSyncs.setSummaryOff("Existing syncs from your MISP instance are fetched (experimental)"); +// fetchOnlyLocalSyncs.setChecked(preferenceManager.getShowLocalSyncsOnly()); +// fetchOnlyLocalSyncs.setOnPreferenceChangeListener((preference, newValue) -> { +// preferenceManager.setShowLocalSyncsOnly((boolean) newValue); +// return true; +// }); +// +// generalCategory.addPreference(fetchOnlyLocalSyncs); // App Information diff --git a/app/src/main/java/lu/circl/mispbump/activities/SyncInfoDetailActivity.java b/app/src/main/java/lu/circl/mispbump/activities/SyncInfoDetailActivity.java index e985365..66280af 100644 --- a/app/src/main/java/lu/circl/mispbump/activities/SyncInfoDetailActivity.java +++ b/app/src/main/java/lu/circl/mispbump/activities/SyncInfoDetailActivity.java @@ -1,15 +1,9 @@ package lu.circl.mispbump.activities; -import android.animation.Animator; -import android.animation.ValueAnimator; import android.content.Intent; -import android.graphics.drawable.AnimatedVectorDrawable; import android.os.Bundle; import android.view.View; -import android.view.animation.DecelerateInterpolator; -import android.widget.LinearLayout; -import android.widget.TextView; import androidx.appcompat.app.ActionBar; import androidx.appcompat.app.AppCompatActivity; @@ -34,8 +28,6 @@ public class SyncInfoDetailActivity extends AppCompatActivity { private PreferenceManager preferenceManager; private SyncInformation syncInformation; - private boolean fabMenuExpanded; - private View.OnClickListener onUploadClicked = v -> { preferenceManager.addSyncInformation(syncInformation); Intent upload = new Intent(SyncInfoDetailActivity.this, UploadActivity.class); @@ -43,14 +35,11 @@ public class SyncInfoDetailActivity extends AppCompatActivity { startActivity(upload); }; - private View.OnClickListener onDownloadClicked = v -> { - - }; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - setContentView(R.layout.activity_sync_info_detail_v2); + setContentView(R.layout.activity_sync_info_detail); preferenceManager = PreferenceManager.getInstance(SyncInfoDetailActivity.this); syncInformation = preferenceManager.getSyncInformation(getExtraUuid()); @@ -60,7 +49,7 @@ public class SyncInfoDetailActivity extends AppCompatActivity { } initToolbar(); - initFabMenu(); + initViews(); populateContent(); } @@ -85,132 +74,9 @@ public class SyncInfoDetailActivity extends AppCompatActivity { ab.setDisplayHomeAsUpEnabled(true); } - private void initFabMenu() { - FloatingActionButton fab = findViewById(R.id.fab_main); - FloatingActionButton fabUpload = findViewById(R.id.fab_upload); - FloatingActionButton fabDownload = findViewById(R.id.fab_download); - - LinearLayout uploadLayout = findViewById(R.id.layout_upload); - LinearLayout downloadLayout = findViewById(R.id.layout_download); - - TextView uploadText = findViewById(R.id.fab_upload_text); - TextView downloadText = findViewById(R.id.fab_download_text); - - View menuBackground = findViewById(R.id.menu_background); - - uploadLayout.setVisibility(View.GONE); - downloadLayout.setVisibility(View.GONE); - - int animationSpeed = 200; - - ValueAnimator openAnimation = ValueAnimator.ofFloat(0f, 1f); - openAnimation.setDuration(animationSpeed); - openAnimation.setInterpolator(new DecelerateInterpolator()); - openAnimation.addUpdateListener(updateAnimation -> { - float x = (float) updateAnimation.getAnimatedValue(); - - fabUpload.setAlpha(x); - fabUpload.setTranslationY((1 - x) * 50); - uploadText.setAlpha(x); - uploadText.setTranslationX((1 - x) * -200); - - fabDownload.setAlpha(x); - fabDownload.setTranslationY((1 - x) * 50); - downloadText.setAlpha(x); - downloadText.setTranslationX((1 - x) * -200); - - menuBackground.setAlpha(x * 0.9f); - }); - openAnimation.addListener(new Animator.AnimatorListener() { - @Override - public void onAnimationStart(Animator animator) { - uploadLayout.setVisibility(View.VISIBLE); - downloadLayout.setVisibility(View.VISIBLE); - } - @Override - public void onAnimationEnd(Animator animator) { - } - @Override - public void onAnimationCancel(Animator animator) { - - } - @Override - public void onAnimationRepeat(Animator animator) { - - } - }); - - ValueAnimator closeAnimation = ValueAnimator.ofFloat(1f, 0f); - closeAnimation.setDuration(animationSpeed); - closeAnimation.setInterpolator(new DecelerateInterpolator()); - closeAnimation.addUpdateListener(updateAnimation -> { - float x = (float) updateAnimation.getAnimatedValue(); - - fabUpload.setAlpha(x); - fabUpload.setTranslationY((1 - x) * 50); - uploadText.setAlpha(x); - uploadText.setTranslationX((1 - x) * -200); - - fabDownload.setAlpha(x); - fabDownload.setTranslationY((1 - x) * 50); - downloadText.setAlpha(x); - downloadText.setTranslationX((1 - x) * -200); - - menuBackground.setAlpha(x * 0.9f); - }); - closeAnimation.addListener(new Animator.AnimatorListener() { - @Override - public void onAnimationStart(Animator animator) { - uploadLayout.setVisibility(View.VISIBLE); - downloadLayout.setVisibility(View.VISIBLE); - - } - @Override - public void onAnimationEnd(Animator animator) { - uploadLayout.setVisibility(View.GONE); - downloadLayout.setVisibility(View.GONE); - } - @Override - public void onAnimationCancel(Animator animator) { - - } - @Override - public void onAnimationRepeat(Animator animator) { - - } - }); - - AnimatedVectorDrawable open = (AnimatedVectorDrawable) getDrawable(R.drawable.animated_arrow_cloud_down); - AnimatedVectorDrawable close = (AnimatedVectorDrawable) getDrawable(R.drawable.animated_arrow_down_cloud); - - View.OnClickListener expandCollapseClick = view -> { - if (fabMenuExpanded) { - menuBackground.setClickable(false); - - fab.setImageDrawable(close); - assert close != null; - close.start(); - - closeAnimation.start(); - fabMenuExpanded = false; - } else { - menuBackground.setClickable(true); - - fab.setImageDrawable(open); - assert open != null; - open.start(); - - openAnimation.start(); - fabMenuExpanded = true; - } - }; - - menuBackground.setOnClickListener(expandCollapseClick); - menuBackground.setClickable(false); - fab.setOnClickListener(expandCollapseClick); - - fabUpload.setOnClickListener(onUploadClicked); - fabDownload.setOnClickListener(onDownloadClicked); + private void initViews() { + FloatingActionButton uploadFab = findViewById(R.id.fab_main); + uploadFab.setOnClickListener(onUploadClicked); } private void populateContent() { diff --git a/app/src/main/res/layout/activity_sync_info_detail_v2.xml b/app/src/main/res/layout/activity_sync_info_detail.xml similarity index 50% rename from app/src/main/res/layout/activity_sync_info_detail_v2.xml rename to app/src/main/res/layout/activity_sync_info_detail.xml index 5ab8915..d893df2 100644 --- a/app/src/main/res/layout/activity_sync_info_detail_v2.xml +++ b/app/src/main/res/layout/activity_sync_info_detail.xml @@ -129,54 +129,6 @@ app:offText="@string/settings_cache_off" app:onText="@string/settings_cache_on" /> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml deleted file mode 100644 index 4a3d7b9..0000000 --- a/app/src/main/res/values-de/strings.xml +++ /dev/null @@ -1,56 +0,0 @@ - - - Anmelden - Abmelden - Hilfe - MISP Automatisierungs-Schlüssel - Keine Informationen - Automatisierungs-Schlüssel speichern - MISP Server URL\nDie URL unter der Ihre MISP Instanz erreichbar ist.\n\nMISP Automatisierungs Schlüssel - QR code - Synchronisation - Sie haben noch keine MISP Instanzen verknüpft - Scannen den QR code ihres Partners - Fahren sie fort, sobald dieser QR Code gescannt wurde - Weiter - Zurück - Nationalität - Sektor - Beschreibung - Einstellungen - Zugangsdaten - Authentifizierungsschlüssel - Passwort - Diese Organisation soll die folgenden Rechte erhalten - Selbstsignierte Zertifikate erlauben - Zertifikate von unbekannten CA\'s werden akzeptiert (nicht empfohlen) - Nur Zertifikate von bekannten CA\'s werden akzeptiert - Ereignisse und deren Attribute können nicht hochgeladen werden - Ereignisse und deren Attribute können hochgeladen werden - Ereignisse und deren Attribute können nicht heruntergeladen werden - Ereignisse und deren Attribute können heruntergeladen werden - Ereignisse und deren Attribute werden nicht zwischengespeichert - Ereignisse und deren Attribute werden zwischengespeichert - Zwischenspeichern - Herunterladen - Hochladen - Hochladen - MISP Instanz erreichbar - Organisation hinzufügen - Server hinzufügen - Benutzer hinzufügen - Öffentlicher Schlüssel - Scannen Sie den QR code ihres Partners - Öffentlicher Schlüssel empfangen - Synchronisations-Informationen empfangen - Synchronisations-Informationen - Alle Synchronisierungen löschen - Die Synchronisierungen werden nur lokal gelöscht - Allgemein - Besuchen Sie das Github Projekt - App Informationen - Synchronisations Details - Informationen - Änderungen hochladen - Änderungen herunterladen - diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 494ae58..536e85b 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -12,8 +12,6 @@ QR code Synchronization You have not synced any MISP instances yet - - Scan your partners QR code Continue if your partner also scanned this QR code next