Commit graph

47 commits

Author SHA1 Message Date
Elias Nahum
8e314022ca
MM-24285 Use FastImage instead of Image (#4218)
* Enable ESLint no-unused-vars

* Use FastImage instead of Image

* Update fast-image patch to support multiple cookies

* Fix ESLint errors

* Have jest run timers for post_textbox tests

* Feedback review

* Update snapshots
2020-04-28 11:36:32 -04:00
Miguel Alatzar
2d81b497cf [MM-23520] Port mattermost-redux (#4088)
* Remove mattermost-redux

* Move mm-redux files into app/redux

* Add @redux path to tsconfig.json

* Fix imports

* Install missing dependencies

* Fix tsc errors

* Fix i18n_utils test

* Fix more imports

* Remove redux websocket

* Fix tests

* Rename @redux

* Apply changes from mattermost-redux PR 1103

* Remove mattermost-redux mention in template

* Add missing imports

* Rename app/redux/ to app/mm-redux/

* Remove test file

* Fix fetching Sidebar GM profiles

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2020-04-17 21:12:09 -07:00
Miguel Alatzar
abaed71f47
[MM-22034] Tighten up post draft UI (#3898)
* Tighten up post draft UI

* Revert "MM-15307 Updated to use InteractionManager (#3666)"

This reverts commit e08155c81b.

* Address PR review comments

* Update snapshot test

* Don't return null if no files

* Fix progress text and padding issues

* Fixes per Matt's review

* Make linter happy
2020-02-10 11:46:00 -03:00
Andre Vasconcelos
b6e6d4c9e0 Fixing post draft style to comply with design specs (#3818)
* Polishing post draft to comply with design specs

* changed maxHeight in landscape mode, fixed icon sizes

- Refactored code so that post draft icon sizes are taken from same constant value

- Set maxHeight value in landscape mode to be smaller (tests pending)

- Removed repeated styles for button wrappers (passing them down as props to child components)

- Increased size of image attachment remote icon, and increased tappable area

* Removing repeated logic for file upload

* Fixing failed snapshot tests / style checks

* Fixing file upload remove icon to have 64% opacity

* post draft UX/UI improvements

* Fix input box extra spacing

* input box line height and attachment border

* Animate to original state even if error is showing

* Fix permissions

* Improve attachment error animation

* Fix iOS post input height

* Update snapshots
2020-01-21 15:20:19 -03:00
Amit Uttam
ef0274cad8 [MM-16263] UI/UX Improvements to the mobile post draft area (#3807)
* Adding base button functionality

Moving file upload previews to be under textbox

* Ensuring textbox is scrollable when in landscape mode

* Updated image picker to use mixed camera option

* Added unit tests, fixed other tests affected by dependency update

* Updated patch for react-native-image-picker to 1.1.0

* Fixing incorrect import of DocumentPicker

* MM-20989: Ensuring keyboard doesn't dismiss while submitting post (#3758)

* Ensuring keyboard doesn't dismiss while submitting post

* Update snapshot

* Preventing the @ icon from being repeatedly tappable (#3777)

* Fix snapshot from merge

* MM-21736 Select/Take images and videos for Android

* MM-21737 Fix attachment error message position on iOS

* Remove FileUploadPreview from the iOS Thread screen

* Fix android camera permissions

* Fix post input box sizing and disable scrollview

* Fix iOS photo gallery videos

Co-authored-by: Andre Vasconcelos <andre.onogoro@gmail.com>
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2020-01-16 22:17:03 -03:00
Vladimir Lebedev
422fc5ee4a MM-18767 Remove deprecated lifecycle methods from post textbox (#3697)
* MM-18767 Remove deprecated lifecycle methods from post textbox

* fix current issues

* change deep equal compare to just compare, fix test

* remove redundant state initialization

* restore state

* move state from constructor
2020-01-09 23:07:55 +08:00
Amit Uttam
66a6e5c932 [MM-10813] Design update for Post attachments (#3511)
* [MM-10813] Design update for Post attachments

Fixes https://github.com/mattermost/mattermost-server/issues/12841

* Updated visual treatment for Post attachments (images, documents, videos)
* Grouped image attachments, expanding to fit Post width dimension
* Itemized listing of non-image attachments
* Special handling of "small" image attachments (<48 point width/height)

* Set attachment post width to max width of portrait orientation

Accounts for post display offset and extra spacing used for rendering post replies.

* Use available Post real estate: flex: 1 instead of width 100%

* Image spacing responsibility: AttachmentList -> AttachmentImage

* Fit download progress circle correctly over new attachment icons

* Layers progress circle over the icon, rather than under.
* Uses offset constant as far as possible, rather than fixed point spaces.

* Refactor props and 'more' counting for image file attachment(s)

* Implement conditional gutter between image attachments

Flex's `justifyContent: space-between` won't work in this case because of the use of `absoluteFill` and `paddingBottom: 100%` in the box placeholder for an image attachment to auto-fill *all* available flex space.

* Additional snapshots for Post file attachment scenarios

* Use new 'text' icon for text files (.txt, .rtf)

Depends on https://github.com/mattermost/mattermost-redux/pull/979

Even without the change to mattermost-redux above, text files will default to pre-existing "code" icon.

* Set file attachment icon background to theme

Default to transparent. Override if explicitly specified.

* Treat animated GIFs as images when auto-adjusting attachment width

* Fix images layout, progressive image margins, and gallery for images and videos

* fix on iPad (splitview, permanent sidebar) card types and image sizes

* Add all files back to the gallery
2019-11-15 22:41:09 -05:00
Elias Nahum
9975a19b91
MM-18236 Prevent the post menu from triggering when using the back gesture (#3319)
* MM-18236 Prevent the post menu from triggering when using the back gesture in the thread screen

* Update snapshots

* Update app/components/touchable_with_feedback/touchable_with_feedback.ios.js

Co-Authored-By: Miguel Alatzar <migbot@users.noreply.github.com>

* Update app/components/touchable_with_feedback/touchable_with_feedback.ios.js

Co-Authored-By: Miguel Alatzar <migbot@users.noreply.github.com>

* Update app/components/post/post.js

Co-Authored-By: Miguel Alatzar <migbot@users.noreply.github.com>

* Update app/components/touchable_with_feedback/touchable_with_feedback.ios.js

* Fix eslint
2019-09-26 00:19:49 +03:00
Ewe Tek Min
0d1fd78263 MM-9599 Paste image from clipboard (#3084)
* Show image paste menu

* Get pasted image

* Add more info for file

* Add custom text input and add extension

* Dismiss contextual menu after paste image

* Group image info together

* Add max file check

* Fix max file size text

* Add PropTypes

* Add support for gif and tiff

* add onchange null check

* Use onPaste event

* Move get image info logic

* Clean up listener when no observer

* Add android upload

* Copy file from google docs

* Clean up file after upload

* Prevent text pasted in textbox if it's content uri

* Rename paste file thread

* Move on paste listener logic

* Remove the redundant data in ios

* Get realpath of item

* Clean up

* Only download for image

* Rename to custom text input

* Update RNPasteableEditTextOnPasteListener.java

* Handle for download image failed

* Fix eslint

* Fix test

* Allow multiple images to be pasted

* Remove additional null check

* Add managed control for Android

* Disable only copy, cut and paste

* Accept image in Android edit text

* Add comment for custom text input

* Do not upload when more than max file

* Stop uplaod when exceed file size

* Fix crash when clip data is null

* Return error to JS

* Move download file logic

* Remove console

* Add some tests

* Add test for handleUploadImages

* Add test for file_upload_item

* Use ImageCacheManager to cache remote images

* Fix crashes from one note

* Remove commented code

* Update test
2019-09-16 20:10:14 -03:00
Elias Nahum
4d664f6654
Fix file upload not completing (#2866)
* Fix file upload not completing

* Update snapshots
2019-06-06 08:39:06 -04:00
Elias Nahum
9bddbe6642 MM-15912 Fix uploads stuck at 100% (#2847) 2019-05-30 11:57:15 -07:00
Elias Nahum
f7f56e958b
MM-9494 & MM-13888 Tapping execute actions & interactive keyboard dismissal (#2799)
* MM-9494 & MM-13888 Tapping with the keyboard opened executes the action & iOS iteractive keyboard

* Fix tests

* feedback review

* add new line at the end of file

* feedback review and added todo list

* Track interactive dismiss keyboard and set scrollview bounds natively

* Fix snapshots

* Fastlane default to current branch when no BRANCH_TO_BUILD is set

* Set NODE_OPTIONS in ios build script

* Rebind scrollview when channel gets first set of posts

* Keep scrolling momentum on keyboard close

* Update react-native-keyboard-tracking-view

* Fix ScrollView offset with keyboard-tracking

* Fix offset while dragging the keyboard

* Allow action on channel drawer on tablets

* Fix typo

Co-Authored-By: Saturnino Abril <saturnino.abril@gmail.com>

* Fix indentation
2019-05-20 12:02:00 -04:00
Miguel Alatzar
45e5bae8da
Avoid possible reading of length property on undefined (#2783) 2019-05-10 09:34:23 -07:00
Daniel Schalla
dd5d11e1dd Add CSRF Header in File Upload and Profile Image Set Operations (#2686) 2019-04-04 10:43:54 -04:00
Elias Nahum
3feaa8e6bb
iOS Native Share Extension (Swift) (#2575)
* iOS Native Share Extension (Swift)

* Re-arrange files

* Fix .gitignore
2019-02-26 14:31:57 -03:00
Elias Nahum
b20e976dff
Properly handle max file size (#2248)
* Properly handle max file size

* Feedback review
2018-10-11 14:11:05 -03:00
Harrison Healey
4e251d392a
MM-12189 Set autocomplete max height based off available space (#2218)
* MM-12189 Set autocomplete max height based off available space

* Have each autocomplete type determine its own max height since DateSuggestion needs more space

* Remove unused props and ref
2018-10-05 09:58:05 -04:00
Elias Nahum
fa5efd4007
Revert "image thumbnail not centered (#2210)" and fix it properly (#2219)
This reverts commit 5f31374e74.
2018-10-04 19:41:41 -03:00
Elias Nahum
5f31374e74 image thumbnail not centered (#2210)
* image thumbnail not centered

* feedback review
2018-10-04 01:37:59 +08:00
Sudheer
13aaefa0ac [MM-11988] Fix File Upload loading progress indicator alignment (#2181) 2018-09-27 15:15:45 +02:00
Elias Nahum
6e25dbf04b
Adding CSRF header to file uploads/downloads (#2151) 2018-09-24 10:51:32 -03:00
Elias Nahum
96e9c6c707 Update rn-fetch-blob and CBA support for iOS (#2033)
* Update rn-fetch-blob and CBA support for iOS

* remove trusty

* remove react-native-fast-image dependency
2018-08-29 14:01:37 -04:00
Jesse Hallam
8372e95d4a add eslint-plugin-header, and --fix all (#1726) 2018-06-19 19:14:50 -04:00
Elias Nahum
006c5a08d7
Use local Images when possible (#1580)
* Fix advance settings android layout

* include react-native-image-gallery dependency

* ImageCacheManager

* Add support for isGif, isDocument, isVideo and purge to file utils

* Remove file fetch cache

* include progressive image component

* Refactor image previewer

* Add image preview support for open graph and embed images

* Cache user profile picture

* Fix post additional content images for android

* Preview markdown inline images

* Improve progressive image

* feedback review
2018-04-13 12:23:15 -03:00
Elias Nahum
e20b84c6d8 Upload progress indicator (#1562)
* Long post support

* Split file upload component

* Use fetch blob fork

* add progress to file upload

* Remove SERVER.PID from Makefile

* Preview only images

* remove unused prop
2018-04-04 09:14:26 -04:00
Elias Nahum
579494feab
Long post feature (#1525)
* Long post support

* Fix upload preview

* Add MaxPostSize validation

* Fix show more button container

* localization

* feedback review

* UI feedback review

* Upgrade mattermost-redux

* Fix long post attachment list
2018-03-26 14:25:42 +03:00
Jesse Hallam
58b72302d6 update eslint's comma-dangle rule to always-multiline (#1457)
* update eslint's `comma-dangle` rule to `always-multiline`

* add check and fix scripts to package.json

* Invoke `yarn fix` to adopt the updated eslint rules. No other changes are included.
2018-02-23 09:06:02 -05:00
enahum
5442bd5265
Fix uploading videos from Android (#1315)
* Fix uploading videos from Android

* Fix upload of gif files in iOS
2017-12-22 16:06:32 -03:00
Chris Duarte
00ce1e1842 Enforce max file count and active send button (#1241)
* Enforce max file count and wait until all images finish loading

Replaced Text with FormattedText

Remove unnecessary Text import

Clean up post_textbox and file_upload_preview

* Fix localization string for mobile

* change MAX_IMAGE_COUNT to MAX_FILE_COUNT
2017-12-14 15:19:31 -03:00
enahum
d65667093f
Fix file upload and edit post layout (#1259) 2017-12-04 19:13:14 -03:00
enahum
c69bf5a950
Remove unneded ownProps (#1177) 2017-11-21 12:35:03 -03:00
Harrison Healey
a9489dcc5f Replace getTheme selector with one from mattermost-redux (#1013) 2017-10-12 08:45:17 -07:00
Harrison Healey
05bfc04ec9 Fixed post draft selectors returning null (#932) 2017-09-22 11:23:42 -07:00
enahum
4995a76f2c Add Landscape support for both platforms (#909)
* Landscape support

* Fix image rotation on Android

* Fix landscape mode for login and login options

* Fix previewer will receive props

* Move device dimensions and others to redux

* Fix unit tests

* Include orientation and tablet in the store
2017-09-20 12:54:24 -07:00
Chris Duarte
aafc8001dc RN-248 Upload file and leave channel (#759)
* RN-248 Upload file and leave channel

* Fix bool to string comparison
2017-07-21 09:49:30 -04:00
Chris Duarte
1478bb47b1 RN-121 Upload thumbnail (#565) 2017-05-25 09:08:29 -04:00
enahum
844c654fda Update RN to 0.44.0 and project dependencies (#546) 2017-05-16 21:13:44 -04:00
enahum
a7dc43aee9 Retry File Upload (#515)
* rename searchMoreChannels to searchChannels

* Handle send post when a file failed to upload
2017-05-02 12:06:08 -03:00
Chris Duarte
9d13c985c2 RN-52: RN: Make create post and upload file actions optimistic (#504)
* RN-52: RN: Make create post and upload file actions optimistic

* Review feedback
2017-04-27 08:45:42 -03:00
Harrison Healey
43e4c5e2f2 PLT-5860 Updated copyright date (#476) 2017-04-10 11:33:35 -03:00
Chris Duarte
9a5f693e7f PLT-6122 RN: Improvements to image upload UI (#467) 2017-04-07 16:10:13 -03:00
Chris Duarte
ae3de5c1f2 PLT-6145 RN: File upload overlay doesn't clear (#437) 2017-03-30 23:46:20 -03:00
Chris Duarte
eb99aac45c Plt 5991 pinch zoom (#414)
* Rename and get correct image URL

* Add pinch and zoom

* Fix pinch and zoom on device

* Fix dismiss drag and landscape
2017-03-30 00:35:35 -03:00
Chris Duarte
e6a1c1a433 Plt 6044 plt 5971 plt 5934 (#405)
* Update post textbox design

* Hide team selection

* Added channel loader

* Update post textbox to new design

* Add channel loader animation

* Remove error bar

* Made image preview fullscreen

* Fix channel loader gradient

* Fix status icon

* Adjust loaded and profile

* Fix channel header wrap

* Add reply count icon

* Fix android styling

* Hide send button

* Fix thread header

* Fix thumbnail upload preview

* Fix preview retry and design
2017-03-27 16:47:52 -03:00
Chris Duarte
396bac389f Plt 5944 portait view (#393)
* PLT-5499 RN: Only allow portrait view

* Added library

* Lock to portait

* Fixed upload preview hiding under text input

* Fixed create channel input borders

* Fixed color separators in channel list

* Fixing orientation for android
2017-03-24 13:41:20 -03:00
Chris Duarte
f37c308ab8 PLT-6033 Add loading spinner to image previewer (#387) 2017-03-23 17:21:14 -03:00
Chris Duarte
18cc7f1e7f PLT-5518 RN: Allow user to upload + send image file attachments (#373)
* PLT-5518 RN: Allow user to upload + send image file attachments

* Review feedback
2017-03-21 17:58:31 -04:00