Commit Graph

624 Commits

Author SHA1 Message Date
Matthew Chen
42871bb6a6 Simplify the scroll down button layout. 2019-04-09 14:48:01 -04:00
Matthew Chen
0e87d2e5b3 Simplify the scroll down button layout. 2019-04-09 14:38:29 -04:00
Matthew Chen
79d594b4d3 Ensure that conversation view's content insets reserve space for input accessory view when app is inactive. 2019-04-09 14:36:30 -04:00
Michael Kirk
501e2c761f Merge tag '2.38.1.2' 2019-04-04 13:42:07 -06:00
Michael Kirk
8ead2cc83d fix overzealous assert 2019-04-03 10:53:08 -06:00
Michael Kirk
fdc9db3487 iOS9 workaround to restore input view after sending captioned attachment 2019-04-03 10:52:00 -06:00
Michael Kirk
07e88009e4 Merge tag '2.38.0.11' 2019-04-01 14:04:43 -06:00
Matthew Chen
8f7ad79506 Only update scroll state to reflect keyboard changes if view has appeared. 2019-03-29 15:29:54 -04:00
Michael Kirk
5b77bc5475 sleep hack for iOS9 2019-03-29 12:38:01 -06:00
Matthew Chen
f3d0cd99fc Handle notifications for open conversations. 2019-03-28 16:58:02 -04:00
Michael Kirk
a8caae73cf remove redundant state 2019-03-28 13:13:43 -06:00
Michael Kirk
fa2d5b422b maintain body text navigating to/from approval view 2019-03-28 11:58:43 -06:00
Michael Kirk
7dbb9517af Centralize attachment state in nav controller 2019-03-28 10:30:47 -06:00
Michael Kirk
6502d7d4a5 remove isMultiSendEnabled feature flag 2019-03-28 10:30:47 -06:00
Matthew Chen
0d9b780f75 Remove scroll up button. 2019-03-27 10:41:48 -04:00
Michael Kirk
d02152cf14 fix release build 2019-03-26 21:44:59 -06:00
Matthew Chen
d253c5aa91 Add accessibilityIdentifiers to conversation view. 2019-03-25 09:31:19 -04:00
Matthew Chen
a6e00c8fec Respond to CR. 2019-03-22 16:53:55 -04:00
Matthew Chen
a7ae79aaad Ignore keyboard notifications while the view is disappearing or has disappeared. 2019-03-22 10:26:25 -04:00
Michael Kirk
e3cc8bb101 Keep results bar visible when dismissing keyboard or returning to view. 2019-03-21 12:04:37 -07:00
Michael Kirk
3850ca29b0 Bigger hack to fix problem with lesser hack.
There were two symptoms to this bad "leave app while dismissing keyboard"
state...

The first, most noticeable symptom was that the main window no longer respected
the device orientation. This was caused by UIKit temporarily disabling
autorotate during an interactive keyboard dismissal, and not cleaning up after
itself when we hid the window mid dismissal due to our screen protection
feature. This was solved previously in: ca0a555f8

The second symptom remained, and is solved by this commit. Wherein after
getting in this bad state, the interactive keyboard dismiss function behaves
oddly. Normally when interactively dismissing the keyboard in a scroll view,
the keyboard top follows your finger, until you lift up your finger, at which
point, depending on how close you are to the bottom, the keyboard should
completely dismiss, or cancel and return to its fully popped position. In the
degraded state, the keyboard would follow your finger, but when you lifted your
finger, it would stay where your finger left it, it would not complete/cancel
the dismiss.

The solution is, instead of only re-enabling autorotate, to use a higher level
private method which is called upon complete/cancellation of the interactive
dismissal. The method, `UIScrollToDismissSupport#finishScrollViewTransition`,
as well as re-enabling autorotate, does some other work to restore the UI to
it's normal post interactive-keyboard-dismiss gesture state.

For posterity here's the decompiled pseudocode:

```
/* @class UIScrollToDismissSupport */
-(void)finishScrollViewTransition {
    *(int8_t *)&self->_scrollViewTransitionFinishing = 0x0;
    [self->_controller setInterfaceAutorotationDisabled:0x0];
    [self hideScrollViewHorizontalScrollIndicator:0x0];
    ebx = *ivar_offset(_scrollViewNotificationInfo);
    [*(self + ebx) release];
    *(self + ebx) = 0x0;
    esi = *ivar_offset(_scrollViewForTransition);
    [*(self + esi) release];
    *(self + esi) = 0x0;
    return;
}
```
2019-03-21 10:37:54 -07:00
Matthew Chen
882dd16d7c Apply presentAlert() throughout codebase. 2019-03-21 10:55:04 -04:00
Matthew Chen
9fe3aa06ed Respond to CR. 2019-03-19 11:15:09 -04:00
Matthew Chen
6ab8ea9b6e Respond to CR. 2019-03-19 11:13:06 -04:00
Matthew Chen
a8e9b87f03 Rework menu actions focus item layout. 2019-03-19 11:12:30 -04:00
Matthew Chen
4f06e6dd6e Conversation view always observes view model. 2019-03-19 10:03:58 -04:00
Matthew Chen
3b008ad963 Fix conversation view content offset and scroll down button layout. 2019-03-14 15:47:59 -04:00
Michael Kirk
284357137f Photo/Movie Capture 2019-03-14 12:20:21 -07:00
Matthew Chen
7a67a7b6b5 Hide the status bar in the image picker / attachment approval. 2019-03-12 17:22:46 -04:00
Matthew Chen
0aebac0d07 Fix layout of the 'scroll down' button. 2019-03-11 23:29:01 -04:00
Matthew Chen
0a1947c961 Dismiss message actions UI on orientation change. 2019-03-11 23:28:20 -04:00
Matthew Chen
41a2a954f5 Dismiss message actions UI on orientation change. 2019-03-11 23:28:20 -04:00
Matthew Chen
6fe3ce6d87 Deconflict "bottom view" layout and keyboard animations. 2019-03-11 23:23:08 -04:00
Michael Kirk
1c78350f9a Clear input bar UI earlier in send process for snappier send animation. 2019-03-11 12:37:18 -07:00
Michael Kirk
71dd4eb151 in-conversation search
- use MediaTime for computing benchmarks
2019-02-28 16:19:16 -07:00
Michael Kirk
b11308b2f8 Return to conversation after deleting long text 2019-02-26 17:19:18 -07:00
Matthew Chen
7711ee92a7 Revert "Conversation view always observes view model."
This reverts commit 9d39e829a44f28f324f79e0b74a6c8692678d788.
2019-02-26 10:56:23 -05:00
Matthew Chen
6ed4045fbe Conversation view always observes view model. 2019-02-26 10:56:11 -05:00
Matthew Chen
56e5feca46 Introduce ConversationSnapshot. 2019-02-26 10:55:44 -05:00
Matthew Chen
586b362b89 Introduce ConversationSnapshot. 2019-02-26 10:55:44 -05:00
Michael Kirk
233bc3858b dismiss menu actions when selected item is deleted 2019-02-25 14:10:12 -07:00
Michael Kirk
bc4260b444 Send long-text with other attachments 2019-02-25 13:27:49 -07:00
Michael Kirk
a218d6c465 Send first chars of longtext in protobuf 2019-02-25 13:27:49 -07:00
Michael Kirk
fabd3996c2 pop view if message is deleted
- use global ui database connection
2019-02-21 16:18:14 -07:00
Michael Kirk
d29ce740cb Voice Note Lock 2019-02-06 17:34:29 -07:00
Matthew Chen
4feb0011d7 Reduce logging. 2019-01-31 15:48:50 -05:00
Matthew Chen
6ff6ee2e2e Rework layout of conversation input toolbar. 2019-01-23 13:02:52 -05:00
Matthew Chen
8452f5e74b Open link preview URLs when tapped. 2019-01-23 09:58:37 -05:00
Matthew Chen
3d757b492a Add link previews to conversation message bubbles. 2019-01-23 09:32:30 -05:00
Matthew Chen
ca8a4b3751 Make LinkPreviewView reusable. 2019-01-23 09:27:52 -05:00