Make ShowcaseView safe
This commit is contained in:
1 parent
27660f448f
commit
3ac64cd973
3 files changed
+41
-4
No files matched your search
@@ -131,6 +131,8 @@ public class DownloadsScene extends ToolbarScene
|
||||
@Nullable
|
||||
private LinearLayoutManager mLayoutManager;
|
||||
|
||||
private ShowcaseView mShowcaseView;
|
||||
|
||||
@Override
|
||||
public int getNavCheckedItem() {
|
||||
return R.id.nav_downloads;
|
||||
@@ -321,7 +323,7 @@ public class DownloadsScene extends ToolbarScene
|
||||
return;
|
||||
}
|
||||
|
||||
new ShowcaseView.Builder(activity)
|
||||
mShowcaseView = new ShowcaseView.Builder(activity)
|
||||
.withMaterialShowcase()
|
||||
.setStyle(R.style.Guide)
|
||||
.setTarget(new ViewTarget(((DownloadHolder) holder).thumb))
|
||||
@@ -332,6 +334,7 @@ public class DownloadsScene extends ToolbarScene
|
||||
.setShowcaseEventListener(new SimpleShowcaseEventListener() {
|
||||
@Override
|
||||
public void onShowcaseViewDidHide(ShowcaseView showcaseView) {
|
||||
mShowcaseView = null;
|
||||
ViewUtils.removeFromParent(showcaseView);
|
||||
Settings.putGuideDownloadThumb(false);
|
||||
guideDownloadLabels();
|
||||
@@ -349,7 +352,7 @@ public class DownloadsScene extends ToolbarScene
|
||||
Point point = new Point();
|
||||
display.getSize(point);
|
||||
|
||||
new ShowcaseView.Builder(activity)
|
||||
mShowcaseView = new ShowcaseView.Builder(activity)
|
||||
.withMaterialShowcase()
|
||||
.setStyle(R.style.Guide)
|
||||
.setTarget(new PointTarget(point.x, point.y / 3))
|
||||
@@ -360,6 +363,7 @@ public class DownloadsScene extends ToolbarScene
|
||||
.setShowcaseEventListener(new SimpleShowcaseEventListener() {
|
||||
@Override
|
||||
public void onShowcaseViewDidHide(ShowcaseView showcaseView) {
|
||||
mShowcaseView = null;
|
||||
ViewUtils.removeFromParent(showcaseView);
|
||||
Settings.puttGuideDownloadLabels(false);
|
||||
openDrawer(Gravity.RIGHT);
|
||||
@@ -378,6 +382,11 @@ public class DownloadsScene extends ToolbarScene
|
||||
public void onDestroyView() {
|
||||
super.onDestroyView();
|
||||
|
||||
if (null != mShowcaseView) {
|
||||
ViewUtils.removeFromParent(mShowcaseView);
|
||||
mShowcaseView = null;
|
||||
}
|
||||
|
||||
mRecyclerView = null;
|
||||
mFabLayout = null;
|
||||
mViewTransition = null;
|
||||
@@ -522,6 +531,10 @@ public class DownloadsScene extends ToolbarScene
|
||||
|
||||
@Override
|
||||
public void onBackPressed() {
|
||||
if (null != mShowcaseView) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (mRecyclerView != null && mRecyclerView.isInCustomChoice()) {
|
||||
mRecyclerView.outOfCustomChoiceMode();
|
||||
} else {
|
||||
|
||||
@@ -174,6 +174,8 @@ public class FavoritesScene extends BaseScene implements
|
||||
}
|
||||
};
|
||||
|
||||
private ShowcaseView mShowcaseView;
|
||||
|
||||
@Override
|
||||
public int getNavCheckedItem() {
|
||||
return R.id.nav_favourite;
|
||||
@@ -323,7 +325,7 @@ public class FavoritesScene extends BaseScene implements
|
||||
Point point = new Point();
|
||||
display.getSize(point);
|
||||
|
||||
new ShowcaseView.Builder(activity)
|
||||
mShowcaseView = new ShowcaseView.Builder(activity)
|
||||
.withMaterialShowcase()
|
||||
.setStyle(R.style.Guide)
|
||||
.setTarget(new PointTarget(point.x, point.y / 3))
|
||||
@@ -334,6 +336,7 @@ public class FavoritesScene extends BaseScene implements
|
||||
.setShowcaseEventListener(new SimpleShowcaseEventListener() {
|
||||
@Override
|
||||
public void onShowcaseViewDidHide(ShowcaseView showcaseView) {
|
||||
mShowcaseView = null;
|
||||
ViewUtils.removeFromParent(showcaseView);
|
||||
Settings.putGuideCollections(false);
|
||||
openDrawer(Gravity.RIGHT);
|
||||
@@ -394,6 +397,11 @@ public class FavoritesScene extends BaseScene implements
|
||||
public void onDestroyView() {
|
||||
super.onDestroyView();
|
||||
|
||||
if (null != mShowcaseView) {
|
||||
ViewUtils.removeFromParent(mShowcaseView);
|
||||
mShowcaseView = null;
|
||||
}
|
||||
|
||||
if (null != mAdapter) {
|
||||
mAdapter.unregister();
|
||||
mAdapter = null;
|
||||
@@ -497,6 +505,10 @@ public class FavoritesScene extends BaseScene implements
|
||||
|
||||
@Override
|
||||
public void onBackPressed() {
|
||||
if (null != mShowcaseView) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (mRecyclerView != null && mRecyclerView.isInCustomChoice()) {
|
||||
mRecyclerView.outOfCustomChoiceMode();
|
||||
} else if (mSearchMode) {
|
||||
|
||||
@@ -171,6 +171,8 @@ public final class GalleryListScene extends BaseScene
|
||||
}
|
||||
};
|
||||
|
||||
private ShowcaseView mShowcaseView;
|
||||
|
||||
@Override
|
||||
public int getNavCheckedItem() {
|
||||
return mNavCheckedId;
|
||||
@@ -425,7 +427,7 @@ public final class GalleryListScene extends BaseScene
|
||||
Point point = new Point();
|
||||
display.getSize(point);
|
||||
|
||||
new ShowcaseView.Builder(activity)
|
||||
mShowcaseView = new ShowcaseView.Builder(activity)
|
||||
.withMaterialShowcase()
|
||||
.setStyle(R.style.Guide)
|
||||
.setTarget(new PointTarget(point.x, point.y / 3))
|
||||
@@ -436,6 +438,7 @@ public final class GalleryListScene extends BaseScene
|
||||
.setShowcaseEventListener(new SimpleShowcaseEventListener() {
|
||||
@Override
|
||||
public void onShowcaseViewDidHide(ShowcaseView showcaseView) {
|
||||
mShowcaseView = null;
|
||||
ViewUtils.removeFromParent(showcaseView);
|
||||
Settings.putGuideQuickSearch(false);
|
||||
openDrawer(Gravity.RIGHT);
|
||||
@@ -447,6 +450,11 @@ public final class GalleryListScene extends BaseScene
|
||||
public void onDestroyView() {
|
||||
super.onDestroyView();
|
||||
|
||||
if (null != mShowcaseView) {
|
||||
ViewUtils.removeFromParent(mShowcaseView);
|
||||
mShowcaseView = null;
|
||||
}
|
||||
|
||||
if (null != mSearchBarMover) {
|
||||
mSearchBarMover.cancelAnimation();
|
||||
mSearchBarMover = null;
|
||||
@@ -598,6 +606,10 @@ public final class GalleryListScene extends BaseScene
|
||||
|
||||
@Override
|
||||
public void onBackPressed() {
|
||||
if (null != mShowcaseView) {
|
||||
return;
|
||||
}
|
||||
|
||||
boolean handle;
|
||||
switch (mState) {
|
||||
default:
|
||||
|
||||
Reference in new issue
Block a user