From 18ae5faad45d69961263fec23a2e9d9337dec448 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Th=C3=A9o=20Poizat?= Date: Mon, 30 Mar 2026 10:41:23 +0200 Subject: [PATCH 1/7] feat: Remove drive.highlight-new-items.enabled flag Feature by default now --- jestHelpers/setup.js | 5 +---- src/lib/flags.js | 1 - src/modules/layout/Layout.jsx | 12 +++--------- src/modules/public/PublicLayout.jsx | 13 +++---------- src/modules/upload/NewItemHighlightProvider.jsx | 17 ----------------- .../virtualized/useScrollToHighlightedItem.jsx | 15 ++------------- .../useScrollToHighlightedItem.spec.jsx | 10 ---------- test/components/AppLike.jsx | 13 +++---------- 8 files changed, 12 insertions(+), 74 deletions(-) diff --git a/jestHelpers/setup.js b/jestHelpers/setup.js index a8e20229ad..b98c8b7c30 100644 --- a/jestHelpers/setup.js +++ b/jestHelpers/setup.js @@ -21,10 +21,7 @@ jest.mock('cozy-dataproxy-lib', () => ({ // Mock cozy-flags with jest mock function that supports both flag checking and test mocking jest.mock('cozy-flags', () => { - const mockFn = jest.fn(flagName => { - if (flagName === 'drive.highlight-new-items.enabled') { - return true - } + const mockFn = jest.fn(() => { // Return false for all other flags to avoid issues return false }) diff --git a/src/lib/flags.js b/src/lib/flags.js index e13dad84d5..58838e4786 100644 --- a/src/lib/flags.js +++ b/src/lib/flags.js @@ -28,5 +28,4 @@ const flagsList = () => { flag('drive.breadcrumb.showCompleteBreadcrumbOnPublicPage') // flagName should use kebab case flag('drive.hide-nextcloud-dev') flag('drive.keyboard-shortcuts.enabled', true) - flag('drive.highlight-new-items.enabled', true) } diff --git a/src/modules/layout/Layout.jsx b/src/modules/layout/Layout.jsx index 3233766422..c56f473dfa 100644 --- a/src/modules/layout/Layout.jsx +++ b/src/modules/layout/Layout.jsx @@ -1,4 +1,4 @@ -import React, { Fragment, useEffect } from 'react' +import React, { useEffect } from 'react' import { useDispatch, useSelector } from 'react-redux' import { Outlet, useNavigate } from 'react-router-dom' @@ -59,15 +59,9 @@ const LayoutContent = () => { ? !hasWriteAccess(displayedFolder._id, displayedFolder.driveId) : false - const NewItemHighlightProviderWrapper = flag( - 'drive.highlight-new-items.enabled' - ) - ? NewItemHighlightProvider - : Fragment - return ( ev.preventDefault()}> - + { {flag('debug') && } - + ) } diff --git a/src/modules/public/PublicLayout.jsx b/src/modules/public/PublicLayout.jsx index 4a45017661..e73ba12228 100644 --- a/src/modules/public/PublicLayout.jsx +++ b/src/modules/public/PublicLayout.jsx @@ -1,8 +1,7 @@ -import React, { Fragment } from 'react' +import React from 'react' import { Outlet } from 'react-router-dom' import { BarComponent } from 'cozy-bar' -import flag from 'cozy-flags' import FlagSwitcher from 'cozy-flags/dist/FlagSwitcher' import Sprite from 'cozy-ui/transpiled/react/Icon/Sprite' import { Layout } from 'cozy-ui/transpiled/react/Layout' @@ -14,12 +13,6 @@ import { NewItemHighlightProvider } from '@/modules/upload/NewItemHighlightProvi import UploadQueue from '@/modules/upload/UploadQueue' const PublicLayout = () => { - const NewItemHighlightProviderWrapper = flag( - 'drive.highlight-new-items.enabled' - ) - ? NewItemHighlightProvider - : Fragment - return ( { /> - + - + ) diff --git a/src/modules/upload/NewItemHighlightProvider.jsx b/src/modules/upload/NewItemHighlightProvider.jsx index a89b6b5035..c4182ec884 100644 --- a/src/modules/upload/NewItemHighlightProvider.jsx +++ b/src/modules/upload/NewItemHighlightProvider.jsx @@ -1,7 +1,5 @@ import React, { createContext, useCallback, useContext, useState } from 'react' -import flag from 'cozy-flags' - const NewItemHighlightContext = createContext() const NewItemHighlightProvider = ({ children }) => { @@ -9,8 +7,6 @@ const NewItemHighlightProvider = ({ children }) => { const [ids, setIds] = useState(new Set()) const addItems = newItems => { - if (!flag('drive.highlight-new-items.enabled')) return - if (!Array.isArray(newItems)) { throw new Error('addItems expects an array') } @@ -23,15 +19,11 @@ const NewItemHighlightProvider = ({ children }) => { } const clearItems = useCallback(() => { - if (!flag('drive.highlight-new-items.enabled')) return - setHighlightedItems([]) setIds(new Set()) }, [setHighlightedItems, setIds]) const isNew = item => { - if (!flag('drive.highlight-new-items.enabled')) return false - return item?._id ? ids.has(item._id) : false } @@ -47,15 +39,6 @@ const NewItemHighlightProvider = ({ children }) => { const useNewItemHighlightContext = () => { const ctx = useContext(NewItemHighlightContext) - if (!flag('drive.highlight-new-items.enabled')) { - return { - highlightedItems: [], - addItems: () => {}, - clearItems: () => {}, - isNew: () => false - } - } - if (!ctx) throw new Error( 'useNewItemHighlightContext must be used within NewItemHighlightProvider' diff --git a/src/modules/views/Folder/virtualized/useScrollToHighlightedItem.jsx b/src/modules/views/Folder/virtualized/useScrollToHighlightedItem.jsx index cfb0f6e310..7573c652a5 100644 --- a/src/modules/views/Folder/virtualized/useScrollToHighlightedItem.jsx +++ b/src/modules/views/Folder/virtualized/useScrollToHighlightedItem.jsx @@ -1,6 +1,4 @@ -import { useEffect, useMemo, useRef } from 'react' - -import flag from 'cozy-flags' +import { useEffect, useRef } from 'react' import { useNewItemHighlightContext } from '@/modules/upload/NewItemHighlightProvider' @@ -15,17 +13,8 @@ import { useNewItemHighlightContext } from '@/modules/upload/NewItemHighlightPro const useScrollToHighlightedItem = (virtuosoRef, items) => { const { highlightedItems } = useNewItemHighlightContext() const lastScrolledIdRef = useRef(null) - const isHighlightEnabled = useMemo( - () => flag('drive.highlight-new-items.enabled'), - [] - ) useEffect(() => { - if (!isHighlightEnabled) { - lastScrolledIdRef.current = null - return - } - if (!highlightedItems?.length) { lastScrolledIdRef.current = null return @@ -65,7 +54,7 @@ const useScrollToHighlightedItem = (virtuosoRef, items) => { }) lastScrolledIdRef.current = targetItem._id - }, [highlightedItems, items, virtuosoRef, isHighlightEnabled]) + }, [highlightedItems, items, virtuosoRef]) } export default useScrollToHighlightedItem diff --git a/src/modules/views/Folder/virtualized/useScrollToHighlightedItem.spec.jsx b/src/modules/views/Folder/virtualized/useScrollToHighlightedItem.spec.jsx index 836014e392..5abda516d9 100644 --- a/src/modules/views/Folder/virtualized/useScrollToHighlightedItem.spec.jsx +++ b/src/modules/views/Folder/virtualized/useScrollToHighlightedItem.spec.jsx @@ -54,14 +54,4 @@ describe('useScrollToHighlightedItem', () => { }) ) }) - - it('does nothing when the highlight feature flag is disabled', async () => { - flag.mockReturnValue(false) - setHighlightedItems([{ _id: 'match' }]) - const items = [{ _id: 'match' }] - - renderHook(() => useScrollToHighlightedItem(virtuosoRef, items)) - - expect(virtuosoRef.current.scrollToIndex).not.toHaveBeenCalled() - }) }) diff --git a/test/components/AppLike.jsx b/test/components/AppLike.jsx index 7f7d9c319e..9ea7621590 100644 --- a/test/components/AppLike.jsx +++ b/test/components/AppLike.jsx @@ -1,4 +1,4 @@ -import React, { Fragment } from 'react' +import React from 'react' import { DndProvider } from 'react-dnd' import { HTML5Backend } from 'react-dnd-html5-backend' import { Provider } from 'react-redux' @@ -6,7 +6,6 @@ import { HashRouter } from 'react-router-dom' import { createStore } from 'redux' import { CozyProvider } from 'cozy-client' -import flag from 'cozy-flags' import { SharingContext, NativeFileSharingProvider } from 'cozy-sharing' import { Layout } from 'cozy-ui/transpiled/react/Layout' import AlertProvider from 'cozy-ui/transpiled/react/providers/Alert' @@ -55,12 +54,6 @@ const mockModalContextValue = { modalStack: [] } -const NewItemHighlightProviderWrapper = flag( - 'drive.highlight-new-items.enabled' -) - ? NewItemHighlightProvider - : Fragment - const AppLike = ({ children, store, @@ -78,7 +71,7 @@ const AppLike = ({ - + @@ -104,7 +97,7 @@ const AppLike = ({ - + From 91c2b11830fa7ba00dc6f991cee05cd03b52dcd0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Th=C3=A9o=20Poizat?= Date: Mon, 30 Mar 2026 10:42:54 +0200 Subject: [PATCH 2/7] feat: Remove drive.keyboard-shortcuts.enabled flag Feature by default now --- src/hooks/useKeyboardShortcuts.spec.jsx | 10 ++++------ src/hooks/useKeyboardShortcuts.tsx | 5 ----- src/lib/flags.js | 1 - src/modules/views/Public/PublicFolderView.jsx | 17 ++++++----------- 4 files changed, 10 insertions(+), 23 deletions(-) diff --git a/src/hooks/useKeyboardShortcuts.spec.jsx b/src/hooks/useKeyboardShortcuts.spec.jsx index d2be1fc6d6..5e10c5c6ce 100644 --- a/src/hooks/useKeyboardShortcuts.spec.jsx +++ b/src/hooks/useKeyboardShortcuts.spec.jsx @@ -65,8 +65,11 @@ jest.mock('cozy-sharing', () => ({ withLocales: component => component })) +jest.mock('@/modules/upload/NewItemHighlightProvider', () => ({ + useNewItemHighlightContext: jest.fn(() => ({ addItems: jest.fn() })) +})) + import { isFile } from 'cozy-client/dist/models/file' -import flag from 'cozy-flags' import { useAlert } from 'cozy-ui/transpiled/react/providers/Alert' import { useI18n } from 'twake-i18n' @@ -207,11 +210,6 @@ describe('useKeyboardShortcuts', () => { { success: true, file: { _id: 'pasted-file' }, operation: OPERATION_COPY } ]) - flag.mockImplementation(flagName => { - if (flagName === 'drive.keyboard-shortcuts.enabled') return true - return false - }) - mockCopyFiles.mockClear() mockCutFiles.mockClear() mockClearClipboard.mockClear() diff --git a/src/hooks/useKeyboardShortcuts.tsx b/src/hooks/useKeyboardShortcuts.tsx index dbe720bd02..bcd3de5989 100644 --- a/src/hooks/useKeyboardShortcuts.tsx +++ b/src/hooks/useKeyboardShortcuts.tsx @@ -4,7 +4,6 @@ import { useDispatch } from 'react-redux' import { isFile } from 'cozy-client/dist/models/file' import CozyClient from 'cozy-client/types/CozyClient' import { IOCozyFile } from 'cozy-client/types/types' -import flag from 'cozy-flags' import { useAlert } from 'cozy-ui/transpiled/react/providers/Alert' import { useI18n } from 'twake-i18n' @@ -324,10 +323,6 @@ export const useKeyboardShortcuts = ({ }, [selectedItems, pushModal, popModal, refresh, allowDelete, showAlert, t]) useEffect(() => { - if (!flag('drive.keyboard-shortcuts.enabled')) { - return - } - const shortcuts: Record void | Promise) | undefined> = { 'Ctrl+c': handleCopy, diff --git a/src/lib/flags.js b/src/lib/flags.js index 58838e4786..144e01310e 100644 --- a/src/lib/flags.js +++ b/src/lib/flags.js @@ -27,5 +27,4 @@ const flagsList = () => { flag('drive.dacc-files-size-by-slug') flag('drive.breadcrumb.showCompleteBreadcrumbOnPublicPage') // flagName should use kebab case flag('drive.hide-nextcloud-dev') - flag('drive.keyboard-shortcuts.enabled', true) } diff --git a/src/modules/views/Public/PublicFolderView.jsx b/src/modules/views/Public/PublicFolderView.jsx index 1d6710f07d..efb32cb891 100644 --- a/src/modules/views/Public/PublicFolderView.jsx +++ b/src/modules/views/Public/PublicFolderView.jsx @@ -137,17 +137,13 @@ const PublicFolderView = ({ sharedDocumentId }) => { useKeyboardShortcuts({ onPaste: refreshAfterChange, - canPaste: - hasWritePermissions && - hasClipboardData && - flag('drive.keyboard-shortcuts.enabled'), + canPaste: hasWritePermissions && hasClipboardData, client, items: filesResult.data, sharingContext: null, - allowCopy: hasWritePermissions && flag('drive.keyboard-shortcuts.enabled'), - allowCut: hasWritePermissions && flag('drive.keyboard-shortcuts.enabled'), - allowDelete: - hasWritePermissions && flag('drive.keyboard-shortcuts.enabled'), + allowCopy: hasWritePermissions, + allowCut: hasWritePermissions, + allowDelete: hasWritePermissions, isPublic: true, pushModal, popModal, @@ -174,9 +170,8 @@ const PublicFolderView = ({ sharedDocumentId }) => { showAlert, pathname, hasWriteAccess: hasWritePermissions, - canMove: hasWritePermissions && flag('drive.keyboard-shortcuts.enabled'), - canDuplicate: - hasWritePermissions && flag('drive.keyboard-shortcuts.enabled'), + canMove: hasWritePermissions, + canDuplicate: hasWritePermissions, isPublic: true, isOwner, byDocId, From 0c68c3e0a95791a47a0b1afa9fbea90bbf8297b0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Th=C3=A9o=20Poizat?= Date: Mon, 30 Mar 2026 10:44:17 +0200 Subject: [PATCH 3/7] feat: Remove drive.save-sort-choice.enabled flag Feature by default now --- src/hooks/useFolderSort/index.spec.jsx | 9 --------- src/hooks/useFolderSort/index.ts | 10 +--------- 2 files changed, 1 insertion(+), 18 deletions(-) diff --git a/src/hooks/useFolderSort/index.spec.jsx b/src/hooks/useFolderSort/index.spec.jsx index 76374e8a20..6e431ead7f 100644 --- a/src/hooks/useFolderSort/index.spec.jsx +++ b/src/hooks/useFolderSort/index.spec.jsx @@ -1,7 +1,6 @@ import { renderHook, act, waitFor } from '@testing-library/react' import { useClient } from 'cozy-client' -import flag from 'cozy-flags' import { useFolderSort } from './index' @@ -30,7 +29,6 @@ jest.mock('@/modules/public/PublicProvider', () => ({ })) const mockUseClient = useClient -const mockFlag = flag const mockUsePublicContext = usePublicContext describe('useFolderSort', () => { @@ -48,13 +46,6 @@ describe('useFolderSort', () => { } mockUseClient.mockReturnValue(mockClient) - mockFlag.mockImplementation(flagName => { - if (flagName === 'drive.save-sort-choice.enabled') { - return true - } - return false - }) - mockUsePublicContext.mockReturnValue({ isPublic: false }) diff --git a/src/hooks/useFolderSort/index.ts b/src/hooks/useFolderSort/index.ts index d8028d1968..005b0b3446 100644 --- a/src/hooks/useFolderSort/index.ts +++ b/src/hooks/useFolderSort/index.ts @@ -1,7 +1,6 @@ import { useCallback, useEffect, useState } from 'react' import { useClient, Q } from 'cozy-client' -import flag from 'cozy-flags' import { DEFAULT_SORT, SORT_BY_UPDATE_DATE } from '@/config/sort' import { RECENT_FOLDER_ID, TRASH_DIR_ID } from '@/constants/config' @@ -40,7 +39,7 @@ const useFolderSort = ( useEffect(() => { const load = async (): Promise => { - if (!client || !flag('drive.save-sort-choice.enabled') || isPublic) { + if (!client || isPublic) { setIsSettingsLoaded(true) return } @@ -67,13 +66,6 @@ const useFolderSort = ( async ({ attribute, order }: Sort) => { setCurrentSort({ attribute, order }) - if (!flag('drive.save-sort-choice.enabled')) { - logger.warn( - 'Cannot persist sort: flag drive.save-sort-choice.enabled is not enabled' - ) - return - } - if (!client) { logger.warn('Cannot persist sort: client unavailable') return From aacd93fc5ef7ec3b343eef51f4ce2d602defc8ac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Th=C3=A9o=20Poizat?= Date: Mon, 30 Mar 2026 10:45:05 +0200 Subject: [PATCH 4/7] feat: Remove drive.update-favicon.enabled flag Feature by default now --- src/hooks/useUpdateFavicon/index.spec.jsx | 20 -------------------- src/hooks/useUpdateFavicon/index.tsx | 9 +-------- 2 files changed, 1 insertion(+), 28 deletions(-) diff --git a/src/hooks/useUpdateFavicon/index.spec.jsx b/src/hooks/useUpdateFavicon/index.spec.jsx index ef007b1281..8a2b1b991e 100644 --- a/src/hooks/useUpdateFavicon/index.spec.jsx +++ b/src/hooks/useUpdateFavicon/index.spec.jsx @@ -149,26 +149,6 @@ describe('useUpdateFavicon', () => { expect(mockLink.href).toBe('/original/favicon.ico') }) - it('should not update favicon when flag is disabled', () => { - mockFlag.mockReturnValue(false) - - const file = { - _id: '1', - name: 'document.docx', - mime: 'application/vnd.openxmlformats-officedocument.wordprocessingml.document' - } - - const { getFileMimetype } = require('@/lib/getFileMimetype') - getFileMimetype.mockReturnValue(() => 'text') - - const mockLink = createMockLinkElement('/assets/favicon.ico') - mockQuerySelectorAll.mockReturnValue([mockLink]) - - renderHook(() => useUpdateFavicon(file, 'loaded')) - - expect(mockLink.href).toBe('/assets/favicon.ico') - }) - it('should not update favicon when fetchStatus is not loaded', () => { const file = { _id: '1', diff --git a/src/hooks/useUpdateFavicon/index.tsx b/src/hooks/useUpdateFavicon/index.tsx index 1d2b4e1f5f..ef8dab74fe 100644 --- a/src/hooks/useUpdateFavicon/index.tsx +++ b/src/hooks/useUpdateFavicon/index.tsx @@ -1,7 +1,6 @@ import { useEffect, useRef } from 'react' import { IOCozyFile } from 'cozy-client/types/types' -import flag from 'cozy-flags' import { updateFavicon } from './helpers' @@ -15,8 +14,6 @@ const useUpdateFavicon = ( const originalFaviconUrlRef = useRef() useEffect(() => { - if (!flag('drive.update-favicon.enabled')) return - const originalFavicon = document.querySelector("link[rel~='icon']") @@ -34,11 +31,7 @@ const useUpdateFavicon = ( }, []) useEffect(() => { - if ( - fetchStatus !== 'loaded' || - !file || - !flag('drive.update-favicon.enabled') - ) { + if (fetchStatus !== 'loaded' || !file) { return } From 4ebc0a0b2fd441f5d506ed4895cb8217597d9a4d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Th=C3=A9o=20Poizat?= Date: Mon, 30 Mar 2026 10:45:40 +0200 Subject: [PATCH 5/7] feat: Remove drive.folder-personalization.enabled flag Feature by default now --- src/modules/actions/components/personalizeFolder.js | 2 -- .../drive/Toolbar/personalizeFolder/PersonalizeFolderItem.jsx | 2 -- src/modules/filelist/icons/FileIconMime.jsx | 2 -- 3 files changed, 6 deletions(-) diff --git a/src/modules/actions/components/personalizeFolder.js b/src/modules/actions/components/personalizeFolder.js index ca31dd4a46..2a0d83ad66 100644 --- a/src/modules/actions/components/personalizeFolder.js +++ b/src/modules/actions/components/personalizeFolder.js @@ -1,6 +1,5 @@ import React from 'react' -import flag from 'cozy-flags' import { makeAction } from 'cozy-ui/transpiled/react/ActionsMenu/Actions/makeAction' import PaletteIcon from 'cozy-ui/transpiled/react/Icons/Palette' @@ -22,7 +21,6 @@ const personalizeFolder = ({ label, icon, displayCondition: docs => - flag('drive.folder-personalization.enabled') && hasWriteAccess && docs.length === 1 && docs[0].type === 'directory' && diff --git a/src/modules/drive/Toolbar/personalizeFolder/PersonalizeFolderItem.jsx b/src/modules/drive/Toolbar/personalizeFolder/PersonalizeFolderItem.jsx index ee3c778db6..17dd7f64e4 100644 --- a/src/modules/drive/Toolbar/personalizeFolder/PersonalizeFolderItem.jsx +++ b/src/modules/drive/Toolbar/personalizeFolder/PersonalizeFolderItem.jsx @@ -1,6 +1,5 @@ import React from 'react' -import flag from 'cozy-flags' import ActionsMenuItem from 'cozy-ui/transpiled/react/ActionsMenu/ActionsMenuItem' import Icon from 'cozy-ui/transpiled/react/Icon' import PaletteIcon from 'cozy-ui/transpiled/react/Icons/Palette' @@ -20,7 +19,6 @@ const PersonalizeFolderItem = ({ const { pushModal, popModal } = useModalContext() if ( - !flag('drive.folder-personalization.enabled') || !hasWriteAccess || !displayedFolder || displayedFolder.type !== 'directory' diff --git a/src/modules/filelist/icons/FileIconMime.jsx b/src/modules/filelist/icons/FileIconMime.jsx index 27ce354bfd..52cbaaff70 100644 --- a/src/modules/filelist/icons/FileIconMime.jsx +++ b/src/modules/filelist/icons/FileIconMime.jsx @@ -2,7 +2,6 @@ import PropTypes from 'prop-types' import React from 'react' import { isDirectory } from 'cozy-client/dist/models/file' -import flag from 'cozy-flags' import Icon from 'cozy-ui/transpiled/react/Icon' import { isEncryptedFolder } from '@/lib/encryption' @@ -15,7 +14,6 @@ const FileIconMime = ({ file, size = 32, isEncrypted = false }) => { if ( isDir && - flag('drive.folder-personalization.enabled') && (file.metadata?.decorations?.color || file.metadata?.decorations?.icon) ) { return ( From ef2f775a72cafba884f3db080e54778115b89330 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Th=C3=A9o=20Poizat?= Date: Mon, 30 Mar 2026 10:46:39 +0200 Subject: [PATCH 6/7] feat: Remove drive.doubleclick.enabled flag Feature by default now --- src/hooks/useOnLongPress/helpers.js | 19 ------------------- src/hooks/useOnLongPress/helpers.spec.jsx | 3 +++ 2 files changed, 3 insertions(+), 19 deletions(-) diff --git a/src/hooks/useOnLongPress/helpers.js b/src/hooks/useOnLongPress/helpers.js index 54446aefe4..692823673f 100644 --- a/src/hooks/useOnLongPress/helpers.js +++ b/src/hooks/useOnLongPress/helpers.js @@ -1,5 +1,3 @@ -import flag from 'cozy-flags' - const DOUBLECLICKDELAY = 400 export const handleClick = ({ @@ -8,8 +6,6 @@ export const handleClick = ({ disabled, isRenaming, openLink, - toggle, - selectionModeActive, lastClickTime, setLastClickTime, setSelectedItems, @@ -23,21 +19,6 @@ export const handleClick = ({ clearHighlightedItems?.() - // simply remove this "if" the flag is not necessary anymore - if (!flag('drive.doubleclick.enabled')) { - if (selectionModeActive) { - if (flag('drive.dynamic-selection.enabled') && !event.shiftKey) { - event.stopPropagation() - setSelectedItems({ [file._id]: file }) - onInteractWithFile?.(file._id, event) - return - } - return toggle(event) - } else { - return openLink(event) - } - } - const currentTime = Date.now() const isDoubleClick = currentTime - lastClickTime < DOUBLECLICKDELAY diff --git a/src/hooks/useOnLongPress/helpers.spec.jsx b/src/hooks/useOnLongPress/helpers.spec.jsx index 8fc13c3ae5..db38ba9d5b 100644 --- a/src/hooks/useOnLongPress/helpers.spec.jsx +++ b/src/hooks/useOnLongPress/helpers.spec.jsx @@ -79,6 +79,7 @@ describe('handleClick', () => { event = ev, disabled = false, isRenaming = false, + file = { _id: 'file-id' }, lastClickTime = new Date('2025-01-01T12:00:00.000Z').getTime() // date of the first click }) => { return { @@ -86,10 +87,12 @@ describe('handleClick', () => { event, disabled, isRenaming, + file, openLink: mockOpenLink, toggle: mockToggle, lastClickTime, setLastClickTime: jest.fn(), + setSelectedItems: jest.fn(), onInteractWithFile: jest.fn() } } From dfa6900cb73d1433e667f83b8afb68b05b19dfdc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Th=C3=A9o=20Poizat?= Date: Mon, 30 Mar 2026 10:48:06 +0200 Subject: [PATCH 7/7] feat: Remove hide.healthTheme.enabled flag Feature by default now --- src/modules/views/Modal/QualifyFileView.jsx | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/src/modules/views/Modal/QualifyFileView.jsx b/src/modules/views/Modal/QualifyFileView.jsx index 6000e032e7..b895c311c8 100644 --- a/src/modules/views/Modal/QualifyFileView.jsx +++ b/src/modules/views/Modal/QualifyFileView.jsx @@ -6,7 +6,6 @@ import { getQualification } from 'cozy-client/dist/models/document' import { themesList } from 'cozy-client/dist/models/document/documentTypeData' import { isQualificationNote } from 'cozy-client/dist/models/document/documentTypeDataHelpers' import { getBoundT } from 'cozy-client/dist/models/document/locales' -import flag from 'cozy-flags' import Icon from 'cozy-ui/transpiled/react/Icon' import FileDuotoneIcon from 'cozy-ui/transpiled/react/Icons/FileDuotone' import FileTypeNoteIcon from 'cozy-ui/transpiled/react/Icons/FileTypeNote' @@ -17,11 +16,6 @@ import IconStack from '@/components/IconStack' import { LoaderModal } from '@/components/LoaderModal' import { buildFileOrFolderByIdQuery } from '@/queries' -const getThemesList = () => - flag('hide.healthTheme.enabled') - ? themesList.filter(theme => theme.label !== 'health') - : themesList - const OptionIconStack = ({ icon }) => { return ( { items: [], label: t('Scan.none') }, - ...getThemesList() + themesList ] return { focusedId,