this repo has no description
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Quick-translate from timeline to Post page

+23 -10
+21 -10
src/components/status.jsx
··· 79 79 readOnly, 80 80 contentTextWeight, 81 81 enableTranslate, 82 + forceTranslate: _forceTranslate, 82 83 previewMode, 83 84 allowFilters, 84 85 onMediaClick, ··· 233 234 ); 234 235 } 235 236 236 - const [forceTranslate, setForceTranslate] = useState(false); 237 + const [forceTranslate, setForceTranslate] = useState(_forceTranslate); 237 238 const targetLanguage = getTranslateTargetLanguage(true); 238 239 const contentTranslationHideLanguages = 239 240 snapStates.settings.contentTranslationHideLanguages || []; ··· 403 404 } 404 405 }; 405 406 407 + const differentLanguage = 408 + language && 409 + language !== targetLanguage && 410 + !match([language], [targetLanguage]) && 411 + !contentTranslationHideLanguages.find( 412 + (l) => language === l || match([language], [l]), 413 + ); 414 + 406 415 const menuInstanceRef = useRef(); 407 416 const StatusMenuItems = ( 408 417 <> ··· 530 539 </div> 531 540 </> 532 541 )} 533 - {enableTranslate && ( 542 + {enableTranslate ? ( 534 543 <MenuItem 535 544 disabled={forceTranslate} 536 545 onClick={() => { ··· 540 549 <Icon icon="translate" /> 541 550 <span>Translate</span> 542 551 </MenuItem> 552 + ) : ( 553 + (!language || differentLanguage) && ( 554 + <MenuLink 555 + to={`${instance ? `/${instance}` : ''}/s/${id}?translate=1`} 556 + > 557 + <Icon icon="translate" /> 558 + <span>Translate</span> 559 + </MenuLink> 560 + ) 543 561 )} 544 562 {((!isSizeLarge && sameInstance) || enableTranslate) && <MenuDivider />} 545 563 <MenuItem href={url} target="_blank"> ··· 996 1014 }} 997 1015 /> 998 1016 )} 999 - {((enableTranslate && 1000 - !!content.trim() && 1001 - language && 1002 - language !== targetLanguage && 1003 - !match([language], [targetLanguage]) && 1004 - !contentTranslationHideLanguages.find( 1005 - (l) => language === l || match([language], [l]), 1006 - )) || 1017 + {((enableTranslate && !!content.trim() && differentLanguage) || 1007 1018 forceTranslate) && ( 1008 1019 <TranslationBlock 1009 1020 forceTranslate={forceTranslate}
+2
src/pages/status.jsx
··· 149 149 const mediaParam = searchParams.get('media'); 150 150 const showMedia = parseInt(mediaParam, 10) > 0; 151 151 const [viewMode, setViewMode] = useState(searchParams.get('view')); 152 + const translate = !!parseInt(searchParams.get('translate')); 152 153 const { masto, instance } = api({ instance: propInstance }); 153 154 const { 154 155 masto: currentMasto, ··· 801 802 withinContext 802 803 size="l" 803 804 enableTranslate 805 + forceTranslate={translate} 804 806 /> 805 807 </InView> 806 808 {uiState !== 'loading' && !authenticated ? (