diff --git a/hierarchical_select.module b/hierarchical_select.module
index 64095af..71702e3 100644
--- a/hierarchical_select.module
+++ b/hierarchical_select.module
@@ -2040,8 +2040,9 @@ function _hierarchical_select_dropbox_generate($config, $selection) {
         }
       }
     }
-
-    usort($dropbox->lineages, '_hierarchical_select_dropbox_sort');
+    if($config['dropbox']['sort']){
+      usort($dropbox->lineages, '_hierarchical_select_dropbox_sort');
+    }
 
     // Now store each lineage's selection too. This is needed on the client side
     // to enable the remove button to let the server know which selected items
diff --git a/includes/common.inc b/includes/common.inc
index 1451721..6e96017 100644
--- a/includes/common.inc
+++ b/includes/common.inc
@@ -291,6 +291,13 @@ function hierarchical_select_common_config_form($module, $params, $config_id, $d
     '#default_value' => (isset($config['dropbox']['reset_hs'])) ? $config['dropbox']['reset_hs'] : NULL,
     '#attributes' => array('class' => array('dropbox-reset-hs')),
   );
+  $form['dropbox']['sort'] = array(
+    '#type' => 'checkbox',
+    '#title' => t('Sort dropbox items'),
+    '#description' => t('Automatically sort items added to the dropbox. If unchecked new items will be added to the end of the dropbox list.'),
+    '#default_value' => (isset($config['dropbox']['sort'])) ? $config['dropbox']['sort'] : 1,
+    '#attributes' => array('class' => array('dropbox-sort')),
+  );
 
   if (module_hook($module, 'hierarchical_select_create_item')) {
     $form['editability'] = array(
