diff --git a/fastlane/metadata/android/en-US/changelogs/69.txt b/fastlane/metadata/android/en-US/changelogs/69.txt
new file mode 100644
index 0000000000000000000000000000000000000000..c20ed39173f1690cb6181457fe5d4c6cc0a061ab
--- /dev/null
+++ b/fastlane/metadata/android/en-US/changelogs/69.txt
@@ -0,0 +1 @@
+Use ActivityParameters widgets from flutter_custom_toolbox.
diff --git a/fastlane/metadata/android/fr-FR/changelogs/69.txt b/fastlane/metadata/android/fr-FR/changelogs/69.txt
new file mode 100644
index 0000000000000000000000000000000000000000..f732ebd3738d66fdff72e28b0cf0bb4b0684e030
--- /dev/null
+++ b/fastlane/metadata/android/fr-FR/changelogs/69.txt
@@ -0,0 +1 @@
+Utilisation des widgets ActivityParameters de flutter_custom_toolbox.
diff --git a/lib/common/config/activity_page.dart b/lib/common/config/activity_page.dart
index 79141ebc05312d6e2087f208daaf5bc66954dbe8..7af76c4f550a132b7fa9e364d4b2f7fa2d0c5fe7 100644
--- a/lib/common/config/activity_page.dart
+++ b/lib/common/config/activity_page.dart
@@ -1,19 +1,22 @@
 import 'package:flutter/material.dart';
+import 'package:flutter_custom_toolbox/flutter_toolbox.dart';
 import 'package:ionicons/ionicons.dart';
 
 import 'package:scrobbles/common/ui/pages/discoveries.dart';
 import 'package:scrobbles/common/ui/pages/home.dart';
 import 'package:scrobbles/common/ui/pages/statistics.dart';
+import 'package:scrobbles/cubit/activity/activity_cubit.dart';
+import 'package:scrobbles/models/activity/activity.dart';
 
 class ActivityPageItem {
   final String code;
   final Icon icon;
-  final Widget page;
+  final Widget Function({required Activity currentActivity})? builder;
 
   const ActivityPageItem({
     required this.code,
     required this.icon,
-    required this.page,
+    required this.builder,
   });
 }
 
@@ -21,24 +24,30 @@ class ActivityPage {
   static const bool displayBottomNavBar = false;
 
   static const indexHome = 0;
-  static const pageHome = ActivityPageItem(
+  static final ActivityPageItem pageHome = ActivityPageItem(
     code: 'page_home',
     icon: Icon(Ionicons.home_outline),
-    page: PageHome(),
+    builder: ({required Activity currentActivity}) {
+      return PageHome();
+    },
   );
 
   static const indexDiscoveries = 1;
-  static const pageDiscoveries = ActivityPageItem(
+  static final ActivityPageItem pageDiscoveries = ActivityPageItem(
     code: 'page_discoveries',
     icon: Icon(Ionicons.star_outline),
-    page: PageDiscoveries(),
+    builder: ({required Activity currentActivity}) {
+      return PageDiscoveries();
+    },
   );
 
   static const indexStatistics = 2;
-  static const pageStatistics = ActivityPageItem(
+  static final ActivityPageItem pageStatistics = ActivityPageItem(
     code: 'page_statistics',
     icon: Icon(Ionicons.bar_chart_outline),
-    page: PageStatistics(),
+    builder: ({required Activity currentActivity}) {
+      return PageStatistics();
+    },
   );
 
   static Map<int, ActivityPageItem> items = {
@@ -54,6 +63,16 @@ class ActivityPage {
   }
 
   static Widget getWidget(int pageIndex) {
-    return items[pageIndex]?.page ?? pageHome.page;
+    return BlocBuilder<ActivityCubit, ActivityState>(
+      builder: (BuildContext context, ActivityState activityState) {
+        final Activity currentActivity = activityState.currentActivity;
+
+        if (items.keys.contains(pageIndex)) {
+          return items[pageIndex]?.builder!(currentActivity: currentActivity) ?? Text('oups');
+        } else {
+          return getWidget(defaultPageIndex);
+        }
+      },
+    );
   }
 }
diff --git a/lib/common/ui/settings/settings_form.dart b/lib/common/ui/settings/settings_form.dart
index 40dca8d17c389784e7456499bd781897544e6501..83acf816003928609c51c688a29168c06c135b88 100644
--- a/lib/common/ui/settings/settings_form.dart
+++ b/lib/common/ui/settings/settings_form.dart
@@ -1,8 +1,7 @@
 import 'package:flutter/material.dart';
 import 'package:flutter_custom_toolbox/flutter_toolbox.dart';
 
-import 'package:scrobbles/config/default_global_settings.dart';
-import 'package:scrobbles/cubit/settings/settings_global_cubit.dart';
+import 'package:scrobbles/config/application_config.dart';
 
 class SettingsForm extends StatefulWidget {
   const SettingsForm({super.key});
@@ -12,84 +11,100 @@ class SettingsForm extends StatefulWidget {
 }
 
 class _SettingsFormState extends State<SettingsForm> {
-  final usernameController = TextEditingController();
-  final securityTokenController = TextEditingController();
+  String discoveriesDaysCount = ApplicationConfig.config
+      .getFromCode(ApplicationConfig.parameterCodeDiscoveriesDaysCount)
+      .defaultValue;
+  String distributionDaysCount = ApplicationConfig.config
+      .getFromCode(ApplicationConfig.parameterCodeDistributionDaysCount)
+      .defaultValue;
+  String statisticsRecentDaysCount = ApplicationConfig.config
+      .getFromCode(ApplicationConfig.parameterCodeStatisticsRecentDaysCount)
+      .defaultValue;
+  String timelineDaysCount = ApplicationConfig.config
+      .getFromCode(ApplicationConfig.parameterCodeTimelineDaysCount)
+      .defaultValue;
+  String topArtistsDaysCount = ApplicationConfig.config
+      .getFromCode(ApplicationConfig.parameterCodeTopArtistsDaysCount)
+      .defaultValue;
+  String newArtistsCount = ApplicationConfig.config
+      .getFromCode(ApplicationConfig.parameterCodeNewArtistsCount)
+      .defaultValue;
+  String newTracksCount = ApplicationConfig.config
+      .getFromCode(ApplicationConfig.parameterCodeNewTracksCount)
+      .defaultValue;
 
-  int discoveriesDaysCount = DefaultGlobalSettings.defaultDiscoveriesDaysCount;
-  int distributionDaysCount = DefaultGlobalSettings.defaultDistributionDaysCount;
-  int statisticsRecentDaysCount = DefaultGlobalSettings.defaultStatisticsRecentDaysCount;
-  int timelineDaysCount = DefaultGlobalSettings.defaultTimelineDaysCount;
-  int topArtistsDaysCount = DefaultGlobalSettings.defaultTopArtistsDaysCount;
-  int newArtistsCount = DefaultGlobalSettings.defaultNewArtistsCount;
-  int newTracksCount = DefaultGlobalSettings.defaultNewTracksCount;
-
-  List<bool> _selectedDiscoveriesDaysCount = [];
-  List<bool> _selectedDistributionDaysCount = [];
-  List<bool> _selectedStatisticsRecentDaysCount = [];
-  List<bool> _selectedTimelineDaysCount = [];
-  List<bool> _selectedTopArtistsDaysCount = [];
-  List<bool> _selectedNewArtistsCount = [];
-  List<bool> _selectedNewTracksCount = [];
+  final List<bool> _selectedDiscoveriesDaysCount = [];
+  final List<bool> _selectedDistributionDaysCount = [];
+  final List<bool> _selectedStatisticsRecentDaysCount = [];
+  final List<bool> _selectedTimelineDaysCount = [];
+  final List<bool> _selectedTopArtistsDaysCount = [];
+  final List<bool> _selectedNewArtistsCount = [];
+  final List<bool> _selectedNewTracksCount = [];
 
   @override
   void didChangeDependencies() {
-    GlobalSettingsCubit settings = BlocProvider.of<GlobalSettingsCubit>(context);
+    ActivitySettings settings = BlocProvider.of<ActivitySettingsCubit>(context).state.settings;
 
-    usernameController.text = settings.getUsername();
-    securityTokenController.text = settings.getSecurityToken();
+    discoveriesDaysCount = settings.get(ApplicationConfig.parameterCodeDiscoveriesDaysCount);
+    distributionDaysCount = settings.get(ApplicationConfig.parameterCodeDistributionDaysCount);
+    statisticsRecentDaysCount =
+        settings.get(ApplicationConfig.parameterCodeStatisticsRecentDaysCount);
+    timelineDaysCount = settings.get(ApplicationConfig.parameterCodeTimelineDaysCount);
+    topArtistsDaysCount = settings.get(ApplicationConfig.parameterCodeTopArtistsDaysCount);
+    newArtistsCount = settings.get(ApplicationConfig.parameterCodeNewArtistsCount);
+    newTracksCount = settings.get(ApplicationConfig.parameterCodeNewTracksCount);
 
-    discoveriesDaysCount = settings.getDiscoveriesDaysCount();
-    distributionDaysCount = settings.getDistributionDaysCount();
-    statisticsRecentDaysCount = settings.getStatisticsRecentDaysCount();
-    timelineDaysCount = settings.getTimelineDaysCount();
-    topArtistsDaysCount = settings.getTopArtistsDaysCount();
-    newArtistsCount = settings.getNewArtistsCount();
-    newTracksCount = settings.getNewTracksCount();
+    _selectedDiscoveriesDaysCount.clear();
+    for (var parameterItemValue in ApplicationConfig.allowedDaysCountValues) {
+      _selectedDiscoveriesDaysCount.add(parameterItemValue.value == discoveriesDaysCount);
+    }
 
-    _selectedDiscoveriesDaysCount = DefaultGlobalSettings.allowedDaysCountValues
-        .map((e) => (e == discoveriesDaysCount))
-        .toList();
-    _selectedDistributionDaysCount = DefaultGlobalSettings.allowedDaysCountValues
-        .map((e) => (e == distributionDaysCount))
-        .toList();
-    _selectedStatisticsRecentDaysCount = DefaultGlobalSettings.allowedDaysCountValues
-        .map((e) => (e == statisticsRecentDaysCount))
-        .toList();
-    _selectedTimelineDaysCount = DefaultGlobalSettings.allowedDaysCountValues
-        .map((e) => (e == timelineDaysCount))
-        .toList();
-    _selectedTopArtistsDaysCount = DefaultGlobalSettings.allowedDaysCountValues
-        .map((e) => (e == topArtistsDaysCount))
-        .toList();
-    _selectedNewArtistsCount =
-        DefaultGlobalSettings.allowedCountValues.map((e) => (e == newArtistsCount)).toList();
-    _selectedNewTracksCount =
-        DefaultGlobalSettings.allowedCountValues.map((e) => (e == newTracksCount)).toList();
+    _selectedDistributionDaysCount.clear();
+    for (var parameterItemValue in ApplicationConfig.allowedDaysCountValues) {
+      _selectedDistributionDaysCount.add(parameterItemValue.value == distributionDaysCount);
+    }
 
-    super.didChangeDependencies();
-  }
+    _selectedStatisticsRecentDaysCount.clear();
+    for (var parameterItemValue in ApplicationConfig.allowedDaysCountValues) {
+      _selectedStatisticsRecentDaysCount
+          .add(parameterItemValue.value == statisticsRecentDaysCount);
+    }
 
-  @override
-  void dispose() {
-    usernameController.dispose();
-    securityTokenController.dispose();
-    super.dispose();
+    _selectedTimelineDaysCount.clear();
+    for (var parameterItemValue in ApplicationConfig.allowedDaysCountValues) {
+      _selectedTimelineDaysCount.add(parameterItemValue.value == timelineDaysCount);
+    }
+
+    _selectedTopArtistsDaysCount.clear();
+    for (var parameterItemValue in ApplicationConfig.allowedDaysCountValues) {
+      _selectedTopArtistsDaysCount.add(parameterItemValue.value == topArtistsDaysCount);
+    }
+
+    _selectedNewArtistsCount.clear();
+    for (var parameterItemValue in ApplicationConfig.allowedCountValues) {
+      _selectedNewArtistsCount.add(parameterItemValue.value == newArtistsCount);
+    }
+
+    _selectedNewTracksCount.clear();
+    for (var parameterItemValue in ApplicationConfig.allowedCountValues) {
+      _selectedNewTracksCount.add(parameterItemValue.value == newTracksCount);
+    }
+
+    super.didChangeDependencies();
   }
 
   @override
   Widget build(BuildContext context) {
     void saveSettings() {
-      BlocProvider.of<GlobalSettingsCubit>(context).setValues(
-        username: usernameController.text,
-        securityToken: securityTokenController.text,
-        discoveriesDaysCount: discoveriesDaysCount,
-        distributionDaysCount: distributionDaysCount,
-        statisticsRecentDaysCount: statisticsRecentDaysCount,
-        timelineDaysCount: timelineDaysCount,
-        topArtistsDaysCount: topArtistsDaysCount,
-        newArtistsCount: newArtistsCount,
-        newTracksCount: newTracksCount,
-      );
+      BlocProvider.of<ActivitySettingsCubit>(context).setValues(values: {
+        ApplicationConfig.parameterCodeDiscoveriesDaysCount: discoveriesDaysCount,
+        ApplicationConfig.parameterCodeDistributionDaysCount: distributionDaysCount,
+        ApplicationConfig.parameterCodeStatisticsRecentDaysCount: statisticsRecentDaysCount,
+        ApplicationConfig.parameterCodeTimelineDaysCount: timelineDaysCount,
+        ApplicationConfig.parameterCodeTopArtistsDaysCount: topArtistsDaysCount,
+        ApplicationConfig.parameterCodeNewArtistsCount: newArtistsCount,
+        ApplicationConfig.parameterCodeNewTracksCount: newTracksCount,
+      });
     }
 
     return Column(
@@ -128,30 +143,6 @@ class _SettingsFormState extends State<SettingsForm> {
 
         const SizedBox(height: 16),
 
-        AppTitle(text: tr('settings_title_global')),
-
-        // Username
-        const Text('settings_label_username').tr(),
-        TextFormField(
-          controller: usernameController,
-          decoration: InputDecoration(
-            border: const UnderlineInputBorder(),
-            suffixIcon: ElevatedButton(
-              style: ElevatedButton.styleFrom(
-                shape: RoundedRectangleBorder(
-                  borderRadius: BorderRadius.circular(6.0),
-                ),
-              ),
-              child: const Icon(UniconsLine.save),
-              onPressed: () {
-                saveSettings();
-              },
-            ),
-          ),
-        ),
-
-        const SizedBox(height: 8),
-
         AppTitle(text: tr('settings_title_days_count')),
 
         // Statistics (recent)
@@ -164,7 +155,7 @@ class _SettingsFormState extends State<SettingsForm> {
               onPressed: (int index) {
                 setState(() {
                   statisticsRecentDaysCount =
-                      DefaultGlobalSettings.allowedDaysCountValues[index];
+                      ApplicationConfig.allowedDaysCountValues[index].value;
                   for (int i = 0; i < _selectedStatisticsRecentDaysCount.length; i++) {
                     _selectedStatisticsRecentDaysCount[i] = i == index;
                   }
@@ -174,8 +165,9 @@ class _SettingsFormState extends State<SettingsForm> {
               borderRadius: const BorderRadius.all(Radius.circular(8)),
               constraints: const BoxConstraints(minHeight: 30.0, minWidth: 30.0),
               isSelected: _selectedStatisticsRecentDaysCount,
-              children: DefaultGlobalSettings.allowedDaysCountValues
-                  .map((e) => Text(e.toString()))
+              children: ApplicationConfig.allowedDaysCountValues
+                  .map((ApplicationSettingsParameterItemValue parameterItemValue) =>
+                      Text(parameterItemValue.toString()))
                   .toList(),
             ),
           ],
@@ -190,7 +182,7 @@ class _SettingsFormState extends State<SettingsForm> {
             ToggleButtons(
               onPressed: (int index) {
                 setState(() {
-                  timelineDaysCount = DefaultGlobalSettings.allowedDaysCountValues[index];
+                  timelineDaysCount = ApplicationConfig.allowedDaysCountValues[index].value;
                   for (int i = 0; i < _selectedTimelineDaysCount.length; i++) {
                     _selectedTimelineDaysCount[i] = i == index;
                   }
@@ -200,8 +192,9 @@ class _SettingsFormState extends State<SettingsForm> {
               borderRadius: const BorderRadius.all(Radius.circular(8)),
               constraints: const BoxConstraints(minHeight: 30.0, minWidth: 30.0),
               isSelected: _selectedTimelineDaysCount,
-              children: DefaultGlobalSettings.allowedDaysCountValues
-                  .map((e) => Text(e.toString()))
+              children: ApplicationConfig.allowedDaysCountValues
+                  .map((ApplicationSettingsParameterItemValue parameterItemValue) =>
+                      Text(parameterItemValue.toString()))
                   .toList(),
             ),
           ],
@@ -216,7 +209,7 @@ class _SettingsFormState extends State<SettingsForm> {
             ToggleButtons(
               onPressed: (int index) {
                 setState(() {
-                  topArtistsDaysCount = DefaultGlobalSettings.allowedDaysCountValues[index];
+                  topArtistsDaysCount = ApplicationConfig.allowedDaysCountValues[index].value;
                   for (int i = 0; i < _selectedTopArtistsDaysCount.length; i++) {
                     _selectedTopArtistsDaysCount[i] = i == index;
                   }
@@ -226,8 +219,9 @@ class _SettingsFormState extends State<SettingsForm> {
               borderRadius: const BorderRadius.all(Radius.circular(8)),
               constraints: const BoxConstraints(minHeight: 30.0, minWidth: 30.0),
               isSelected: _selectedTopArtistsDaysCount,
-              children: DefaultGlobalSettings.allowedDaysCountValues
-                  .map((e) => Text(e.toString()))
+              children: ApplicationConfig.allowedDaysCountValues
+                  .map((ApplicationSettingsParameterItemValue parameterItemValue) =>
+                      Text(parameterItemValue.toString()))
                   .toList(),
             ),
           ],
@@ -242,7 +236,7 @@ class _SettingsFormState extends State<SettingsForm> {
             ToggleButtons(
               onPressed: (int index) {
                 setState(() {
-                  discoveriesDaysCount = DefaultGlobalSettings.allowedDaysCountValues[index];
+                  discoveriesDaysCount = ApplicationConfig.allowedDaysCountValues[index].value;
                   for (int i = 0; i < _selectedDiscoveriesDaysCount.length; i++) {
                     _selectedDiscoveriesDaysCount[i] = i == index;
                   }
@@ -252,8 +246,9 @@ class _SettingsFormState extends State<SettingsForm> {
               borderRadius: const BorderRadius.all(Radius.circular(8)),
               constraints: const BoxConstraints(minHeight: 30.0, minWidth: 30.0),
               isSelected: _selectedDiscoveriesDaysCount,
-              children: DefaultGlobalSettings.allowedDaysCountValues
-                  .map((e) => Text(e.toString()))
+              children: ApplicationConfig.allowedDaysCountValues
+                  .map((ApplicationSettingsParameterItemValue parameterItemValue) =>
+                      Text(parameterItemValue.toString()))
                   .toList(),
             ),
           ],
@@ -268,7 +263,8 @@ class _SettingsFormState extends State<SettingsForm> {
             ToggleButtons(
               onPressed: (int index) {
                 setState(() {
-                  distributionDaysCount = DefaultGlobalSettings.allowedDaysCountValues[index];
+                  distributionDaysCount =
+                      ApplicationConfig.allowedDaysCountValues[index].value;
                   for (int i = 0; i < _selectedDistributionDaysCount.length; i++) {
                     _selectedDistributionDaysCount[i] = i == index;
                   }
@@ -278,8 +274,9 @@ class _SettingsFormState extends State<SettingsForm> {
               borderRadius: const BorderRadius.all(Radius.circular(8)),
               constraints: const BoxConstraints(minHeight: 30.0, minWidth: 30.0),
               isSelected: _selectedDistributionDaysCount,
-              children: DefaultGlobalSettings.allowedDaysCountValues
-                  .map((e) => Text(e.toString()))
+              children: ApplicationConfig.allowedDaysCountValues
+                  .map((ApplicationSettingsParameterItemValue parameterItemValue) =>
+                      Text(parameterItemValue.toString()))
                   .toList(),
             ),
           ],
@@ -297,7 +294,7 @@ class _SettingsFormState extends State<SettingsForm> {
             ToggleButtons(
               onPressed: (int index) {
                 setState(() {
-                  newArtistsCount = DefaultGlobalSettings.allowedCountValues[index];
+                  newArtistsCount = ApplicationConfig.allowedCountValues[index].value;
                   for (int i = 0; i < _selectedNewArtistsCount.length; i++) {
                     _selectedNewArtistsCount[i] = i == index;
                   }
@@ -307,8 +304,9 @@ class _SettingsFormState extends State<SettingsForm> {
               borderRadius: const BorderRadius.all(Radius.circular(8)),
               constraints: const BoxConstraints(minHeight: 30.0, minWidth: 30.0),
               isSelected: _selectedNewArtistsCount,
-              children: DefaultGlobalSettings.allowedCountValues
-                  .map((e) => Text(e.toString()))
+              children: ApplicationConfig.allowedCountValues
+                  .map((ApplicationSettingsParameterItemValue parameterItemValue) =>
+                      Text(parameterItemValue.toString()))
                   .toList(),
             ),
           ],
@@ -323,7 +321,7 @@ class _SettingsFormState extends State<SettingsForm> {
             ToggleButtons(
               onPressed: (int index) {
                 setState(() {
-                  newTracksCount = DefaultGlobalSettings.allowedCountValues[index];
+                  newTracksCount = ApplicationConfig.allowedCountValues[index].value;
                   for (int i = 0; i < _selectedNewTracksCount.length; i++) {
                     _selectedNewTracksCount[i] = i == index;
                   }
@@ -333,26 +331,13 @@ class _SettingsFormState extends State<SettingsForm> {
               borderRadius: const BorderRadius.all(Radius.circular(8)),
               constraints: const BoxConstraints(minHeight: 30.0, minWidth: 30.0),
               isSelected: _selectedNewTracksCount,
-              children: DefaultGlobalSettings.allowedCountValues
-                  .map((e) => Text(e.toString()))
+              children: ApplicationConfig.allowedCountValues
+                  .map((ApplicationSettingsParameterItemValue parameterItemValue) =>
+                      Text(parameterItemValue.toString()))
                   .toList(),
             ),
           ],
         ),
-
-        // Save
-        // ElevatedButton(
-        //   child: Row(
-        //     mainAxisAlignment: MainAxisAlignment.center,
-        //     crossAxisAlignment: CrossAxisAlignment.center,
-        //     children: [
-        //       Icon(UniconsLine.save),
-        //       SizedBox(width: 8),
-        //       Text('settings_button_save').tr(),
-        //     ],
-        //   ),
-        //   onPressed: () => saveSettings(),
-        // ),
       ],
     );
   }
diff --git a/lib/config/application_config.dart b/lib/config/application_config.dart
index 68335d6afcdc1d5a84936100ea1acae81c05619d..f1f6704d1f41c526f3146fc5de51f3ad86a92045 100644
--- a/lib/config/application_config.dart
+++ b/lib/config/application_config.dart
@@ -1,3 +1,104 @@
+import 'package:flutter/material.dart';
+import 'package:flutter_custom_toolbox/flutter_toolbox.dart';
+
+import 'package:scrobbles/common/cubit/nav/nav_cubit_pages.dart';
+
+import 'package:scrobbles/cubit/activity/activity_cubit.dart';
+
 class ApplicationConfig {
-  static const String appTitle = 'Scrobbles';
+  static const String parameterCodeDistributionDaysCount = 'distribution-days-count';
+  static const String parameterCodeDiscoveriesDaysCount = 'discoveries-days-count';
+  static const String parameterCodeNewArtistsCount = 'new-artists-count';
+  static const String parameterCodeNewTracksCount = 'new-tracks-count';
+  static const String parameterCodeTimelineDaysCount = 'timeline-days-count';
+  static const String parameterCodeTopArtistsDaysCount = 'top-artists-days-count';
+  static const String parameterCodeStatisticsRecentDaysCount = 'statistics-recent-days-count';
+
+  static const List<ApplicationSettingsParameterItemValue> allowedDaysCountValues = [
+    ApplicationSettingsParameterItemValue(
+      value: '7',
+    ),
+    ApplicationSettingsParameterItemValue(
+      value: '14',
+      isDefault: true,
+    ),
+    ApplicationSettingsParameterItemValue(
+      value: '21',
+    ),
+    ApplicationSettingsParameterItemValue(
+      value: '30',
+    ),
+    ApplicationSettingsParameterItemValue(
+      value: '60',
+    ),
+    ApplicationSettingsParameterItemValue(
+      value: '90',
+    ),
+  ];
+
+  static const List<ApplicationSettingsParameterItemValue> allowedCountValues = [
+    ApplicationSettingsParameterItemValue(
+      value: '5',
+      isDefault: true,
+    ),
+    ApplicationSettingsParameterItemValue(
+      value: '10',
+    ),
+    ApplicationSettingsParameterItemValue(
+      value: '20',
+    ),
+  ];
+
+  static final ApplicationConfigDefinition config = ApplicationConfigDefinition(
+    appTitle: 'Scrobbles',
+    activitySettings: [
+      // DistributionDaysCount
+      ApplicationSettingsParameter(
+        code: parameterCodeDistributionDaysCount,
+        values: allowedDaysCountValues,
+      ),
+
+      // DiscoveriesDaysCount
+      ApplicationSettingsParameter(
+        code: parameterCodeDiscoveriesDaysCount,
+        values: allowedDaysCountValues,
+      ),
+
+      // NewArtistsCount
+      ApplicationSettingsParameter(
+        code: parameterCodeNewArtistsCount,
+        values: allowedCountValues,
+      ),
+
+      // NewTracksCount
+      ApplicationSettingsParameter(
+        code: parameterCodeNewTracksCount,
+        values: allowedCountValues,
+      ),
+
+      // TimelineDaysCount
+      ApplicationSettingsParameter(
+        code: parameterCodeTimelineDaysCount,
+        values: allowedDaysCountValues,
+      ),
+
+      // TopArtistsDaysCount
+      ApplicationSettingsParameter(
+        code: parameterCodeTopArtistsDaysCount,
+        values: allowedDaysCountValues,
+      ),
+
+      // StatisticsRecentDaysCount
+      ApplicationSettingsParameter(
+        code: parameterCodeStatisticsRecentDaysCount,
+        values: allowedDaysCountValues,
+      ),
+    ],
+    startNewActivity: (BuildContext context) {
+      BlocProvider.of<ActivityCubit>(context).startNewActivity(context);
+      BlocProvider.of<NavCubitPage>(context).goToPageHome();
+    },
+    deleteCurrentActivity: (BuildContext context) {},
+    resumeActivity: (BuildContext context) {},
+  );
 }
diff --git a/lib/config/default_activity_settings.dart b/lib/config/default_activity_settings.dart
deleted file mode 100644
index 1f33c908216cca222d576d89d07ce05de4a661ec..0000000000000000000000000000000000000000
--- a/lib/config/default_activity_settings.dart
+++ /dev/null
@@ -1,28 +0,0 @@
-import 'package:flutter_custom_toolbox/flutter_toolbox.dart';
-
-class DefaultActivitySettings {
-  // available game parameters codes
-  static const String parameterCodeDashboardType = 'dashboardType';
-  static const List<String> availableParameters = [
-    parameterCodeDashboardType,
-  ];
-
-  // dashboard type: available values
-  static const String dashboardTypeDefault = 'default';
-  static const List<String> allowedDashboardTypeValues = [
-    dashboardTypeDefault,
-  ];
-  // dashboard type: default value
-  static const String defaultDashboardTypeValue = dashboardTypeDefault;
-
-  // available values from parameter code
-  static List<String> getAvailableValues(String parameterCode) {
-    switch (parameterCode) {
-      case parameterCodeDashboardType:
-        return DefaultActivitySettings.allowedDashboardTypeValues;
-    }
-
-    printlog('Did not find any available value for game parameter "$parameterCode".');
-    return [];
-  }
-}
diff --git a/lib/config/default_global_settings.dart b/lib/config/default_global_settings.dart
deleted file mode 100644
index f64cb1ff1c153c5f6e4bd6b7607bc60943cd982f..0000000000000000000000000000000000000000
--- a/lib/config/default_global_settings.dart
+++ /dev/null
@@ -1,60 +0,0 @@
-import 'package:flutter_custom_toolbox/flutter_toolbox.dart';
-
-class DefaultGlobalSettings {
-  // available global parameters codes
-  static const String parameterCodeSkin = 'skin';
-  static const List<String> availableParameters = [
-    parameterCodeSkin,
-  ];
-
-  // skin: available values
-  static const String skinValueDefault = 'default';
-  static const List<String> allowedSkinValues = [
-    skinValueDefault,
-  ];
-  // skin: default value
-  static const String defaultSkinValue = skinValueDefault;
-
-  // available values from parameter code
-  static List<String> getAvailableValues(String parameterCode) {
-    switch (parameterCode) {
-      case parameterCodeSkin:
-        return DefaultGlobalSettings.allowedSkinValues;
-    }
-
-    printlog('Did not find any available value for global parameter "$parameterCode".');
-    return [];
-  }
-
-  @Deprecated("Should be removed / normalized")
-  static const List<int> allowedDaysCountValues = [
-    7,
-    14,
-    21,
-    30,
-    60,
-    90,
-  ];
-
-  @Deprecated("Should be removed / normalized")
-  static const List<int> allowedCountValues = [
-    5,
-    10,
-    20,
-  ];
-
-  @Deprecated("Should be removed / normalized")
-  static const int defaultDiscoveriesDaysCount = 14;
-  @Deprecated("Should be removed / normalized")
-  static const int defaultDistributionDaysCount = 21;
-  @Deprecated("Should be removed / normalized")
-  static const int defaultStatisticsRecentDaysCount = 21;
-  @Deprecated("Should be removed / normalized")
-  static const int defaultTimelineDaysCount = 14;
-  @Deprecated("Should be removed / normalized")
-  static const int defaultTopArtistsDaysCount = 14;
-  @Deprecated("Should be removed / normalized")
-  static const int defaultNewArtistsCount = 5;
-  @Deprecated("Should be removed / normalized")
-  static const int defaultNewTracksCount = 5;
-}
diff --git a/lib/cubit/activity/activity_cubit.dart b/lib/cubit/activity/activity_cubit.dart
index 7a0b36cf548a0e254052443c9f749f95e07d1894..5c9791e62bd992b37f3620e321d064d2e71e10d9 100644
--- a/lib/cubit/activity/activity_cubit.dart
+++ b/lib/cubit/activity/activity_cubit.dart
@@ -2,8 +2,6 @@ import 'package:flutter/material.dart';
 import 'package:flutter_custom_toolbox/flutter_toolbox.dart';
 
 import 'package:scrobbles/models/activity/activity.dart';
-import 'package:scrobbles/models/settings/settings_activity.dart';
-import 'package:scrobbles/models/settings/settings_global.dart';
 
 part 'activity_state.dart';
 
@@ -23,7 +21,6 @@ class ActivityCubit extends HydratedCubit<ActivityState> {
     final Activity activity = Activity(
       // Settings
       activitySettings: state.currentActivity.activitySettings,
-      globalSettings: state.currentActivity.globalSettings,
       // State
       isRunning: state.currentActivity.isRunning,
     );
@@ -31,14 +28,13 @@ class ActivityCubit extends HydratedCubit<ActivityState> {
     updateState(activity);
   }
 
-  void startNewActivity({
-    required ActivitySettings activitySettings,
-    required GlobalSettings globalSettings,
-  }) {
+  void startNewActivity(BuildContext context) {
+    final ActivitySettingsCubit activitySettingsCubit =
+        BlocProvider.of<ActivitySettingsCubit>(context);
+
     final Activity newActivity = Activity.createNew(
       // Settings
-      activitySettings: activitySettings,
-      globalSettings: globalSettings,
+      activitySettings: activitySettingsCubit.state.settings,
     );
 
     newActivity.dump();
diff --git a/lib/cubit/activity/data_counts_by_day_cubit.dart b/lib/cubit/activity/data_counts_by_day_cubit.dart
index 59c7482fa99de7b9ed59ef7cee49c5bb3b81fff1..f9d6fdf82bf4fc38366865190a975050ec9eb5b0 100644
--- a/lib/cubit/activity/data_counts_by_day_cubit.dart
+++ b/lib/cubit/activity/data_counts_by_day_cubit.dart
@@ -1,7 +1,8 @@
 import 'package:flutter/material.dart';
 import 'package:flutter_custom_toolbox/flutter_toolbox.dart';
 
-import 'package:scrobbles/cubit/settings/settings_global_cubit.dart';
+import 'package:scrobbles/config/application_config.dart';
+
 import 'package:scrobbles/models/data/counts_by_day.dart';
 import 'package:scrobbles/network/scrobbles.dart';
 
@@ -53,8 +54,9 @@ class DataCountsByDayCubit extends HydratedCubit<DataCountsByDayState> {
   void refresh(BuildContext context) async {
     setLoading();
 
-    GlobalSettingsCubit settings = BlocProvider.of<GlobalSettingsCubit>(context);
-    final int daysCount = settings.getDistributionDaysCount();
+    ActivitySettings settings = BlocProvider.of<ActivitySettingsCubit>(context).state.settings;
+    final int daysCount =
+        settings.getAsInt(ApplicationConfig.parameterCodeDistributionDaysCount);
 
     final CountsByDayData? data = await ScrobblesApi.fetchCountsByDay(daysCount);
     if (data != null) {
diff --git a/lib/cubit/activity/data_counts_by_hour_cubit.dart b/lib/cubit/activity/data_counts_by_hour_cubit.dart
index 6d07f45dbb43937e29c451164d4a990216c7a23f..d9974e4e38016f72e2663a5c971b8c481197a047 100644
--- a/lib/cubit/activity/data_counts_by_hour_cubit.dart
+++ b/lib/cubit/activity/data_counts_by_hour_cubit.dart
@@ -1,7 +1,8 @@
 import 'package:flutter/material.dart';
 import 'package:flutter_custom_toolbox/flutter_toolbox.dart';
 
-import 'package:scrobbles/cubit/settings/settings_global_cubit.dart';
+import 'package:scrobbles/config/application_config.dart';
+
 import 'package:scrobbles/models/data/counts_by_hour.dart';
 import 'package:scrobbles/network/scrobbles.dart';
 
@@ -53,8 +54,9 @@ class DataCountsByHourCubit extends HydratedCubit<DataCountsByHourState> {
   void refresh(BuildContext context) async {
     setLoading();
 
-    GlobalSettingsCubit settings = BlocProvider.of<GlobalSettingsCubit>(context);
-    final int daysCount = settings.getDistributionDaysCount();
+    ActivitySettings settings = BlocProvider.of<ActivitySettingsCubit>(context).state.settings;
+    final int daysCount =
+        settings.getAsInt(ApplicationConfig.parameterCodeDistributionDaysCount);
 
     final CountsByHourData? data = await ScrobblesApi.fetchCountsByHour(daysCount);
     if (data != null) {
diff --git a/lib/cubit/activity/data_discoveries_cubit.dart b/lib/cubit/activity/data_discoveries_cubit.dart
index 4ea5c57b84f881b8dc86c0dd3929cad99b7f0549..ab12a4dfb99825803eb04c622675893cf3fe580c 100644
--- a/lib/cubit/activity/data_discoveries_cubit.dart
+++ b/lib/cubit/activity/data_discoveries_cubit.dart
@@ -1,7 +1,8 @@
 import 'package:flutter/material.dart';
 import 'package:flutter_custom_toolbox/flutter_toolbox.dart';
 
-import 'package:scrobbles/cubit/settings/settings_global_cubit.dart';
+import 'package:scrobbles/config/application_config.dart';
+
 import 'package:scrobbles/models/data/discoveries.dart';
 import 'package:scrobbles/network/scrobbles.dart';
 
@@ -53,8 +54,9 @@ class DataDiscoveriesCubit extends HydratedCubit<DataDiscoveriesState> {
   void refresh(BuildContext context) async {
     setLoading();
 
-    GlobalSettingsCubit settings = BlocProvider.of<GlobalSettingsCubit>(context);
-    final int daysCount = settings.getDiscoveriesDaysCount();
+    ActivitySettings settings = BlocProvider.of<ActivitySettingsCubit>(context).state.settings;
+    final int daysCount =
+        settings.getAsInt(ApplicationConfig.parameterCodeDiscoveriesDaysCount);
 
     final DiscoveriesData? data = await ScrobblesApi.fetchDiscoveries(daysCount);
     if (data != null) {
diff --git a/lib/cubit/activity/data_heatmap_cubit.dart b/lib/cubit/activity/data_heatmap_cubit.dart
index 3d386c324f81b63b521f50382e1f1ab90db6026a..855ce2521bbe5582f63df6e5d897b2c6ffd05099 100644
--- a/lib/cubit/activity/data_heatmap_cubit.dart
+++ b/lib/cubit/activity/data_heatmap_cubit.dart
@@ -1,7 +1,8 @@
 import 'package:flutter/material.dart';
 import 'package:flutter_custom_toolbox/flutter_toolbox.dart';
 
-import 'package:scrobbles/cubit/settings/settings_global_cubit.dart';
+import 'package:scrobbles/config/application_config.dart';
+
 import 'package:scrobbles/models/data/heatmap.dart';
 import 'package:scrobbles/network/scrobbles.dart';
 
@@ -53,8 +54,9 @@ class DataHeatmapCubit extends HydratedCubit<DataHeatmapState> {
   void refresh(BuildContext context) async {
     setLoading();
 
-    GlobalSettingsCubit settings = BlocProvider.of<GlobalSettingsCubit>(context);
-    final int daysCount = settings.getDistributionDaysCount();
+    ActivitySettings settings = BlocProvider.of<ActivitySettingsCubit>(context).state.settings;
+    final int daysCount =
+        settings.getAsInt(ApplicationConfig.parameterCodeDistributionDaysCount);
 
     final HeatmapData? data = await ScrobblesApi.fetchHeatmap(daysCount);
     if (data != null) {
diff --git a/lib/cubit/activity/data_new_artists_cubit.dart b/lib/cubit/activity/data_new_artists_cubit.dart
index c5ae1c94c8ef575d0eb7f549488fa199ba27bd4f..1d6ba45e987c9baa8a79c4997ce75e85f0ccd793 100644
--- a/lib/cubit/activity/data_new_artists_cubit.dart
+++ b/lib/cubit/activity/data_new_artists_cubit.dart
@@ -1,7 +1,8 @@
 import 'package:flutter/material.dart';
 import 'package:flutter_custom_toolbox/flutter_toolbox.dart';
 
-import 'package:scrobbles/cubit/settings/settings_global_cubit.dart';
+import 'package:scrobbles/config/application_config.dart';
+
 import 'package:scrobbles/models/data/new_artists.dart';
 import 'package:scrobbles/network/scrobbles.dart';
 
@@ -53,8 +54,8 @@ class DataNewArtistsCubit extends HydratedCubit<DataNewArtistsState> {
   void refresh(BuildContext context) async {
     setLoading();
 
-    GlobalSettingsCubit settings = BlocProvider.of<GlobalSettingsCubit>(context);
-    final int count = settings.getNewArtistsCount();
+    ActivitySettings settings = BlocProvider.of<ActivitySettingsCubit>(context).state.settings;
+    final int count = settings.getAsInt(ApplicationConfig.parameterCodeNewArtistsCount);
 
     final NewArtistsData? data = await ScrobblesApi.fetchNewArtists(count);
     if (data != null) {
diff --git a/lib/cubit/activity/data_new_tracks_cubit.dart b/lib/cubit/activity/data_new_tracks_cubit.dart
index 849ae75b769df053d1f381c9e86815a47db18970..fa137749779ff8a5328d66fd3a898b48353a9a4b 100644
--- a/lib/cubit/activity/data_new_tracks_cubit.dart
+++ b/lib/cubit/activity/data_new_tracks_cubit.dart
@@ -1,7 +1,8 @@
 import 'package:flutter/material.dart';
 import 'package:flutter_custom_toolbox/flutter_toolbox.dart';
 
-import 'package:scrobbles/cubit/settings/settings_global_cubit.dart';
+import 'package:scrobbles/config/application_config.dart';
+
 import 'package:scrobbles/models/data/new_tracks.dart';
 import 'package:scrobbles/network/scrobbles.dart';
 
@@ -53,8 +54,8 @@ class DataNewTracksCubit extends HydratedCubit<DataNewTracksState> {
   void refresh(BuildContext context) async {
     setLoading();
 
-    GlobalSettingsCubit settings = BlocProvider.of<GlobalSettingsCubit>(context);
-    final int count = settings.getNewTracksCount();
+    ActivitySettings settings = BlocProvider.of<ActivitySettingsCubit>(context).state.settings;
+    final int count = settings.getAsInt(ApplicationConfig.parameterCodeNewTracksCount);
 
     final NewTracksData? data = await ScrobblesApi.fetchNewTracks(count);
     if (data != null) {
diff --git a/lib/cubit/activity/data_statistics_recent_cubit.dart b/lib/cubit/activity/data_statistics_recent_cubit.dart
index 0b19c0a2c5cd210944b61e2e5a1fcd292e74e5bb..51c2db4573bb745b9c0fef04e91f7fbe80333391 100644
--- a/lib/cubit/activity/data_statistics_recent_cubit.dart
+++ b/lib/cubit/activity/data_statistics_recent_cubit.dart
@@ -1,7 +1,8 @@
 import 'package:flutter/material.dart';
 import 'package:flutter_custom_toolbox/flutter_toolbox.dart';
 
-import 'package:scrobbles/cubit/settings/settings_global_cubit.dart';
+import 'package:scrobbles/config/application_config.dart';
+
 import 'package:scrobbles/models/data/statistics_recent.dart';
 import 'package:scrobbles/network/scrobbles.dart';
 
@@ -54,8 +55,9 @@ class DataStatisticsRecentCubit extends HydratedCubit<DataStatisticsRecentState>
   void refresh(BuildContext context) async {
     setLoading();
 
-    GlobalSettingsCubit settings = BlocProvider.of<GlobalSettingsCubit>(context);
-    final int daysCount = settings.getStatisticsRecentDaysCount();
+    ActivitySettings settings = BlocProvider.of<ActivitySettingsCubit>(context).state.settings;
+    final int daysCount =
+        settings.getAsInt(ApplicationConfig.parameterCodeStatisticsRecentDaysCount);
 
     final StatisticsRecentData? data = await ScrobblesApi.fetchRecentStatistics(daysCount);
     if (data != null) {
diff --git a/lib/cubit/activity/data_timeline_cubit.dart b/lib/cubit/activity/data_timeline_cubit.dart
index 724240140ba31ae466b542805dc7972d2ccf3ea4..e4177564a2f00ae28b55ab0829a0685f335d7db0 100644
--- a/lib/cubit/activity/data_timeline_cubit.dart
+++ b/lib/cubit/activity/data_timeline_cubit.dart
@@ -1,7 +1,8 @@
 import 'package:flutter/material.dart';
 import 'package:flutter_custom_toolbox/flutter_toolbox.dart';
 
-import 'package:scrobbles/cubit/settings/settings_global_cubit.dart';
+import 'package:scrobbles/config/application_config.dart';
+
 import 'package:scrobbles/models/data/timeline.dart';
 import 'package:scrobbles/network/scrobbles.dart';
 
@@ -53,8 +54,8 @@ class DataTimelineCubit extends HydratedCubit<DataTimelineState> {
   void refresh(BuildContext context) async {
     setLoading();
 
-    GlobalSettingsCubit settings = BlocProvider.of<GlobalSettingsCubit>(context);
-    final int daysCount = settings.getTimelineDaysCount();
+    ActivitySettings settings = BlocProvider.of<ActivitySettingsCubit>(context).state.settings;
+    final int daysCount = settings.getAsInt(ApplicationConfig.parameterCodeTimelineDaysCount);
 
     final TimelineData? data = await ScrobblesApi.fetchTimeline(daysCount);
     if (data != null) {
diff --git a/lib/cubit/activity/data_top_artists_cubit.dart b/lib/cubit/activity/data_top_artists_cubit.dart
index 4692b8c1145796796853694ee55ce094c51df94c..d59acf3204dd9af4e9f60c31fe8356a2d2883111 100644
--- a/lib/cubit/activity/data_top_artists_cubit.dart
+++ b/lib/cubit/activity/data_top_artists_cubit.dart
@@ -1,7 +1,8 @@
 import 'package:flutter/material.dart';
 import 'package:flutter_custom_toolbox/flutter_toolbox.dart';
 
-import 'package:scrobbles/cubit/settings/settings_global_cubit.dart';
+import 'package:scrobbles/config/application_config.dart';
+
 import 'package:scrobbles/models/data/topartists.dart';
 import 'package:scrobbles/network/scrobbles.dart';
 
@@ -53,8 +54,9 @@ class DataTopArtistsCubit extends HydratedCubit<DataTopArtistsState> {
   void refresh(BuildContext context) async {
     setLoading();
 
-    GlobalSettingsCubit settings = BlocProvider.of<GlobalSettingsCubit>(context);
-    final int daysCount = settings.getTopArtistsDaysCount();
+    ActivitySettings settings = BlocProvider.of<ActivitySettingsCubit>(context).state.settings;
+    final int daysCount =
+        settings.getAsInt(ApplicationConfig.parameterCodeTopArtistsDaysCount);
 
     final TopArtistsData? data = await ScrobblesApi.fetchTopArtists(daysCount);
     if (data != null) {
diff --git a/lib/cubit/settings/settings_activity_cubit.dart b/lib/cubit/settings/settings_activity_cubit.dart
deleted file mode 100644
index e5364926e7e64ebedcafb91f33256ff65392d020..0000000000000000000000000000000000000000
--- a/lib/cubit/settings/settings_activity_cubit.dart
+++ /dev/null
@@ -1,62 +0,0 @@
-import 'package:flutter/material.dart';
-import 'package:flutter_custom_toolbox/flutter_toolbox.dart';
-
-import 'package:scrobbles/config/default_activity_settings.dart';
-import 'package:scrobbles/models/settings/settings_activity.dart';
-
-part 'settings_activity_state.dart';
-
-class ActivitySettingsCubit extends HydratedCubit<ActivitySettingsState> {
-  ActivitySettingsCubit()
-      : super(ActivitySettingsState(settings: ActivitySettings.createDefault()));
-
-  void setValues({
-    String? dashboardType,
-  }) {
-    emit(
-      ActivitySettingsState(
-        settings: ActivitySettings(
-          dashboardType: dashboardType ?? state.settings.dashboardType,
-        ),
-      ),
-    );
-  }
-
-  String getParameterValue(String code) {
-    switch (code) {
-      case DefaultActivitySettings.parameterCodeDashboardType:
-        return ActivitySettings.getDashboardTypeValueFromUnsafe(state.settings.dashboardType);
-    }
-
-    return '';
-  }
-
-  void setParameterValue(String code, String value) {
-    final String dashboardType = code == DefaultActivitySettings.parameterCodeDashboardType
-        ? value
-        : getParameterValue(DefaultActivitySettings.parameterCodeDashboardType);
-
-    setValues(
-      dashboardType: dashboardType,
-    );
-  }
-
-  @override
-  ActivitySettingsState? fromJson(Map<String, dynamic> json) {
-    final String dashboardType =
-        json[DefaultActivitySettings.parameterCodeDashboardType] as String;
-
-    return ActivitySettingsState(
-      settings: ActivitySettings(
-        dashboardType: dashboardType,
-      ),
-    );
-  }
-
-  @override
-  Map<String, dynamic>? toJson(ActivitySettingsState state) {
-    return <String, dynamic>{
-      DefaultActivitySettings.parameterCodeDashboardType: state.settings.dashboardType,
-    };
-  }
-}
diff --git a/lib/cubit/settings/settings_activity_state.dart b/lib/cubit/settings/settings_activity_state.dart
deleted file mode 100644
index 2b2de42011634e81ae9e6f8bcaa1577f239c778b..0000000000000000000000000000000000000000
--- a/lib/cubit/settings/settings_activity_state.dart
+++ /dev/null
@@ -1,15 +0,0 @@
-part of 'settings_activity_cubit.dart';
-
-@immutable
-class ActivitySettingsState extends Equatable {
-  const ActivitySettingsState({
-    required this.settings,
-  });
-
-  final ActivitySettings settings;
-
-  @override
-  List<dynamic> get props => <dynamic>[
-        settings,
-      ];
-}
diff --git a/lib/cubit/settings/settings_global_cubit.dart b/lib/cubit/settings/settings_global_cubit.dart
deleted file mode 100644
index 75f948973e28de71c1f7b97e3dbafd1878ac9241..0000000000000000000000000000000000000000
--- a/lib/cubit/settings/settings_global_cubit.dart
+++ /dev/null
@@ -1,116 +0,0 @@
-import 'package:flutter/material.dart';
-import 'package:flutter_custom_toolbox/flutter_toolbox.dart';
-
-import 'package:scrobbles/config/default_global_settings.dart';
-
-part 'settings_global_state.dart';
-
-class GlobalSettingsCubit extends HydratedCubit<GlobalSettingsState> {
-  GlobalSettingsCubit() : super(const GlobalSettingsState());
-
-  void setValues({
-    String? username,
-    String? securityToken,
-    int? discoveriesDaysCount,
-    int? distributionDaysCount,
-    int? statisticsRecentDaysCount,
-    int? timelineDaysCount,
-    int? topArtistsDaysCount,
-    int? newArtistsCount,
-    int? newTracksCount,
-  }) {
-    emit(GlobalSettingsState(
-      username: username ?? state.username,
-      securityToken: securityToken ?? state.securityToken,
-      discoveriesDaysCount: discoveriesDaysCount ?? state.discoveriesDaysCount,
-      distributionDaysCount: distributionDaysCount ?? state.distributionDaysCount,
-      statisticsRecentDaysCount: statisticsRecentDaysCount ?? state.statisticsRecentDaysCount,
-      timelineDaysCount: timelineDaysCount ?? state.timelineDaysCount,
-      topArtistsDaysCount: topArtistsDaysCount ?? state.topArtistsDaysCount,
-      newArtistsCount: newArtistsCount ?? state.newArtistsCount,
-      newTracksCount: newTracksCount ?? state.newTracksCount,
-    ));
-  }
-
-  String getUsername() {
-    return state.username ?? '';
-  }
-
-  String getSecurityToken() {
-    return state.securityToken ?? '';
-  }
-
-  int getDiscoveriesDaysCount() {
-    return state.discoveriesDaysCount ?? DefaultGlobalSettings.defaultDiscoveriesDaysCount;
-  }
-
-  int getDistributionDaysCount() {
-    return state.distributionDaysCount ?? DefaultGlobalSettings.defaultDistributionDaysCount;
-  }
-
-  int getStatisticsRecentDaysCount() {
-    return state.statisticsRecentDaysCount ??
-        DefaultGlobalSettings.defaultStatisticsRecentDaysCount;
-  }
-
-  int getTimelineDaysCount() {
-    return state.timelineDaysCount ?? DefaultGlobalSettings.defaultTimelineDaysCount;
-  }
-
-  int getTopArtistsDaysCount() {
-    return state.topArtistsDaysCount ?? DefaultGlobalSettings.defaultTopArtistsDaysCount;
-  }
-
-  int getNewArtistsCount() {
-    return state.newArtistsCount ?? DefaultGlobalSettings.defaultNewArtistsCount;
-  }
-
-  int getNewTracksCount() {
-    return state.newTracksCount ?? DefaultGlobalSettings.defaultNewTracksCount;
-  }
-
-  @override
-  GlobalSettingsState? fromJson(Map<String, dynamic> json) {
-    String username = json['username'] as String;
-    String securityToken = json['securityToken'] as String;
-    int discoveriesDaysCount = json['discoveriesDaysCount'] as int;
-    int distributionDaysCount = json['distributionDaysCount'] as int;
-    int statisticsRecentDaysCount = json['statisticsRecentDaysCount'] as int;
-    int timelineDaysCount = json['timelineDaysCount'] as int;
-    int topArtistsDaysCount = json['topArtistsDaysCount'] as int;
-    int newArtistsCount = json['newArtistsCount'] as int;
-    int newTracksCount = json['newTracksCount'] as int;
-
-    return GlobalSettingsState(
-      username: username,
-      securityToken: securityToken,
-      discoveriesDaysCount: discoveriesDaysCount,
-      distributionDaysCount: distributionDaysCount,
-      statisticsRecentDaysCount: statisticsRecentDaysCount,
-      timelineDaysCount: timelineDaysCount,
-      topArtistsDaysCount: topArtistsDaysCount,
-      newArtistsCount: newArtistsCount,
-      newTracksCount: newTracksCount,
-    );
-  }
-
-  @override
-  Map<String, dynamic>? toJson(GlobalSettingsState state) {
-    return <String, dynamic>{
-      'username': state.username ?? '',
-      'securityToken': state.securityToken ?? '',
-      'discoveriesDaysCount':
-          state.discoveriesDaysCount ?? DefaultGlobalSettings.defaultDiscoveriesDaysCount,
-      'distributionDaysCount':
-          state.distributionDaysCount ?? DefaultGlobalSettings.defaultDistributionDaysCount,
-      'statisticsRecentDaysCount': state.statisticsRecentDaysCount ??
-          DefaultGlobalSettings.defaultStatisticsRecentDaysCount,
-      'timelineDaysCount':
-          state.timelineDaysCount ?? DefaultGlobalSettings.defaultTimelineDaysCount,
-      'topArtistsDaysCount':
-          state.topArtistsDaysCount ?? DefaultGlobalSettings.defaultTopArtistsDaysCount,
-      'newArtistsCount': state.newArtistsCount ?? DefaultGlobalSettings.defaultNewArtistsCount,
-      'newTracksCount': state.newTracksCount ?? DefaultGlobalSettings.defaultNewTracksCount,
-    };
-  }
-}
diff --git a/lib/cubit/settings/settings_global_state.dart b/lib/cubit/settings/settings_global_state.dart
deleted file mode 100644
index fb08d54167dba5f5a3c12f09cb0079998eafb49a..0000000000000000000000000000000000000000
--- a/lib/cubit/settings/settings_global_state.dart
+++ /dev/null
@@ -1,51 +0,0 @@
-part of 'settings_global_cubit.dart';
-
-@immutable
-class GlobalSettingsState extends Equatable {
-  const GlobalSettingsState({
-    this.username,
-    this.securityToken,
-    this.discoveriesDaysCount,
-    this.distributionDaysCount,
-    this.statisticsRecentDaysCount,
-    this.timelineDaysCount,
-    this.topArtistsDaysCount,
-    this.newArtistsCount,
-    this.newTracksCount,
-  });
-
-  final String? username;
-  final String? securityToken;
-  final int? discoveriesDaysCount;
-  final int? distributionDaysCount;
-  final int? statisticsRecentDaysCount;
-  final int? timelineDaysCount;
-  final int? topArtistsDaysCount;
-  final int? newArtistsCount;
-  final int? newTracksCount;
-
-  @override
-  List<dynamic> get props => <dynamic>[
-        username,
-        securityToken,
-        discoveriesDaysCount,
-        distributionDaysCount,
-        statisticsRecentDaysCount,
-        timelineDaysCount,
-        topArtistsDaysCount,
-        newArtistsCount,
-        newTracksCount,
-      ];
-
-  Map<String, dynamic> get values => <String, dynamic>{
-        'username': username,
-        'securityToken': securityToken,
-        'discoveriesDaysCount': discoveriesDaysCount,
-        'distributionDaysCount': distributionDaysCount,
-        'statisticsRecentDaysCount': statisticsRecentDaysCount,
-        'timelineDaysCount': timelineDaysCount,
-        'topArtistsDaysCount': topArtistsDaysCount,
-        'newArtistsCount': newArtistsCount,
-        'newTracksCount': newTracksCount,
-      };
-}
diff --git a/lib/main.dart b/lib/main.dart
index 02ce7f1b14dbd7d377cc20a0138093204ff0893c..06168fd7a9b34b8866fb100f7d343a6b9d0fb639 100644
--- a/lib/main.dart
+++ b/lib/main.dart
@@ -8,6 +8,7 @@ import 'package:scrobbles/common/cubit/nav/nav_cubit_pages.dart';
 import 'package:scrobbles/common/cubit/nav/nav_cubit_screens.dart';
 
 import 'package:scrobbles/config/application_config.dart';
+
 import 'package:scrobbles/cubit/activity/activity_cubit.dart';
 import 'package:scrobbles/cubit/activity/data_counts_by_day_cubit.dart';
 import 'package:scrobbles/cubit/activity/data_counts_by_hour_cubit.dart';
@@ -19,8 +20,7 @@ import 'package:scrobbles/cubit/activity/data_statistics_global_cubit.dart';
 import 'package:scrobbles/cubit/activity/data_statistics_recent_cubit.dart';
 import 'package:scrobbles/cubit/activity/data_timeline_cubit.dart';
 import 'package:scrobbles/cubit/activity/data_top_artists_cubit.dart';
-import 'package:scrobbles/cubit/settings/settings_activity_cubit.dart';
-import 'package:scrobbles/cubit/settings/settings_global_cubit.dart';
+
 import 'package:scrobbles/ui/skeleton.dart';
 
 void main() async {
@@ -66,11 +66,8 @@ class MyApp extends StatelessWidget {
         BlocProvider<ActivityCubit>(
           create: (context) => ActivityCubit(),
         ),
-        BlocProvider<GlobalSettingsCubit>(
-          create: (context) => GlobalSettingsCubit(),
-        ),
         BlocProvider<ActivitySettingsCubit>(
-          create: (context) => ActivitySettingsCubit(),
+          create: (context) => ActivitySettingsCubit(appConfig: ApplicationConfig.config),
         ),
 
         // custom providers
@@ -108,7 +105,7 @@ class MyApp extends StatelessWidget {
       child: BlocBuilder<ApplicationThemeModeCubit, ApplicationThemeModeState>(
         builder: (BuildContext context, ApplicationThemeModeState state) {
           return MaterialApp(
-            title: ApplicationConfig.appTitle,
+            title: ApplicationConfig.config.appTitle,
             home: const SkeletonScreen(),
 
             // Theme stuff
diff --git a/lib/models/activity/activity.dart b/lib/models/activity/activity.dart
index 973cd0343e4160aa421ce8723efbded94c4e60c0..900ce3daecf3350bb529af2a71890537773756d5 100644
--- a/lib/models/activity/activity.dart
+++ b/lib/models/activity/activity.dart
@@ -1,13 +1,11 @@
 import 'package:flutter_custom_toolbox/flutter_toolbox.dart';
 
-import 'package:scrobbles/models/settings/settings_activity.dart';
-import 'package:scrobbles/models/settings/settings_global.dart';
+import 'package:scrobbles/config/application_config.dart';
 
 class Activity {
   Activity({
     // Settings
     required this.activitySettings,
-    required this.globalSettings,
 
     // State
     this.isRunning = false,
@@ -15,7 +13,6 @@ class Activity {
 
   // Settings
   final ActivitySettings activitySettings;
-  final GlobalSettings globalSettings;
 
   // State
   bool isRunning;
@@ -23,23 +20,19 @@ class Activity {
   factory Activity.createNull() {
     return Activity(
       // Settings
-      activitySettings: ActivitySettings.createDefault(),
-      globalSettings: GlobalSettings.createDefault(),
+      activitySettings: ActivitySettings.createDefault(appConfig: ApplicationConfig.config),
     );
   }
 
   factory Activity.createNew({
     ActivitySettings? activitySettings,
-    GlobalSettings? globalSettings,
   }) {
-    final ActivitySettings newActivitySettings =
-        activitySettings ?? ActivitySettings.createDefault();
-    final GlobalSettings newGlobalSettings = globalSettings ?? GlobalSettings.createDefault();
+    final ActivitySettings newActivitySettings = activitySettings ??
+        ActivitySettings.createDefault(appConfig: ApplicationConfig.config);
 
     return Activity(
       // Settings
       activitySettings: newActivitySettings,
-      globalSettings: newGlobalSettings,
       // State
       isRunning: true,
     );
@@ -54,7 +47,6 @@ class Activity {
     printlog('$Activity:');
     printlog('  Settings');
     activitySettings.dump();
-    globalSettings.dump();
     printlog('  State');
     printlog('    isRunning: $isRunning');
     printlog('');
@@ -69,7 +61,6 @@ class Activity {
     return <String, dynamic>{
       // Settings
       'activitySettings': activitySettings.toJson(),
-      'globalSettings': globalSettings.toJson(),
       // State
       'isRunning': isRunning,
     };
diff --git a/lib/models/settings/settings_activity.dart b/lib/models/settings/settings_activity.dart
deleted file mode 100644
index c270607eecb196a8d32b5ee71cc6bc020107323f..0000000000000000000000000000000000000000
--- a/lib/models/settings/settings_activity.dart
+++ /dev/null
@@ -1,42 +0,0 @@
-import 'package:flutter_custom_toolbox/flutter_toolbox.dart';
-
-import 'package:scrobbles/config/default_activity_settings.dart';
-
-class ActivitySettings {
-  final String dashboardType;
-
-  ActivitySettings({
-    required this.dashboardType,
-  });
-
-  factory ActivitySettings.createDefault() {
-    return ActivitySettings(
-      dashboardType: DefaultActivitySettings.defaultDashboardTypeValue,
-    );
-  }
-
-  static String getDashboardTypeValueFromUnsafe(String dashboardType) {
-    if (DefaultActivitySettings.allowedDashboardTypeValues.contains(dashboardType)) {
-      return dashboardType;
-    }
-
-    return DefaultActivitySettings.defaultDashboardTypeValue;
-  }
-
-  void dump() {
-    printlog('$ActivitySettings:');
-    printlog('  ${DefaultActivitySettings.parameterCodeDashboardType}: $dashboardType');
-    printlog('');
-  }
-
-  @override
-  String toString() {
-    return '$ActivitySettings(${toJson()})';
-  }
-
-  Map<String, dynamic>? toJson() {
-    return <String, dynamic>{
-      DefaultActivitySettings.parameterCodeDashboardType: dashboardType,
-    };
-  }
-}
diff --git a/lib/models/settings/settings_global.dart b/lib/models/settings/settings_global.dart
deleted file mode 100644
index 666f87e2ef64e655da1bc7fc94b7b29a70b93ecc..0000000000000000000000000000000000000000
--- a/lib/models/settings/settings_global.dart
+++ /dev/null
@@ -1,42 +0,0 @@
-import 'package:flutter_custom_toolbox/flutter_toolbox.dart';
-
-import 'package:scrobbles/config/default_global_settings.dart';
-
-class GlobalSettings {
-  String skin;
-
-  GlobalSettings({
-    required this.skin,
-  });
-
-  static String getSkinValueFromUnsafe(String skin) {
-    if (DefaultGlobalSettings.allowedSkinValues.contains(skin)) {
-      return skin;
-    }
-
-    return DefaultGlobalSettings.defaultSkinValue;
-  }
-
-  factory GlobalSettings.createDefault() {
-    return GlobalSettings(
-      skin: DefaultGlobalSettings.defaultSkinValue,
-    );
-  }
-
-  void dump() {
-    printlog('$GlobalSettings:');
-    printlog('  ${DefaultGlobalSettings.parameterCodeSkin}: $skin');
-    printlog('');
-  }
-
-  @override
-  String toString() {
-    return '$GlobalSettings(${toJson()})';
-  }
-
-  Map<String, dynamic>? toJson() {
-    return <String, dynamic>{
-      DefaultGlobalSettings.parameterCodeSkin: skin,
-    };
-  }
-}
diff --git a/lib/ui/widgets/cards/counts_by_day.dart b/lib/ui/widgets/cards/counts_by_day.dart
index 672a873e77099b0defc82f4652d650a03b48b615..fb6df53b181ee78bf0b83ffe3614ed5141edf827 100644
--- a/lib/ui/widgets/cards/counts_by_day.dart
+++ b/lib/ui/widgets/cards/counts_by_day.dart
@@ -1,8 +1,9 @@
 import 'package:flutter/material.dart';
 import 'package:flutter_custom_toolbox/flutter_toolbox.dart';
 
+import 'package:scrobbles/config/application_config.dart';
+
 import 'package:scrobbles/cubit/activity/data_counts_by_day_cubit.dart';
-import 'package:scrobbles/cubit/settings/settings_global_cubit.dart';
 import 'package:scrobbles/models/data/counts_by_day.dart';
 import 'package:scrobbles/ui/widgets/card_content.dart';
 import 'package:scrobbles/ui/widgets/charts/counts_by_day.dart';
@@ -12,8 +13,9 @@ class CardCountsByDay extends StatelessWidget {
 
   @override
   Widget build(BuildContext context) {
-    GlobalSettingsCubit settings = BlocProvider.of<GlobalSettingsCubit>(context);
-    final int daysCount = settings.getDistributionDaysCount();
+    ActivitySettings settings = BlocProvider.of<ActivitySettingsCubit>(context).state.settings;
+    final int daysCount =
+        settings.getAsInt(ApplicationConfig.parameterCodeDistributionDaysCount);
 
     return BlocBuilder<DataCountsByDayCubit, DataCountsByDayState>(
       builder: (BuildContext context, DataCountsByDayState data) {
diff --git a/lib/ui/widgets/cards/counts_by_hour.dart b/lib/ui/widgets/cards/counts_by_hour.dart
index d7d296a2a4f46b0266aa4f22fc25d8aebbd58ab0..f624241525ce40b20055cb2aab6c613eadd2a48b 100644
--- a/lib/ui/widgets/cards/counts_by_hour.dart
+++ b/lib/ui/widgets/cards/counts_by_hour.dart
@@ -1,8 +1,9 @@
 import 'package:flutter/material.dart';
 import 'package:flutter_custom_toolbox/flutter_toolbox.dart';
 
+import 'package:scrobbles/config/application_config.dart';
+
 import 'package:scrobbles/cubit/activity/data_counts_by_hour_cubit.dart';
-import 'package:scrobbles/cubit/settings/settings_global_cubit.dart';
 import 'package:scrobbles/models/data/counts_by_hour.dart';
 import 'package:scrobbles/ui/widgets/card_content.dart';
 import 'package:scrobbles/ui/widgets/charts/counts_by_hour.dart';
@@ -12,8 +13,9 @@ class CardCountsByHour extends StatelessWidget {
 
   @override
   Widget build(BuildContext context) {
-    GlobalSettingsCubit settings = BlocProvider.of<GlobalSettingsCubit>(context);
-    final int daysCount = settings.getDistributionDaysCount();
+    ActivitySettings settings = BlocProvider.of<ActivitySettingsCubit>(context).state.settings;
+    final int daysCount =
+        settings.getAsInt(ApplicationConfig.parameterCodeDistributionDaysCount);
 
     return BlocBuilder<DataCountsByHourCubit, DataCountsByHourState>(
       builder: (BuildContext context, DataCountsByHourState data) {
diff --git a/lib/ui/widgets/cards/discoveries.dart b/lib/ui/widgets/cards/discoveries.dart
index 3937a509f012ac7d86236b8f96bc003f7511a3e3..b77bfa47dc205b36c9b114deec544465232721f6 100644
--- a/lib/ui/widgets/cards/discoveries.dart
+++ b/lib/ui/widgets/cards/discoveries.dart
@@ -1,8 +1,9 @@
 import 'package:flutter/material.dart';
 import 'package:flutter_custom_toolbox/flutter_toolbox.dart';
 
+import 'package:scrobbles/config/application_config.dart';
+
 import 'package:scrobbles/cubit/activity/data_discoveries_cubit.dart';
-import 'package:scrobbles/cubit/settings/settings_global_cubit.dart';
 import 'package:scrobbles/models/data/discoveries.dart';
 import 'package:scrobbles/ui/widgets/card_content.dart';
 import 'package:scrobbles/ui/widgets/charts/discoveries_artists.dart';
@@ -13,8 +14,9 @@ class CardDiscoveries extends StatelessWidget {
 
   @override
   Widget build(BuildContext context) {
-    GlobalSettingsCubit settings = BlocProvider.of<GlobalSettingsCubit>(context);
-    final int daysCount = settings.getDiscoveriesDaysCount();
+    ActivitySettings settings = BlocProvider.of<ActivitySettingsCubit>(context).state.settings;
+    final int daysCount =
+        settings.getAsInt(ApplicationConfig.parameterCodeDiscoveriesDaysCount);
 
     return BlocBuilder<DataDiscoveriesCubit, DataDiscoveriesState>(
       builder: (BuildContext context, DataDiscoveriesState data) {
diff --git a/lib/ui/widgets/cards/heatmap.dart b/lib/ui/widgets/cards/heatmap.dart
index ffc40ff31e836ea8165ec59650f4e9ac11a3e8ad..744db5493cf369557f83d55602bfcad444e1727c 100644
--- a/lib/ui/widgets/cards/heatmap.dart
+++ b/lib/ui/widgets/cards/heatmap.dart
@@ -1,8 +1,9 @@
 import 'package:flutter/material.dart';
 import 'package:flutter_custom_toolbox/flutter_toolbox.dart';
 
+import 'package:scrobbles/config/application_config.dart';
+
 import 'package:scrobbles/cubit/activity/data_heatmap_cubit.dart';
-import 'package:scrobbles/cubit/settings/settings_global_cubit.dart';
 import 'package:scrobbles/models/data/heatmap.dart';
 import 'package:scrobbles/ui/widgets/card_content.dart';
 import 'package:scrobbles/ui/widgets/charts/heatmap.dart';
@@ -12,8 +13,9 @@ class CardHeatmap extends StatelessWidget {
 
   @override
   Widget build(BuildContext context) {
-    GlobalSettingsCubit settings = BlocProvider.of<GlobalSettingsCubit>(context);
-    final int daysCount = settings.getDistributionDaysCount();
+    ActivitySettings settings = BlocProvider.of<ActivitySettingsCubit>(context).state.settings;
+    final int daysCount =
+        settings.getAsInt(ApplicationConfig.parameterCodeDistributionDaysCount);
 
     return BlocBuilder<DataHeatmapCubit, DataHeatmapState>(
       builder: (BuildContext context, DataHeatmapState data) {
diff --git a/lib/ui/widgets/cards/statistics_recent.dart b/lib/ui/widgets/cards/statistics_recent.dart
index 219063ce237e6140fc5ca6188affb6eb326cb210..683bac57f02af42c960ae224edd4876b2b21902a 100644
--- a/lib/ui/widgets/cards/statistics_recent.dart
+++ b/lib/ui/widgets/cards/statistics_recent.dart
@@ -1,8 +1,9 @@
 import 'package:flutter/material.dart';
 import 'package:flutter_custom_toolbox/flutter_toolbox.dart';
 
+import 'package:scrobbles/config/application_config.dart';
+
 import 'package:scrobbles/cubit/activity/data_statistics_recent_cubit.dart';
-import 'package:scrobbles/cubit/settings/settings_global_cubit.dart';
 import 'package:scrobbles/models/data/statistics_recent.dart';
 import 'package:scrobbles/ui/widgets/card_content.dart';
 import 'package:scrobbles/ui/widgets/content/statistics_recent.dart';
@@ -12,8 +13,9 @@ class CardStatisticsRecent extends StatelessWidget {
 
   @override
   Widget build(BuildContext context) {
-    GlobalSettingsCubit settings = BlocProvider.of<GlobalSettingsCubit>(context);
-    final int daysCount = settings.getStatisticsRecentDaysCount();
+    ActivitySettings settings = BlocProvider.of<ActivitySettingsCubit>(context).state.settings;
+    final int daysCount =
+        settings.getAsInt(ApplicationConfig.parameterCodeStatisticsRecentDaysCount);
 
     return BlocBuilder<DataStatisticsRecentCubit, DataStatisticsRecentState>(
       builder: (BuildContext context, DataStatisticsRecentState data) {
diff --git a/lib/ui/widgets/cards/timeline.dart b/lib/ui/widgets/cards/timeline.dart
index 941281706da59f4d13bdba402155a47261564387..6ce4597f5d1f43bbc073de8667422e9374e84902 100644
--- a/lib/ui/widgets/cards/timeline.dart
+++ b/lib/ui/widgets/cards/timeline.dart
@@ -1,8 +1,9 @@
 import 'package:flutter/material.dart';
 import 'package:flutter_custom_toolbox/flutter_toolbox.dart';
 
+import 'package:scrobbles/config/application_config.dart';
+
 import 'package:scrobbles/cubit/activity/data_timeline_cubit.dart';
-import 'package:scrobbles/cubit/settings/settings_global_cubit.dart';
 import 'package:scrobbles/models/data/timeline.dart';
 import 'package:scrobbles/ui/widgets/card_content.dart';
 import 'package:scrobbles/ui/widgets/charts/timeline_counts.dart';
@@ -13,8 +14,8 @@ class CardTimeline extends StatelessWidget {
 
   @override
   Widget build(BuildContext context) {
-    GlobalSettingsCubit settings = BlocProvider.of<GlobalSettingsCubit>(context);
-    final int daysCount = settings.getTimelineDaysCount();
+    ActivitySettings settings = BlocProvider.of<ActivitySettingsCubit>(context).state.settings;
+    final int daysCount = settings.getAsInt(ApplicationConfig.parameterCodeTimelineDaysCount);
 
     return BlocBuilder<DataTimelineCubit, DataTimelineState>(
       builder: (BuildContext context, DataTimelineState data) {
diff --git a/lib/ui/widgets/cards/top_artists.dart b/lib/ui/widgets/cards/top_artists.dart
index 87f7a49493e0b1d008aa841f0128847bacae2b4f..da8a589b152b4e971afc5dc659e3a62bd87a1106 100644
--- a/lib/ui/widgets/cards/top_artists.dart
+++ b/lib/ui/widgets/cards/top_artists.dart
@@ -1,8 +1,9 @@
 import 'package:flutter/material.dart';
 import 'package:flutter_custom_toolbox/flutter_toolbox.dart';
 
+import 'package:scrobbles/config/application_config.dart';
+
 import 'package:scrobbles/cubit/activity/data_top_artists_cubit.dart';
-import 'package:scrobbles/cubit/settings/settings_global_cubit.dart';
 import 'package:scrobbles/models/data/topartists.dart';
 import 'package:scrobbles/ui/widgets/card_content.dart';
 import 'package:scrobbles/ui/widgets/charts/top_artists.dart';
@@ -13,8 +14,9 @@ class CardTopArtists extends StatelessWidget {
 
   @override
   Widget build(BuildContext context) {
-    GlobalSettingsCubit settings = BlocProvider.of<GlobalSettingsCubit>(context);
-    final int daysCount = settings.getTopArtistsDaysCount();
+    ActivitySettings settings = BlocProvider.of<ActivitySettingsCubit>(context).state.settings;
+    final int daysCount =
+        settings.getAsInt(ApplicationConfig.parameterCodeTopArtistsDaysCount);
 
     return BlocBuilder<DataTopArtistsCubit, DataTopArtistsState>(
       builder: (BuildContext context, DataTopArtistsState data) {
diff --git a/pubspec.lock b/pubspec.lock
index 561ff5327405f83d9ee361c4b1b006f6f6603f0c..91a1880b3b585fe144fe60ea4a1b0c5846eee77f 100644
--- a/pubspec.lock
+++ b/pubspec.lock
@@ -130,11 +130,11 @@ packages:
     dependency: "direct main"
     description:
       path: "."
-      ref: "0.4.0"
-      resolved-ref: eb9c090bd00d73324eab8737f74b3339cc24c9e8
+      ref: "0.5.0"
+      resolved-ref: b8164a50489ba981ea57d9f02e2334f09cb8c6a7
       url: "https://git.harrault.fr/android/flutter-toolbox.git"
     source: git
-    version: "0.4.0"
+    version: "0.5.0"
   flutter_lints:
     dependency: "direct dev"
     description:
diff --git a/pubspec.yaml b/pubspec.yaml
index 64319a27c01579640ec9ddbc6d92905067393e7e..9a265b5b1fc0dec12034468de4302f117a4b6995 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -3,7 +3,7 @@ description: Display scrobbles data and charts
 
 publish_to: "none"
 
-version: 0.4.2+68
+version: 0.5.0+69
 
 environment:
   sdk: "^3.0.0"
@@ -16,7 +16,7 @@ dependencies:
   flutter_custom_toolbox:
     git:
       url: https://git.harrault.fr/android/flutter-toolbox.git
-      ref: 0.4.0
+      ref: 0.5.0
 
   # specific
   fl_chart: ^0.69.0