fix(settings/clock/achievements): remove animation when coming from achievemnts screen
This commit is contained in:
@@ -27,16 +27,17 @@ const achievementAssets =
|
||||
assets.images.settings.bottomScreen.clock.achievements;
|
||||
const { onRender, onClick } = useScreen();
|
||||
|
||||
const app = useAppStore();
|
||||
const store = useSettingsStore();
|
||||
const app = useAppStore();
|
||||
const achievements = useAchievementsStore();
|
||||
const achievementsScreen = useAchievementsScreen();
|
||||
const confirmationModal = useConfirmationModal();
|
||||
|
||||
const isAnimating = ref(true);
|
||||
|
||||
const bLabel = ref($t("common.goBack"));
|
||||
const aLabel = ref($t("common.select"));
|
||||
const comingFromAchievements = app.previousScreen === "achievements";
|
||||
const bLabel = ref(comingFromAchievements ? $t("common.cancel") : $t("common.goBack"));
|
||||
const aLabel = ref(comingFromAchievements ? $t("common.reset") : $t("common.select"));
|
||||
|
||||
const SLIDE_OFFSET = 96;
|
||||
const SLIDE_DURATION = 0.25;
|
||||
@@ -106,6 +107,15 @@ const animateOutro = async () => {
|
||||
};
|
||||
|
||||
onMounted(() => {
|
||||
if (comingFromAchievements) {
|
||||
obtainedRef.value?.showInstant();
|
||||
totalRef.value?.showInstant();
|
||||
animation.offsetY = 0;
|
||||
animation.opacity = 1;
|
||||
animation.viewAllOffsetY = 0;
|
||||
isAnimating.value = false;
|
||||
return;
|
||||
}
|
||||
animateIntro();
|
||||
});
|
||||
|
||||
|
||||
@@ -90,7 +90,7 @@ const isAnimating = ref(true);
|
||||
const animation = reactive({
|
||||
offsetY: SLIDE_OFFSET,
|
||||
opacity: 0,
|
||||
upArrowOffsetY: ARROW_IMAGE_HEIGHT,
|
||||
upArrowOffsetY: +ARROW_IMAGE_HEIGHT,
|
||||
downArrowOffsetY: -ARROW_IMAGE_HEIGHT,
|
||||
});
|
||||
|
||||
@@ -125,7 +125,15 @@ const animateOutro = async () => {
|
||||
.to(animation, { opacity: 0, duration: SLIDE_DURATION, ease: "none" }, 0);
|
||||
};
|
||||
|
||||
defineExpose({ animateIntro, animateOutro });
|
||||
const showInstant = () => {
|
||||
animation.offsetY = 0;
|
||||
animation.opacity = 1;
|
||||
animation.upArrowOffsetY = 0;
|
||||
animation.downArrowOffsetY = 0;
|
||||
isAnimating.value = false;
|
||||
};
|
||||
|
||||
defineExpose({ animateIntro, animateOutro, showInstant });
|
||||
|
||||
const increase = () => {
|
||||
const newValue = value.value + 1;
|
||||
|
||||
Reference in New Issue
Block a user