android/ios-adaption feature, markdown, and augment #6
					 4 changed files with 37 additions and 3 deletions
				
			
		| 
						 | 
					@ -23,6 +23,9 @@ class _SonicEmailViewState extends State<SonicEmailView> {
 | 
				
			||||||
  void _scrollToNumber(String spanId) {
 | 
					  void _scrollToNumber(String spanId) {
 | 
				
			||||||
    AugmentClasses.handleJump(spanId);
 | 
					    AugmentClasses.handleJump(spanId);
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					  void _handleViewspecs(String queryViewspecs) {
 | 
				
			||||||
 | 
					    return;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  @override
 | 
					  @override
 | 
				
			||||||
  void initState() {
 | 
					  void initState() {
 | 
				
			||||||
| 
						 | 
					@ -90,7 +93,9 @@ class _SonicEmailViewState extends State<SonicEmailView> {
 | 
				
			||||||
                  children: [
 | 
					                  children: [
 | 
				
			||||||
                    EmailToolbar(
 | 
					                    EmailToolbar(
 | 
				
			||||||
                        onButtonPressed: () => {},
 | 
					                        onButtonPressed: () => {},
 | 
				
			||||||
                        onJumpToSpan: _scrollToNumber),
 | 
					                        onJumpToNumbering: _scrollToNumber,
 | 
				
			||||||
 | 
					                        onViewspecs:  _handleViewspecs
 | 
				
			||||||
 | 
					                    ),
 | 
				
			||||||
                    Row(
 | 
					                    Row(
 | 
				
			||||||
                      // title of email
 | 
					                      // title of email
 | 
				
			||||||
                      children: [
 | 
					                      children: [
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,3 +1,4 @@
 | 
				
			||||||
 | 
					import 'package:crab_ui/augment.dart';
 | 
				
			||||||
import 'package:crab_ui/collapsableEmailsAndroid.dart';
 | 
					import 'package:crab_ui/collapsableEmailsAndroid.dart';
 | 
				
			||||||
import 'package:flutter/material.dart';
 | 
					import 'package:flutter/material.dart';
 | 
				
			||||||
// import 'dart:ui_web' as ui;
 | 
					// import 'dart:ui_web' as ui;
 | 
				
			||||||
| 
						 | 
					@ -33,6 +34,16 @@ class EmailView extends StatefulWidget {
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class _EmailViewState extends State<EmailView> {
 | 
					class _EmailViewState extends State<EmailView> {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  @override
 | 
				
			||||||
 | 
					  void initState() {
 | 
				
			||||||
 | 
					    super.initState();
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  void _scrollToNumber(String spanId) {
 | 
				
			||||||
 | 
					    // AugmentClasses.handleJump(spanId);
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  @override
 | 
					  @override
 | 
				
			||||||
  Widget build(BuildContext context) {
 | 
					  Widget build(BuildContext context) {
 | 
				
			||||||
    return Scaffold(
 | 
					    return Scaffold(
 | 
				
			||||||
| 
						 | 
					@ -43,6 +54,10 @@ class _EmailViewState extends State<EmailView> {
 | 
				
			||||||
        padding: const EdgeInsets.all(8.0),
 | 
					        padding: const EdgeInsets.all(8.0),
 | 
				
			||||||
        child: Column(
 | 
					        child: Column(
 | 
				
			||||||
          children: [
 | 
					          children: [
 | 
				
			||||||
 | 
					            EmailToolbar(
 | 
				
			||||||
 | 
					              onButtonPressed: () => {}, 
 | 
				
			||||||
 | 
					              onJumpToSpan: _scrollToNumber
 | 
				
			||||||
 | 
					            ),
 | 
				
			||||||
            Row(
 | 
					            Row(
 | 
				
			||||||
              children: [
 | 
					              children: [
 | 
				
			||||||
                Expanded(
 | 
					                Expanded(
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,7 +1,6 @@
 | 
				
			||||||
//data structures
 | 
					//data structures
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import 'dart:typed_data';
 | 
					import 'dart:typed_data';
 | 
				
			||||||
import 'package:markdown/markdown.dart' as md;
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
class GetThreadResponse {
 | 
					class GetThreadResponse {
 | 
				
			||||||
  final int id;
 | 
					  final int id;
 | 
				
			||||||
| 
						 | 
					@ -177,7 +176,7 @@ class AugmentTree {
 | 
				
			||||||
        parentIsLettered = false;
 | 
					        parentIsLettered = false;
 | 
				
			||||||
      } else {
 | 
					      } else {
 | 
				
			||||||
        parentIsLettered = prefix.runes.last >= 'a'.runes.first &&
 | 
					        parentIsLettered = prefix.runes.last >= 'a'.runes.first &&
 | 
				
			||||||
                                  prefix.runes.last <= 'z'.runes.first;
 | 
					                            prefix.runes.last <= 'z'.runes.first;
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      if (prefix.isEmpty) {
 | 
					      if (prefix.isEmpty) {
 | 
				
			||||||
| 
						 | 
					@ -197,3 +196,15 @@ class AugmentTree {
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class MarkdownParsed{
 | 
				
			||||||
 | 
					  final String text;
 | 
				
			||||||
 | 
					  MarkdownParsed({required this.text});
 | 
				
			||||||
 | 
					  factory MarkdownParsed.fromJson(Map<String, String> json){
 | 
				
			||||||
 | 
					    return MarkdownParsed(
 | 
				
			||||||
 | 
					      text: json['md'] ?? '',
 | 
				
			||||||
 | 
					    );
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -27,6 +27,9 @@ dependencies:
 | 
				
			||||||
  photo_view: ^0.15.0
 | 
					  photo_view: ^0.15.0
 | 
				
			||||||
  web: ^1.1.1
 | 
					  web: ^1.1.1
 | 
				
			||||||
  flutter_widget_from_html: ^0.16.0
 | 
					  flutter_widget_from_html: ^0.16.0
 | 
				
			||||||
 | 
					  html2md: ^1.3.2
 | 
				
			||||||
 | 
					  markdown_widget: ^2.3.2+8
 | 
				
			||||||
 | 
					  markdown: ^7.3.0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
dev_dependencies:
 | 
					dev_dependencies:
 | 
				
			||||||
  flutter_test:
 | 
					  flutter_test:
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		
		Reference in a new issue