| 65 | // whatever is still in delta are new activities - restore their | = | 65 | // whatever is still in delta are new activities - restore their |
| 66 | // state | 66 | // state | |
| 67 | loadEnabledStates(activityManagerEvent | 67 | loadEnabledStates(activityManagerEvent | |
| 68 | .getActivityManager().getEnabledActivityIds(), delta); | 68 | .getActivityManager().getEnabledActivityIds(), delta); | |
| 69 | } | 69 | } | |
| 70 | if (activityManagerEvent.haveEnabledActivityIdsChanged()) { | 70 | if (activityManagerEvent.haveEnabledActivityIdsChanged()) { | |
| 71 | saveEnabledStates(); | <> | 71 | saveEnabledStates(false); |
| 72 | } | = | 72 | } |
| 73 | } | 73 | } | |
| 74 | }; | 74 | }; | |
| 75 | 75 | |||
| 76 | /** | 76 | /** | |
| 77 | * The listener that responds to preference changes | 77 | * The listener that responds to preference changes | |
| 258 | support.setEnabledActivityIds(enabledActivities); | = | 258 | support.setEnabledActivityIds(enabledActivities); |
| 259 | } | 259 | } | |
| 260 | 260 | |||
| 261 | /** | 261 | /** | |
| 262 | * Save the enabled states in the preference store. | 262 | * Save the enabled states in the preference store. | |
| 263 | */ | 263 | */ | |
| 264 | protected void saveEnabledStates() { | <> | 264 | protected void saveEnabledStates(boolean persist) { |
| 265 | try { | = | 265 | try { |
| 266 | saving = true; | 266 | saving = true; | |
| 267 | 267 | |||
| 268 | IPreferenceStore store = WorkbenchPlugin.getDefault() | 268 | IPreferenceStore store = WorkbenchPlugin.getDefault() | |
| 269 | .getPreferenceStore(); | 269 | .getPreferenceStore(); | |
| 270 | 270 | |||
| 279 | continue; | = | 279 | continue; |
| 280 | } | 280 | } | |
| 281 | 281 | |||
| 282 | store.setValue(createPreferenceKey(activity.getId()), activity | 282 | store.setValue(createPreferenceKey(activity.getId()), activity | |
| 283 | .isEnabled()); | 283 | .isEnabled()); | |
| 284 | } | 284 | } | |
| <> | 285 | |||
| 286 | if (persist) { | |||
| 285 | WorkbenchPlugin.getDefault().savePluginPreferences(); | 287 | WorkbenchPlugin.getDefault().savePluginPreferences(); | |
| 288 | } | |||
| 286 | } | = | 289 | } |
| 287 | finally { | 290 | finally { | |
| 288 | saving = false; | 291 | saving = false; | |
| 289 | } | 292 | } | |
| 290 | } | 293 | } | |
| 291 | 294 | |||
| 292 | /** | 295 | /** | |
| 293 | * Save the enabled state of all activities. | 296 | * Save the enabled state of all activities. | |
| 294 | */ | 297 | */ | |
| 295 | public void shutdown() { | 298 | public void shutdown() { | |
| 296 | unhookListeners(); | 299 | unhookListeners(); | |
| 297 | saveEnabledStates(); | <> | 300 | saveEnabledStates(true); |
| 298 | } | = | 301 | } |
| 299 | } | 302 | } | |