Update BlurView library

pull/213/head
Fox2Code 2 years ago
parent a5a4860333
commit e4d7b93f16

@ -156,7 +156,7 @@ dependencies {
implementation "com.mikepenz:aboutlibraries:${latestAboutLibsRelease}"
implementation "dev.rikka.rikkax.layoutinflater:layoutinflater:1.2.0"
implementation "dev.rikka.rikkax.insets:insets:1.3.0"
implementation 'com.github.Dimezis:BlurView:version-1.6.6'
implementation 'com.github.Dimezis:BlurView:version-2.0.2'
implementation 'com.github.KieronQuinn:MonetCompat:0.4.1'
implementation 'com.github.Fox2Code:FoxCompat:0.1.5'

@ -34,6 +34,7 @@ import com.fox2code.mmm.module.ModuleViewAdapter;
import com.fox2code.mmm.module.ModuleViewListBuilder;
import com.fox2code.mmm.repo.RepoManager;
import com.fox2code.mmm.settings.SettingsActivity;
import com.fox2code.mmm.utils.BlurUtils;
import com.fox2code.mmm.utils.ExternalHelper;
import com.fox2code.mmm.utils.Http;
import com.fox2code.mmm.utils.IntentHelper;
@ -42,6 +43,7 @@ import com.google.android.material.progressindicator.LinearProgressIndicator;
import com.topjohnwu.superuser.Shell;
import eightbitlab.com.blurview.BlurView;
import eightbitlab.com.blurview.RenderEffectBlur;
import eightbitlab.com.blurview.RenderScriptBlur;
public class MainActivity extends FoxActivity implements SwipeRefreshLayout.OnRefreshListener,
@ -121,10 +123,7 @@ public class MainActivity extends FoxActivity implements SwipeRefreshLayout.OnRe
this.moduleList.setItemViewCacheSize(4); // Default is 2
this.swipeRefreshLayout.setOnRefreshListener(this);
this.actionBarBlur.setBackground(this.actionBarBackground);
this.actionBarBlur.setupWith(findViewById(R.id.blur_frame))
.setFrameClearDrawable(this.getWindow().getDecorView().getBackground())
.setBlurAlgorithm(new RenderScriptBlur(this)).setBlurRadius(4F)
.setBlurAutoUpdate(true).setHasFixedTransformationMatrix(true);
BlurUtils.setupBlur(this.actionBarBlur, this, R.id.blur_frame);
this.updateBlurState();
this.moduleList.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override

@ -23,6 +23,7 @@ import com.fox2code.mmm.Constants;
import com.fox2code.mmm.MainApplication;
import com.fox2code.mmm.R;
import com.fox2code.mmm.XHooks;
import com.fox2code.mmm.utils.BlurUtils;
import com.fox2code.mmm.utils.Http;
import com.fox2code.mmm.utils.IntentHelper;
import com.google.android.material.chip.Chip;
@ -131,7 +132,8 @@ public class MarkdownActivity extends FoxActivity {
this.header = findViewById(R.id.markdownHeader);
this.footer = findViewById(R.id.markdownFooter);
this.actionBarBlur.setBackground(this.actionBarBackground);
this.setupBlurView(this.actionBarBlur, markdownBackground);
BlurUtils.setupBlur(this.actionBarBlur, this, markdownBackground);
this.updateBlurState();
UiThreadHandler.handler.post(() -> // Fix header/footer height
this.updateScreenInsets(this.getResources().getConfiguration()));
@ -171,15 +173,6 @@ public class MarkdownActivity extends FoxActivity {
}, "Markdown load thread").start();
}
private void setupBlurView(BlurView view, ViewGroup setupWith) {
view.setupWith(setupWith).setFrameClearDrawable(
this.getWindow().getDecorView().getBackground())
.setBlurAlgorithm(new RenderScriptBlur(this))
.setBlurRadius(4F).setBlurAutoUpdate(true)
.setHasFixedTransformationMatrix(true);
this.updateBlurState();
}
private void updateBlurState() {
boolean isLightMode = this.isLightTheme();
int colorBackground;

@ -0,0 +1,25 @@
package com.fox2code.mmm.utils;
import android.app.Activity;
import android.os.Build;
import android.view.ViewGroup;
import androidx.annotation.IdRes;
import eightbitlab.com.blurview.BlurView;
import eightbitlab.com.blurview.RenderEffectBlur;
import eightbitlab.com.blurview.RenderScriptBlur;
public class BlurUtils {
public static void setupBlur(BlurView blurView, Activity activity, @IdRes int viewId) {
setupBlur(blurView, activity, activity.findViewById(viewId));
}
@SuppressWarnings("deprecation")
public static void setupBlur(BlurView blurView, Activity activity, ViewGroup rootView) {
blurView.setupWith(rootView, Build.VERSION.SDK_INT < Build.VERSION_CODES.S ?
new RenderScriptBlur(blurView.getContext()) : new RenderEffectBlur())
.setFrameClearDrawable(activity.getWindow().getDecorView().getBackground())
.setBlurRadius(4F).setBlurAutoUpdate(true);
}
}
Loading…
Cancel
Save