Commit graph

26 commits

Author SHA1 Message Date
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
898b59ab27
Fix app hanging when switching to a team after opening push notification (#4013) 2020-03-05 09:52:56 -07:00
Elias Nahum
334a07aabe
Performance improvements (#3911)
* Improve sidebar performance on first load

* Initial work for switch channel

* Revert android changes

* Split Sidebar per Platform

* Fix waitForHydration executing the callback more than once

* Fix custom emoji not showing on Android

* Finalize Channel Switch

* Enable Android Ram Bundles

* Select the right team for lastChannelForTeam

* Channel loading post indicator

* Fix main sidebar base intl provider

* Update mm-redux

* No need to request configAndLicense on launch

* Load channel member roles

* Rename closeChannelDrawer to closeMainSidebar

* do not throw errors when console is called while running tests

* constant for LOADING_POSTS_HEIGHT

* Remove show more if a long post is edited and no longer long

* Update mm-redux#batch-actions branch

* Code review

* Clear notifications if channel was switched

* Import Platform

Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com>
2020-02-17 21:18:09 -07:00
Miguel Alatzar
459801d10b
[MM-17560] Await dismissAllModals and popToRoot prior to calling showSearchModal (#3298)
* Patch react-native-navigation

* Make navigation actions regular functions

* Fix unhandled promise rejection warning

* Missing semicolons

* Mock navigation actions

* Add unit tests for navigation actions

* Place all patches in patches directory

* Fix channel_info snapshot test
2019-09-25 15:23:45 -07:00
Hossein Ahmadian-Yazdi
55bd6a2f7e [MM-13849] Display confirmation box for [at]all and [at]channel (#3028)
* [MM-13849] Display confirmation box for @all and @channel

* [MM-13849] Fetch Channel stats when user changes channel

* [MM-13849] Address PR comments

* [MM-13849] Addressed PR comments

* [MM-13849] Made getChannelStats into it's own statement
2019-08-08 16:21:52 -04:00
Miguel Alatzar
b65ce5d283 [MM-16136] Update channel related screens (#2915)
* Update screens

* Update login tests

* Remove done

* Fix failing tests

* Update screens and components

* Check styles fix

* Update tests

* Prevent setState call after component unmounts

* Add empty setButtons func to dummy navigator

* Remove platform check

* Remove Platform import

* Update react-native-navigation version

* Add separate showModalOverCurrentContext function

* check-style fixes

* Remove overriding of AppDelegate's window

* Fix modal over current context animation

* Add showSearchModal navigation action

* Check-style fix

* Address review comments

* Update SettingsSidebar and children

* Update EditProfile screen

* Update SettingsSidebar

* Keep track of latest componentId to appear

* Track componentId in state to use in navigation actions

* Update FlaggedPosts and children

* Update RecentMentions

* Update Settings

* Store componentIds in ephemeral store

* Update AttachmentButton

* Remove unnecessary dismissModal

* Fix typo

* Upate NotificationSettings

* Update NotificationSettingsAutoResponder

* Update NotificationSettingsMentions

* Update NotificationSettingsMobile

* Update CreateChannel and children

* Update MoreChannels

* Update ChannelPeek and children

* Update ChannelNavBar and children

* Update ChannelPostList and children

* Update ChannelInfo and children

* Update ChannelAddMembers

* Update ChannelMembers

* Update EditChannel

* Fix setting of top bar buttons

* Update Channel screen and children

* Fix typo

* Use goToScreen for Android too

* Remove navigationComponentId
2019-06-26 16:46:05 -04:00
Miguel Alatzar
913f05e131
[MM-16011] Update screens related to main sidebar (#2907)
* Update screens

* Update login tests

* Remove done

* Fix failing tests

* Update screens and components

* Check styles fix

* Update tests

* Prevent setState call after component unmounts

* Add empty setButtons func to dummy navigator

* Remove platform check

* Remove Platform import

* Update react-native-navigation version

* Add separate showModalOverCurrentContext function

* check-style fixes

* Remove overriding of AppDelegate's window

* Fix modal over current context animation

* Add showSearchModal navigation action

* Check-style fix

* Address review comments
2019-06-24 10:58:15 -07:00
Elias Nahum
8e97b47425 Fix crash when deleting a post (#2345) 2018-11-16 19:41:18 +05:30
Chetanya Kandhari
68eff30eda [#MM-12410] Custom Terms of Service (#2234)
* [#MM-12410] Custom Terms of Service Modal.

- Create a new screen for terms of service
- Register it in app navigation
- Open it as a modal when login succeeds or app is opened when already logged in.
- Get terms of service and render it as markdown

* Refactor service terms to terms of service

* Show terms modal when launching channel instead of componentDidMount

* Remove footer text

* Close modal before logging out

* Use dismissAllModals instead od this.close

* Update header styles

* Update the back icon

* Add left icon conditinally based on os

* Update en.json

* - Integrate Accept/Reject API
- Refactor show navigator to util
- Remove title
- Code refactoring

* Handle Accept/Reject API errors

* Update package-lock

* - Show Alert to handle API error
- Handle API error for GetTerms error, Accept/Reject error and Reject success
- Changes in en.json
- Remove error banner
- Open terms modal in sso and experimental certificate

* Enable navigator buttons after getting terms

* Rename Ok to OK in Alert

* Add retry for API error

* Fix check-style

* Fix FailedNetworkAction Error Message

* - Use Close button instead of back button
- Update en.json

* Remove unused import

* Disable hashtags and atmentions in terms modal

* Enable close button when terms text fails to load

* Minor changes

* Fix show terms on sso login

* Handle restartApp event

* Add test cases

* Revert change to app/components/formatted_markdown_text.js

* Show the terms modal on the channel page

* Remove remaining references to showTermsOfService

* Disable Hashtags, AtMentions and ChannelLinks

* Update the props to markdown component

* Pass the text as literal to renderText

* Return the generated renderTexts

* Fix lint

* Render ~, #, @ with Channel link, Hashtags and At Mentions

* Fix failing tests
Revert unwanted changes

* Hide the channel page content before the terms are accepted

* Fix lint and failing tests

* Revert changes to hide channel while terms are not accepted

* Open modal in componentDidMount instead of constructor
Code refactoring
Disable back button on android

* Remove unused import

* No need to await for showModal

* No need to await for accept and reject

* Update flag for updateTermsOfServiceStatus to updateMyTermsOfServiceStatus
- as phase 2 redux PR was mered.

* Fix check-style

* Change opacity in terms of service text

- Fix tests

* Revert package-lock.json changes
2018-11-14 11:36:45 -03:00
Elias Nahum
01792f2b54
Handle bad state (#1903)
* Upgrade mattermost-redux

* Check if url start with http before pinging

* Remove required status prop in settings sidebar

* Prevent the app to get into a bad state and if that happens try and recover
2018-07-09 18:33:13 -04:00
Jesse Hallam
8372e95d4a add eslint-plugin-header, and --fix all (#1726) 2018-06-19 19:14:50 -04:00
Elias Nahum
cf3683272e Entry screen and Channel Loader improvements (perf part 4) (#1707)
* Entry screen and Channel Loader improvements

* Feedback review

* Removed unnecessary style array
2018-05-29 10:58:06 -04:00
Chris Duarte
ad21a8cfb2 Add selectDefaultTeam (#1613) 2018-04-30 11:58:31 -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
ac2b38cb3b
Track analytics for start time, channel and team switching (#1192)
* Track analytics for start time, channel and team switching

* Update analytics to include currentUserId and ip 0.0.0.0

* Include diagnostic id with every segment request

* feedback review
2017-11-28 10:33:46 -03:00
enahum
a65811e088
Sync read channels across devices/apps (#1164) 2017-11-16 20:33:03 -03:00
enahum
3fdfe92800 Data cleanup (#1070)
* Add message retention middleware and config

* Data cleanup middleware
2017-10-30 11:23:19 -04:00
Chris Duarte
54ddec3d46 Prompt/require user to upgrade to new version (#948)
* Prompt/require user to upgrade to new version

* Update en.json

* Update app message text

* Fix typo and add copyright
2017-10-26 10:45:34 -04:00
Harrison Healey
a9489dcc5f Replace getTheme selector with one from mattermost-redux (#1013) 2017-10-12 08:45:17 -07:00
enahum
f50b2b9412 Improving Performance Part 3 (#1011)
* Update mattermost-redux

* Tap on Deleted post to remove it

* Improvements when rendering post additional content

* Avoid unnecessary re-renders on the post list component

* Avoid unnecessary re-renders on the channel post list component

* Avoid unnecessary re-renders on the channel screen

* Feedback review
2017-10-11 14:54:13 -03:00
enahum
dabad3eca6 Improving Performance Part 1 (#1009)
* Dispatch retry failed action | fix refreshing state | change postVisibility to 15

* Improve channel switching

* Improve handling of visible tooltip

* Improve watching for status bar height changes

* Remove unnecessary mapStateToProps from code screen

* Use drawer native functions to open/close instead of state

* Feedback review
2017-10-11 14:33:26 -03:00
Harrison Healey
8c86a95f19 RN-349 Mark channel as read when switching teams and opening the app (#953)
* RN-349 Mark current channel as read when opening the app

* RN-349 Mark channels as read when switching teams

* Moved markChannelAsRead into handleTeamChange action
2017-10-02 16:03:13 -03: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
Harrison Healey
96da38ed14 RN-345 Optimizing channel switching and general improvements (#914)
* Reduced re-renders of Channel screen

* Switched some components to be PureComponents

* Stopped waiting for drawer to close to switch channels

* Fixed post list being stuck loading

* Fixed incorrectly removed ref

* Removed loader from channel post list

* Removed unused prop

* Re-added ChannelDrawer.swiperIndex

* Changed ChannelPostTextbox to only require a single draft

* Re-enable InteractionManager on ChannelDrawer

* Fixed ChannelDrawer.joinChannel and removed duplicated code

* Moved getting device dimensions into render method

* Switched ChannelsList to be a PureComponent
2017-09-18 17:39:21 -03:00
enahum
7dbac06983 Fix sentry found issues (#699) 2017-07-03 18:09:04 -04:00
enahum
248dafbe0e RN-97 Changed navigation from NavigationExperimental to ReactNative Navigation (#540)
* Add react-navigator dependency

* Add react-native-navigation dependency

* react-native-navigation, ios and android config

* update react-native-navigation

* New navigation and code cleanup

* Set ScreenBackgroundColor

* Fix channel drawer event issue

* Applied RNPN non-working popInitial notification

* Android navbar and back button

* packages and notices

* MM-redux update

* Fix draft on team switch

* Remove custom NavBar
2017-05-16 11:19:46 -04:00
Renamed from app/scenes/channel/index.js (Browse further)