post dialogue
This commit is contained in:
parent
ee081de0ab
commit
e4a56146d5
3 changed files with 82 additions and 19 deletions
46
lib/dialogues/makepost.dart
Normal file
46
lib/dialogues/makepost.dart
Normal file
|
@ -0,0 +1,46 @@
|
||||||
|
import 'package:flutter/material.dart';
|
||||||
|
|
||||||
|
class MakePost extends StatelessWidget {
|
||||||
|
const MakePost({Key? key}) : super(key: key);
|
||||||
|
|
||||||
|
@override
|
||||||
|
Widget build(BuildContext context) {
|
||||||
|
return SimpleDialog(
|
||||||
|
backgroundColor: Theme.of(context).colorScheme.background,
|
||||||
|
elevation: 0,
|
||||||
|
contentPadding: const EdgeInsets.all(24),
|
||||||
|
insetPadding: const EdgeInsets.all(24),
|
||||||
|
children: [
|
||||||
|
TextFormField(
|
||||||
|
autofocus: true,
|
||||||
|
keyboardType: TextInputType.multiline,
|
||||||
|
minLines: 4,
|
||||||
|
maxLines: null,
|
||||||
|
),
|
||||||
|
const MakePostActionBar(),
|
||||||
|
],
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class MakePostActionBar extends StatelessWidget {
|
||||||
|
const MakePostActionBar({Key? key}) : super(key: key);
|
||||||
|
|
||||||
|
@override
|
||||||
|
Widget build(BuildContext context) {
|
||||||
|
return Row(
|
||||||
|
children: [
|
||||||
|
IconButton(
|
||||||
|
onPressed: () {
|
||||||
|
Navigator.of(context).pop();
|
||||||
|
},
|
||||||
|
icon: Icon(Icons.cancel),
|
||||||
|
),
|
||||||
|
IconButton(
|
||||||
|
onPressed: null,
|
||||||
|
icon: Icon(Icons.save),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,5 +1,6 @@
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:localization/localization.dart';
|
import 'package:localization/localization.dart';
|
||||||
|
import 'package:slothmu/dialogues/makepost.dart';
|
||||||
import 'package:slothmu/pages/chat/chat.dart';
|
import 'package:slothmu/pages/chat/chat.dart';
|
||||||
import 'package:slothmu/pages/notifications/notifications.dart';
|
import 'package:slothmu/pages/notifications/notifications.dart';
|
||||||
import 'package:slothmu/pages/timeline/timeline.dart';
|
import 'package:slothmu/pages/timeline/timeline.dart';
|
||||||
|
@ -26,7 +27,10 @@ class _MainScaffoldState extends State<MainScaffold> {
|
||||||
final buttons = [
|
final buttons = [
|
||||||
FloatingActionButton(
|
FloatingActionButton(
|
||||||
child: const Icon(Icons.chat_bubble),
|
child: const Icon(Icons.chat_bubble),
|
||||||
onPressed: () {},
|
onPressed: () => showDialog(
|
||||||
|
context: context,
|
||||||
|
builder: (context) => const MakePost(),
|
||||||
|
),
|
||||||
),
|
),
|
||||||
FloatingActionButton(
|
FloatingActionButton(
|
||||||
onPressed: () {},
|
onPressed: () {},
|
||||||
|
|
|
@ -12,7 +12,22 @@ class _PostState extends State<Post> {
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return Column(
|
return Column(
|
||||||
children: [
|
children: [
|
||||||
Row(
|
const DisplayName(),
|
||||||
|
postBody(context),
|
||||||
|
postActionBar(context),
|
||||||
|
],
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class DisplayName extends StatelessWidget {
|
||||||
|
const DisplayName({
|
||||||
|
Key? key,
|
||||||
|
}) : super(key: key);
|
||||||
|
|
||||||
|
@override
|
||||||
|
Widget build(BuildContext context) {
|
||||||
|
return Row(
|
||||||
children: [
|
children: [
|
||||||
const Icon(
|
const Icon(
|
||||||
Icons.face,
|
Icons.face,
|
||||||
|
@ -32,10 +47,6 @@ class _PostState extends State<Post> {
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
),
|
|
||||||
postBody(context),
|
|
||||||
postActionBar(context),
|
|
||||||
],
|
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -46,6 +57,8 @@ Widget postBody(context) {
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
border: Border(
|
border: Border(
|
||||||
left: BorderSide(color: Theme.of(context).colorScheme.onSurface),
|
left: BorderSide(color: Theme.of(context).colorScheme.onSurface),
|
||||||
|
bottom: BorderSide(color: Theme.of(context).colorScheme.onSurface),
|
||||||
|
top: BorderSide(color: Theme.of(context).colorScheme.onSurface),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
child: RichText(
|
child: RichText(
|
||||||
|
|
Loading…
Reference in a new issue