fix: move psd text helper badges out of content
This commit is contained in:
parent
14cd997a43
commit
cc01b539bc
@ -202,12 +202,22 @@ function getInlineTextEditorStyle(
|
|||||||
return {
|
return {
|
||||||
...baseStyle,
|
...baseStyle,
|
||||||
background: "transparent",
|
background: "transparent",
|
||||||
|
boxSizing: "border-box",
|
||||||
|
overflow: "hidden",
|
||||||
color: preserveSourceAppearance ? "transparent" : layer.textColor,
|
color: preserveSourceAppearance ? "transparent" : layer.textColor,
|
||||||
caretColor: layer.textColor,
|
caretColor: layer.textColor,
|
||||||
WebkitTextFillColor: preserveSourceAppearance ? "transparent" : layer.textColor,
|
WebkitTextFillColor: preserveSourceAppearance ? "transparent" : layer.textColor,
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function getTextLayerNameBadgeClassName() {
|
||||||
|
return "pointer-events-none absolute left-0 top-0 -translate-y-[calc(100%+6px)] rounded-full bg-black/78 px-2 py-1 text-[11px] whitespace-nowrap text-white shadow-lg";
|
||||||
|
}
|
||||||
|
|
||||||
|
function getTextLayerHintBadgeClassName() {
|
||||||
|
return "pointer-events-none absolute right-0 top-0 -translate-y-[calc(100%+6px)] rounded-full bg-sky-500/90 px-2 py-1 text-[11px] whitespace-nowrap text-white shadow-lg";
|
||||||
|
}
|
||||||
|
|
||||||
export function AgentPsdTemplateEditorDialog({
|
export function AgentPsdTemplateEditorDialog({
|
||||||
open,
|
open,
|
||||||
onOpenChange,
|
onOpenChange,
|
||||||
@ -742,7 +752,7 @@ export function AgentPsdTemplateEditorDialog({
|
|||||||
return (
|
return (
|
||||||
<div
|
<div
|
||||||
key={layer.id}
|
key={layer.id}
|
||||||
className="absolute overflow-hidden rounded-lg"
|
className="absolute overflow-visible rounded-lg"
|
||||||
style={{
|
style={{
|
||||||
...frameStyle,
|
...frameStyle,
|
||||||
zIndex: 40,
|
zIndex: 40,
|
||||||
@ -770,7 +780,7 @@ export function AgentPsdTemplateEditorDialog({
|
|||||||
className="h-full w-full resize-none border-none bg-transparent outline-none"
|
className="h-full w-full resize-none border-none bg-transparent outline-none"
|
||||||
style={getInlineTextEditorStyle(layer, preserveSourceAppearance, currentValue)}
|
style={getInlineTextEditorStyle(layer, preserveSourceAppearance, currentValue)}
|
||||||
/>
|
/>
|
||||||
<div className="absolute left-2 top-2 rounded-full bg-black/70 px-2 py-1 text-[11px] text-white">
|
<div className={getTextLayerNameBadgeClassName()}>
|
||||||
{layer.layerName}
|
{layer.layerName}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -783,7 +793,7 @@ export function AgentPsdTemplateEditorDialog({
|
|||||||
type="button"
|
type="button"
|
||||||
onClick={() => setSelectedLayerId(layer.id)}
|
onClick={() => setSelectedLayerId(layer.id)}
|
||||||
onDoubleClick={() => setSelectedLayerId(layer.id)}
|
onDoubleClick={() => setSelectedLayerId(layer.id)}
|
||||||
className="absolute overflow-hidden rounded-lg transition-all"
|
className="absolute overflow-visible rounded-lg transition-all"
|
||||||
style={{
|
style={{
|
||||||
...frameStyle,
|
...frameStyle,
|
||||||
zIndex: isSelected ? 40 : 30,
|
zIndex: isSelected ? 40 : 30,
|
||||||
@ -792,11 +802,11 @@ export function AgentPsdTemplateEditorDialog({
|
|||||||
aria-label={`${getLayerLabel(layer)} ${layer.layerName}`}
|
aria-label={`${getLayerLabel(layer)} ${layer.layerName}`}
|
||||||
title={`${getLayerLabel(layer)}:${layer.layerName}`}
|
title={`${getLayerLabel(layer)}:${layer.layerName}`}
|
||||||
>
|
>
|
||||||
<div className="absolute left-2 top-2 rounded-full bg-black/70 px-2 py-1 text-[11px] text-white">
|
<div className={getTextLayerNameBadgeClassName()}>
|
||||||
{layer.layerName}
|
{layer.layerName}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div className="pointer-events-none absolute bottom-2 right-2 rounded-full bg-sky-500/85 px-2 py-1 text-[11px] text-white">
|
<div className={getTextLayerHintBadgeClassName()}>
|
||||||
点击编辑文字
|
点击编辑文字
|
||||||
</div>
|
</div>
|
||||||
</button>
|
</button>
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user