mirror of
				https://gitlab.com/famedly/fluffychat.git
				synced 2025-11-04 06:17:26 +01:00 
			
		
		
		
	chore: Add new start chat image
This commit is contained in:
		
							parent
							
								
									f6c2fa8588
								
							
						
					
					
						commit
						51a5e7f9cc
					
				@ -2991,5 +2991,6 @@
 | 
			
		||||
    "placeholders": {
 | 
			
		||||
      "number": {}
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
  },
 | 
			
		||||
  "newSpaceDescription": "Mit Spaces kannst du deine Chats zusammenfassen und private oder öffentliche Communities aufbauen."
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -2258,11 +2258,7 @@
 | 
			
		||||
      "senderName": {}
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  "startYourFirstChat": "Start your first chat right now! 🙂\n- Tap on 'New chat'\n- Scan the QR code of a friend\n- Have fun chatting",
 | 
			
		||||
  "@startYourFirstChat": {
 | 
			
		||||
    "type": "text",
 | 
			
		||||
    "placeholders": {}
 | 
			
		||||
  },
 | 
			
		||||
  "startFirstChat": "Start your first chat",
 | 
			
		||||
  "status": "Status",
 | 
			
		||||
  "@status": {
 | 
			
		||||
    "type": "text",
 | 
			
		||||
@ -2982,5 +2978,6 @@
 | 
			
		||||
    "placeholders": {
 | 
			
		||||
      "oldDisplayName": {}
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
  },
 | 
			
		||||
  "newSpaceDescription": "Spaces allows you to consolidate your chats and build private or public communities."
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
										
											Binary file not shown.
										
									
								
							| 
		 Before Width: | Height: | Size: 44 KiB  | 
							
								
								
									
										
											BIN
										
									
								
								assets/start_chat.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								assets/start_chat.png
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| 
		 After Width: | Height: | Size: 52 KiB  | 
@ -55,8 +55,11 @@ abstract class FluffyThemes {
 | 
			
		||||
        dividerColor: brightness == Brightness.light
 | 
			
		||||
            ? Colors.blueGrey.shade50
 | 
			
		||||
            : Colors.blueGrey.shade900,
 | 
			
		||||
        inputDecorationTheme: const InputDecorationTheme(
 | 
			
		||||
          border: InputBorder.none,
 | 
			
		||||
        inputDecorationTheme: InputDecorationTheme(
 | 
			
		||||
          border: UnderlineInputBorder(
 | 
			
		||||
            borderSide: BorderSide.none,
 | 
			
		||||
            borderRadius: BorderRadius.circular(AppConfig.borderRadius),
 | 
			
		||||
          ),
 | 
			
		||||
          filled: true,
 | 
			
		||||
        ),
 | 
			
		||||
        appBarTheme: AppBarTheme(
 | 
			
		||||
 | 
			
		||||
@ -3,6 +3,7 @@ import 'package:flutter/material.dart';
 | 
			
		||||
import 'package:animations/animations.dart';
 | 
			
		||||
import 'package:flutter_gen/gen_l10n/l10n.dart';
 | 
			
		||||
import 'package:matrix/matrix.dart';
 | 
			
		||||
import 'package:vrouter/vrouter.dart';
 | 
			
		||||
 | 
			
		||||
import 'package:fluffychat/pages/chat_list/chat_list.dart';
 | 
			
		||||
import 'package:fluffychat/pages/chat_list/chat_list_item.dart';
 | 
			
		||||
@ -172,28 +173,34 @@ class ChatListViewBody extends StatelessWidget {
 | 
			
		||||
                            icon: const Icon(Icons.chat_outlined),
 | 
			
		||||
                          ),
 | 
			
		||||
                        if (rooms.isEmpty && !controller.isSearchMode)
 | 
			
		||||
                          Column(
 | 
			
		||||
                            key: const ValueKey(null),
 | 
			
		||||
                            mainAxisAlignment: MainAxisAlignment.center,
 | 
			
		||||
                            mainAxisSize: MainAxisSize.min,
 | 
			
		||||
                            children: <Widget>[
 | 
			
		||||
                              Image.asset(
 | 
			
		||||
                                'assets/private_chat_wallpaper.png',
 | 
			
		||||
                                width: 160,
 | 
			
		||||
                                height: 160,
 | 
			
		||||
                              ),
 | 
			
		||||
                              Center(
 | 
			
		||||
                                child: Text(
 | 
			
		||||
                                  L10n.of(context)!.startYourFirstChat,
 | 
			
		||||
                                  textAlign: TextAlign.start,
 | 
			
		||||
                                  style: const TextStyle(
 | 
			
		||||
                                    color: Colors.grey,
 | 
			
		||||
                                    fontSize: 16,
 | 
			
		||||
                                  ),
 | 
			
		||||
                          Padding(
 | 
			
		||||
                            padding: const EdgeInsets.all(32.0),
 | 
			
		||||
                            child: Column(
 | 
			
		||||
                              mainAxisAlignment: MainAxisAlignment.center,
 | 
			
		||||
                              children: [
 | 
			
		||||
                                const SizedBox(height: 32),
 | 
			
		||||
                                Image.asset(
 | 
			
		||||
                                  'assets/start_chat.png',
 | 
			
		||||
                                ),
 | 
			
		||||
                              ),
 | 
			
		||||
                              const SizedBox(height: 16),
 | 
			
		||||
                            ],
 | 
			
		||||
                                Divider(
 | 
			
		||||
                                  height: 1,
 | 
			
		||||
                                  color: Theme.of(context)
 | 
			
		||||
                                      .colorScheme
 | 
			
		||||
                                      .onBackground,
 | 
			
		||||
                                ),
 | 
			
		||||
                                const SizedBox(height: 32),
 | 
			
		||||
                                FloatingActionButton.extended(
 | 
			
		||||
                                  backgroundColor:
 | 
			
		||||
                                      Theme.of(context).colorScheme.primary,
 | 
			
		||||
                                  foregroundColor:
 | 
			
		||||
                                      Theme.of(context).colorScheme.onPrimary,
 | 
			
		||||
                                  icon: const Icon(Icons.edit_outlined),
 | 
			
		||||
                                  onPressed: () =>
 | 
			
		||||
                                      VRouter.of(context).to('/newprivatechat'),
 | 
			
		||||
                                  label: Text(L10n.of(context)!.startFirstChat),
 | 
			
		||||
                                ),
 | 
			
		||||
                              ],
 | 
			
		||||
                            ),
 | 
			
		||||
                          ),
 | 
			
		||||
                      ],
 | 
			
		||||
                    );
 | 
			
		||||
 | 
			
		||||
@ -234,7 +234,8 @@ class ChatListView extends StatelessWidget {
 | 
			
		||||
                          destinations: getNavigationDestinations(context),
 | 
			
		||||
                        )
 | 
			
		||||
                      : null,
 | 
			
		||||
                  floatingActionButton: selectMode == SelectMode.normal
 | 
			
		||||
                  floatingActionButton: controller.filteredRooms.isNotEmpty &&
 | 
			
		||||
                          selectMode == SelectMode.normal
 | 
			
		||||
                      ? KeyBoardShortcuts(
 | 
			
		||||
                          keysToPress: {
 | 
			
		||||
                            LogicalKeyboardKey.controlLeft,
 | 
			
		||||
 | 
			
		||||
@ -42,7 +42,7 @@ class StartChatFloatingActionButton extends StatelessWidget {
 | 
			
		||||
    switch (controller.activeFilter) {
 | 
			
		||||
      case ActiveFilter.allChats:
 | 
			
		||||
      case ActiveFilter.messages:
 | 
			
		||||
        return L10n.of(context)!.newChat;
 | 
			
		||||
        return L10n.of(context)!.start;
 | 
			
		||||
      case ActiveFilter.groups:
 | 
			
		||||
        return L10n.of(context)!.newGroup;
 | 
			
		||||
      case ActiveFilter.spaces:
 | 
			
		||||
 | 
			
		||||
@ -35,12 +35,16 @@ class NewGroupView extends StatelessWidget {
 | 
			
		||||
              ),
 | 
			
		||||
            ),
 | 
			
		||||
            SwitchListTile.adaptive(
 | 
			
		||||
              secondary: const Icon(Icons.public_outlined),
 | 
			
		||||
              title: Text(L10n.of(context)!.groupIsPublic),
 | 
			
		||||
              value: controller.publicGroup,
 | 
			
		||||
              onChanged: controller.setPublicGroup,
 | 
			
		||||
            ),
 | 
			
		||||
            Expanded(
 | 
			
		||||
              child: Image.asset('assets/private_chat_wallpaper.png'),
 | 
			
		||||
            SwitchListTile.adaptive(
 | 
			
		||||
              secondary: const Icon(Icons.lock_outlined),
 | 
			
		||||
              title: Text(L10n.of(context)!.enableEncryption),
 | 
			
		||||
              value: !controller.publicGroup,
 | 
			
		||||
              onChanged: null,
 | 
			
		||||
            ),
 | 
			
		||||
          ],
 | 
			
		||||
        ),
 | 
			
		||||
 | 
			
		||||
@ -39,8 +39,12 @@ class NewSpaceView extends StatelessWidget {
 | 
			
		||||
              value: controller.publicGroup,
 | 
			
		||||
              onChanged: controller.setPublicGroup,
 | 
			
		||||
            ),
 | 
			
		||||
            Expanded(
 | 
			
		||||
              child: Image.asset('assets/private_chat_wallpaper.png'),
 | 
			
		||||
            ListTile(
 | 
			
		||||
              trailing: const Padding(
 | 
			
		||||
                padding: EdgeInsets.symmetric(horizontal: 16.0),
 | 
			
		||||
                child: Icon(Icons.info_outlined),
 | 
			
		||||
              ),
 | 
			
		||||
              subtitle: Text(L10n.of(context)!.newSpaceDescription),
 | 
			
		||||
            ),
 | 
			
		||||
          ],
 | 
			
		||||
        ),
 | 
			
		||||
 | 
			
		||||
@ -8,7 +8,7 @@ class EmptyPage extends StatelessWidget {
 | 
			
		||||
  const EmptyPage({this.loading = false, Key? key}) : super(key: key);
 | 
			
		||||
  @override
 | 
			
		||||
  Widget build(BuildContext context) {
 | 
			
		||||
    final width = min(MediaQuery.of(context).size.width, EmptyPage._width);
 | 
			
		||||
    final width = min(MediaQuery.of(context).size.width, EmptyPage._width) / 2;
 | 
			
		||||
    return Scaffold(
 | 
			
		||||
      // Add invisible appbar to make status bar on Android tablets bright.
 | 
			
		||||
      appBar: AppBar(
 | 
			
		||||
@ -24,7 +24,7 @@ class EmptyPage extends StatelessWidget {
 | 
			
		||||
            child: Hero(
 | 
			
		||||
              tag: 'info-logo',
 | 
			
		||||
              child: Image.asset(
 | 
			
		||||
                'assets/info-logo.png',
 | 
			
		||||
                'assets/favicon.png',
 | 
			
		||||
                width: width,
 | 
			
		||||
                height: width,
 | 
			
		||||
                filterQuality: FilterQuality.medium,
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user