diff --git a/plugins/context_reaction_block.inc b/plugins/context_reaction_block.inc
index 8c545e19dfc83d8ed3c5de70e3c09e27dadf75e9..7526993d9996cc570b2d8a8ed489665b0c4a317e 100644
--- a/plugins/context_reaction_block.inc
+++ b/plugins/context_reaction_block.inc
@@ -43,7 +43,7 @@ class context_reaction_block extends context_reaction {
       if (!isset($form['selector'][$group])) {
         $form['selector'][$group] = array(
           '#type' => 'fieldset',
-          '#collapsible' => TRUE, 
+          '#collapsible' => TRUE,
           '#collapsed' => TRUE,
           '#title' => isset($block->context_group) ? $block->context_group : $modules[$block->module],
         );
@@ -64,7 +64,8 @@ class context_reaction_block extends context_reaction {
       '#tree' => TRUE,
       '#theme' => 'context_block_regions_form',
     );
-    foreach ($this->system_region_list($theme_key, REGIONS_VISIBLE) as $region => $label) {
+    foreach ($this->get_active_regions(REGIONS_VISIBLE) as $region => $label) {
+    //foreach ($this->system_region_list($theme_key, REGIONS_VISIBLE) as $region => $label) {
       $form['blocks'][$region] = array(
         '#type' => 'item',
         '#title' => $label,
@@ -221,7 +222,7 @@ class context_reaction_block extends context_reaction {
     }
 
     // Populate all block regions
-    $all_regions = $this->system_region_list($theme);
+    $all_regions = $this->get_active_regions();
 
     // Load all region content assigned via blocks.
     foreach (array_keys($all_regions) as $region) {
@@ -261,7 +262,7 @@ class context_reaction_block extends context_reaction {
    */
   protected function is_enabled_region($region) {
     global $theme;
-    $regions = array_keys($this->system_region_list($theme));
+    $regions = array_keys($this->get_active_regions());
     return in_array($region, $regions, TRUE);
   }
 
@@ -296,7 +297,7 @@ class context_reaction_block extends context_reaction {
       return FALSE;
     }
     // Check that this region is not hidden
-    $visible = $this->system_region_list($theme, REGIONS_VISIBLE);
+    $visible = $this->get_active_regions(REGIONS_VISIBLE);
     return $requirements && $this->is_enabled_region($region) && isset($visible[$region]);
   }
 
@@ -326,7 +327,7 @@ class context_reaction_block extends context_reaction {
          context_isset('context_ui', 'context_ui_editor_present'))
     ) {
       global $theme;
-      $regions = $this->system_region_list($theme);
+      $regions = $this->get_active_regions();
       $name = isset($regions[$region]) ? $regions[$region] : $region;
       // The negative weight + sorted will push our region marker to the top of the region
       $build['context'] = array(
@@ -384,7 +385,7 @@ class context_reaction_block extends context_reaction {
           }
         }
       }
-      
+
       $this->is_editable_check($context_blocks);
       global $theme;
       $active_regions = $this->system_region_list($theme);
@@ -409,7 +410,7 @@ class context_reaction_block extends context_reaction {
   }
 
   /**
-   * Determine if there is an active context editor block, and set a flag.  We will set a flag so 
+   * Determine if there is an active context editor block, and set a flag.  We will set a flag so
    * that we can make sure that blocks with empty content have some default content.  This is
    * needed so the save of the context inline editor does not remove the blocks with no content.
    */
@@ -432,7 +433,7 @@ class context_reaction_block extends context_reaction {
       }
     }
   }
-  
+
   /**
    * Generate the safe weight range for a block being added to a region such that
    * there are enough potential unique weights to support all blocks.
@@ -618,7 +619,7 @@ class context_reaction_block extends context_reaction {
         module_load_include('module', 'block', 'block');
         $block = $info[$bid];
         $block->title = isset($block->title) ? $block->title : '';
-        $block->context = $context;        
+        $block->context = $context;
         $block->region = '';
         $rendered_blocks = _block_render_blocks(array($block)); // For E_STRICT warning
         $block = array_shift($rendered_blocks);
@@ -667,4 +668,31 @@ class context_reaction_block extends context_reaction {
     }
     return $allowed;
   }
+
+  /**
+   * Get all regions for all active themes.
+   */
+  function get_active_regions($show = REGIONS_ALL) {
+    $regions = array();
+    $default_theme = variable_get('theme_default', 'bartik');
+    foreach (list_themes() as $theme) {
+      if ($theme->status) {
+        foreach (system_region_list($theme->name, $show) as $theme_region => $desc) {
+          if (!array_key_exists($theme_region, $regions)) {
+            $regions[$theme_region] = array();
+          }
+          if ($theme->name == $default_theme) {
+            $regions[$theme_region][] = '<strong>' . $theme->name . '</strong>';
+          }
+          else {
+            $regions[$theme_region][] = $theme->name;
+          }
+        }
+      }
+    }
+    foreach ($regions as $region => $themes) {
+      $regions[$region] = $region . ' (' . implode(', ', $themes) . ')';
+    }
+    return $regions;
+  }
 }
