diff --git a/src/EasyBreadcrumbBuilder.php b/src/EasyBreadcrumbBuilder.php
index e59c1ee77d04ffb279a56b0ac8103bffbc236024..4dac6ea4c632f14adc404f543e15b076d57d85c1 100644
--- a/src/EasyBreadcrumbBuilder.php
+++ b/src/EasyBreadcrumbBuilder.php
@@ -933,7 +933,8 @@ class EasyBreadcrumbBuilder implements BreadcrumbBuilderInterface {
       }
 
       // Get the site base path.
-      $base_path = \Drupal::request()->getBasePath();
+      $request = $this->requestStack->getCurrentRequest();
+      $base_path = $request->getBasePath();
 
       // Adjust redirect_path to include base_path if not already included.
       // Prevent double slashes.
@@ -952,7 +953,7 @@ class EasyBreadcrumbBuilder implements BreadcrumbBuilderInterface {
           ->findMatchingRedirect($redirect_path, [], $this->languageManager->getCurrentLanguage()
             ->getId());
       }
-      catch (\Exception $exception ) {
+      catch (\Exception $exception) {
         // Do nothing for now.
       }
       if ($redirect) {
diff --git a/src/Form/EasyBreadcrumbGeneralSettingsForm.php b/src/Form/EasyBreadcrumbGeneralSettingsForm.php
index 9951f64e4cfad79d279dde650c68ac1176948a71..8c75e1b0298dab98f62c3579ddad663cbf39500d 100644
--- a/src/Form/EasyBreadcrumbGeneralSettingsForm.php
+++ b/src/Form/EasyBreadcrumbGeneralSettingsForm.php
@@ -2,15 +2,36 @@
 
 namespace Drupal\easy_breadcrumb\Form;
 
+use Drupal\Core\Entity\EntityTypeManagerInterface;
 use Drupal\Core\Form\ConfigFormBase;
 use Drupal\Core\Form\FormStateInterface;
+use Drupal\Core\StringTranslation\StringTranslationTrait;
 use Drupal\easy_breadcrumb\EasyBreadcrumbConstants;
-use Drupal\system\Entity\Menu;
+use Symfony\Component\DependencyInjection\ContainerInterface;
 
 /**
  * Build Easy Breadcrumb settings form.
  */
 class EasyBreadcrumbGeneralSettingsForm extends ConfigFormBase {
+  use StringTranslationTrait;
+
+  protected $entityTypeManager;
+
+  /**
+   * {@inheritdoc}
+   */
+  public function __construct(EntityTypeManagerInterface $entityTypeManager) {
+    $this->entityTypeManager = $entityTypeManager;
+  }
+
+  /**
+   * {@inheritdoc}
+   */
+  public static function create(ContainerInterface $container) {
+    return new static(
+      $container->get('entity_type.manager')
+    );
+  }
 
   /**
    * {@inheritdoc}
@@ -127,13 +148,13 @@ class EasyBreadcrumbGeneralSettingsForm extends ConfigFormBase {
 
     $menu_list = array_map(function ($menu) {
       return $menu->label();
-    }, Menu::loadMultiple());
+    }, $this->entityTypeManager->getStorage('menu')->loadMultiple());
     asort($menu_list);
     $details_general[EasyBreadcrumbConstants::MENU_TITLE_PREFERRED_MENU] = [
       '#type' => 'select',
       '#title' => $this->t('Preferred menu'),
       '#options' => $menu_list,
-      '#empty_option' => t('- None -'),
+      '#empty_option' => $this->t('- None -'),
       '#empty_value' => '',
       '#description' => $this->t('Preferred menu to use as menu title source. Useful if menu links with identical paths exist in multiple menus.'),
       '#default_value' => $config->get(EasyBreadcrumbConstants::MENU_TITLE_PREFERRED_MENU),
@@ -378,7 +399,7 @@ class EasyBreadcrumbGeneralSettingsForm extends ConfigFormBase {
     $details_advanced[EasyBreadcrumbConstants::TRUNCATOR_MODE] = [
       '#type' => 'checkbox',
       '#title' => $this->t("Truncate the page's title to a maximum number."),
-      '#description' => t("Example: if you set it to 10, from <em>Long page title</em> will be <em>Long pa...</em>"),
+      '#description' => $this->t("Example: if you set it to 10, from <em>Long page title</em> will be <em>Long pa...</em>"),
       '#default_value' => $config->get(EasyBreadcrumbConstants::TRUNCATOR_MODE),
     ];