diff --git a/lib/collapsableEmailsWeb.dart b/lib/collapsableEmailsWeb.dart index 4dca67b..b070d6a 100644 --- a/lib/collapsableEmailsWeb.dart +++ b/lib/collapsableEmailsWeb.dart @@ -1,9 +1,6 @@ -import 'dart:collection'; import 'dart:js_interop'; -import 'dart:js_interop_unsafe'; import 'package:web/web.dart' as web; import 'package:flutter/material.dart'; -import 'dart:ui_web' as ui; import 'api_service.dart'; import 'structs.dart'; import 'package:html2md/html2md.dart' as html2md; @@ -117,13 +114,6 @@ class _CollapsableEmailsState extends State { newNode.parent = tree; tree.children.add(newNode); } - // } else{ // so the node should go high - // _add2Tree(tree.children.last, node2add); - // } - - //maybe? - // } else { - // } } else if ((hirarchyDict[node2add.tag] ?? -1) > // go down e.g. new node is h3 and old is h2 or something (hirarchyDict[tree.children.last.ogTag] ?? -1)) { @@ -135,8 +125,6 @@ class _CollapsableEmailsState extends State { return; } - // print("> ${node2add.tag}"); - _add2Tree(tree.children.last, node2add); } else if ((hirarchyDict[node2add.tag] ?? -1) == (hirarchyDict[tree.children.last.ogTag] ?? -1)) { @@ -194,32 +182,6 @@ class _CollapsableEmailsState extends State { this.sentinel = [h1List, h2List, h3List, h4List, h5List, h6List, pList]; sentinel.removeWhere((hList) => hList.isEmpty); - - // print('algorithm adding: '); - // print("first layer: ${zoomTreeRoot.children}"); - // print("first node: ${zoomTreeRoot.children[0].data}"); //good - // print("second layer: ${zoomTreeRoot.children.last.children}"); //good - // print( - // "first node: ${zoomTreeRoot.children.last.children.first.data}"); //good - // for (int n = 1; n < zoomTreeRoot.children.last.children.length - 1; n++) { - // //good - // print(zoomTreeRoot.children.last.children[n].data); - // } - // print("last node: ${zoomTreeRoot.children.last.children.last.data}"); //good - // print("third layer"); - // for (int thirdLayer = 0; - // thirdLayer < zoomTreeRoot.children.last.children.length; - // thirdLayer++) { - // print(zoomTreeRoot.children.last.children[thirdLayer].children); - // } - // print("third layer contents first"); //not sure - - // print(zoomTreeRoot.children.last.children[5].children[0].data); //good - // for (int contentsOf4 = 1; - // contentsOf4 < zoomTreeRoot.children.last.children[5].children.length; - // contentsOf4++) { - // print(zoomTreeRoot.children.last.children[5].children[contentsOf4].data); - // } currentZoomNode = zoomTreeRoot; if (!mounted) return; setState(() { @@ -253,50 +215,16 @@ class _CollapsableEmailsState extends State { } else { print("This child has no further children."); } - - // if (currentZoomNode.children.isNotEmpty) { - // setState(() { - // zoomIn = true; - // zoomOut = true; - // currentZoomNode = currentZoomNode.children[index]; - // if (currentZoomNode.children[index].children.isEmpty) { - // print('disable in'); - // setState(() { - // zoomIn = false; - // }); - // } - // }); - // } else { - // print("disable zoom down"); - // setState(() { - // zoomIn = false; - // }); - // } } void _goToParent() async { - if (currentZoomNode.parent != null) { - setState(() { - currentZoomNode = currentZoomNode.parent!; - }); - } else { - print("Already at root."); - } - - // print("parent ${currentZoomNode.parent}"); - // print("parent ${currentZoomNode.parent!.parent}"); - // if (currentZoomNode.parent != null) { - // setState(() { - // currentZoomNode = currentZoomNode.parent!; - // if (currentZoomNode.parent == null) { - // setState(() { - // zoomOut = false; - // }); - // } - // }); - // } else if (currentZoomNode.parent == null || - // currentZoomNode.parent!.parent == null) { - // print("disable zoom up"); + if (currentZoomNode.parent != null) { + setState(() { + currentZoomNode = currentZoomNode.parent!; + }); + } else { + print("Already at root."); + } } void _serializableData(String threadID) async { @@ -449,16 +377,19 @@ class _CollapsableEmailsState extends State { }, ), if (isExpanded) - SizedBox( - height: 800, - child: - _buildForZooms(key: ValueKey(currentZoomNode))), + ConstrainedBox( + constraints: BoxConstraints( + minHeight: 100, + maxHeight: MediaQuery.of(context).size.height * 0.6, + ), + child: _buildForZooms(key: ValueKey(currentZoomNode)), + ), Divider(), ], ); }, ), - ) + ), ]) : const Center(child: CircularProgressIndicator()); }