Merge pull request 'Clean up message warning logic' (#154) from ui_fixes into trunk
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
Reviewed-on: #154
This commit is contained in:
commit
f04404386c
|
@ -17,10 +17,10 @@
|
|||
style="enable-background:new 0 0 24 24;"
|
||||
xml:space="preserve"
|
||||
sodipodi:docname="negative_heart_24px.svg"
|
||||
inkscape:export-filename="/home/sarah/AndroidStudioProjects/flutter_app/assets/core/negative_heart_512px.png"
|
||||
inkscape:export-xdpi="4096"
|
||||
inkscape:export-ydpi="4096"
|
||||
inkscape:version="0.92.5 (2060ec1f9f, 2020-04-08)"><metadata
|
||||
inkscape:export-filename="/home/sarah/PARA/projects/cwtch/assets/core/negative_heart_256px.png"
|
||||
inkscape:export-xdpi="1024"
|
||||
inkscape:export-ydpi="1024"
|
||||
inkscape:version="0.92.4 (5da689c313, 2019-01-14)"><metadata
|
||||
id="metadata14"><rdf:RDF><cc:Work
|
||||
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
|
||||
|
@ -34,14 +34,14 @@
|
|||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1015"
|
||||
inkscape:window-height="1020"
|
||||
id="namedview10"
|
||||
showgrid="false"
|
||||
inkscape:zoom="9.8333333"
|
||||
inkscape:cx="12"
|
||||
inkscape:cy="14.687942"
|
||||
inkscape:cx="-5.8983051"
|
||||
inkscape:cy="14.281162"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-y="31"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="Layer_1" />
|
||||
<style
|
||||
|
|
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 2.9 KiB |
|
@ -207,6 +207,7 @@ class CwtchNotifier {
|
|||
break;
|
||||
case "AcceptGroupInvite":
|
||||
print("accept group invite: $data");
|
||||
|
||||
profileCN.getProfile(data["ProfileOnion"])?.contactList.getContact(data["GroupID"])!.isInvitation = false;
|
||||
profileCN.getProfile(data["ProfileOnion"])?.contactList.updateLastMessageTime(data["GroupID"], DateTime.now());
|
||||
break;
|
||||
|
|
|
@ -50,7 +50,7 @@ class _ContactRowState extends State<ContactRow> {
|
|||
))),
|
||||
Padding(
|
||||
padding: const EdgeInsets.all(5.0),
|
||||
child: contact.isInvitation != null && contact.isInvitation
|
||||
child: contact.isInvitation == true
|
||||
? Wrap(direction: Axis.vertical, children: <Widget>[
|
||||
IconButton(
|
||||
padding: EdgeInsets.zero,
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter/rendering.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
|
||||
import '../model.dart';
|
||||
|
@ -15,17 +16,26 @@ class _MessageListState extends State<MessageList> {
|
|||
|
||||
@override
|
||||
Widget build(BuildContext outerContext) {
|
||||
bool showEphemeralWarning = (Provider.of<ContactInfoState>(context).isGroup == false && Provider.of<ContactInfoState>(context).savePeerHistory != "SaveHistory");
|
||||
bool showOfflineWarning = Provider.of<ContactInfoState>(context).isOnline() == false;
|
||||
bool showMessageWarning = showEphemeralWarning || showOfflineWarning;
|
||||
return RepaintBoundary(
|
||||
child: Container(
|
||||
child: Column(children: [
|
||||
Visibility(
|
||||
visible: Provider.of<ContactInfoState>(context).isOnline() == false || Provider.of<ContactInfoState>(context).savePeerHistory != "SaveHistory",
|
||||
visible: showMessageWarning,
|
||||
child: Container(
|
||||
padding: EdgeInsets.all(5.0),
|
||||
color: Provider.of<Settings>(context).theme.defaultButtonActiveColor(),
|
||||
child: Provider.of<ContactInfoState>(context).isOnline() == false
|
||||
? Text(Provider.of<ContactInfoState>(context).isGroup ? AppLocalizations.of(context)!.serverConnectivityDisconnected : AppLocalizations.of(context)!.peerOfflineMessage)
|
||||
: (Provider.of<ContactInfoState>(context).savePeerHistory != "SaveHistory" ? Text(AppLocalizations.of(context)!.chatHistoryDefault) : Text("")),
|
||||
child: showOfflineWarning
|
||||
? Text(Provider.of<ContactInfoState>(context).isGroup ? AppLocalizations.of(context)!.serverConnectivityDisconnected : AppLocalizations.of(context)!.peerOfflineMessage,
|
||||
textAlign: TextAlign.center)
|
||||
// Only show the ephemeral status for peer conversations, not for groups...
|
||||
: (showEphemeralWarning
|
||||
? Text(AppLocalizations.of(context)!.chatHistoryDefault, textAlign: TextAlign.center)
|
||||
:
|
||||
// We are not allowed to put null here, so put an empty text widge
|
||||
Text("")),
|
||||
)),
|
||||
Expanded(
|
||||
child: Scrollbar(
|
||||
|
@ -37,9 +47,10 @@ class _MessageListState extends State<MessageList> {
|
|||
image: Provider.of<ContactInfoState>(outerContext).isOnline()
|
||||
? null
|
||||
: DecorationImage(
|
||||
fit: BoxFit.contain,
|
||||
fit: BoxFit.scaleDown,
|
||||
alignment: Alignment.center,
|
||||
image: AssetImage("assets/core/negative_heart_512px.png"),
|
||||
colorFilter: ColorFilter.mode(Provider.of<Settings>(context).theme.mainTextColor(), BlendMode.srcIn))),
|
||||
colorFilter: ColorFilter.mode(Provider.of<Settings>(context).theme.hilightElementTextColor(), BlendMode.srcIn))),
|
||||
child: ListView.builder(
|
||||
controller: ctrlr1,
|
||||
itemCount: Provider.of<ContactInfoState>(outerContext).totalMessages,
|
||||
|
|
Loading…
Reference in New Issue