Compare commits

..

2 commits

Author SHA1 Message Date
844015bf07 Updated pages 2026-02-25 19:21:24 +08:00
1c825237f4 Responsive widget 2026-02-25 19:21:11 +08:00
3 changed files with 16 additions and 15 deletions

View file

@ -1,11 +1,9 @@
import 'dart:developer';
import 'package:flutter/material.dart';
import 'package:gap/gap.dart';
import 'package:ocbo_esign_mobile/blocs/user/functions/bloc_getuser.dart';
import 'package:ocbo_esign_mobile/functions/get_api.dart';
import 'package:ocbo_esign_mobile/widgets/box_widget.dart';
import 'package:ocbo_esign_mobile/widgets/image_widget.dart';
import 'package:ocbo_esign_mobile/widgets/text_widget.dart';
class ApprovalPage extends StatefulWidget {

View file

@ -1,5 +1,3 @@
import 'dart:developer';
import 'package:flutter/material.dart';
import 'package:flutter_dotenv/flutter_dotenv.dart';
import 'package:gap/gap.dart';
@ -137,15 +135,18 @@ class _LoginPageState extends State<LoginPage> {
InputWidget(controller: _passwordController, password: true),
const Gap(24),
ValueListenableBuilder<String>(
valueListenable: passwordNotifier,
builder: (context, password, child) {
return ButtonWidget(
text: password.isNotEmpty ? 'Login' : 'Required password',
onPressed: password.isNotEmpty ? _login : _ignoreButton,
disabled: password.isEmpty,
);
},
Center(
child: ValueListenableBuilder<String>(
valueListenable: passwordNotifier,
builder: (context, password, child) {
return ButtonWidget(
width: MediaQuery.of(context).size.width,
text: password.isNotEmpty ? 'Login' : 'Required password',
onPressed: password.isNotEmpty ? _login : _ignoreButton,
disabled: password.isEmpty,
);
},
),
),
// ValueListenableBuilder<String>(
// valueListenable: passwordNotifier,

View file

@ -10,14 +10,16 @@ class LoginBoxWidget extends StatelessWidget {
@override
Widget build(BuildContext context) {
final responsiveWidth = (MediaQuery.of(context).size.width - 30).clamp(100.0, 400.0);
return Container(
padding: EdgeInsets.all(16),
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(8),
color: Color.fromRGBO(16, 22, 28, 0.584),
color: const Color.fromRGBO(16, 22, 28, 0.584),
border: Border.all(color: const Color.fromRGBO(41, 60, 78, 0.914)),
),
width: MediaQuery.of(context).size.width - 30,
width: responsiveWidth,
// height: MediaQuery.of(context).size.height / 2.2,
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,