Render an explicit readable iPhone composer placeholder
3 files changed,
+11
−2
apple/Infinity/NativeConversationView.swift+3 −1apple/project.yml+1 −1docs/infinity/status.md+7 −0
diff --git a/apple/Infinity/NativeConversationView.swift b/apple/Infinity/NativeConversationView.swift| index e030365..826429c 100644 |
| --- a/apple/Infinity/NativeConversationView.swift |
| +++ b/apple/Infinity/NativeConversationView.swift |
| @@ -76,7 +76,9 @@ struct NativeConversationView: View { |
| .overlay(alignment: .leading) { if draft.isEmpty { Text("Message").foregroundStyle(Color.gray).allowsHitTesting(false) } } |
| .padding(.horizontal, 14).padding(.vertical, 9).background(Color.white, in: RoundedRectangle(cornerRadius: 18)).overlay(RoundedRectangle(cornerRadius: 18).strokeBorder(Color.gray.opacity(0.25), lineWidth: 1)) |
| #else |
| - TextField("Message", text: $draft, prompt: Text("Message").foregroundStyle(Color.gray), axis: .vertical).foregroundStyle(Color.black).lineLimit(1...6).textFieldStyle(.plain).padding(.horizontal, 14).padding(.vertical, 9).background(Color.white, in: RoundedRectangle(cornerRadius: 18)).overlay(RoundedRectangle(cornerRadius: 18).strokeBorder(Color.gray.opacity(0.25), lineWidth: 1)).focused($composerFocused) |
| + TextField("", text: $draft, axis: .vertical).accessibilityLabel("Message").foregroundStyle(Color.black).lineLimit(1...6).textFieldStyle(.plain) |
| + .environment(\.colorScheme, .light) |
| + .overlay(alignment: .leading) { if draft.isEmpty { Text("Message").foregroundStyle(Color.gray).allowsHitTesting(false).accessibilityHidden(true) } }.padding(.horizontal, 14).padding(.vertical, 9).background(Color.white, in: RoundedRectangle(cornerRadius: 18)).overlay(RoundedRectangle(cornerRadius: 18).strokeBorder(Color.gray.opacity(0.25), lineWidth: 1)).focused($composerFocused) |
| #endif |
| if !draft.trimmingCharacters(in: .whitespacesAndNewlines).isEmpty { |
| Button(action: send) { Image(systemName: "arrow.up.circle.fill").font(.system(size: 32)) } |
diff --git a/apple/project.yml b/apple/project.yml| index ecffa59..5fb1ca5 100644 |
| --- a/apple/project.yml |
| +++ b/apple/project.yml |
| @@ -8,7 +8,7 @@ settings: |
| base: |
| SWIFT_VERSION: '5.0' |
| MARKETING_VERSION: '0.2.0' |
| - CURRENT_PROJECT_VERSION: '12' |
| + CURRENT_PROJECT_VERSION: '13' |
| GENERATE_INFOPLIST_FILE: YES |
| ASSETCATALOG_COMPILER_APPICON_NAME: AppIcon |
| CODE_SIGN_STYLE: Automatic |
diff --git a/docs/infinity/status.md b/docs/infinity/status.md| index b24a532..37c4a14 100644 |
| --- a/docs/infinity/status.md |
| +++ b/docs/infinity/status.md |
| @@ -167,3 +167,10 @@ no false empty state, sending and cached thread/message restoration on relaunch |
| while refresh is delayed. System-dark visual verification is being completed |
| separately because the initial XCTest launch argument did not change appearance. |
| Apple processing and beta distribution for build 12 remain pending. |
| + |
| +Build 13 supersedes build 12: actual system-dark visual inspection showed SwiftUI |
| +ignored the styled native prompt in build 12. Build 13 uses an explicit gray |
| +placeholder overlay and a light color scheme confined to the white input field. |
| +The signed build 13 archive passes; real iPhone UI tests pass in system dark mode, |
| +and the exported screenshot confirms the visible placeholder. Cached startup |
| +and message restoration pass in the same run. Upload is in progress. |