Rocket.Chat.ReactNative/app/containers/message
Reinaldo Neto 0a75a6615c
feat: new audio player (#5160)
* feat: media auto-download view

* media auto download view completed and saving the settings in mmkv

* audio download preference

* audio auto download when the user who sent the audio is the same logged on mobile

* creation of isAutoDownloadEnabled, evaluate hist hook, Image Full Size preload done

* minor tweak audio show play button after download

* refactor audioFile to handleMediaDownload and fixed the audio download

* desestructured params to download too

* image download and autoDownload, algo fix the formatAttachmentUrl to show the image from local

* add the possibility to cancel image download and clear local images

* refactor blur component

* video download and auto download, also keeped the behavior to download unsuportted videos to the gallery

* add the possibility to start downloading a video, then exit the room, back again to room and cancel the video previously downloading

* remove the custom hook for autoDownload

* remove blurcomponent, fix the blur style in image.tsx, minor tweak video function name

* send messageId to video

* introducing the reducer to keep the downloads in progress

* create a media download selector

* remove all the redux stuff and do the same as file upload

* video download behavior

* done for image and audio

* fix the try catch download media

* clean up

* image container uiKit

* fix lint

* change rn-fetch-blob to expo-filesystem

* add pt-br

* pass the correct message id when there is an attachment on reply

* refactor some changes requested

* fix audio and move the netInfo from autoDownloadPreference to redux

* variable isAutoDownloadEnable name and handleMediaDownload getExtension

* message/Image refactored, change the component to show the image from FastImage to Image

* refactor handleMediaDownload and deleteMedia

* minor tweak

* refactor audio

* refactor video

* fix the type on the messagesView(the view of files)

* minor tweak

* fix the name of searchMediaFIleAsync's result

* minor tweak, add the default behavior, add the OFF as label

* minor tweaks

* verify if the media auto download exists on settings view

* fix media auto download view layout and minor tweak wifi

* avoid auto download from reply

* minor tweak at comment

* tweak list.section

* change the name to netInfoState and Local_document_directory

* remove mediaType and refactor audio and image

* separate blurview

* thumbnail video and video behavior

* add Audio to i18n and minor tweak

* set the blur as always dark and add the possibility to overlay

* don't need to controle the filepath in the view

* fix the loading in image and video at begin

* save the file with a similar filename as expected

* removed the necessity of messageId or id

* minor tweak

* switch useLayoutEffect to useEffect

* avoid onpress do some edge case because of cached at video

* minor tweak

* tweak at audio comment extension

* minor tweak type userpreferences

* remove test id from mediaAutoDownloadView

* change action's name to SET_NET_INFO_STATE

* caching and deleting video's thumbnails

* remove generate thumbnail

* minor tweak in image

* update camera-roll and save the file from local url

* remove local_cache_directory and deleteThumbnail

* update blur to fix error on android

* first commit

* fix togglePlayPause

* separate audio to a folder inside components and minor tweak attachment

* created the slider with text

* play/pause button, currentTime equal the sound, can change the slider and reflect to the sound

* play/pause, track is working and onEnd

* update the icons with play-shaped-filled, pause-shape-filled, loading

* start the tweaks on layout

* can play multiple audios, pausing the previous to execute the new one

* loading animated

* added the audio rate

* layout fixed

* removed the sound manipulation from Slider to manipulate only in the index

* fix time margin horizontal

* fix play 2 audios and play/pause properly

* change the way we treat the audio

* remove audio copy

* minor tweak

* fix rate state

* remove the PAUSE_AUDIO

* fix unloadAll, add hit slop to slider, show the duration on the first render

* refactor colors to be the same as figmas name

* change the class' name and add the method pauseCurrentAudio

* pause audio when unmount a RoomView and unloadAll when focusing at RoomsListView

* pause audio when entering a thread

* fix where call the pauseCurrentAudio

* moved the player from messageAudio to audioPlayer

* refactor audio component

* remove loading

* update snapshot

* fix colors name

* pauseAudio when roomview is blur

* moved audio from message/component/audio to message/Audio

* add navigation focus to AudioPlayer component and fix the jest

* add the { androidImplementation: 'MediaPlayer' }

* fix action sheet swipe 02-room

* fix action sheet swipe 05-threads

* tweak touchable

* remove react.memo from playbutton

* hitSlop

* speed playback from array

* textinputprops

* tweak at names

* minor tweak at onEnd

* minor tweak at names

* update styles

* thumb seek size

* change marginBottom

* add the clamp, adjust the thumb position, remove the necessity of OnEndGestureHandler

* change the utils to constants

* change to audioState

* fix the seek for android

* TDownloadState

* speed array

* pause audio from messagesView when open the files

* update test

* minor tweak

* change the time after ony one click, fixes the thumb to move sync with the click

* Fix seek

* minor tweak Sound to Audio.Sound

* name of Icon

* enable PlaybackSpeed only when playing the audio

* playbackSpeed to mmkv

* mock implementation

* create native button

* minor tweak

* minor tweaks

* playbackSpeed after loadAudio

* avoid show the error when try to setRate without audio

* add messageID to differ audios inside a quote/forward from original one

* unloadRoomAudios instead of unloadAllAudios inside the roomsListView

* minor tweak

---------

Co-authored-by: Diego Mello <diegolmello@gmail.com>
Co-authored-by: Gleidson Daniel Silva <gleidson10daniel@hotmail.com>
2023-11-20 11:13:15 -03:00
..
Components feat: add media auto-download (#5076) 2023-08-07 11:02:30 -03:00
helpers/fileDownload Chore: Evaluate helpers and utils - Typescript (#4146) 2022-06-06 11:17:51 -03:00
Attachments.tsx feat: new audio player (#5160) 2023-11-20 11:13:15 -03:00
Audio.tsx feat: new audio player (#5160) 2023-11-20 11:13:15 -03:00
Blocks.ts fix: message re-rendering twice in a row (#5051) 2023-05-10 15:44:05 -03:00
Broadcast.tsx Chore: Upgrade React Native to 0.68.2 (#4316) 2022-08-08 18:02:08 -03:00
CallButton.tsx [IMPROVE] Brings the operation of the video call closer to the web (#4883) 2023-03-01 15:26:56 -03:00
Content.tsx [FIX] Message not rendering E2EE data if md exists (#4951) 2023-03-07 10:57:57 -03:00
Context.ts Chore: Start Typescript migration (#3279) 2021-09-13 17:41:05 -03:00
Discussion.tsx Chore: Upgrade React Native to 0.68.2 (#4316) 2022-08-08 18:02:08 -03:00
Emoji.tsx [IMPROVE] Redesign emoji picker (#4328) 2022-10-21 15:27:55 -03:00
Image.tsx feat: image base64 (#5264) 2023-10-11 11:23:11 -03:00
Message.stories.tsx feat: image base64 (#5264) 2023-10-11 11:23:11 -03:00
Message.tsx fix: show last message when pinned (#5316) 2023-11-14 15:42:31 -03:00
MessageAvatar.tsx feat: enable navigate to my own profile from messages (#5293) 2023-11-08 15:03:53 -03:00
Preview.tsx feat: forward message (#5110) 2023-08-04 11:09:36 -03:00
Reactions.tsx [IMPROVE] Redesign emoji picker (#4328) 2022-10-21 15:27:55 -03:00
RepliedThread.tsx Chore: Evaluate Icon - Typescript (#3982) 2022-05-02 16:21:15 -03:00
Reply.tsx fix: fix bugs related to auto-translate and add tests (#5144) 2023-08-14 17:22:46 -03:00
Thread.tsx fix: show the thread when it has zero messages (#5182) 2023-08-29 13:50:42 -03:00
Touchable.tsx Chore: Start Typescript migration (#3279) 2021-09-13 17:41:05 -03:00
Urls.tsx fix: message flickering after mount due to url preview (#5232) 2023-09-26 09:54:21 -03:00
User.tsx feat: enable navigate to my own profile from messages (#5293) 2023-11-08 15:03:53 -03:00
Video.tsx fix: add fallback to unsupported MathML tags in MathJax (#5127) 2023-08-16 09:02:53 -03:00
constants.ts feat: new audio player (#5160) 2023-11-20 11:13:15 -03:00
index.tsx feat: new audio player (#5160) 2023-11-20 11:13:15 -03:00
interfaces.ts feat: add media auto-download (#5076) 2023-08-07 11:02:30 -03:00
styles.ts feat: add media auto-download (#5076) 2023-08-07 11:02:30 -03:00
utils.ts fix: show last message when pinned (#5316) 2023-11-14 15:42:31 -03:00