A Flutter based clean and minimalistic journal which allows you to tag emotions and people to events in your life for future analysis.
- The best story you've ever heard is the one you told yourself in the head
- Make the design smoooooooth => Smoooooooooothhh Operator ==> Smmmmoooooth Operationnn
- Make a poof Feature => Ever found a day where you just had to tell the story but don't want it recorded.
- We got that covered for ya. Make a Poof Story which auto deletes in a day.
- But on one condition. This has word limit. Make sure you have figured out exactly what should be poofed from your head
BoxConstraints getConstraintsForChild(BoxConstraints constraints) {
return BoxConstraints(
minWidth: constraints.maxWidth,
maxWidth: constraints.maxWidth,
minHeight: 0.0,
// maxHeight: isScrollControlled
// ? constraints.maxHeight
// : constraints.maxHeight * 9.0 / 16.0,
maxHeight: constraints.maxHeight,
);
const _TextSelectionToolbar({
Key key,
this.handleEmotion,
this.handleCut,
this.handleCopy,
this.handlePaste,
this.handleSelectAll,
}) : super(key: key);
final VoidCallback handleEmotion;
final VoidCallback handleCut;
final VoidCallback handleCopy;
final VoidCallback handlePaste;
final VoidCallback handleSelectAll;
// Inside Build
items.add(FlatButton(child: Text('EMOTION'), onPressed: handleEmotion));
child: _TextSelectionToolbar(
handleEmotion: () => handleEmotion(delegate),
handleCut: canCut(delegate) ? () => handleCut(delegate) : null,
handleCopy: canCopy(delegate) ? () => handleCopy(delegate) : null,
handlePaste: canPaste(delegate) ? () => handlePaste(delegate) : null,
handleSelectAll:
canSelectAll(delegate) ? () => handleSelectAll(delegate) : null,
),
import 'package:thought_provocative_journal/tools/text_input_screen.dart';
// Custom Function
void handleEmotion(TextSelectionDelegate delegate) {
final TextEditingValue value = delegate.textEditingValue;
String selectedText = value.selection.textInside(value.text);
delegate.textEditingValue = TextEditingValue(
text: value.text,
selection: TextSelection.collapsed(offset: value.selection.end),
);
delegate.bringIntoView(delegate.textEditingValue.selection.extent);
delegate.hideToolbar();
// Custom Function which is imported
works(selectedText);
}
This project is a starting point for a Flutter application.
A few resources to get you started if this is your first Flutter project:
For help getting started with Flutter, view our online documentation, which offers tutorials, samples, guidance on mobile development, and a full API reference.