Index: includes/SF_FormPrinter.php
===================================================================
--- includes/SF_FormPrinter.php	(revision 115464)
+++ includes/SF_FormPrinter.php	(working copy)
@@ -1262,6 +1262,7 @@
 					// handle all the possible values
 					$input_name = $tag_components[1];
 					$input_label = null;
+					$checkbox_is_checked = false;
 					$attr = array();
 
 					// if it's a query, ignore all standard inputs except run query
@@ -1296,14 +1297,21 @@
 									$free_text_preload_page = $sub_components[1];
 								}
 							}
+							// watch and minor inputs need hands "default" tag
+							if ( $input_name == 'watch' || $input_name == 'minor edit' ) {
+								if ( $sub_components[0] == 'default' ) {
+									$checkbox_is_checked = ($sub_components[1] == 'Yes' 
+										|| $sub_components[1] == 'yes');
+								}
+							}
 						}
 					}
 					if ( $input_name == 'summary' ) {
 						$new_text = SFFormUtils::summaryInputHTML( $form_is_disabled, $input_label, $attr );
 					} elseif ( $input_name == 'minor edit' ) {
-						$new_text = SFFormUtils::minorEditInputHTML( $form_is_disabled, $input_label, $attr );
+						$new_text = SFFormUtils::minorEditInputHTML( $form_is_disabled, $checkbox_is_checked, $input_label, $attr );
 					} elseif ( $input_name == 'watch' ) {
-						$new_text = SFFormUtils::watchInputHTML( $form_is_disabled, $input_label, $attr );
+						$new_text = SFFormUtils::watchInputHTML( $form_is_disabled, $checkbox_is_checked, $input_label, $attr );
 					} elseif ( $input_name == 'save' ) {
 						$new_text = SFFormUtils::saveButtonHTML( $form_is_disabled, $input_label, $attr );
 					} elseif ( $input_name == 'save and continue' ) {
Index: includes/SF_FormUtils.php
===================================================================
--- includes/SF_FormUtils.php	(revision 115464)
+++ includes/SF_FormUtils.php	(working copy)
@@ -94,11 +94,11 @@
 		return $text;
 	}
 
-	static function minorEditInputHTML( $is_disabled, $label = null, $attrs = array() ) {
+	static function minorEditInputHTML( $is_disabled, $is_checked = false, $label = null, $attrs = array() ) {
 		global $sfgTabIndex, $wgUser, $wgParser;
 
 		$sfgTabIndex++;
-		$checked = $wgUser->getOption( 'minordefault' );
+		$checked = $is_checked || $wgUser->getOption( 'minordefault' );
 
 		if ( $label == null ) {
 			$label = $wgParser->recursiveTagParse( wfMsg( 'minoredit' ) );
@@ -122,14 +122,14 @@
 		return $text;
 	}
 
-	static function watchInputHTML( $is_disabled, $label = null, $attrs = array() ) {
+	static function watchInputHTML( $is_disabled, $is_checked = false, $label = null, $attrs = array() ) {
 		global $sfgTabIndex, $wgUser, $wgTitle, $wgParser;
 
 		$sfgTabIndex++;
-		$checked = "";
+		$checked = $is_checked;
 		// figure out if the checkbox should be checked -
 		// this code borrowed from /includes/EditPage.php
-		if ( $wgUser->getOption( 'watchdefault' ) ) {
+		if (!$checked && $wgUser->getOption( 'watchdefault' ) ) {
 			# Watch all edits
 			$checked = true;
 		} elseif ( $wgUser->getOption( 'watchcreations' ) && !$wgTitle->exists() ) {
