Merge pull request #16709 from misskey-dev/develop

Release: 2025.10.2
This commit is contained in:
misskey-release-bot[bot] 2025-10-27 04:19:45 +00:00 committed by GitHub
commit 19053339d9
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
9 changed files with 24 additions and 16 deletions

View File

@ -11,6 +11,7 @@ jobs:
permissions:
contents: read
issues: write
pull-requests: write
steps:
- name: Reply
uses: actions/github-script@v6

View File

@ -1,3 +1,9 @@
## 2025.10.2
### Client
- Fix: アプリ内からキャッシュをクリアするとテーマ再適用するまでレンダリングが正しく行われない問題を修正
- Fix: 期限が無期限のアンケートに投票できない問題を修正
## 2025.10.1
### General

View File

@ -1,6 +1,6 @@
{
"name": "misskey",
"version": "2025.10.1",
"version": "2025.10.2",
"codename": "nasubi",
"repository": {
"type": "git",

View File

@ -257,12 +257,8 @@ function onImagePointerdown(ev: PointerEvent) {
xOffset /= 2;
yOffset /= 2;
const rect = canvasEl.value.getBoundingClientRect();
const pointerOffsetX = ev.clientX - rect.left;
const pointerOffsetY = ev.clientY - rect.top;
let startX = pointerOffsetX - xOffset;
let startY = pointerOffsetY - yOffset;
let startX = ev.offsetX - xOffset;
let startY = ev.offsetY - yOffset;
if (AW / AH < BW / BH) { //
startX = startX / (Math.max(AW, AH) / Math.max(BH / BW, 1));
@ -315,11 +311,9 @@ function onImagePointerdown(ev: PointerEvent) {
});
}
_move(ev.clientX, ev.clientY);
_move(ev.offsetX, ev.offsetY);
function _move(pointerClientX: number, pointerClientY: number) {
const pointerX = pointerClientX - rect.left;
const pointerY = pointerClientY - rect.top;
function _move(pointerX: number, pointerY: number) {
let x = pointerX - xOffset;
let y = pointerY - yOffset;
@ -346,7 +340,7 @@ function onImagePointerdown(ev: PointerEvent) {
}
function move(ev: PointerEvent) {
_move(ev.clientX, ev.clientY);
_move(ev.offsetX, ev.offsetY);
}
function up() {

View File

@ -58,7 +58,7 @@ const remaining = computed(() => {
});
const total = computed(() => sum(props.choices.map(x => x.votes)));
const closed = computed(() => remaining.value <= 0);
const closed = computed(() => props.expiresAt != null && remaining.value <= 0);
const isVoted = computed(() => !props.multiple && props.choices.some(c => c.isVoted));
const timer = computed(() => i18n.tsx._poll[
remaining.value >= 86400 ? 'remainingDays' :

View File

@ -14,7 +14,7 @@ SPDX-License-Identifier: AGPL-3.0-only
<header :class="$style.header">
<div :class="$style.headerLeft">
<button v-if="!fixed" :class="$style.cancel" class="_button" @click="cancel"><i class="ti ti-x"></i></button>
<button v-click-anime v-tooltip="i18n.ts.switchAccount" :class="$style.account" class="_button" @click="openAccountMenu">
<button v-click-anime v-tooltip="i18n.ts.account" :class="$style.account" class="_button" @click="openAccountMenu">
<img :class="$style.avatar" :src="(postAccount ?? $i).avatarUrl" style="border-radius: 100%;"/>
</button>
</div>

View File

@ -242,3 +242,9 @@ export async function installTheme(code: string): Promise<void> {
if (!theme) return;
await addTheme(theme);
}
export function clearAppliedThemeCache() {
miLocalStorage.removeItem('theme');
miLocalStorage.removeItem('themeId');
miLocalStorage.removeItem('themeCachedVersion');
}

View File

@ -9,14 +9,15 @@ import * as os from '@/os.js';
import { miLocalStorage } from '@/local-storage.js';
import { fetchCustomEmojis } from '@/custom-emojis.js';
import { fetchInstance } from '@/instance.js';
import { clearAppliedThemeCache } from '@/theme.js';
export async function clearCache() {
os.waiting();
miLocalStorage.removeItem('instance');
miLocalStorage.removeItem('instanceCachedAt');
miLocalStorage.removeItem('theme');
miLocalStorage.removeItem('emojis');
miLocalStorage.removeItem('lastEmojisFetchedAt');
clearAppliedThemeCache();
await misskeyApiGet('clear-browser-cache', {}).catch(() => {
// ignore
});

View File

@ -1,7 +1,7 @@
{
"type": "module",
"name": "misskey-js",
"version": "2025.10.1",
"version": "2025.10.2",
"description": "Misskey SDK for JavaScript",
"license": "MIT",
"main": "./built/index.js",