Skip to content

Commit

Permalink
Merge pull request #35324 from Krishna2323/krishna2323/issue/35200
Browse files Browse the repository at this point in the history
fix: When user goes offline, the download button do not disappear for other file types.
  • Loading branch information
bondydaa authored Jan 31, 2024
2 parents a1ac92d + fd4e5f0 commit 1382d32
Showing 1 changed file with 8 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ import type {OnyxEntry} from 'react-native-onyx';
import AttachmentView from '@components/Attachments/AttachmentView';
import PressableWithoutFeedback from '@components/Pressable/PressableWithoutFeedback';
import {ShowContextMenuContext, showContextMenuForReport} from '@components/ShowContextMenuContext';
import useNetwork from '@hooks/useNetwork';
import useThemeStyles from '@hooks/useThemeStyles';
import addEncryptedAuthTokenToURL from '@libs/addEncryptedAuthTokenToURL';
import fileDownload from '@libs/fileDownload';
import * as ReportUtils from '@libs/ReportUtils';
Expand Down Expand Up @@ -31,15 +33,18 @@ function BaseAnchorForAttachmentsOnly({style, source = '', displayName = '', dow
const sourceURLWithAuth = addEncryptedAuthTokenToURL(source);
const sourceID = (source.match(CONST.REGEX.ATTACHMENT_ID) ?? [])[1];

const {isOffline} = useNetwork();
const styles = useThemeStyles();

const isDownloading = download?.isDownloading ?? false;

return (
<ShowContextMenuContext.Consumer>
{({anchor, report, action, checkIfContextMenuActive}) => (
<PressableWithoutFeedback
style={style}
style={[style, isOffline && styles.cursorDefault]}
onPress={() => {
if (isDownloading) {
if (isDownloading || isOffline) {
return;
}
Download.setDownload(sourceID, true);
Expand All @@ -56,7 +61,7 @@ function BaseAnchorForAttachmentsOnly({style, source = '', displayName = '', dow
// @ts-expect-error TODO: Remove this once AttachmentView (https://github.com/Expensify/App/issues/25150) is migrated to TypeScript.
source={sourceURLWithAuth}
file={{name: displayName}}
shouldShowDownloadIcon
shouldShowDownloadIcon={!isOffline}
shouldShowLoadingSpinnerIcon={isDownloading}
/>
</PressableWithoutFeedback>
Expand Down

0 comments on commit 1382d32

Please sign in to comment.