mirror of
https://github.com/DrizzleTime/Foxel.git
synced 2026-09-07 16:46:48 +08:00
fix: update window positioning to prevent overlap with the top of the viewport
This commit is contained in:
@@ -58,7 +58,7 @@ export const AppWindowsLayer: React.FC<AppWindowsLayerProps> = ({ windows, onClo
|
|||||||
const dx = e.clientX - startX;
|
const dx = e.clientX - startX;
|
||||||
const dy = e.clientY - startY;
|
const dy = e.clientY - startY;
|
||||||
let newX = Math.max(0, originX + dx);
|
let newX = Math.max(0, originX + dx);
|
||||||
let newY = Math.max(48, originY + dy);
|
let newY = Math.max(0, originY + dy);
|
||||||
dragRef.current.newX = newX;
|
dragRef.current.newX = newX;
|
||||||
dragRef.current.newY = newY;
|
dragRef.current.newY = newY;
|
||||||
const el = windowEls.current[id];
|
const el = windowEls.current[id];
|
||||||
|
|||||||
@@ -63,7 +63,7 @@ export const AppWindowsProvider: React.FC<{ children: React.ReactNode }> = ({ ch
|
|||||||
const finalW = Math.min(baseW, vw - 40);
|
const finalW = Math.min(baseW, vw - 40);
|
||||||
const finalH = Math.min(baseH, vh - 60);
|
const finalH = Math.min(baseH, vh - 60);
|
||||||
const finalX = Math.min(Math.max(0, baseX), vw - finalW - 8);
|
const finalX = Math.min(Math.max(0, baseX), vw - finalW - 8);
|
||||||
const finalY = Math.min(Math.max(48, baseY), vh - finalH - 8);
|
const finalY = Math.min(Math.max(0, baseY), vh - finalH - 8);
|
||||||
return [
|
return [
|
||||||
...ws,
|
...ws,
|
||||||
{
|
{
|
||||||
@@ -99,7 +99,7 @@ export const AppWindowsProvider: React.FC<{ children: React.ReactNode }> = ({ ch
|
|||||||
const finalW = Math.min(baseW, vw - 40);
|
const finalW = Math.min(baseW, vw - 40);
|
||||||
const finalH = Math.min(baseH, vh - 60);
|
const finalH = Math.min(baseH, vh - 60);
|
||||||
const finalX = Math.min(Math.max(0, baseX), vw - finalW - 8);
|
const finalX = Math.min(Math.max(0, baseX), vw - finalW - 8);
|
||||||
const finalY = Math.min(Math.max(48, baseY), vh - finalH - 8);
|
const finalY = Math.min(Math.max(0, baseY), vh - finalH - 8);
|
||||||
return [
|
return [
|
||||||
...ws,
|
...ws,
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ export function useAppWindows(path: string) {
|
|||||||
const finalW = Math.min(baseW, vw - 40);
|
const finalW = Math.min(baseW, vw - 40);
|
||||||
const finalH = Math.min(baseH, vh - 60);
|
const finalH = Math.min(baseH, vh - 60);
|
||||||
const finalX = Math.min(Math.max(0, baseX), vw - finalW - 8);
|
const finalX = Math.min(Math.max(0, baseX), vw - finalW - 8);
|
||||||
const finalY = Math.min(Math.max(48, baseY), vh - finalH - 8);
|
const finalY = Math.min(Math.max(0, baseY), vh - finalH - 8);
|
||||||
return [...ws, {
|
return [...ws, {
|
||||||
id: Date.now().toString(36) + Math.random().toString(36).slice(2),
|
id: Date.now().toString(36) + Math.random().toString(36).slice(2),
|
||||||
app,
|
app,
|
||||||
|
|||||||
Reference in New Issue
Block a user