mirror of
https://github.com/JGeek00/adguard-home-manager.git
synced 2025-04-20 13:59:12 +00:00
Fix desktop and sliver app bar add client
This commit is contained in:
parent
ad6cb92d4b
commit
ce8d38958e
2 changed files with 91 additions and 69 deletions
|
@ -235,71 +235,90 @@ class _ClientScreenState extends State<ClientScreen> {
|
||||||
|
|
||||||
|
|
||||||
if (widget.fullScreen == true) {
|
if (widget.fullScreen == true) {
|
||||||
return Dialog.fullscreen(
|
return Material(
|
||||||
child: Scaffold(
|
child: NestedScrollView(
|
||||||
appBar: AppBar(
|
headerSliverBuilder: (context, innerBoxIsScrolled) => [
|
||||||
leading: IconButton(
|
SliverOverlapAbsorber(
|
||||||
onPressed: () => Navigator.pop(context),
|
handle: NestedScrollView.sliverOverlapAbsorberHandleFor(context),
|
||||||
icon: const Icon(Icons.close)
|
sliver: SliverAppBar.large(
|
||||||
),
|
pinned: true,
|
||||||
title: Text(
|
floating: true,
|
||||||
widget.client != null
|
centerTitle: false,
|
||||||
? AppLocalizations.of(context)!.client
|
forceElevated: innerBoxIsScrolled,
|
||||||
: AppLocalizations.of(context)!.addClient
|
leading: IconButton(
|
||||||
),
|
onPressed: () => Navigator.pop(context),
|
||||||
actions: actions(),
|
icon: const Icon(Icons.close)
|
||||||
),
|
),
|
||||||
|
title: Text(
|
||||||
|
widget.client != null
|
||||||
|
? AppLocalizations.of(context)!.client
|
||||||
|
: AppLocalizations.of(context)!.addClient
|
||||||
|
),
|
||||||
|
actions: actions(),
|
||||||
|
)
|
||||||
|
)
|
||||||
|
],
|
||||||
body: SafeArea(
|
body: SafeArea(
|
||||||
child: ListView(
|
top: false,
|
||||||
controller: _scrollController,
|
bottom: true,
|
||||||
children: [
|
child: Builder(
|
||||||
if (!_nameValid || !_identifiersValid || !_dnsCacheValid) _Errors(
|
builder: (context) => CustomScrollView(
|
||||||
nameValid: _nameValid,
|
slivers: [
|
||||||
identifiersValid: _identifiersValid,
|
SliverOverlapInjector(
|
||||||
dnsCacheValid: _dnsCacheValid
|
handle: NestedScrollView.sliverOverlapAbsorberHandleFor(context),
|
||||||
),
|
),
|
||||||
ClientForm(
|
SliverList.list(
|
||||||
isFullScreen: true,
|
children: [
|
||||||
client: widget.client,
|
if (!_nameValid || !_identifiersValid || !_dnsCacheValid) _Errors(
|
||||||
nameController: nameController,
|
nameValid: _nameValid,
|
||||||
identifiersControllers: identifiersControllers,
|
identifiersValid: _identifiersValid,
|
||||||
selectedTags: selectedTags,
|
dnsCacheValid: _dnsCacheValid
|
||||||
useGlobalSettingsFiltering: useGlobalSettingsFiltering,
|
),
|
||||||
enableFiltering: enableFiltering,
|
ClientForm(
|
||||||
enableParentalControl: enableParentalControl,
|
isFullScreen: true,
|
||||||
enableSafeBrowsing: enableSafeBrowsing,
|
client: widget.client,
|
||||||
enableSafeSearch: enableSafeSearch,
|
nameController: nameController,
|
||||||
safeSearch: safeSearch,
|
identifiersControllers: identifiersControllers,
|
||||||
blockedServices: blockedServices,
|
selectedTags: selectedTags,
|
||||||
updateBlockedServices: (v) => setState(() => blockedServices = v),
|
useGlobalSettingsFiltering: useGlobalSettingsFiltering,
|
||||||
upstreamServers: upstreamServers,
|
enableFiltering: enableFiltering,
|
||||||
updateUpstreamServers: (v) => setState(() => upstreamServers = v),
|
enableParentalControl: enableParentalControl,
|
||||||
defaultSafeSearch: defaultSafeSearch,
|
enableSafeBrowsing: enableSafeBrowsing,
|
||||||
useGlobalSettingsServices: useGlobalSettingsServices,
|
enableSafeSearch: enableSafeSearch,
|
||||||
updateSelectedTags: (v) => setState(() => selectedTags = v),
|
safeSearch: safeSearch,
|
||||||
updateIdentifiersControllers: (v) => setState(() => identifiersControllers = v),
|
blockedServices: blockedServices,
|
||||||
enableDisableGlobalSettingsFiltering: enableDisableGlobalSettingsFiltering,
|
updateBlockedServices: (v) => setState(() => blockedServices = v),
|
||||||
updateEnableFiltering: (v) => setState(() => enableFiltering = v),
|
upstreamServers: upstreamServers,
|
||||||
updateEnableParentalControl: (v) => setState(() => enableParentalControl = v),
|
updateUpstreamServers: (v) => setState(() => upstreamServers = v),
|
||||||
updateEnableSafeBrowsing: (v) => setState(() => enableSafeBrowsing = v),
|
defaultSafeSearch: defaultSafeSearch,
|
||||||
updateEnableSafeSearch: (v) => setState(() => enableSafeSearch = v),
|
useGlobalSettingsServices: useGlobalSettingsServices,
|
||||||
updateSafeSearch: (v) => setState(() => safeSearch = v),
|
updateSelectedTags: (v) => setState(() => selectedTags = v),
|
||||||
updateUseGlobalSettingsServices: (v) => setState(() => useGlobalSettingsServices = v),
|
updateIdentifiersControllers: (v) => setState(() => identifiersControllers = v),
|
||||||
ignoreClientQueryLog: _ignoreClientQueryLog,
|
enableDisableGlobalSettingsFiltering: enableDisableGlobalSettingsFiltering,
|
||||||
ignoreClientStatistics: _ignoreClientStatistics,
|
updateEnableFiltering: (v) => setState(() => enableFiltering = v),
|
||||||
updateIgnoreClientQueryLog: (v) => setState(() => _ignoreClientQueryLog = v),
|
updateEnableParentalControl: (v) => setState(() => enableParentalControl = v),
|
||||||
updateIgnoreClientStatistics: (v) => setState(() => _ignoreClientStatistics = v),
|
updateEnableSafeBrowsing: (v) => setState(() => enableSafeBrowsing = v),
|
||||||
enableDnsCache: _enableDnsCache,
|
updateEnableSafeSearch: (v) => setState(() => enableSafeSearch = v),
|
||||||
updateEnableDnsCache: (v) => setState(() => _enableDnsCache = v),
|
updateSafeSearch: (v) => setState(() => safeSearch = v),
|
||||||
dnsCacheField: _dnsCacheField,
|
updateUseGlobalSettingsServices: (v) => setState(() => useGlobalSettingsServices = v),
|
||||||
dnsCacheError: _dnsCacheError,
|
ignoreClientQueryLog: _ignoreClientQueryLog,
|
||||||
updateDnsCacheError: (v) => setState(() => _dnsCacheError = v),
|
ignoreClientStatistics: _ignoreClientStatistics,
|
||||||
blockedServicesSchedule: _blockedServicesSchedule,
|
updateIgnoreClientQueryLog: (v) => setState(() => _ignoreClientQueryLog = v),
|
||||||
setBlockedServicesSchedule: (v) => setState(() => _blockedServicesSchedule = v),
|
updateIgnoreClientStatistics: (v) => setState(() => _ignoreClientStatistics = v),
|
||||||
),
|
enableDnsCache: _enableDnsCache,
|
||||||
],
|
updateEnableDnsCache: (v) => setState(() => _enableDnsCache = v),
|
||||||
),
|
dnsCacheField: _dnsCacheField,
|
||||||
),
|
dnsCacheError: _dnsCacheError,
|
||||||
|
updateDnsCacheError: (v) => setState(() => _dnsCacheError = v),
|
||||||
|
blockedServicesSchedule: _blockedServicesSchedule,
|
||||||
|
setBlockedServicesSchedule: (v) => setState(() => _blockedServicesSchedule = v),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
)
|
||||||
|
],
|
||||||
|
),
|
||||||
|
)
|
||||||
|
)
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
|
@ -148,11 +148,14 @@ class LogTile extends StatelessWidget {
|
||||||
}
|
}
|
||||||
|
|
||||||
void openAddClient() {
|
void openAddClient() {
|
||||||
openClientFormModal(
|
Future.delayed(
|
||||||
context: context,
|
const Duration(milliseconds: 0),
|
||||||
width: MediaQuery.of(context).size.width,
|
() => openClientFormModal(
|
||||||
onConfirm: confirmAddClient,
|
context: context,
|
||||||
initialData: ClientInitialData(name: "Client ${log.client}", ip: log.client)
|
width: MediaQuery.of(context).size.width,
|
||||||
|
onConfirm: confirmAddClient,
|
||||||
|
initialData: ClientInitialData(name: "Client ${log.client}", ip: log.client)
|
||||||
|
)
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue