HyM attachments resolve: #2 #3

Merged
Juan merged 15 commits from login into main 2025-04-24 16:52:58 +00:00
Showing only changes of commit 9e27401b07 - Show all commits

View File

@ -1,8 +1,10 @@
import 'package:crab_ui/api_service.dart'; import 'package:crab_ui/api_service.dart';
import 'package:crab_ui/structs.dart'; import 'package:crab_ui/structs.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:pointer_interceptor/pointer_interceptor.dart';
import 'dart:html' as html; import 'dart:html' as html;
import 'dart:js' as js; import 'dart:js' as js;
import 'package:pointer_interceptor/pointer_interceptor.dart';
class EmailToolbar extends StatefulWidget { class EmailToolbar extends StatefulWidget {
final Function(String) onJumpToSpan; final Function(String) onJumpToSpan;
@ -228,42 +230,37 @@ class AugmentClasses {
builder: (context) => Stack( builder: (context) => Stack(
children: [ children: [
// Dimmed background // Dimmed background
GestureDetector( Container(
onTap: () => _overlayEntry?.remove(), color: Colors.black54,
child: Container( width: MediaQuery.of(context).size.width,
color: Colors.black54, height: MediaQuery.of(context).size.height,
width: MediaQuery.of(context).size.width,
height: MediaQuery.of(context).size.height,
),
), ),
// Focused content window // Focused content window
Center( PointerInterceptor(
child: Positioned( child: Center(
left: offset.dx + 500, child: Material(
top: offset.dy + renderBox.size.height + 100, elevation: 8,
child: Material( borderRadius: BorderRadius.circular(12),
elevation: 8, child: ConstrainedBox(
borderRadius: BorderRadius.circular(12), constraints: const BoxConstraints(
child: ConstrainedBox( maxWidth: 400,
constraints: const BoxConstraints( maxHeight: 500,
maxWidth: 400, ),
maxHeight: 500, child: Column(
), children: [
child: Column( _buildHeader(context),
children: [ const Divider(height: 1),
_buildHeader(), Expanded(
const Divider(height: 1), child: ListView(
Expanded( children: _buildMenuItem(),
child: ListView( ),
children: _buildMenuItem(),
), ),
), ],
], ),
), ),
), ),
), ),
), ),
)
], ],
), ),
); );
@ -273,17 +270,25 @@ class AugmentClasses {
} }
// Add missing widget builder methods // Add missing widget builder methods
static Widget _buildHeader() { static Widget _buildHeader(BuildContext context) {
return const Padding( return Padding(
padding: EdgeInsets.all(16.0), padding: EdgeInsets.all(16.0),
child: Text( child:
'Thread Attachments', Row(mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [
style: TextStyle( Text(
fontSize: 20, 'Thread Attachments',
fontWeight: FontWeight.bold, style: TextStyle(
), fontSize: 20,
), fontWeight: FontWeight.bold,
); ),
),
CloseButton(
onPressed: () {
_overlayEntry?.remove();
},
),
]
));
} }
static List<Widget> _buildMenuItem() { static List<Widget> _buildMenuItem() {
@ -293,7 +298,9 @@ class AugmentClasses {
leading: Icon(Icons.file_present), leading: Icon(Icons.file_present),
title: Text(file.name.toString()), title: Text(file.name.toString()),
onTap: () { onTap: () {
_overlayEntry?.remove(); print("rick rolled");
html.window
.open("https://www.youtube.com/watch?v=xvFZjo5PgG0", "testing");
})); }));
} }
return listOfFiles; return listOfFiles;