Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
View | Details | Raw Unified | Return to bug 345050
Collapse All | Expand All

(-)Eclipse UI/org/eclipse/ui/internal/IWorkbenchConstants.java (+2 lines)
Lines 348-351 Link Here
348
    //Colors
348
    //Colors
349
    public static final String COLOR_HIGHLIGHT = "org.eclipse.ui.highlight"; //$NON-NLS-1$
349
    public static final String COLOR_HIGHLIGHT = "org.eclipse.ui.highlight"; //$NON-NLS-1$
350
350
351
	public static final String TAG_DURABLE = "durable"; //$NON-NLS-1$
352
351
}
353
}
(-)Eclipse UI/org/eclipse/ui/internal/ViewSashContainer.java (-4 / +8 lines)
Lines 118-127 Link Here
118
                folder.setID(partID);
118
                folder.setID(partID);
119
                result.add(folder.restoreState(childMem
119
                result.add(folder.restoreState(childMem
120
                        .getChild(IWorkbenchConstants.TAG_FOLDER)));
120
                        .getChild(IWorkbenchConstants.TAG_FOLDER)));
121
                ContainerPlaceholder placeholder = new ContainerPlaceholder(
121
				if (!folder.getDurable()) {
122
                        partID);
122
					ContainerPlaceholder placeholder = new ContainerPlaceholder(
123
                placeholder.setRealContainer(folder);
123
							partID);
124
                part = placeholder;
124
					placeholder.setRealContainer(folder);
125
					part = placeholder;
126
				} else {
127
					part = folder;
128
				}
125
            }
129
            }
126
            // 1FUN70C: ITPUI:WIN - Shouldn't set Container when not active
130
            // 1FUN70C: ITPUI:WIN - Shouldn't set Container when not active
127
            part.setContainer(this);
131
            part.setContainer(this);
(-)Eclipse UI/org/eclipse/ui/internal/ViewStack.java (+20 lines)
Lines 13-19 Link Here
13
 *******************************************************************************/
13
 *******************************************************************************/
14
package org.eclipse.ui.internal;
14
package org.eclipse.ui.internal;
15
15
16
import org.eclipse.core.runtime.IStatus;
16
import org.eclipse.jface.action.IMenuManager;
17
import org.eclipse.jface.action.IMenuManager;
18
import org.eclipse.ui.IMemento;
17
import org.eclipse.ui.internal.presentations.PresentablePart;
19
import org.eclipse.ui.internal.presentations.PresentablePart;
18
import org.eclipse.ui.internal.presentations.PresentationFactoryUtil;
20
import org.eclipse.ui.internal.presentations.PresentationFactoryUtil;
19
import org.eclipse.ui.internal.presentations.SystemMenuDetach;
21
import org.eclipse.ui.internal.presentations.SystemMenuDetach;
Lines 95-100 Link Here
95
            return false;
97
            return false;
96
        }
98
        }
97
99
100
		// Durable folders should not move
101
		if (durable) {
102
			return false;
103
		}
104
98
        // We need to search if one of the presentations is not moveable
105
        // We need to search if one of the presentations is not moveable
99
        // if that's the case the whole folder should not be moveable
106
        // if that's the case the whole folder should not be moveable
100
        IStackPresentationSite presenationSite;
107
        IStackPresentationSite presenationSite;
Lines 227-230 Link Here
227
	public boolean getDurable () {
234
	public boolean getDurable () {
228
		return this.durable;
235
		return this.durable;
229
	}
236
	}
237
238
	public IStatus saveState(IMemento memento) {
239
		memento.putBoolean(IWorkbenchConstants.TAG_DURABLE, durable);
240
		return super.saveState(memento);
241
	}
242
243
	public IStatus restoreState(IMemento memento) {
244
		Boolean result = memento.getBoolean(IWorkbenchConstants.TAG_DURABLE);
245
		if (result != null) {
246
			this.durable = result.booleanValue();
247
		}
248
		return super.restoreState(memento);
249
	}
230
}
250
}

Return to bug 345050