Skip to content

Commit 417e7b1

Browse files
おんJ民おんJ民
authored andcommitted
fix
1 parent 269a3af commit 417e7b1

File tree

1 file changed

+19
-27
lines changed

1 file changed

+19
-27
lines changed

src/lib/components/LayerPanelPart.svelte

Lines changed: 19 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -12,45 +12,50 @@
1212
let { activeLayer = $bindable(undefined), pointerupTimestamp } = $props();
1313
1414
let layers: oekaki.LayeredCanvas[] = $state([]);
15+
let reversedLayers = $derived([...layers].reverse());
16+
1517
$effect(() => {
1618
if (!activeLayer) return;
1719
layers = oekaki.getLayers();
1820
});
1921
2022
const moveLayerUp = (layer: oekaki.LayeredCanvas) => {
21-
const { below } = layer;
22-
if (below) {
23-
layer.swap(below.index);
23+
const { above } = layer;
24+
if (above) {
25+
layer.swap(above.index);
2426
layers = oekaki.getLayers();
2527
}
2628
};
2729
2830
const moveLayerDown = (layer: oekaki.LayeredCanvas) => {
29-
const { above } = layer;
30-
if (above) {
31-
layer.swap(above.index);
31+
const { below } = layer;
32+
if (below) {
33+
layer.swap(below.index);
3234
layers = oekaki.getLayers();
3335
}
3436
};
3537
3638
const addLayer = () => {
37-
activeLayer = new oekaki.LayeredCanvas(
38-
`レイヤー #${layers.length + 1}`,
39-
);
39+
const newLayer = new oekaki.LayeredCanvas();
40+
newLayer.name = `レイヤー #${newLayer.index + 1}`;
41+
activeLayer = newLayer;
4042
};
4143
</script>
4244

4345
<div
4446
class="p-4 bg-white rounded shadow-md w-full max-w-md mx-auto max-h-[50vh] flex flex-col select-none"
4547
>
46-
<div class="flex items-center text-xs text-gray-500">
47-
<ArrowUpIcon class="w-4 h-4 mr-1" />
48-
最背面
49-
</div>
48+
<button
49+
class="flex items-center justify-center py-1 bg-blue-500 text-white rounded hover:bg-blue-600"
50+
onclick={addLayer}
51+
>
52+
<PlusIcon class="w-4 h-4 mr-2" />
53+
レイヤー追加
54+
</button>
5055

5156
<!-- レイヤーリスト(スクロール可能部分) -->
5257
<ul class="divide-y divide-gray-200 overflow-auto flex-1 min-h-0">
53-
{#each layers as layer}
58+
{#each reversedLayers as layer}
5459
{#key activeLayer === layer ? pointerupTimestamp : "noop"}
5560
<li
5661
class="flex items-center justify-between p-2 cursor-pointer {activeLayer ===
@@ -134,17 +139,4 @@
134139
{/key}
135140
{/each}
136141
</ul>
137-
138-
<div class="flex items-center text-xs text-gray-500">
139-
<ArrowDownIcon class="w-4 h-4 mr-1" />
140-
最前面
141-
</div>
142-
143-
<button
144-
class="flex items-center justify-center py-1 bg-blue-500 text-white rounded hover:bg-blue-600"
145-
onclick={addLayer}
146-
>
147-
<PlusIcon class="w-4 h-4 mr-2" />
148-
レイヤー追加
149-
</button>
150142
</div>

0 commit comments

Comments
 (0)