use own icons
This commit is contained in:
Binary file not shown.
+2
-1
@@ -27,6 +27,7 @@ import 'package:weblibre/features/geckoview/domain/repositories/tab.dart';
|
||||
import 'package:weblibre/features/geckoview/features/tabs/data/models/container_data.dart';
|
||||
import 'package:weblibre/features/geckoview/features/tabs/domain/providers/selected_container.dart';
|
||||
import 'package:weblibre/features/geckoview/features/tabs/presentation/widgets/container_chips.dart';
|
||||
import 'package:weblibre/presentation/icons/weblibre_icons.dart';
|
||||
import 'package:weblibre/utils/form_validators.dart';
|
||||
|
||||
class OpenSharedContent extends HookConsumerWidget {
|
||||
@@ -109,7 +110,7 @@ class OpenSharedContent extends HookConsumerWidget {
|
||||
),
|
||||
ListTile(
|
||||
title: const Text('Open Private Tab'),
|
||||
leading: const Icon(MdiIcons.tabUnselected),
|
||||
leading: const Icon(WebLibreIcons.privateTab),
|
||||
onTap: () async {
|
||||
await openTab(true);
|
||||
},
|
||||
|
||||
+3
-2
@@ -52,6 +52,7 @@ import 'package:weblibre/features/user/data/models/general_settings.dart';
|
||||
import 'package:weblibre/features/user/domain/repositories/general_settings.dart';
|
||||
import 'package:weblibre/presentation/hooks/cached_future.dart';
|
||||
import 'package:weblibre/presentation/hooks/menu_controller.dart';
|
||||
import 'package:weblibre/presentation/icons/weblibre_icons.dart';
|
||||
import 'package:weblibre/presentation/widgets/selectable_chips.dart';
|
||||
import 'package:weblibre/presentation/widgets/url_icon.dart';
|
||||
|
||||
@@ -364,7 +365,7 @@ class BrowserTabBar extends HookConsumerWidget {
|
||||
controller.open();
|
||||
}
|
||||
},
|
||||
child: const Icon(MdiIcons.dotsVertical),
|
||||
child: const Icon(WebLibreIcons.tabOptions),
|
||||
);
|
||||
},
|
||||
),
|
||||
@@ -449,7 +450,7 @@ class ContextualToolbar extends HookConsumerWidget {
|
||||
controller.open();
|
||||
}
|
||||
},
|
||||
child: const Icon(MdiIcons.dotsVertical),
|
||||
child: const Icon(WebLibreIcons.tabOptions),
|
||||
);
|
||||
},
|
||||
),
|
||||
|
||||
+2
-1
@@ -22,6 +22,7 @@ import 'package:flutter_material_design_icons/flutter_material_design_icons.dart
|
||||
import 'package:hooks_riverpod/hooks_riverpod.dart';
|
||||
import 'package:weblibre/core/routing/routes.dart';
|
||||
import 'package:weblibre/features/user/domain/repositories/general_settings.dart';
|
||||
import 'package:weblibre/presentation/icons/weblibre_icons.dart';
|
||||
|
||||
class TabCreationMenu extends HookConsumerWidget {
|
||||
final Widget child;
|
||||
@@ -58,7 +59,7 @@ class TabCreationMenu extends HookConsumerWidget {
|
||||
onPressed: () async {
|
||||
await const SearchRoute(tabType: TabType.private).push(context);
|
||||
},
|
||||
leadingIcon: const Icon(MdiIcons.tabUnselected),
|
||||
leadingIcon: const Icon(WebLibreIcons.privateTab),
|
||||
child: const Text('Add Private Tab'),
|
||||
),
|
||||
if (createChildTabsOption)
|
||||
|
||||
@@ -44,6 +44,7 @@ import 'package:weblibre/features/geckoview/features/tabs/domain/providers.dart'
|
||||
import 'package:weblibre/features/geckoview/features/tabs/domain/repositories/container.dart';
|
||||
import 'package:weblibre/features/geckoview/features/tabs/domain/repositories/tab.dart';
|
||||
import 'package:weblibre/presentation/hooks/menu_controller.dart';
|
||||
import 'package:weblibre/presentation/icons/weblibre_icons.dart';
|
||||
import 'package:weblibre/presentation/widgets/website_feed_menu_button.dart';
|
||||
import 'package:weblibre/utils/ui_helper.dart' as ui_helper;
|
||||
|
||||
@@ -237,7 +238,7 @@ class TabMenu extends HookConsumerWidget {
|
||||
},
|
||||
),
|
||||
MenuItemButton(
|
||||
leadingIcon: const Icon(MdiIcons.tabUnselected),
|
||||
leadingIcon: const Icon(WebLibreIcons.privateTab),
|
||||
child: const Text('Private'),
|
||||
onPressed: () async {
|
||||
final tabState = ref.read(tabStateProvider(selectedTabId))!;
|
||||
|
||||
+2
-1
@@ -46,6 +46,7 @@ import 'package:weblibre/features/geckoview/features/tabs/presentation/widgets/c
|
||||
import 'package:weblibre/features/tor/presentation/controllers/start_tor_proxy.dart';
|
||||
import 'package:weblibre/features/user/domain/repositories/general_settings.dart';
|
||||
import 'package:weblibre/presentation/hooks/menu_controller.dart';
|
||||
import 'package:weblibre/presentation/icons/weblibre_icons.dart';
|
||||
import 'package:weblibre/presentation/widgets/speech_to_text_button.dart';
|
||||
import 'package:weblibre/utils/ui_helper.dart' as ui_helper;
|
||||
|
||||
@@ -539,7 +540,7 @@ class TabViewHeader extends HookConsumerWidget {
|
||||
tabsActionMenuController.open();
|
||||
}
|
||||
},
|
||||
icon: const Icon(MdiIcons.dotsVertical),
|
||||
icon: const Icon(WebLibreIcons.tabOptions),
|
||||
),
|
||||
),
|
||||
],
|
||||
|
||||
@@ -43,6 +43,7 @@ import 'package:weblibre/features/geckoview/features/search/presentation/widgets
|
||||
import 'package:weblibre/features/user/domain/repositories/general_settings.dart';
|
||||
import 'package:weblibre/presentation/hooks/on_listenable_change_selector.dart';
|
||||
import 'package:weblibre/presentation/hooks/sampled_value_notifier.dart';
|
||||
import 'package:weblibre/presentation/icons/weblibre_icons.dart';
|
||||
import 'package:weblibre/utils/text_field_line_count.dart';
|
||||
import 'package:weblibre/utils/uri_parser.dart' as uri_parser;
|
||||
|
||||
@@ -280,7 +281,7 @@ class SearchScreen extends HookConsumerWidget {
|
||||
const ButtonSegment(
|
||||
value: TabType.private,
|
||||
label: Text('Private'),
|
||||
icon: Icon(MdiIcons.tabUnselected),
|
||||
icon: Icon(WebLibreIcons.privateTab),
|
||||
),
|
||||
if (createChildTabsOption)
|
||||
const ButtonSegment(
|
||||
|
||||
@@ -29,6 +29,7 @@ import 'package:weblibre/features/settings/presentation/controllers/save_setting
|
||||
import 'package:weblibre/features/settings/presentation/widgets/sections.dart';
|
||||
import 'package:weblibre/features/user/data/models/general_settings.dart';
|
||||
import 'package:weblibre/features/user/domain/repositories/general_settings.dart';
|
||||
import 'package:weblibre/presentation/icons/weblibre_icons.dart';
|
||||
|
||||
class TabsBehaviorSettingsScreen extends StatelessWidget {
|
||||
const TabsBehaviorSettingsScreen({super.key});
|
||||
@@ -136,7 +137,7 @@ class _NewTabDefaultSection extends HookConsumerWidget {
|
||||
ButtonSegment(
|
||||
value: TabType.private,
|
||||
label: Text('Private'),
|
||||
icon: Icon(MdiIcons.tabUnselected),
|
||||
icon: Icon(WebLibreIcons.privateTab),
|
||||
),
|
||||
],
|
||||
selected: {defaultCreateTabType},
|
||||
@@ -202,7 +203,7 @@ class _ExternalLinkHandlingSection extends HookConsumerWidget {
|
||||
ButtonSegment(
|
||||
value: TabIntentOpenSetting.private,
|
||||
label: Text('Private'),
|
||||
icon: Icon(MdiIcons.tabUnselected),
|
||||
icon: Icon(WebLibreIcons.privateTab),
|
||||
),
|
||||
],
|
||||
selected: {tabIntentOpenSetting},
|
||||
|
||||
@@ -0,0 +1,45 @@
|
||||
/*
|
||||
* Copyright (c) 2024-2025 Fabian Freund.
|
||||
*
|
||||
* This file is part of WebLibre
|
||||
* (see https://weblibre.eu).
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Affero General Public License as
|
||||
* published by the Free Software Foundation, either version 3 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Affero General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
import 'package:flutter/widgets.dart';
|
||||
|
||||
enum WebLibreIcons implements IconData {
|
||||
privateTab(0xEA01),
|
||||
tabOptions(0xEA02);
|
||||
|
||||
const WebLibreIcons(this.codePoint);
|
||||
|
||||
@override
|
||||
final int codePoint;
|
||||
|
||||
@override
|
||||
String get fontFamily => 'WebLibre';
|
||||
|
||||
@override
|
||||
List<String>? get fontFamilyFallback => null;
|
||||
|
||||
@override
|
||||
String? get fontPackage => null;
|
||||
|
||||
@override
|
||||
bool get matchTextDirection => false;
|
||||
|
||||
@override
|
||||
String toString() => 'WebLibreIcons.$name';
|
||||
}
|
||||
@@ -119,6 +119,9 @@ flutter:
|
||||
- family: TorIcons
|
||||
fonts:
|
||||
- asset: assets/fonts/tor-icons.ttf
|
||||
- family: WebLibre
|
||||
fonts:
|
||||
- asset: assets/fonts/WebLibre.ttf
|
||||
|
||||
flutter_launcher_icons:
|
||||
android: "launcher_icon"
|
||||
|
||||
Reference in New Issue
Block a user