Okay, obviously ReleaseBuilder won't work.

How about that startup wizard?

On Fri, Mar 15, 2024 at 6:43 PM Chris Muller <asqueaker@gmail.com> wrote:
I just finished researching why my "Map CONTROL keys to COMMAND keys" preference keeps getting set after I know I unset it multiple times, and stumbled upon this.

It's a bug to silently override the user's preferences after they explicitly set them, full stop.  Rather than bring back this #automaticPlatformSettings preference, though, how about moving the code in EventSensor class>>#startUp: to where the release image is initialized?  ReleaseBuilder?

 - Chris


On Sat, Nov 27, 2021 at 3:01 PM <commits@source.squeak.org> wrote:
Christoph Thiede uploaded a new version of System to project The Trunk:
http://source.squeak.org/trunk/System-ct.1257.mcz

==================== Summary ====================

Name: System-ct.1257
Author: ct
Time: 27 November 2021, 10:01:11.385431 pm
UUID: 5df16e76-2520-984a-8fc6-37ca1b36b76c
Ancestors: System-ct.1256

Complements Kernel-ct.1426 (removal of #automaticPlatformSettings preference). Step 2/2.

=============== Diff against System-ct.1256 ===============

Item was removed:
- ----- Method: Preferences class>>automaticPlatformSettings (in category 'standard queries') -----
- automaticPlatformSettings
-       ^ self
-               valueOfFlag: #automaticPlatformSettings
-               ifAbsent: [ true ]!

Item was changed:
  ----- Method: Preferences class>>defaultValueTableForCurrentRelease (in category 'defaults') -----
  defaultValueTableForCurrentRelease
        "Answer a table defining default values for all the preferences in the release.  Returns a list of (pref-symbol, boolean-symbol) pairs"

        ^  #(
                (abbreviatedBrowserButtons false)
                (alternativeBrowseIt false)
                (annotationPanes false)
                (areaFillsAreTolerant false)
                (areaFillsAreVeryTolerant false)
                (automaticFlapLayout true)
                (automaticKeyGeneration false)
-               (automaticPlatformSettings true)
                (automaticViewerPlacement true)
                (balloonHelpEnabled true)
                (balloonHelpInMessageLists false)
                (batchPenTrails false)
                (capitalizedReferences true)
                (caseSensitiveFinds false)
                (cautionBeforeClosing false)
                (changeSetVersionNumbers true)
                (checkForSlips true)
                (checkForUnsavedProjects true)
                (classicNavigatorEnabled false)
                (cmdDotEnabled true)
                (collapseWindowsInPlace false)
                (compactViewerFlaps false)
                (compressFlashImages false)
                (confirmFirstUseOfStyle true)
                (conversionMethodsAtFileOut false)
                (debugHaloHandle true)
                (debugPrintSpaceLog false)
                (debugShowDamage false)
                (decorateBrowserButtons true)
                (diffsInChangeList true)
                (diffsWithPrettyPrint false)
                (dismissAllOnOptionClose false)
                (dragNDropWithAnimation false)
                (eToyFriendly false)
                (eToyLoginEnabled false)
                (enableLocalSave true)
                (extractFlashInHighQuality true)
                (extractFlashInHighestQuality false)
                (fastDragWindowForMorphic true)
                (fenceEnabled true)
                (fullScreenLeavesDeskMargins true)
                (haloTransitions false)
                (higherPerformance false)
                (honorDesktopCmdKeys true)
                (includeSoundControlInNavigator false)
                (infiniteUndo false)
                (logDebuggerStackToFile true)
                (magicHalos false)
                (menuButtonInToolPane false)
                (menuColorFromWorld false)
                (menuKeyboardControl false) 
                (modalColorPickers true)
                (mouseOverForKeyboardFocus false)
                (mouseOverHalos false)
                (mvcProjectsAllowed true)
                (navigatorOnLeftEdge true)
                (noviceMode false)
                (okToReinitializeFlaps true)
                (optionalButtons true)
                (passwordsOnPublish false)
                (personalizedWorldMenu true)
                (postscriptStoredAsEPS false)
                (projectViewsInWindows true)
                (projectZoom true)
                (projectsSentToDisk false)
                (propertySheetFromHalo false)
                (readDocumentAtStartup true)
                (restartAlsoProceeds false)
                (reverseWindowStagger true)
                (roundedMenuCorners true)
                (scrollBarsNarrow false)
                (scrollBarsOnRight true)
                (securityChecksEnabled false)
                (selectiveHalos false)
                (showBoundsInHalo false)
                (showDirectionForSketches false)
                (showDirectionHandles false)
                (showFlapsWhenPublishing false)
                (showProjectNavigator false)
                (showSecurityStatus true)
                (showSharedFlaps true)
                (signProjectFiles true)
                (simpleMenus false)
                (smartUpdating true)
                (startInUntrustedDirectory false)
                (systemWindowEmbedOK false)
                (tileTranslucentDrag true)
                (timeStampsInMenuTitles true)
                (turnOffPowerManager false)
                (twentyFourHourFileStamps true)
                (typeCheckingInTileScripting true)
                (uniTilesClassic true)
                (uniqueNamesInHalos false)
                (universalTiles false)
                (unlimitedPaintArea false)
                (useButtonPropertiesToFire false)
                (useUndo true)
                (viewersInFlaps true)
                (warnAboutInsecureContent true)
                (warnIfNoChangesFile true)
                (warnIfNoSourcesFile true))


  "
  Preferences defaultValueTableForCurrentRelease do:
        [:pair | (Preferences preferenceAt: pair first ifAbsent: [nil]) ifNotNilDo:
                        [:pref | pref defaultValue: (pair last == true)]].
  Preferences chooseInitialSettings.
  "!

Item was changed:
  ----- Method: SmalltalkImage>>setPlatformPreferences (in category 'snapshot and quit') -----
  setPlatformPreferences
        "Set some platform specific preferences on system startup"
        | platform specs |
-       Preferences automaticPlatformSettings ifFalse:[^self].
        platform := self platformName.
+       specs := #().
-       specs :=        #().
        platform = 'Win32' ifTrue:[
                specs := #()].
        platform = 'Mac OS' ifTrue:[
                specs := #()].
        specs do:[:tuple|
                Preferences setPreference: tuple first toValue: (tuple last == true).
+       ].!
-       ].
- !

Item was changed:
  (PackageInfo named: 'System') postscript: '"Add the new primitive error codes to the specialObjectsArray if they are not there yet."
  Smalltalk primitiveErrorTable size < 26 ifTrue:
        [Smalltalk recreateSpecialObjectsArray].

+ (Preferences preferenceAt: #debugLogTimestamp) categoryList: #(''debug'').
+
+ Preferences removePreference: #automaticPlatformSettings.'!
- (Preferences preferenceAt: #debugLogTimestamp) categoryList: #(''debug'').'!