diff --git a/ElementX.xcodeproj/project.pbxproj b/ElementX.xcodeproj/project.pbxproj
index 0d73d3b497..f17c78af6b 100644
--- a/ElementX.xcodeproj/project.pbxproj
+++ b/ElementX.xcodeproj/project.pbxproj
@@ -4252,6 +4252,7 @@
);
MARKETING_VERSION = "$(MARKETING_VERSION)";
PRODUCT_BUNDLE_IDENTIFIER = "${BASE_BUNDLE_IDENTIFIER}.nse";
+ PRODUCT_DISPLAY_NAME = "$(APP_NAME)";
PRODUCT_NAME = NSE;
SDKROOT = iphoneos;
SWIFT_OBJC_INTERFACE_HEADER_NAME = "GeneratedInterface-Swift.h";
@@ -4274,7 +4275,7 @@
);
MARKETING_VERSION = "$(MARKETING_VERSION)";
PRODUCT_BUNDLE_IDENTIFIER = "$(BASE_BUNDLE_IDENTIFIER)";
- PRODUCT_NAME = ElementX;
+ PRODUCT_NAME = "$(APP_NAME)";
SDKROOT = iphoneos;
SWIFT_OBJC_BRIDGING_HEADER = "ElementX/SupportingFiles/ElementX-Bridging-Header.h";
SWIFT_OBJC_INTERFACE_HEADER_NAME = "GeneratedInterface-Swift.h";
@@ -4297,7 +4298,7 @@
);
MARKETING_VERSION = "$(MARKETING_VERSION)";
PRODUCT_BUNDLE_IDENTIFIER = "$(BASE_BUNDLE_IDENTIFIER)";
- PRODUCT_NAME = ElementX;
+ PRODUCT_NAME = "$(APP_NAME)";
SDKROOT = iphoneos;
SWIFT_OBJC_BRIDGING_HEADER = "ElementX/SupportingFiles/ElementX-Bridging-Header.h";
SWIFT_OBJC_INTERFACE_HEADER_NAME = "GeneratedInterface-Swift.h";
@@ -4328,6 +4329,7 @@
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
APP_GROUP_IDENTIFIER = "group.$(BASE_APP_GROUP_IDENTIFIER)";
+ APP_NAME = ElementX;
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = Colors/AccentColor;
BASE_APP_GROUP_IDENTIFIER = io.element;
BASE_BUNDLE_IDENTIFIER = io.element.elementx;
@@ -4395,6 +4397,7 @@
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
APP_GROUP_IDENTIFIER = "group.$(BASE_APP_GROUP_IDENTIFIER)";
+ APP_NAME = ElementX;
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = Colors/AccentColor;
BASE_APP_GROUP_IDENTIFIER = io.element;
BASE_BUNDLE_IDENTIFIER = io.element.elementx;
@@ -4532,6 +4535,7 @@
);
MARKETING_VERSION = "$(MARKETING_VERSION)";
PRODUCT_BUNDLE_IDENTIFIER = "${BASE_BUNDLE_IDENTIFIER}.nse";
+ PRODUCT_DISPLAY_NAME = "$(APP_NAME)";
PRODUCT_NAME = NSE;
SDKROOT = iphoneos;
SWIFT_OBJC_INTERFACE_HEADER_NAME = "GeneratedInterface-Swift.h";
diff --git a/ElementX/Sources/Application/AppCoordinator.swift b/ElementX/Sources/Application/AppCoordinator.swift
index ec09239f57..797b6c0121 100644
--- a/ElementX/Sources/Application/AppCoordinator.swift
+++ b/ElementX/Sources/Application/AppCoordinator.swift
@@ -136,7 +136,7 @@ class AppCoordinator: AppCoordinatorProtocol, AuthenticationCoordinatorDelegate,
}
func shouldDisplayInAppNotification(_ service: NotificationManagerProtocol, content: UNNotificationContent) -> Bool {
- guard let roomId = content.userInfo[NotificationConstants.UserInfoKey.roomIdentifier] as? String else {
+ guard let roomId = content.roomID else {
return true
}
guard let userSessionFlowCoordinator else {
diff --git a/ElementX/Sources/Other/Extensions/UNNotificationContent.swift b/ElementX/Sources/Other/Extensions/UNNotificationContent.swift
index 916ae01b7c..221e92a44e 100644
--- a/ElementX/Sources/Other/Extensions/UNNotificationContent.swift
+++ b/ElementX/Sources/Other/Extensions/UNNotificationContent.swift
@@ -123,7 +123,7 @@ extension UNMutableNotificationContent {
senderID: String,
senderName: String,
iconType: NotificationIconType) async throws -> UNMutableNotificationContent {
- var image: INImage?
+ var image = INImage(named: "")
if let mediaSource = iconType.mediaSource {
switch await mediaProvider?.loadImageDataFromSource(mediaSource) {
case .success(let data):
@@ -161,7 +161,7 @@ extension UNMutableNotificationContent {
serviceName: nil,
sender: sender,
attachments: nil)
- if speakableGroupName != nil, let image {
+ if speakableGroupName != nil {
intent.setImage(image, forParameterNamed: \.speakableGroupName)
}
diff --git a/ElementX/SupportingFiles/target.yml b/ElementX/SupportingFiles/target.yml
index 2623c95b2d..9b40df75cf 100644
--- a/ElementX/SupportingFiles/target.yml
+++ b/ElementX/SupportingFiles/target.yml
@@ -74,7 +74,7 @@ targets:
settings:
base:
- PRODUCT_NAME: ElementX
+ PRODUCT_NAME: $(APP_NAME)
PRODUCT_BUNDLE_IDENTIFIER: $(BASE_BUNDLE_IDENTIFIER)
MARKETING_VERSION: $(MARKETING_VERSION)
CURRENT_PROJECT_VERSION: $(CURRENT_PROJECT_VERSION)
diff --git a/NSE/SupportingFiles/Info.plist b/NSE/SupportingFiles/Info.plist
index 48adae1ec0..4a96dacf45 100644
--- a/NSE/SupportingFiles/Info.plist
+++ b/NSE/SupportingFiles/Info.plist
@@ -5,7 +5,7 @@
CFBundleDevelopmentRegion
$(DEVELOPMENT_LANGUAGE)
CFBundleDisplayName
- $(PRODUCT_NAME)
+ $(PRODUCT_DISPLAY_NAME)
CFBundleExecutable
$(EXECUTABLE_NAME)
CFBundleIdentifier
diff --git a/NSE/SupportingFiles/target.yml b/NSE/SupportingFiles/target.yml
index cc5adcd84a..3ad2c62452 100644
--- a/NSE/SupportingFiles/target.yml
+++ b/NSE/SupportingFiles/target.yml
@@ -40,7 +40,7 @@ targets:
info:
path: ../SupportingFiles/Info.plist
properties:
- CFBundleDisplayName: $(PRODUCT_NAME)
+ CFBundleDisplayName: $(PRODUCT_DISPLAY_NAME)
CFBundleShortVersionString: $(MARKETING_VERSION)
CFBundleVersion: $(CURRENT_PROJECT_VERSION)
appGroupIdentifier: $(APP_GROUP_IDENTIFIER)
@@ -53,6 +53,7 @@ targets:
settings:
base:
PRODUCT_NAME: NSE
+ PRODUCT_DISPLAY_NAME: $(APP_NAME)
PRODUCT_BUNDLE_IDENTIFIER: ${BASE_BUNDLE_IDENTIFIER}.nse
MARKETING_VERSION: $(MARKETING_VERSION)
CURRENT_PROJECT_VERSION: $(CURRENT_PROJECT_VERSION)
diff --git a/changelog.d/pr-965.change b/changelog.d/pr-965.change
new file mode 100644
index 0000000000..3bc6f8be23
--- /dev/null
+++ b/changelog.d/pr-965.change
@@ -0,0 +1 @@
+Showing the iOS default contact/group silhouette in notifications when the avatar is missing.
\ No newline at end of file
diff --git a/project.yml b/project.yml
index 1fd824c62e..6ff146bd1f 100644
--- a/project.yml
+++ b/project.yml
@@ -26,6 +26,7 @@ settings:
BASE_APP_GROUP_IDENTIFIER: io.element
APP_GROUP_IDENTIFIER: group.$(BASE_APP_GROUP_IDENTIFIER)
BASE_BUNDLE_IDENTIFIER: io.element.elementx
+ APP_NAME: ElementX
KEYCHAIN_ACCESS_GROUP_IDENTIFIER: $(AppIdentifierPrefix)$(BASE_BUNDLE_IDENTIFIER)
MARKETING_VERSION: 1.1.2
CURRENT_PROJECT_VERSION: 1