Commit Graph

11260 Commits (607adbf2613192f38d59b304f9b9c34f65ed71c6)
 

Author SHA1 Message Date
Michael Kirk 607adbf261 Merge branch 'mkirk/search-qa' 6 years ago
Michael Kirk e3cc8bb101 Keep results bar visible when dismissing keyboard or returning to view. 6 years ago
Michael Kirk 2c72775815 Merge branch 'mkirk/keyboard-dismiss-bug2' 6 years ago
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;
}
```
6 years ago
Matthew Chen a4c4ac9be4 Merge branch 'charlesmchen/callkitLocale' 6 years ago
Matthew Chen 1b9eb3c572 Ensure Callkit is enabled for locale. 6 years ago
Matthew Chen 6a82dd2ba7 Merge branch 'charlesmchen/accessibilityIdentifiers2' 6 years ago
Matthew Chen 40c9c196aa Fix memory leaks. 6 years ago
Matthew Chen 908fe1d0c9 Apply presentAlert() throughout codebase. 6 years ago
Matthew Chen 882dd16d7c Apply presentAlert() throughout codebase. 6 years ago
Matthew Chen c9d62f47cc Respond to CR. 6 years ago
Matthew Chen 1a80f0c293 Add accessibility identifiers to privacy popups and subviews. 6 years ago
Matthew Chen cb5ce42e76 Add accessibility identifiers to privacy popups and subviews. 6 years ago
Matthew Chen f37a3059fa Add accessibility identifiers to debug log popups. 6 years ago
Matthew Chen 81508e9d02 Add accessibility identifiers to settings popups. 6 years ago
Matthew Chen d7b1e65a71 Add accessibility identifiers to blocklist popups. 6 years ago
Matthew Chen f1520d760e Add accessibility identifiers to other settings views. 6 years ago
Matthew Chen b48e204b90 Add accessibility identifiers to notification settings views. 6 years ago
Matthew Chen 02340864f8 Add accessibility identifiers to blocklist view. 6 years ago
Matthew Chen f7d86028da Add accessibility identifiers to profile view. 6 years ago
Matthew Chen c619f815b5 Add accessibility identifiers to app settings view. 6 years ago
Matthew Chen 931d249677 Modify OWSFlatButton to propagate the accessibility identifier to wrapper button. 6 years ago
Matthew Chen 41a3c95831 Add missing accessibility ids in block list view. 6 years ago
Matthew Chen 8bcc19e36c Add missing accessibility ids in block list view. 6 years ago
Matthew Chen 3397c257d9 Merge branch 'charlesmchen/attachmentDownloadProgress2' 6 years ago
Matthew Chen 6ee4317590 Add "track" to attachment download progress indicator. 6 years ago
Matthew Chen 5e1df366f0 Merge branch 'charlesmchen/validMediaAsserts' 6 years ago
Matthew Chen c2c08d0712 Remove overzealous valid media asserts. 6 years ago
Matthew Chen ca6f3b52a1 Merge branch 'charlesmchen/constantBubbleSizes2' 6 years ago
Matthew Chen 31b4612746 Rework attachment download progress for generic attachments. 6 years ago
Matthew Chen 5df4a0bc17 Rework attachment download progress for audio files. 6 years ago
Michael Kirk 4b5994d1b3 Merge branch 'mkirk/video-call-hint' 6 years ago
Michael Kirk 93c9c83ac5 Haptic feedback when remote enables video 6 years ago
Michael Kirk 179dec299f Show hint when other party enables video 6 years ago
Michael Kirk 6ccd73837c rename haptic classes, no change in functionality 6 years ago
Michael Kirk 7d72244315 autogenstrings 6 years ago
Michael Kirk aa46113b4a disable custom capture flow for now 6 years ago
Michael Kirk 96dda0cacf "Bump build to 2.38.0.5." 6 years ago
Matthew Chen e985d2631a Merge branch 'charlesmchen/alwaysObserveCVM' 6 years ago
Matthew Chen 9fe3aa06ed Respond to CR. 6 years ago
Matthew Chen 6ab8ea9b6e Respond to CR. 6 years ago
Matthew Chen a8e9b87f03 Rework menu actions focus item layout. 6 years ago
Matthew Chen 4f06e6dd6e Conversation view always observes view model. 6 years ago
Matthew Chen 13f24002c6 Merge branch 'charlesmchen/textLayerMeasurement' 6 years ago
Matthew Chen 52d6aa69b8 Improve measurement of image editor text layers. 6 years ago
Michael Kirk 204098f38a update pods 6 years ago
Michael Kirk 4a905edce2 Merge branch 'mkirk/url-detection' 6 years ago
Michael Kirk 0b638f4831 link checks 6 years ago
Michael Kirk 134cade52c fix longtext layout: though text content should be inset from the edges, the
scrollbar should abut the edge of the screen.
6 years ago
Michael Kirk ca0a555f8e Merge branch 'mkirk/rotation' 6 years ago