mirror of
https://github.com/Novaloop-AG/element-x-ios.git
synced 2026-11-03 16:10:20 +00:00
Promote gallery messages to labs
This commit is contained in:
@@ -950,6 +950,8 @@
|
|||||||
"screen_knock_requests_list_empty_state_title" = "No pending request to join";
|
"screen_knock_requests_list_empty_state_title" = "No pending request to join";
|
||||||
"screen_knock_requests_list_initial_loading_title" = "Loading requests to join…";
|
"screen_knock_requests_list_initial_loading_title" = "Loading requests to join…";
|
||||||
"screen_knock_requests_list_title" = "Requests to join";
|
"screen_knock_requests_list_title" = "Requests to join";
|
||||||
|
"screen_labs_enable_gallery" = "Gallery messages";
|
||||||
|
"screen_labs_enable_gallery_description" = "Send multiple images or videos in one go. Stable on mobile, but not yet supported by web.";
|
||||||
"screen_labs_enable_threads" = "Enable thread replies";
|
"screen_labs_enable_threads" = "Enable thread replies";
|
||||||
"screen_labs_enable_threads_description" = "The app will restart to apply this change.";
|
"screen_labs_enable_threads_description" = "The app will restart to apply this change.";
|
||||||
"screen_labs_header_description" = "Try out our latest ideas in development. These features are not finalized; they may be unstable, may change.";
|
"screen_labs_header_description" = "Try out our latest ideas in development. These features are not finalized; they may be unstable, may change.";
|
||||||
|
|||||||
@@ -950,6 +950,8 @@
|
|||||||
"screen_knock_requests_list_empty_state_title" = "No pending request to join";
|
"screen_knock_requests_list_empty_state_title" = "No pending request to join";
|
||||||
"screen_knock_requests_list_initial_loading_title" = "Loading requests to join…";
|
"screen_knock_requests_list_initial_loading_title" = "Loading requests to join…";
|
||||||
"screen_knock_requests_list_title" = "Requests to join";
|
"screen_knock_requests_list_title" = "Requests to join";
|
||||||
|
"screen_labs_enable_gallery" = "Gallery messages";
|
||||||
|
"screen_labs_enable_gallery_description" = "Send multiple images or videos in one go. Stable on mobile, but not yet supported by web.";
|
||||||
"screen_labs_enable_threads" = "Enable thread replies";
|
"screen_labs_enable_threads" = "Enable thread replies";
|
||||||
"screen_labs_enable_threads_description" = "The app will restart to apply this change.";
|
"screen_labs_enable_threads_description" = "The app will restart to apply this change.";
|
||||||
"screen_labs_header_description" = "Try out our latest ideas in development. These features are not finalised; they may be unstable, may change.";
|
"screen_labs_header_description" = "Try out our latest ideas in development. These features are not finalised; they may be unstable, may change.";
|
||||||
|
|||||||
@@ -2224,6 +2224,10 @@ internal nonisolated enum L10n {
|
|||||||
internal static var screenKnockRequestsListInitialLoadingTitle: String { return L10n.tr("Localizable", "screen_knock_requests_list_initial_loading_title") }
|
internal static var screenKnockRequestsListInitialLoadingTitle: String { return L10n.tr("Localizable", "screen_knock_requests_list_initial_loading_title") }
|
||||||
/// Requests to join
|
/// Requests to join
|
||||||
internal static var screenKnockRequestsListTitle: String { return L10n.tr("Localizable", "screen_knock_requests_list_title") }
|
internal static var screenKnockRequestsListTitle: String { return L10n.tr("Localizable", "screen_knock_requests_list_title") }
|
||||||
|
/// Gallery messages
|
||||||
|
internal static var screenLabsEnableGallery: String { return L10n.tr("Localizable", "screen_labs_enable_gallery") }
|
||||||
|
/// Send multiple images or videos in one go. Stable on mobile, but not yet supported by web.
|
||||||
|
internal static var screenLabsEnableGalleryDescription: String { return L10n.tr("Localizable", "screen_labs_enable_gallery_description") }
|
||||||
/// Enable thread replies
|
/// Enable thread replies
|
||||||
internal static var screenLabsEnableThreads: String { return L10n.tr("Localizable", "screen_labs_enable_threads") }
|
internal static var screenLabsEnableThreads: String { return L10n.tr("Localizable", "screen_labs_enable_threads") }
|
||||||
/// The app will restart to apply this change.
|
/// The app will restart to apply this change.
|
||||||
|
|||||||
@@ -36,6 +36,7 @@ struct LabsScreenViewStateBindings {
|
|||||||
|
|
||||||
protocol LabsOptionsProtocol: AnyObject {
|
protocol LabsOptionsProtocol: AnyObject {
|
||||||
var threadsEnabled: Bool { get set }
|
var threadsEnabled: Bool { get set }
|
||||||
|
var galleryEnabled: Bool { get set }
|
||||||
}
|
}
|
||||||
|
|
||||||
extension AppSettings: LabsOptionsProtocol { }
|
extension AppSettings: LabsOptionsProtocol { }
|
||||||
|
|||||||
@@ -16,6 +16,7 @@ struct LabsScreen: View {
|
|||||||
Form {
|
Form {
|
||||||
header
|
header
|
||||||
threadsSection
|
threadsSection
|
||||||
|
gallerySection
|
||||||
}
|
}
|
||||||
.compoundList()
|
.compoundList()
|
||||||
.navigationTitle(L10n.screenLabsTitle)
|
.navigationTitle(L10n.screenLabsTitle)
|
||||||
@@ -59,6 +60,17 @@ struct LabsScreen: View {
|
|||||||
context.send(viewAction: .clearCache)
|
context.send(viewAction: .clearCache)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private var gallerySection: some View {
|
||||||
|
Section {
|
||||||
|
ListRow(label: .default(title: L10n.screenLabsEnableGallery,
|
||||||
|
icon: \.image),
|
||||||
|
kind: .toggle($context.galleryEnabled))
|
||||||
|
} footer: {
|
||||||
|
Text(L10n.screenLabsEnableGalleryDescription)
|
||||||
|
.compoundListSectionFooter()
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// MARK: - Previews
|
// MARK: - Previews
|
||||||
|
|||||||
-2
@@ -68,8 +68,6 @@ protocol DeveloperOptionsProtocol: AnyObject {
|
|||||||
|
|
||||||
var linkPreviewsEnabled: Bool { get set }
|
var linkPreviewsEnabled: Bool { get set }
|
||||||
|
|
||||||
var galleryEnabled: Bool { get set }
|
|
||||||
|
|
||||||
var jumpToReadMarkerEnabled: Bool { get set }
|
var jumpToReadMarkerEnabled: Bool { get set }
|
||||||
|
|
||||||
var linkNewDeviceEnabled: Bool { get set }
|
var linkNewDeviceEnabled: Bool { get set }
|
||||||
|
|||||||
-5
@@ -97,11 +97,6 @@ struct DeveloperOptionsScreen: View {
|
|||||||
.foregroundStyle(.compound.textCriticalPrimary)
|
.foregroundStyle(.compound.textCriticalPrimary)
|
||||||
}
|
}
|
||||||
|
|
||||||
Toggle(isOn: $context.galleryEnabled) {
|
|
||||||
Text("Gallery messages")
|
|
||||||
Text("Allows sending multiple media in a single message. Received galleries always render regardless of this setting.")
|
|
||||||
}
|
|
||||||
|
|
||||||
Toggle(isOn: $context.jumpToReadMarkerEnabled) {
|
Toggle(isOn: $context.jumpToReadMarkerEnabled) {
|
||||||
Text("Jump to unread")
|
Text("Jump to unread")
|
||||||
Text("Adds a button to jump to the read marker, plus a presence dot on the scroll-to-bottom button when new messages arrive while scrolled away.")
|
Text("Adds a button to jump to the read marker, plus a presence dot on the scroll-to-bottom button when new messages arrive while scrolled away.")
|
||||||
|
|||||||
Reference in New Issue
Block a user