diff --git a/field_permissions.module b/field_permissions.module
index 56e2582..daab0c8 100644
--- a/field_permissions.module
+++ b/field_permissions.module
@@ -85,7 +85,7 @@ function field_permissions_form_field_config_edit_form_alter(&$form, FormStateIn
     '#title' => t('Field visibility and permissions'),
     '#type' => 'radios',
     '#options' => $options,
-    '#default_value' => $field->getFieldStorageDefinition()->getThirdPartySetting('field_permissions', 'permission_type', FieldPermissionTypeInterface::ACCESS_PUBLIC),
+    '#default_value' => \Drupal::service('field_permissions.permissions_service')->fieldGetPermissionType($field->getFieldStorageDefinition()),
   ];
 
   // Add in the descriptions.
@@ -115,7 +115,9 @@ function field_permissions_field_config_edit_form_builder($entity_type, \Drupal\
 }
 
 /**
- * Implements hook_form_submit().
+ * Submit handler for the field configuration form.
+ *
+ * @see field_permissions_form_field_config_edit_form_alter()
  */
 function field_permission_field_config_edit_form_submit(array &$form, FormStateInterface $form_state) {
   /** @var FieldDefinitionInterface $field */
diff --git a/src/FieldPermissionsService.php b/src/FieldPermissionsService.php
index 2fd7a43..63883ac 100644
--- a/src/FieldPermissionsService.php
+++ b/src/FieldPermissionsService.php
@@ -86,22 +86,6 @@ class FieldPermissionsService implements FieldPermissionsServiceInterface, Conta
   /**
    * {@inheritdoc}
    */
-  public function getPermissionList(FieldStorageConfigInterface $field) {
-    $permissions = [];
-    $permission_list = $this->getList($field->getName());
-    foreach ($permission_list as $permission_type => $permission_info) {
-      $permission = $permission_type . ' ' . $field->getName();
-      $permissions[$permission] = [
-        'title' => $permission_info['title'],
-        'description' => $permission_info['label'],
-      ];
-    }
-    return $permissions;
-  }
-
-  /**
-   * {@inheritdoc}
-   */
   public function getPermissionsByRole() {
     /** @var \Drupal\user\RoleInterface[] $roles */
     $roles = $this->entityTypeManager->getStorage('user_role')->loadMultiple();
@@ -136,7 +120,7 @@ class FieldPermissionsService implements FieldPermissionsServiceInterface, Conta
     $fields = $this->entityTypeManager->getStorage('field_storage_config')->loadMultiple();
     foreach ($fields as $key => $field) {
       // Check if this plugin defines custom permissions.
-      $permission_type = static::fieldGetPermissionType($field);
+      $permission_type = $this->fieldGetPermissionType($field);
       if ($permission_type !== FieldPermissionTypeInterface::ACCESS_PUBLIC) {
         $plugin = $this->permissionTypeManager->createInstance($permission_type, [], $field);
         if ($plugin instanceof CustomPermissionsInterface) {
diff --git a/src/FieldPermissionsServiceInterface.php b/src/FieldPermissionsServiceInterface.php
index de9c1dc..b7192b3 100644
--- a/src/FieldPermissionsServiceInterface.php
+++ b/src/FieldPermissionsServiceInterface.php
@@ -32,18 +32,6 @@ interface FieldPermissionsServiceInterface {
   public static function getList($field_label = '');
 
   /**
-   * Returns permissions for a given field.
-   *
-   * @param \Drupal\field\FieldStorageConfigInterface $field
-   *   The field to return permissions for.
-   *
-   * @return array
-   *   An array of permissions for a given field, keyed by the permission
-   *   machine name.
-   */
-  public function getPermissionList(FieldStorageConfigInterface $field);
-
-  /**
    * Get all field permissions keyed by role ID.
    *
    * @return array
diff --git a/tests/src/Unit/FieldPermissionsServiceTest.php b/tests/src/Unit/FieldPermissionsServiceTest.php
index 3634a79..77e4b15 100644
--- a/tests/src/Unit/FieldPermissionsServiceTest.php
+++ b/tests/src/Unit/FieldPermissionsServiceTest.php
@@ -86,7 +86,13 @@ class FieldPermissionsServiceTest extends UnitTestCase {
     $storage = $this->prophesize(FieldStorageConfigInterface::class);
     $storage->getThirdPartySetting('field_permissions', 'permission_type', FieldPermissionTypeInterface::ACCESS_PUBLIC)->willReturn('foo');
     $field_definition->getFieldStorageDefinition()->willReturn($storage->reveal());
-    $cases[] = ['view', $field_item_list, $account->reveal(), $field_definition->reveal(), TRUE];
+    $cases[] = [
+      'view',
+      $field_item_list,
+      $account->reveal(),
+      $field_definition->reveal(),
+      TRUE,
+    ];
 
     // No admin roles, but public access.
     $account = $this->prophesize(AccountInterface::class);
@@ -95,7 +101,13 @@ class FieldPermissionsServiceTest extends UnitTestCase {
     $storage = $this->prophesize(FieldStorageConfigInterface::class);
     $storage->getThirdPartySetting('field_permissions', 'permission_type', FieldPermissionTypeInterface::ACCESS_PUBLIC)->willReturn(FieldPermissionTypeInterface::ACCESS_PUBLIC);
     $field_definition->getFieldStorageDefinition()->willReturn($storage->reveal());
-    $cases[] = ['view', $field_item_list, $account->reveal(), $field_definition->reveal(), TRUE];
+    $cases[] = [
+      'view',
+      $field_item_list,
+      $account->reveal(),
+      $field_definition->reveal(),
+      TRUE,
+    ];
 
     // @todo More complex cases.
 
