diff --git a/src/de/deadlocker8/budgetmaster/ui/CategoryController.java b/src/de/deadlocker8/budgetmaster/ui/CategoryController.java
index 413622a226caa0e82bfd862e6686638741cf1b62..132ff978a14404d405a50888dcf9feb172bcb0ef 100644
--- a/src/de/deadlocker8/budgetmaster/ui/CategoryController.java
+++ b/src/de/deadlocker8/budgetmaster/ui/CategoryController.java
@@ -12,6 +12,7 @@ import fontAwesome.FontIconType;
 import javafx.application.Platform;
 import javafx.beans.value.ChangeListener;
 import javafx.beans.value.ObservableValue;
+import javafx.event.EventHandler;
 import javafx.fxml.FXML;
 import javafx.fxml.FXMLLoader;
 import javafx.scene.Parent;
@@ -20,6 +21,7 @@ import javafx.scene.control.Button;
 import javafx.scene.control.Label;
 import javafx.scene.control.ListCell;
 import javafx.scene.control.ListView;
+import javafx.scene.input.MouseEvent;
 import javafx.scene.layout.AnchorPane;
 import javafx.stage.Modality;
 import javafx.stage.Stage;
@@ -44,7 +46,23 @@ public class CategoryController implements Refreshable
 			@Override
 			public ListCell<Category> call(ListView<Category> param)
 			{
-				return new CategoryCell(thisController);
+				CategoryCell cell = new  CategoryCell(thisController);
+				cell.addEventFilter(MouseEvent.MOUSE_CLICKED, new EventHandler<MouseEvent>()
+				{
+					@Override
+					public void handle(MouseEvent event)
+					{
+						if(event.getClickCount() == 2)
+						{							
+							// don't allow editing of category "none"
+							if(cell.getItem().getID() != 1)
+							{
+								newCategory(true, cell.getItem());
+							}
+						}
+					}
+				});
+				return cell;
 			}
 		});
 
diff --git a/src/de/deadlocker8/budgetmaster/ui/PaymentController.java b/src/de/deadlocker8/budgetmaster/ui/PaymentController.java
index bb8e83b04bffff61ed232dd6dc0fb2b67a26d6c3..69defde608fa9665d63054ff4e7470e4cf49522e 100644
--- a/src/de/deadlocker8/budgetmaster/ui/PaymentController.java
+++ b/src/de/deadlocker8/budgetmaster/ui/PaymentController.java
@@ -64,12 +64,11 @@ public class PaymentController implements Refreshable
 					public void handle(MouseEvent event)
 					{
 						if(event.getClickCount() == 2)
-						{
-							PaymentCell c = (PaymentCell)event.getSource();
+						{						
 							// don't allow editing of payment "rest"
-							if(c.getItem().getCategoryID() != 2)
+							if(cell.getItem().getCategoryID() != 2)
 							{
-								payment(!c.getItem().isIncome(), true, c.getItem());
+								payment(!cell.getItem().isIncome(), true, cell.getItem());
 							}
 						}
 					}