CXTDT-427975 - Tooltip - Scrollbar, multiple
Signed-off-by: Matt Bruce <matt.bruce@verizon.com>
This commit is contained in:
parent
ca6f68490f
commit
6123f9cc1f
@ -26,13 +26,14 @@ open class TooltipAlertViewController: UIViewController, Surfaceable {
|
|||||||
private var scrollView = UIScrollView().with {
|
private var scrollView = UIScrollView().with {
|
||||||
$0.translatesAutoresizingMaskIntoConstraints = false
|
$0.translatesAutoresizingMaskIntoConstraints = false
|
||||||
$0.backgroundColor = .clear
|
$0.backgroundColor = .clear
|
||||||
$0.scrollIndicatorInsets = UIEdgeInsets(top: 0, left: 0, bottom: 0, right: -5)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private let containerView = View().with {
|
private let modalView = View().with {
|
||||||
$0.layer.cornerRadius = 8
|
$0.layer.cornerRadius = 8
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private let containerView = View()
|
||||||
|
|
||||||
private var line = Line().with { instance in
|
private var line = Line().with { instance in
|
||||||
instance.lineViewColorConfiguration = SurfaceColorConfiguration(VDSColor.elementsLowcontrastOnlight, VDSColor.elementsLowcontrastOndark).eraseToAnyColorable()
|
instance.lineViewColorConfiguration = SurfaceColorConfiguration(VDSColor.elementsLowcontrastOnlight, VDSColor.elementsLowcontrastOndark).eraseToAnyColorable()
|
||||||
}
|
}
|
||||||
@ -78,6 +79,7 @@ open class TooltipAlertViewController: UIViewController, Surfaceable {
|
|||||||
|
|
||||||
private let closeButtonTextColorConfiguration = SurfaceColorConfiguration(VDSColor.elementsPrimaryOnlight, VDSColor.elementsPrimaryOndark)
|
private let closeButtonTextColorConfiguration = SurfaceColorConfiguration(VDSColor.elementsPrimaryOnlight, VDSColor.elementsPrimaryOndark)
|
||||||
|
|
||||||
|
private let containerViewInset = VDSLayout.Spacing.space4X.value
|
||||||
//--------------------------------------------------
|
//--------------------------------------------------
|
||||||
// MARK: - Lifecycle
|
// MARK: - Lifecycle
|
||||||
//--------------------------------------------------
|
//--------------------------------------------------
|
||||||
@ -88,56 +90,61 @@ open class TooltipAlertViewController: UIViewController, Surfaceable {
|
|||||||
}
|
}
|
||||||
|
|
||||||
open func setup() {
|
open func setup() {
|
||||||
|
containerView.addSubview(titleLabel)
|
||||||
scrollView.addSubview(titleLabel)
|
containerView.addSubview(contentLabel)
|
||||||
scrollView.addSubview(contentLabel)
|
scrollView.addSubview(containerView)
|
||||||
containerView.addSubview(scrollView)
|
modalView.addSubview(scrollView)
|
||||||
containerView.addSubview(line)
|
modalView.addSubview(line)
|
||||||
containerView.addSubview(closeButton)
|
modalView.addSubview(closeButton)
|
||||||
view.addSubview(containerView)
|
view.addSubview(modalView)
|
||||||
|
|
||||||
|
// Activate constraints
|
||||||
NSLayoutConstraint.activate([
|
NSLayoutConstraint.activate([
|
||||||
containerView.leadingAnchor.constraint(greaterThanOrEqualTo: view.leadingAnchor, constant: VDSLayout.Spacing.space8X.value),
|
// Constraints for the floating modal view
|
||||||
containerView.trailingAnchor.constraint(lessThanOrEqualTo: view.trailingAnchor, constant: -VDSLayout.Spacing.space8X.value),
|
modalView.centerXAnchor.constraint(equalTo: view.centerXAnchor),
|
||||||
containerView.topAnchor.constraint(greaterThanOrEqualTo: view.topAnchor),
|
modalView.centerYAnchor.constraint(equalTo: view.centerYAnchor),
|
||||||
containerView.bottomAnchor.constraint(lessThanOrEqualTo: view.bottomAnchor),
|
modalView.widthAnchor.constraint(equalToConstant: 296),
|
||||||
|
modalView.heightAnchor.constraint(greaterThanOrEqualToConstant: 96),
|
||||||
containerView.heightAnchor.constraint(equalToConstant: 312),
|
modalView.heightAnchor.constraint(lessThanOrEqualToConstant: 312),
|
||||||
containerView.widthAnchor.constraint(equalToConstant: 296),
|
|
||||||
containerView.centerXAnchor.constraint(equalTo: view.centerXAnchor),
|
|
||||||
containerView.centerYAnchor.constraint(equalTo: view.centerYAnchor),
|
|
||||||
|
|
||||||
scrollView.topAnchor.constraint(equalTo: containerView.topAnchor, constant: VDSLayout.Spacing.space4X.value),
|
|
||||||
scrollView.leadingAnchor.constraint(equalTo: containerView.leadingAnchor, constant: VDSLayout.Spacing.space4X.value),
|
|
||||||
scrollView.trailingAnchor.constraint(equalTo: containerView.trailingAnchor, constant: -VDSLayout.Spacing.space4X.value),
|
|
||||||
scrollView.bottomAnchor.constraint(equalTo: line.topAnchor, constant: -VDSLayout.Spacing.space4X.value),
|
|
||||||
|
|
||||||
titleLabel.topAnchor.constraint(equalTo: scrollView.topAnchor),
|
// Constraints for the scroll view
|
||||||
titleLabel.leadingAnchor.constraint(equalTo: scrollView.leadingAnchor),
|
scrollView.topAnchor.constraint(equalTo: modalView.topAnchor),
|
||||||
titleLabel.trailingAnchor.constraint(equalTo: scrollView.trailingAnchor),
|
scrollView.leadingAnchor.constraint(equalTo: modalView.leadingAnchor),
|
||||||
titleLabel.widthAnchor.constraint(equalTo: scrollView.widthAnchor),
|
scrollView.trailingAnchor.constraint(equalTo: modalView.trailingAnchor),
|
||||||
|
scrollView.bottomAnchor.constraint(equalTo: line.topAnchor),
|
||||||
contentLabel.topAnchor.constraint(equalTo: titleLabel.bottomAnchor, constant: VDSLayout.Spacing.space1X.value),
|
|
||||||
contentLabel.leadingAnchor.constraint(equalTo: scrollView.leadingAnchor),
|
// Constraints for the container view
|
||||||
contentLabel.trailingAnchor.constraint(equalTo: scrollView.trailingAnchor),
|
containerView.topAnchor.constraint(equalTo: scrollView.topAnchor, constant: containerViewInset),
|
||||||
contentLabel.bottomAnchor.constraint(equalTo: scrollView.bottomAnchor),
|
containerView.bottomAnchor.constraint(equalTo: scrollView.bottomAnchor, constant: -containerViewInset),
|
||||||
contentLabel.widthAnchor.constraint(equalTo: scrollView.widthAnchor),
|
containerView.leadingAnchor.constraint(equalTo: scrollView.leadingAnchor, constant: containerViewInset),
|
||||||
|
containerView.trailingAnchor.constraint(equalTo: scrollView.trailingAnchor, constant: -containerViewInset),
|
||||||
line.leadingAnchor.constraint(equalTo: containerView.leadingAnchor),
|
containerView.widthAnchor.constraint(equalTo: scrollView.widthAnchor, constant: -(containerViewInset * 2)),
|
||||||
line.trailingAnchor.constraint(equalTo: containerView.trailingAnchor),
|
containerView.heightAnchor.constraint(greaterThanOrEqualTo: scrollView.heightAnchor, constant: -(containerViewInset * 2)),
|
||||||
|
|
||||||
|
line.leadingAnchor.constraint(equalTo: modalView.leadingAnchor),
|
||||||
|
line.trailingAnchor.constraint(equalTo: modalView.trailingAnchor),
|
||||||
|
|
||||||
closeButton.topAnchor.constraint(equalTo: line.bottomAnchor),
|
closeButton.topAnchor.constraint(equalTo: line.bottomAnchor),
|
||||||
closeButton.leadingAnchor.constraint(equalTo: containerView.leadingAnchor),
|
closeButton.leadingAnchor.constraint(equalTo: modalView.leadingAnchor),
|
||||||
closeButton.trailingAnchor.constraint(equalTo: containerView.trailingAnchor),
|
closeButton.trailingAnchor.constraint(equalTo: modalView.trailingAnchor),
|
||||||
closeButton.bottomAnchor.constraint(equalTo: containerView.bottomAnchor),
|
closeButton.bottomAnchor.constraint(equalTo: modalView.bottomAnchor),
|
||||||
closeButton.heightAnchor.constraint(equalToConstant: 44.0)
|
closeButton.heightAnchor.constraint(equalToConstant: 44.0),
|
||||||
|
|
||||||
|
// Constraints on labels
|
||||||
|
titleLabel.topAnchor.constraint(equalTo: containerView.topAnchor),
|
||||||
|
titleLabel.leadingAnchor.constraint(equalTo: containerView.leadingAnchor),
|
||||||
|
titleLabel.trailingAnchor.constraint(equalTo: containerView.trailingAnchor),
|
||||||
|
contentLabel.topAnchor.constraint(equalTo: titleLabel.bottomAnchor, constant: VDSLayout.Spacing.space2X.value),
|
||||||
|
contentLabel.leadingAnchor.constraint(equalTo: containerView.leadingAnchor),
|
||||||
|
contentLabel.trailingAnchor.constraint(equalTo: containerView.trailingAnchor),
|
||||||
|
contentLabel.bottomAnchor.constraint(equalTo: containerView.bottomAnchor),
|
||||||
|
|
||||||
])
|
])
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
open func updateView() {
|
open func updateView() {
|
||||||
view.backgroundColor = backgroundColorConfiguration.getColor(self).withAlphaComponent(0.3)
|
view.backgroundColor = backgroundColorConfiguration.getColor(self).withAlphaComponent(0.3)
|
||||||
containerView.backgroundColor = containerViewBackgroundColorConfiguration.getColor(self)
|
modalView.backgroundColor = containerViewBackgroundColorConfiguration.getColor(self)
|
||||||
scrollView.indicatorStyle = surface == .light ? .black : .white
|
scrollView.indicatorStyle = surface == .light ? .black : .white
|
||||||
|
|
||||||
titleLabel.surface = surface
|
titleLabel.surface = surface
|
||||||
@ -155,4 +162,3 @@ open class TooltipAlertViewController: UIViewController, Surfaceable {
|
|||||||
closeButton.setTitle(closeButtonText, for: .normal)
|
closeButton.setTitle(closeButtonText, for: .normal)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -6,6 +6,7 @@
|
|||||||
- CXTDT-427328 - Title Lockup text style combinations do not match spec
|
- CXTDT-427328 - Title Lockup text style combinations do not match spec
|
||||||
- CXTDT-426527 - Tabs - Large Typography
|
- CXTDT-426527 - Tabs - Large Typography
|
||||||
- CXTDT-427362 - Tooltip - Should not be a drop shadow on modal
|
- CXTDT-427362 - Tooltip - Should not be a drop shadow on modal
|
||||||
|
- CXTDT-427975 - Tooltip - Scrollbar, multiple
|
||||||
|
|
||||||
1.0.25
|
1.0.25
|
||||||
=======
|
=======
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user