fix ObjectLocationView offset

This commit is contained in:
dank074 2021-11-14 01:51:17 -06:00
parent 50811e4eac
commit 887ea45b0f
2 changed files with 45 additions and 42 deletions

View File

@ -5,9 +5,9 @@ import { useRoomEngineEvent } from '../../../../../hooks';
import { NitroLayoutGrid, NitroLayoutGridColumn } from '../../../../../layout'; import { NitroLayoutGrid, NitroLayoutGridColumn } from '../../../../../layout';
import { NitroLayoutBase } from '../../../../../layout/base'; import { NitroLayoutBase } from '../../../../../layout/base';
import { useRoomContext } from '../../../context/RoomContext'; import { useRoomContext } from '../../../context/RoomContext';
import { ContextMenuView } from '../../context-menu/ContextMenuView';
import { ContextMenuHeaderView } from '../../context-menu/views/header/ContextMenuHeaderView'; import { ContextMenuHeaderView } from '../../context-menu/views/header/ContextMenuHeaderView';
import { ContextMenuListView } from '../../context-menu/views/list/ContextMenuListView'; import { ContextMenuListView } from '../../context-menu/views/list/ContextMenuListView';
import { ObjectLocationView } from '../../object-location/ObjectLocationView';
const SCORE_TYPES = ['perteam', 'mostwins', 'classic']; const SCORE_TYPES = ['perteam', 'mostwins', 'classic'];
const CLEAR_TYPES = ['alltime', 'daily', 'weekly', 'monthly']; const CLEAR_TYPES = ['alltime', 'daily', 'weekly', 'monthly'];
@ -57,7 +57,8 @@ export const FurnitureHighScoreView: FC<{}> = props =>
if((objectId === -1) || !stuffData) return null; if((objectId === -1) || !stuffData) return null;
return ( return (
<ContextMenuView objectId={ objectId } category={ RoomObjectCategory.FLOOR } close={ close } fades={ false } className="nitro-widget-high-score"> <ObjectLocationView objectId={objectId} category={RoomObjectCategory.FLOOR} >
<div className="nitro-widget-high-score nitro-context-menu">
<ContextMenuHeaderView> <ContextMenuHeaderView>
{LocalizeText('high.score.display.caption', ['scoretype', 'cleartype'], [LocalizeText(`high.score.display.scoretype.${SCORE_TYPES[stuffData.scoreType]}`), LocalizeText(`high.score.display.cleartype.${CLEAR_TYPES[stuffData.clearType]}`)])} {LocalizeText('high.score.display.caption', ['scoretype', 'cleartype'], [LocalizeText(`high.score.display.scoretype.${SCORE_TYPES[stuffData.scoreType]}`), LocalizeText(`high.score.display.cleartype.${CLEAR_TYPES[stuffData.clearType]}`)])}
</ContextMenuHeaderView> </ContextMenuHeaderView>
@ -100,6 +101,8 @@ export const FurnitureHighScoreView: FC<{}> = props =>
</NitroLayoutGridColumn> </NitroLayoutGridColumn>
</NitroLayoutGrid> </NitroLayoutGrid>
</ContextMenuListView> </ContextMenuListView>
</ContextMenuView> </div>
</ObjectLocationView>
); );
} }

View File

@ -50,7 +50,7 @@ export const ObjectLocationView: FC<ObjectLocationViewProps> = props =>
}, [ updatePosition, noFollow ]); }, [ updatePosition, noFollow ]);
return ( return (
<div ref={ elementRef } className={ 'object-location position-absolute ' + (pos.x > -1 ? 'visible' : 'invisible') } style={ { left: pos.x, top: pos.y } }> <div ref={ elementRef } className={ 'object-location position-absolute ' + ( (pos.x + elementRef.current.offsetWidth )> -1 ? 'visible' : 'invisible') } style={ { left: pos.x, top: pos.y } }>
{ children } { children }
</div> </div>
); );