diff --git a/modules/webapp/src/main/elm/Comp/ClassifierSettingsForm.elm b/modules/webapp/src/main/elm/Comp/ClassifierSettingsForm.elm
index 3850dab2..e95dbd6e 100644
--- a/modules/webapp/src/main/elm/Comp/ClassifierSettingsForm.elm
+++ b/modules/webapp/src/main/elm/Comp/ClassifierSettingsForm.elm
@@ -190,6 +190,7 @@ view2 settings model =
             Comp.FixedDropdown.Item
                 model.categoryListType
                 (Data.ListType.label model.categoryListType)
+                Nothing
     in
     div []
         [ Markdown.toHtml [ class "px-2 py-2 opacity-75" ]
diff --git a/modules/webapp/src/main/elm/Comp/ColorTagger.elm b/modules/webapp/src/main/elm/Comp/ColorTagger.elm
index a606b337..a65ddba2 100644
--- a/modules/webapp/src/main/elm/Comp/ColorTagger.elm
+++ b/modules/webapp/src/main/elm/Comp/ColorTagger.elm
@@ -101,7 +101,7 @@ view2 data opts model =
             [ text opts.label ]
         , Html.map LeftMsg
             (Comp.FixedDropdown.view2
-                (Maybe.map (\s -> Comp.FixedDropdown.Item s s) model.leftSelect)
+                (Maybe.map (\s -> Comp.FixedDropdown.Item s s Nothing) model.leftSelect)
                 model.leftDropdown
             )
         , div [ class "field" ]
diff --git a/modules/webapp/src/main/elm/Comp/ContactField.elm b/modules/webapp/src/main/elm/Comp/ContactField.elm
index 986d94de..d27646f1 100644
--- a/modules/webapp/src/main/elm/Comp/ContactField.elm
+++ b/modules/webapp/src/main/elm/Comp/ContactField.elm
@@ -45,6 +45,7 @@ makeDropdownItem : ContactType -> Comp.FixedDropdown.Item ContactType
 makeDropdownItem ct =
     { id = ct
     , display = Data.ContactType.toString ct
+    , icon = Nothing
     }
 
 
diff --git a/modules/webapp/src/main/elm/Comp/CustomFieldForm.elm b/modules/webapp/src/main/elm/Comp/CustomFieldForm.elm
index 2881a4dc..b1d54aa9 100644
--- a/modules/webapp/src/main/elm/Comp/CustomFieldForm.elm
+++ b/modules/webapp/src/main/elm/Comp/CustomFieldForm.elm
@@ -201,7 +201,7 @@ view2 : ViewSettings -> Model -> List (Html Msg)
 view2 viewSettings model =
     let
         mkItem cft =
-            Comp.FixedDropdown.Item cft (Data.CustomFieldType.label cft)
+            Comp.FixedDropdown.Item cft (Data.CustomFieldType.label cft) Nothing
 
         dimmerSettings =
             Comp.YesNoDimmer.defaultSettings2 "Really delete this custom field?"
diff --git a/modules/webapp/src/main/elm/Comp/CustomFieldMultiInput.elm b/modules/webapp/src/main/elm/Comp/CustomFieldMultiInput.elm
index 73c8981a..459d8138 100644
--- a/modules/webapp/src/main/elm/Comp/CustomFieldMultiInput.elm
+++ b/modules/webapp/src/main/elm/Comp/CustomFieldMultiInput.elm
@@ -147,7 +147,7 @@ type alias UpdateResult =
 
 mkItem : CustomField -> Comp.FixedDropdown.Item CustomField
 mkItem f =
-    Comp.FixedDropdown.Item f (Maybe.withDefault f.name f.label)
+    Comp.FixedDropdown.Item f (Maybe.withDefault f.name f.label) Nothing
 
 
 update : Flags -> Msg -> Model -> UpdateResult
diff --git a/modules/webapp/src/main/elm/Comp/EquipmentForm.elm b/modules/webapp/src/main/elm/Comp/EquipmentForm.elm
index 2968db76..695c64ef 100644
--- a/modules/webapp/src/main/elm/Comp/EquipmentForm.elm
+++ b/modules/webapp/src/main/elm/Comp/EquipmentForm.elm
@@ -161,4 +161,4 @@ view2 model =
 makeUseItem : Model -> Maybe (Comp.FixedDropdown.Item EquipmentUse)
 makeUseItem model =
     Just <|
-        Comp.FixedDropdown.Item model.use (Data.EquipmentUse.label model.use)
+        Comp.FixedDropdown.Item model.use (Data.EquipmentUse.label model.use) Nothing
diff --git a/modules/webapp/src/main/elm/Comp/FixedDropdown.elm b/modules/webapp/src/main/elm/Comp/FixedDropdown.elm
index 5d94d369..6679b06f 100644
--- a/modules/webapp/src/main/elm/Comp/FixedDropdown.elm
+++ b/modules/webapp/src/main/elm/Comp/FixedDropdown.elm
@@ -23,6 +23,7 @@ import Util.List
 type alias Item a =
     { id : a
     , display : String
+    , icon : Maybe String
     }
 
 
@@ -49,19 +50,19 @@ init options =
 
 initString : List String -> Model String
 initString strings =
-    init <| List.map (\s -> Item s s) strings
+    init <| List.map (\s -> Item s s Nothing) strings
 
 
 initMap : (a -> String) -> List a -> Model a
 initMap elToString els =
-    init <| List.map (\a -> Item a (elToString a)) els
+    init <| List.map (\a -> Item a (elToString a) Nothing) els
 
 
 initTuple : List ( String, a ) -> Model a
 initTuple tuples =
     let
         mkItem ( txt, id ) =
-            Item id txt
+            Item id txt Nothing
     in
     init <| List.map mkItem tuples
 
@@ -170,6 +171,14 @@ update msg model =
 viewStyled2 : DS.DropdownStyle -> Bool -> Maybe (Item a) -> Model a -> Html (Msg a)
 viewStyled2 style error sel model =
     let
+        iconItem item =
+            span
+                [ classList [ ( "hidden", item.icon == Nothing ) ]
+                , class (Maybe.withDefault "" item.icon)
+                , class "mr-2"
+                ]
+                []
+
         renderItem item =
             a
                 [ href "#"
@@ -180,8 +189,13 @@ viewStyled2 style error sel model =
                     ]
                 , onClick (SelectItem2 item)
                 ]
-                [ text item.display
+                [ iconItem item
+                , text item.display
                 ]
+
+        selIcon =
+            Maybe.map iconItem sel
+                |> Maybe.withDefault (span [ class "hidden" ] [])
     in
     div
         [ class ("relative " ++ style.root)
@@ -200,7 +214,8 @@ viewStyled2 style error sel model =
                     [ ( "opacity-50", sel == Nothing )
                     ]
                 ]
-                [ Maybe.map .display sel
+                [ selIcon
+                , Maybe.map .display sel
                     |> Maybe.withDefault "Select…"
                     |> text
                 ]
diff --git a/modules/webapp/src/main/elm/Comp/FolderDetail.elm b/modules/webapp/src/main/elm/Comp/FolderDetail.elm
index 5e4a38af..a86a12eb 100644
--- a/modules/webapp/src/main/elm/Comp/FolderDetail.elm
+++ b/modules/webapp/src/main/elm/Comp/FolderDetail.elm
@@ -277,7 +277,7 @@ update flags msg model =
 
 makeItem : IdName -> Comp.FixedDropdown.Item IdName
 makeItem idn =
-    Comp.FixedDropdown.Item idn idn.name
+    Comp.FixedDropdown.Item idn idn.name Nothing
 
 
 view2 : Flags -> Model -> Html Msg
diff --git a/modules/webapp/src/main/elm/Comp/OrgForm.elm b/modules/webapp/src/main/elm/Comp/OrgForm.elm
index 5f2584fe..f7305923 100644
--- a/modules/webapp/src/main/elm/Comp/OrgForm.elm
+++ b/modules/webapp/src/main/elm/Comp/OrgForm.elm
@@ -150,7 +150,7 @@ update flags msg model =
 makeUseItem : Model -> Maybe (Comp.FixedDropdown.Item OrgUse)
 makeUseItem model =
     Just <|
-        Comp.FixedDropdown.Item model.use (Data.OrgUse.label model.use)
+        Comp.FixedDropdown.Item model.use (Data.OrgUse.label model.use) Nothing
 
 
 view2 : Bool -> UiSettings -> Model -> Html Msg
diff --git a/modules/webapp/src/main/elm/Comp/PersonForm.elm b/modules/webapp/src/main/elm/Comp/PersonForm.elm
index e9b35c79..0c875fe0 100644
--- a/modules/webapp/src/main/elm/Comp/PersonForm.elm
+++ b/modules/webapp/src/main/elm/Comp/PersonForm.elm
@@ -179,7 +179,7 @@ update flags msg model =
 makeUseItem : Model -> Maybe (Comp.FixedDropdown.Item PersonUse)
 makeUseItem model =
     Just <|
-        Comp.FixedDropdown.Item model.use (Data.PersonUse.label model.use)
+        Comp.FixedDropdown.Item model.use (Data.PersonUse.label model.use) Nothing
 
 
 
diff --git a/modules/webapp/src/main/elm/Comp/ScanMailboxForm.elm b/modules/webapp/src/main/elm/Comp/ScanMailboxForm.elm
index 3e23a981..926c0267 100644
--- a/modules/webapp/src/main/elm/Comp/ScanMailboxForm.elm
+++ b/modules/webapp/src/main/elm/Comp/ScanMailboxForm.elm
@@ -237,7 +237,7 @@ init flags =
 
 mkLanguageItem : Language -> Comp.FixedDropdown.Item Language
 mkLanguageItem lang =
-    Comp.FixedDropdown.Item lang (Data.Language.toName lang)
+    Comp.FixedDropdown.Item lang (Data.Language.toName lang) Nothing
 
 
 
diff --git a/modules/webapp/src/main/elm/Comp/SourceForm.elm b/modules/webapp/src/main/elm/Comp/SourceForm.elm
index bca6a32e..e762d9a3 100644
--- a/modules/webapp/src/main/elm/Comp/SourceForm.elm
+++ b/modules/webapp/src/main/elm/Comp/SourceForm.elm
@@ -336,6 +336,7 @@ view2 _ settings model =
             Comp.FixedDropdown.Item
                 model.priority
                 (Data.Priority.toName model.priority)
+                Nothing
     in
     div [ class "flex flex-col" ]
         [ div [ class "mb-4" ]
diff --git a/modules/webapp/src/main/elm/Page/Upload/Data.elm b/modules/webapp/src/main/elm/Page/Upload/Data.elm
index 8c4632c3..40255518 100644
--- a/modules/webapp/src/main/elm/Page/Upload/Data.elm
+++ b/modules/webapp/src/main/elm/Page/Upload/Data.elm
@@ -40,7 +40,7 @@ type alias Model =
 
 mkLanguageItem : Language -> Comp.FixedDropdown.Item Language
 mkLanguageItem lang =
-    Comp.FixedDropdown.Item lang (Data.Language.toName lang)
+    Comp.FixedDropdown.Item lang (Data.Language.toName lang) Nothing
 
 
 emptyModel : Model