Commit Graph

47 Commits

Author SHA1 Message Date
Nora Trapp
aa8a782194 Update launch screen to use new logo and have dark mode variant 2020-03-04 10:00:54 -08:00
Nora Trapp
dbe3230a7e New long press message actions 2019-11-21 11:03:57 -08:00
Michael Kirk
698d0b062e Fix capture orientation
- only access interfaceOrientation on main thread
- capture initial image in lanscape when appropriate
2019-11-13 10:40:42 -03:00
Nora Trapp
473b88b497 Don't require ConversationViewController to maintain first responder status. 2019-10-17 11:41:58 -07:00
Nora Trapp
36cbf4cc61 Support iPad multi tasking 2019-10-05 16:57:44 -07:00
Nora Trapp
baf8950efb Support all orientations on iPad 2019-10-03 11:55:03 -07:00
Michael Kirk
54812451f4 Update and apply palette. Consolidate dupes. 2019-09-24 15:12:51 -07:00
Michael Kirk
f63a64243a convert colors to Swift 2019-09-24 15:12:50 -07:00
Nora Trapp
618dea7e9f Ensure ui styling is correct regardless of system theme 2019-09-16 10:26:00 -07:00
Matthew Chen
753b49ea74 Address sticky keyboards on iOS 12. 2019-08-27 14:00:23 -03:00
Matthew Chen
d3ff3df926 Ensure window frames. 2019-05-13 12:01:02 -04: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
Michael Kirk
78ce3583ed fix rotation issue 2019-03-18 15:17:13 -07:00
Michael Kirk
680b844f3c Allow all windows to do landscape, fixes:
1. Remove undesirable animation from portrait->landscape when minimizizing in
   landscape and relaunching in landscape.

2. This also seems to fix the intermittently misplaced toolbar when launching
   in landscape. I believe this is a consequence of fix #1
2019-02-21 17:38:52 -07:00
Matthew Chen
12e57ecd25 Improve background screenshots v. orientation. 2019-01-31 10:14:06 -05:00
Matthew Chen
bf0d92acfb Landscape layout in gif picker. 2019-01-10 12:04:12 -05:00
Matthew Chen
2ddde368ec Landscape orientation. 2019-01-09 15:22:55 -05:00
Matthew Chen
5adcbac5ef Landscape orientation. 2019-01-09 15:14:36 -05:00
Michael Kirk
85a4fc7b66 restore calling banner
The `statusBarDidChange` is called when entering but not leaving landscape mode
we we've got to update manually before showing the call banner.
2018-11-01 08:43:59 -06:00
Michael Kirk
19f2d0db48 WIP: Media Landscape Mode 2018-11-01 08:43:59 -06:00
Matthew Chen
603e3bf0b6 Move SM singletons to Environment. 2018-10-15 11:34:42 -04:00
Michael Kirk
21e67e9a1d New resolutions for call banner, rename to accommodate multiple X devices.
Only apply work-around to legacy versions where required.
2018-09-19 11:17:40 -06:00
Michael Kirk
c7662b5a86 Step 2/2 %s/OWSAssert/OWSAssertDebug for existing previous assert semantics
Going forward, we want to prefer safer asserts, but we don't want to blindly
apply crashing asserts across the codebase
2018-09-07 10:00:48 -06:00
Matthew Chen
f473f60111 Apply OWS log functions in Objective-C. 2018-08-27 12:58:52 -04:00
Matthew Chen
cc5a480baa Apply OWS log functions in Objective-C. 2018-08-27 12:58:52 -04:00
Matthew Chen
3a50377902 Apply OWS log functions in Objective-C. 2018-08-27 12:58:52 -04:00
Michael Kirk
bc2ba63c21 DRY refactor 2018-08-23 10:39:55 -06:00
Michael Kirk
37738c24c5 Allow menuActions + callBanner
// FREEBIE
2018-08-23 10:39:55 -06:00
Michael Kirk
7a5f5476db rename to avoid confusion 2018-07-17 14:49:19 -06:00
Michael Kirk
1a2428a4b0 CR: leave some wiggle room on max window height. 2018-07-13 13:08:04 -06:00
Michael Kirk
bdc8181cbc hide menu view controller when resigning active
// FREEBIE
2018-07-13 13:00:27 -06:00
Michael Kirk
dde2fd6f33 Hide menu window when vc dismisses.
Normally this isn't possible, just being paranoid.

// FREEBIE
2018-07-13 13:00:27 -06:00
Michael Kirk
82fdd5b883 Split out generic action sheet components
Keep the message specific components separte, so we could re-use the
MenuActionsViewController.
2018-07-13 13:00:27 -06:00
Michael Kirk
3a157d9df6 window level on iOS11
// FREEBIE
2018-07-13 13:00:27 -06:00
Michael Kirk
635c0275db stop observing db notifications while message actions are presented
This let's new messages appear after the message actions are dismissed without
complicating scroll state.
2018-07-13 13:00:27 -06:00
Michael Kirk
22fada2457 don't dismiss keyboard when presenting actions 2018-07-13 13:00:27 -06:00
Michael Kirk
aa98963fd9 Abandonded: separate window pattern
Hiding the old window, caused keyboard to resign first responder.
2018-07-13 13:00:27 -06:00
Michael Kirk
6037a440c9 wire up window mgmt 2018-07-13 13:00:27 -06:00
Matthew Chen
c71081c875 Respond to CR. 2018-05-30 12:35:55 -04:00
Matthew Chen
fbd03a3fdc Apply design for call view back button. 2018-05-25 09:53:37 -04:00
Michael Kirk
fc34a0643c CR: annotate device constants
// FREEBIE
2018-05-24 12:28:20 -04:00
Michael Kirk
20424d9a7e remove debug code, reorder for clarity
// FREEBIE
2018-05-24 12:28:20 -04:00
Michael Kirk
4c9808d1a1 Fix iPhoneX layout show status bar above call banner
// FREEBIE
2018-05-24 12:28:20 -04:00
Michael Kirk
3383c5e80c Fixup for iPhoneX
// FREEBIE
2018-05-24 12:28:20 -04:00
Michael Kirk
778e11c2c3 cleanup ahead of PR
// FREEBIE
2018-05-24 12:28:20 -04:00
Michael Kirk
6c7af671bc call banner above status bar for now 2018-05-24 12:28:20 -04:00
Michael Kirk
29d08545e2 Use OWSNavigationController instead of UINavigationController
- [ ] document picker
- [ ] camera picker
- [ ] image picker
- [ ] restore "confirm to go back" behavior (interactive pop gesture?)

// FREEBIE
2018-05-24 12:28:20 -04:00