Fixed bug 55628: Ctrl+o Filters not persistent when set via view menu
diff --git a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/ui/actions/CustomFiltersActionGroup.java b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/ui/actions/CustomFiltersActionGroup.java
index 04ecd9b..cdea144 100644
--- a/org.eclipse.jdt.ui/ui/org/eclipse/jdt/ui/actions/CustomFiltersActionGroup.java
+++ b/org.eclipse.jdt.ui/ui/org/eclipse/jdt/ui/actions/CustomFiltersActionGroup.java
@@ -96,6 +96,12 @@
 
 		/**
 		 * Constructor for FilterActionMenuContributionItem.
+		 * 
+		 * @param actionGroup 	the action group
+		 * @param filterId		the id of the filter
+		 * @param filterName	the name of the filter
+		 * @param state			the initial state of the filter
+		 * @param itemNumber	the menu item index
 		 */
 		public FilterActionMenuContributionItem(CustomFiltersActionGroup actionGroup, String filterId, String filterName, boolean state, int itemNumber) {
 			super(filterId);
@@ -129,8 +135,8 @@
 			});
 		}
 	
-		/**
-		 * Overridden to always return true and force dynamic menu building.
+		/*
+		 * @see org.eclipse.jface.action.IContributionItem#isDynamic()
 		 */
 		public boolean isDynamic() {
 			return true;
@@ -203,7 +209,7 @@
 	/**
 	 * Creates a new <code>CustomFiltersActionGroup</code>.
 	 * 
-	 * @param part		the view part that owns this action group
+	 * @param ownerId	the id of this action group's owner
 	 * @param viewer	the viewer to be filtered
 	 */
 	public CustomFiltersActionGroup(String ownerId, StructuredViewer viewer) {
@@ -266,16 +272,17 @@
     /**
 	 * Sets the enable state of the given filter.
 	 * 
-	 * @param filterDescriptor
-	 * @param state
+	 * @param filterId the id of the filter
+	 * @param state the filter state
 	 */
 	private void setFilter(String filterId, boolean state) {
 		// Renew filter id in LRU stack
 		fLRUFilterIdsStack.remove(filterId);
 		fLRUFilterIdsStack.add(0, filterId);
-		storeViewDefaults();
 		
 		fEnabledFilterIds.put(filterId, new Boolean(state));
+		storeViewDefaults();
+		
 		updateViewerFilters(true);
 	}
 	
@@ -311,6 +318,7 @@
 	/**
 	 * Sets the recently changed filters.
 	 * 
+	 * @param changeHistory the change history
 	 * @since 3.0
 	 */
 	private void setRecentlyChangedFilters(Stack changeHistory) {