Merge changes from HEAD
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DebugUIPreferenceInitializer.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DebugUIPreferenceInitializer.java
index 546c703..34e88f2 100644
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DebugUIPreferenceInitializer.java
+++ b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DebugUIPreferenceInitializer.java
@@ -17,6 +17,8 @@
 import org.eclipse.jface.preference.IPreferenceStore;
 import org.eclipse.jface.preference.PreferenceConverter;
 import org.eclipse.swt.graphics.RGB;
+import org.eclipse.ui.WorkbenchEncoding;
+import org.eclipse.ui.internal.Workbench;
 
 public class DebugUIPreferenceInitializer extends AbstractPreferenceInitializer {
 
@@ -46,7 +48,6 @@
 		prefs.setDefault(IDebugUIConstants.PREF_SKIP_BREAKPOINTS_DURING_RUN_TO_LINE, false);
 		prefs.setDefault(IInternalDebugUIConstants.PREF_RELAUNCH_IN_DEBUG_MODE, MessageDialogWithToggle.NEVER);
 		prefs.setDefault(IInternalDebugUIConstants.PREF_CONTINUE_WITH_COMPILE_ERROR, MessageDialogWithToggle.PROMPT);
-		prefs.setDefault(IInternalDebugUIConstants.PREF_CONSOLE_SCROLL_LOCK, false);
 		
 		//View Management preference page
 		prefs.setDefault(IDebugUIConstants.PREF_MANAGE_VIEW_PERSPECTIVES, IDebugUIConstants.ID_DEBUG_PERSPECTIVE);
@@ -61,6 +62,7 @@
 		prefs.setDefault(IDebugPreferenceConstants.CONSOLE_LOW_WATER_MARK, 80000);
 		prefs.setDefault(IDebugPreferenceConstants.CONSOLE_HIGH_WATER_MARK, 100000);
 		prefs.setDefault(IDebugPreferenceConstants.CONSOLE_TAB_WIDTH, 8);
+		prefs.setDefault(IDebugPreferenceConstants.CONSOLE_ENCODING, WorkbenchEncoding.getWorkbenchDefaultEncoding());
 		
 		PreferenceConverter.setDefault(prefs, IDebugPreferenceConstants.CONSOLE_SYS_OUT_COLOR, new RGB(0, 0, 255));
 		PreferenceConverter.setDefault(prefs, IDebugPreferenceConstants.CONSOLE_SYS_IN_COLOR, new RGB(0, 200, 125));
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DefaultLabelProvider.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DefaultLabelProvider.java
index eedfa92..0cc2781 100644
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DefaultLabelProvider.java
+++ b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/DefaultLabelProvider.java
@@ -383,32 +383,27 @@
 	        				//access and modification
 	        				if (enabled) {
 	        					return IDebugUIConstants.IMG_OBJS_WATCHPOINT;
-	        				} else {
-	        					return IDebugUIConstants.IMG_OBJS_WATCHPOINT_DISABLED;
-	        				}
-	        			} else {
-	        				if (enabled) {
-	        					return IDebugUIConstants.IMG_OBJS_ACCESS_WATCHPOINT;
-	        				} else {
-	        					return IDebugUIConstants.IMG_OBJS_ACCESS_WATCHPOINT_DISABLED;
-	        				}
+	        				} 
+	        				return IDebugUIConstants.IMG_OBJS_WATCHPOINT_DISABLED;
 	        			}
+	        			if (enabled) {
+        					return IDebugUIConstants.IMG_OBJS_ACCESS_WATCHPOINT;
+        				} 
+	        			return IDebugUIConstants.IMG_OBJS_ACCESS_WATCHPOINT_DISABLED;
 	        		} else if (watchpoint.isModification()) {
 	        			if (enabled) {
 	        				return IDebugUIConstants.IMG_OBJS_MODIFICATION_WATCHPOINT;
-	        			} else {
-	        				return IDebugUIConstants.IMG_OBJS_MODIFICATION_WATCHPOINT_DISABLED;
-	        			}
+	        			} 
+	        			return IDebugUIConstants.IMG_OBJS_MODIFICATION_WATCHPOINT_DISABLED;
 	        		} else {
 	        			//neither access nor modification
 	        			return IDebugUIConstants.IMG_OBJS_WATCHPOINT_DISABLED;
 	        		}
-	            } else {
-					if (enabled) {
-						return IDebugUIConstants.IMG_OBJS_BREAKPOINT;
-					} 
-					return IDebugUIConstants.IMG_OBJS_BREAKPOINT_DISABLED;
 	            }
+			    if (enabled) {
+					return IDebugUIConstants.IMG_OBJS_BREAKPOINT;
+				} 
+				return IDebugUIConstants.IMG_OBJS_BREAKPOINT_DISABLED;
 		    } catch (CoreException e) {
 		    }
 		}
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/IInternalDebugUIConstants.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/IInternalDebugUIConstants.java
index 33759ff..af0773b 100644
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/IInternalDebugUIConstants.java
+++ b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/IInternalDebugUIConstants.java
@@ -196,11 +196,6 @@
 	 */
 	public final static String FONT_NAME = IDebugUIConstants.PLUGIN_ID + ".MemoryViewTableFont"; //$NON-NLS-1$
 	
-	/**
-	 * Boolean preference for console scroll lock toggle state.
-	 */
-	public static final String PREF_CONSOLE_SCROLL_LOCK = IDebugUIConstants.PLUGIN_ID + ".console_scroll_lock"; //$NON-NLS-1$
-	
 	public final static int BYTES_PER_LINE = 16;	// number of bytes per line
 	public final static int CHAR_PER_BYTE = 2;		// number of characters to represent one byte
 	public final static int BYTE_PER_CELL = 4;		// number of bytes per cell
diff --git a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ProcessConsolePageParticipant.java b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ProcessConsolePageParticipant.java
index cd1b2c8..d19391f 100644
--- a/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ProcessConsolePageParticipant.java
+++ b/org.eclipse.debug.ui/ui/org/eclipse/debug/internal/ui/views/console/ProcessConsolePageParticipant.java
@@ -21,7 +21,6 @@
 import org.eclipse.debug.core.model.IStreamsProxy;
 import org.eclipse.debug.core.model.IStreamsProxy2;
 import org.eclipse.debug.internal.ui.DebugUIPlugin;
-import org.eclipse.debug.internal.ui.IInternalDebugUIConstants;
 import org.eclipse.debug.ui.DebugUITools;
 import org.eclipse.debug.ui.IDebugUIConstants;
 import org.eclipse.jface.action.IMenuListener;
@@ -56,9 +55,6 @@
  * @since 3.1
  */
 public class ProcessConsolePageParticipant implements IConsolePageParticipant, IShowInSource, IShowInTargetList, IDebugEventSetListener, ISelectionListener, IMenuListener {
-
-	// scroll lock
-	private boolean fIsLocked = DebugUIPlugin.getDefault().getPreferenceStore().getBoolean(IInternalDebugUIConstants.PREF_CONSOLE_SCROLL_LOCK);
 	
 	// actions
 	private ConsoleTerminateAction fTerminate;
@@ -100,7 +96,6 @@
     public void init(IPageBookViewPage page, IConsole console) {
         fPage = page;
         fConsole = (ProcessConsole) console;
-        fConsole.setAutoScroll(!fIsLocked);
         
         fRemoveTerminated = new ConsoleRemoveAllTerminatedAction();
         fTerminate = new ConsoleTerminateAction(fConsole);