|
@@ -11,6 +11,7 @@ import 'package:photos/ui/settings/debug_section_widget.dart';
|
|
import 'package:photos/ui/settings/details_section_widget.dart';
|
|
import 'package:photos/ui/settings/details_section_widget.dart';
|
|
import 'package:photos/ui/settings/info_section_widget.dart';
|
|
import 'package:photos/ui/settings/info_section_widget.dart';
|
|
import 'package:photos/ui/settings/security_section_widget.dart';
|
|
import 'package:photos/ui/settings/security_section_widget.dart';
|
|
|
|
+import 'package:photos/ui/settings/settings_section_title.dart';
|
|
import 'package:photos/ui/settings/social_section_widget.dart';
|
|
import 'package:photos/ui/settings/social_section_widget.dart';
|
|
import 'package:photos/ui/settings/support_section_widget.dart';
|
|
import 'package:photos/ui/settings/support_section_widget.dart';
|
|
import 'package:photos/ui/settings/theme_switch_widget.dart';
|
|
import 'package:photos/ui/settings/theme_switch_widget.dart';
|
|
@@ -31,32 +32,22 @@ class SettingsPage extends StatelessWidget {
|
|
final List<Widget> contents = [];
|
|
final List<Widget> contents = [];
|
|
contents.add(
|
|
contents.add(
|
|
Container(
|
|
Container(
|
|
- padding: const EdgeInsets.symmetric(horizontal: 2, vertical: 6),
|
|
|
|
- child: Row(
|
|
|
|
- mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
|
|
|
- crossAxisAlignment: CrossAxisAlignment.center,
|
|
|
|
- children: [
|
|
|
|
- // // Thanks to the [AnimatedBuilder], only the widget displaying the
|
|
|
|
- // // current email is rebuilt when `emailNotifier` notifies its
|
|
|
|
- // // listeners.
|
|
|
|
- AnimatedBuilder(
|
|
|
|
- // [AnimatedBuilder] accepts any [Listenable] subtype.
|
|
|
|
- animation: emailNotifier,
|
|
|
|
- builder: (BuildContext context, Widget child) {
|
|
|
|
- return Text(
|
|
|
|
- emailNotifier.value,
|
|
|
|
- style: Theme.of(context)
|
|
|
|
- .textTheme
|
|
|
|
- .subtitle1
|
|
|
|
- .copyWith(overflow: TextOverflow.ellipsis),
|
|
|
|
- );
|
|
|
|
- },
|
|
|
|
- ),
|
|
|
|
-
|
|
|
|
- (Platform.isAndroid)
|
|
|
|
- ? const ThemeSwitchWidget()
|
|
|
|
- : const SizedBox.shrink(),
|
|
|
|
- ],
|
|
|
|
|
|
+ padding: const EdgeInsets.symmetric(horizontal: 2, vertical: 4),
|
|
|
|
+ child: Align(
|
|
|
|
+ alignment: Alignment.centerLeft,
|
|
|
|
+ child: AnimatedBuilder(
|
|
|
|
+ // [AnimatedBuilder] accepts any [Listenable] subtype.
|
|
|
|
+ animation: emailNotifier,
|
|
|
|
+ builder: (BuildContext context, Widget child) {
|
|
|
|
+ return Text(
|
|
|
|
+ emailNotifier.value,
|
|
|
|
+ style: Theme.of(context)
|
|
|
|
+ .textTheme
|
|
|
|
+ .subtitle1
|
|
|
|
+ .copyWith(overflow: TextOverflow.ellipsis),
|
|
|
|
+ );
|
|
|
|
+ },
|
|
|
|
+ ),
|
|
),
|
|
),
|
|
),
|
|
),
|
|
);
|
|
);
|
|
@@ -78,6 +69,23 @@ class SettingsPage extends StatelessWidget {
|
|
contents.addAll([
|
|
contents.addAll([
|
|
const SecuritySectionWidget(),
|
|
const SecuritySectionWidget(),
|
|
sectionDivider,
|
|
sectionDivider,
|
|
|
|
+ ]);
|
|
|
|
+
|
|
|
|
+ if (Platform.isAndroid || kDebugMode) {
|
|
|
|
+ contents.addAll([
|
|
|
|
+ Row(
|
|
|
|
+ mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
|
|
|
+ crossAxisAlignment: CrossAxisAlignment.center,
|
|
|
|
+ children: const [
|
|
|
|
+ SettingsSectionTitle("Theme"),
|
|
|
|
+ ThemeSwitchWidget(),
|
|
|
|
+ ],
|
|
|
|
+ ),
|
|
|
|
+ sectionDivider,
|
|
|
|
+ ]);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ contents.addAll([
|
|
const SupportSectionWidget(),
|
|
const SupportSectionWidget(),
|
|
sectionDivider,
|
|
sectionDivider,
|
|
const SocialSectionWidget(),
|
|
const SocialSectionWidget(),
|