Skip to content
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

Fix a bug on iOS 18 where the timeline background would use the wrong colour scheme when using the app switcher. #3324

Merged
merged 1 commit into from
Sep 24, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions .swiftlint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,12 @@ custom_rules:
message: "Please use explicit spacing in HStacks."
severity: warning

compound_color_conversion:
regex: "UIColor\\(\\.compound"
match_kinds: identifier
message: "Please use the UIColor token directly to ensure the colour scheme is honoured."
severity: warning

Comment on lines +63 to +68
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suuuper nice 👌

print_deprecation:
regex: "\\b(print)\\b"
match_kinds: identifier
Expand Down
2 changes: 1 addition & 1 deletion ElementX.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -7887,7 +7887,7 @@
repositoryURL = "https://github.com/element-hq/compound-ios";
requirement = {
kind = revision;
revision = 0d6248492aa577b3747a34c50104cc738b628478;
revision = 92110afc158ac6ee7c68d5e975144bafa6c58396;
};
};
F76A08D0EA29A07A54F4EB4D /* XCRemoteSwiftPackageReference "swift-collections" */ = {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
"kind" : "remoteSourceControl",
"location" : "https://github.com/element-hq/compound-ios",
"state" : {
"revision" : "0d6248492aa577b3747a34c50104cc738b628478"
"revision" : "92110afc158ac6ee7c68d5e975144bafa6c58396"
}
},
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
// Please see LICENSE in the repository root for full details.
//

import Compound
import DTCoreText
import Foundation
import LRUCache
Expand Down Expand Up @@ -267,7 +268,7 @@ struct AttributedStringBuilder: AttributedStringBuilderProtocol {
attributedString.enumerateAttribute(.backgroundColor, in: .init(location: 0, length: attributedString.length), options: []) { value, range, _ in
if let value = value as? UIColor,
value == temporaryCodeBlockMarkingColor {
attributedString.addAttribute(.backgroundColor, value: UIColor(.compound._bgCodeBlock) as Any, range: range)
attributedString.addAttribute(.backgroundColor, value: UIColor.compound._bgCodeBlock as Any, range: range)
attributedString.removeAttribute(.link, range: range)
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@
// SPDX-License-Identifier: AGPL-3.0-only
// Please see LICENSE in the repository root for full details.
//

import Compound
import SwiftUI

struct MessageComposerTextField: View {
Expand Down Expand Up @@ -96,7 +98,7 @@ private struct UITextViewWrapper: UIViewRepresentable {
func updateUIView(_ textView: UITextView, context: UIViewRepresentableContext<UITextViewWrapper>) {
// Prevent the textView from inheriting attributes from mention pills
textView.typingAttributes = [.font: font,
.foregroundColor: UIColor(.compound.textPrimary)]
.foregroundColor: UIColor.compound.textPrimary]

if textView.attributedText != text {
// Remember the selection if only the attributes have changed.
Expand Down Expand Up @@ -311,7 +313,7 @@ struct MessageComposerTextField_Previews: PreviewProvider, TestablePreview {

init(text: String) {
_text = .init(initialValue: .init(string: text, attributes: [.font: UIFont.preferredFont(forTextStyle: .body),
.foregroundColor: UIColor(.compound.textPrimary)]))
.foregroundColor: UIColor.compound.textPrimary]))
}

var body: some View {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
//

import Combine
import Compound
import HTMLParser
import SwiftUI
import WysiwygComposer
Expand Down Expand Up @@ -207,14 +208,14 @@ enum ComposerConstant {
private extension HTMLParserStyle {
static let elementX = HTMLParserStyle(textColor: UIColor.label,
linkColor: UIColor.link,
codeBlockStyle: BlockStyle(backgroundColor: UIColor(.compound._bgCodeBlock),
borderColor: UIColor(.compound.borderInteractiveSecondary),
codeBlockStyle: BlockStyle(backgroundColor: UIColor.compound._bgCodeBlock,
borderColor: UIColor.compound.borderInteractiveSecondary,
borderWidth: 1.0,
cornerRadius: 2.0,
padding: BlockStyle.Padding(horizontal: 10, vertical: 12),
type: .background),
quoteBlockStyle: BlockStyle(backgroundColor: UIColor(.compound.iconTertiary),
borderColor: UIColor(.compound.borderInteractiveSecondary),
quoteBlockStyle: BlockStyle(backgroundColor: UIColor.compound.iconTertiary,
borderColor: UIColor.compound.borderInteractiveSecondary,
borderWidth: 0.0,
cornerRadius: 0.0,
padding: BlockStyle.Padding(horizontal: 25, vertical: 12),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -173,7 +173,7 @@ class TimelineTableViewController: UIViewController {
tableView.separatorStyle = .none
tableView.allowsSelection = false
tableView.keyboardDismissMode = .onDrag
tableView.backgroundColor = UIColor(.compound.bgCanvasDefault)
tableView.backgroundColor = .compound.bgCanvasDefault
tableView.transform = CGAffineTransform(scaleX: 1, y: -1)
view.addSubview(tableView)

Expand Down
2 changes: 1 addition & 1 deletion project.yml
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ packages:
# path: ../matrix-rust-sdk
Compound:
url: https://github.com/element-hq/compound-ios
revision: 0d6248492aa577b3747a34c50104cc738b628478
revision: 92110afc158ac6ee7c68d5e975144bafa6c58396
# path: ../compound-ios
AnalyticsEvents:
url: https://github.com/matrix-org/matrix-analytics-events
Expand Down
Loading