~cytrogen/fluent-reader-mobile

ref: 6208bc47e60cad65df39074f0bdec0cabaaaa4ab fluent-reader-mobile/lib/pages/settings/sources_page.dart -rw-r--r-- 1.3 KiB
6208bc47 — Bruce Liu initial commit 5 years ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
import 'package:fluent_reader_lite/components/favicon.dart';
import 'package:fluent_reader_lite/components/list_tile_group.dart';
import 'package:fluent_reader_lite/components/my_list_tile.dart';
import 'package:fluent_reader_lite/generated/l10n.dart';
import 'package:fluent_reader_lite/models/sources_model.dart';
import 'package:fluent_reader_lite/utils/colors.dart';
import 'package:flutter/cupertino.dart';
import 'package:provider/provider.dart';

class SourcesPage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return CupertinoPageScaffold(
      backgroundColor: MyColors.background,
      navigationBar: CupertinoNavigationBar(
        middle: Text(S.of(context).subscriptions),
      ),
      child: ListView(children: [
        Consumer<SourcesModel>(
          builder: (context, sourcesModel, child) {
            var sources = sourcesModel.getSources().toList();
            return ListTileGroup(sources.map((s) => MyListTile(
              title: Flexible(child: Text(s.name, overflow: TextOverflow.ellipsis)),
              leading: Favicon(s, size: 20),
              withDivider: s.id != sources.last.id,
              onTap: () {
                Navigator.of(context).pushNamed("/settings/sources/edit", arguments: s.id);
              },
            )));
          },
        ),
      ]),
    ); 
  }
}