-
Notifications
You must be signed in to change notification settings - Fork 430
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Better reflect temporary unprotected status #916
Conversation
…o/iOS into feature/brad/get-top-level-fix
…attached (ie config has been updated and scripts have been reinitialised)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I get the following crash when opening the dashboard. This is usually caused when the storyboard has an outlet reference that has been removed from the code.
Steps:
- Clean install
- Visit speigel.de
- Click on the privacy grade
Expected: dashboard shows
Actual: Crash, see below
2021-07-01 12:20:38.766368+0100 DuckDuckGo[87881:17843030] *** Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<DuckDuckGo.PrivacyProtectionOverviewController 0x7fe40f0a6000> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key privacyProtectionLabel.'
*** First throw call stack:
(
0 CoreFoundation 0x000000010c5c6fba __exceptionPreprocess + 242
1 libobjc.A.dylib 0x000000010be02ff5 objc_exception_throw + 48
2 CoreFoundation 0x000000010c5c6c5b -[NSException init] + 0
3 Foundation 0x000000010b8da46c -[NSObject(NSKeyValueCoding) setValue:forKey:] + 331
4 UIKitCore 0x000000011e86eac4 -[UIViewController setValue:forKey:] + 74
5 UIKitCore 0x000000011ebadc0b -[UIRuntimeOutletConnection connect] + 109
6 CoreFoundation 0x000000010c5b06e6 -[NSArray makeObjectsPerformSelector:] + 228
7 UIKitCore 0x000000011eba9e70 -[UINib instantiateWithOwner:options:] + 2175
8 UIKitCore 0x000000011e876921 -[UIViewController loadView] + 668
9 UIKitCore 0x000000011e86567b -[UITableViewController loadView] + 83
10 UIKitCore 0x000000011e876cbc -[UIViewController loadViewIfRequired] + 172
11 UIKitCore 0x000000011e7ac03a -[UINavigationController _updateScrollViewFromViewController:toViewController:] + 162
12 UIKitCore 0x000000011e7ac326 -[UINavigationController _startTransition:fromViewController:toViewController:] + 154
13 UIKitCore 0x000000011e7ad3b8 -[UINavigationController _startDeferredTransitionIfNeeded:] + 876
14 UIKitCore 0x000000011e7ae734 -[UINavigationController __viewWillLayoutSubviews] + 150
15 UIKitCore 0x000000011e78f04c -[UILayoutContainerView layoutSubviews] + 217
16 UIKitCore 0x000000011f50ac90 -[UIView(CALayerDelegate) layoutSublayersOfLayer:] + 2946
17 QuartzCore 0x000000010d8535b8 -[CALayer layoutSublayers] + 258
18 QuartzCore 0x000000010d859e3f _ZN2CA5Layer16layout_if_neededEPNS_11TransactionE + 611
19 UIKitCore 0x000000011f4f6b4f -[UIView(Hierarchy) layoutBelowIfNeeded] + 1238
20 UIKitCore 0x000000011e7665b8 -[_UISheetPresentationController _sheetLayoutInfoLayout:] + 48
21 UIKitCore 0x000000011e762591 -[_UISheetLayoutInfo _layout] + 360
22 UIKitCore 0x000000011e768435 __54-[_UISheetPresentationController transitionWillBegin:]_block_invoke_2 + 52
23 UIKitCore 0x000000011f4fdbb9 +[UIView(Animation) performWithoutAnimation:] + 84
24 UIKitCore 0x000000011e768372 __54-[_UISheetPresentationController transitionWillBegin:]_block_invoke.362 + 120
25 UIKitCore 0x000000011e8a649c -[_UIViewControllerTransitionCoordinator _applyBlocks:releaseBlocks:] + 294
26 UIKitCore 0x000000011e8a2950 -[_UIViewControllerTransitionContext __runAlongsideAnimations] + 260
27 UIKitCore 0x000000011f4fd9e2 __63+[UIView(Animation) _setAlongsideAnimations:toRunByEndOfBlock:]_block_invoke + 16
28 UIKitCore 0x000000011f4cf0cf -[UIViewAnimationState _runAlongsideAnimations] + 24
29 UIKitCore 0x000000011f4cdec3 -[UIViewAnimationState pop] + 37
30 UIKitCore 0x000000011f4cb302 +[UIViewAnimationState popAnimationState] + 62
31 UIKitCore 0x000000011f4ff423 +[UIView _setupAnimationWithDuration:delay:view:options:factory:animations:start:animationStateGenerator:completion:] + 696
32 UIKitCore 0x000000011f4ff714 +[UIView(UIViewAnimationWithBlocks) animateWithDuration:delay:options:animations:completion:] + 31
33 UIKitCore 0x000000011f4ffada +[UIView(UIViewAnimationWithBlocks) conditionallyAnimate:withAnimation:layout:completion:] + 76
34 UIKitCore 0x000000011f4c657a -[UITransitionView _startTransition:withDuration:] + 664
35 UIKitCore 0x000000011f4c6087 -[UITransitionView transition:fromView:toView:removeFromView:] + 2890
36 UIKitCore 0x000000011e89e2ca -[UIViewControllerBuiltinTransitionViewAnimator animateTransition:] + 1200
37 UIKitCore 0x000000011e8a6ff4 ___UIViewControllerTransitioningRunCustomTransition_block_invoke_2 + 59
38 UIKitCore 0x000000011e9e31e9 +[UIInputResponderController _pinInputViewsForInputResponderController:onBehalfOfResponder:duringBlock:] + 99
39 UIKitCore 0x000000011e8a6f83 ___UIViewControllerTransitioningRunCustomTransition_block_invoke.641 + 180
40 UIKitCore 0x000000011f4fd8f3 +[UIView(Animation) _setAlongsideAnimations:toRunByEndOfBlock:] + 175
41 UIKitCore 0x000000011e8a6e1a _UIViewControllerTransitioningRunCustomTransition + 574
42 UIKitCore 0x000000011e752aac __56-[UIPresentationController runTransitionForCurrentState]_block_invoke.466 + 2511
43 UIKitCore 0x000000011f4a3e36 -[_UIAfterCACommitBlock run] + 54
44 UIKitCore 0x000000011efc21f8 _runAfterCACommitDeferredBlocks + 333
45 UIKitCore 0x000000011efb21e4 _cleanUpAfterCAFlushAndRunDeferredBlocks + 221
46 UIKitCore 0x000000011efe3a36 _afterCACommitHandler + 85
47 CoreFoundation 0x000000010c533d31 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 23
48 CoreFoundation 0x000000010c52e542 __CFRunLoopDoObservers + 541
49 CoreFoundation 0x000000010c52eaf5 __CFRunLoopRun + 1129
50 CoreFoundation 0x000000010c52e1a7 CFRunLoopRunSpecific + 567
51 GraphicsServices 0x000000011a0d8d85 GSEventRunModal + 139
52 UIKitCore 0x000000011efb34df -[UIApplication _run] + 912
53 UIKitCore 0x000000011efb839c UIApplicationMain + 101
54 DuckDuckGo 0x0000000109ed7ecb main + 75
55 libdyld.dylib 0x00000001151d1bbd start + 1
)
libc++abi: terminating with uncaught exception of type NSException
*** Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<DuckDuckGo.PrivacyProtectionOverviewController 0x7fe40f0a6000> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key privacyProtectionLabel.'
CoreSimulator 772.1 - Device: iPhone 12 Pro (46CC274F-3D58-4F8E-BCE3-FDE18E699929) - Runtime: iOS 14.5 (18E182) - DeviceType: iPhone 12 Pro
terminating with uncaught exception of type NSException
(lldb)
Storyboards, am I right? |
Alternative to expanding to fit text is to reduce the font size a little automatically (should be doable in the Storyboard, but might want to check that with a designer first). Otherwise, looks good. I can re-check first thing in the morning. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM - feel free to merge once the product review has been signed off.
# By Christopher Brind (2) and others # Via GitHub * develop: Better reflect temporary unprotected status (#916) Fix build settings resolution for external developers (#880) add cookie debug screen, diagnostic report generation and optimise cookie deletion (#913) Update STYLEGUIDE.md (#917) Privacy reference unit tests for content blocker rules (#909) # Conflicts: # DuckDuckGo.xcodeproj/project.pbxproj # DuckDuckGo/Debug.storyboard
Task/Issue URL: https://app.asana.com/0/0/1200517965702748/f
Tech Design URL:
CC: @brindy @bwaresiak
Description:
This PR better reflects unprotected status for sites on the temporary allow list. A disclaimer has been added to inform users of this state.
Steps to test this PR:
Copy Testing:
’
rather than'
Orientation Testing:
Device Testing:
OS Testing:
Theme Testing:
Internal references:
Software Engineering Expectations
Technical Design Template
When ready for review, remember to post the PR in MM