Step 196: high contrast and colorblind modes

This commit is contained in:
Bill
2026-02-10 04:55:49 -07:00
parent 93f2d7d1e9
commit 09fd7b011e
13 changed files with 219 additions and 3 deletions

View File

@@ -624,6 +624,7 @@ static void renderBottomPanel(EditorState& state) {
leftOpts.showWhitespace = state.ui.showWhitespace;
leftOpts.showLineNumbers = state.ui.showLineNumbers;
leftOpts.showCurrentLine = false;
leftOpts.useAnnotationShapes = state.settings.getUseAnnotationShapes();
leftOpts.lineHeightScale = state.settings.getLineHeightScale();
leftOpts.letterSpacing = state.settings.getLetterSpacing();
leftOpts.highlightLines = &state.diff.beforeLines;
@@ -641,6 +642,7 @@ static void renderBottomPanel(EditorState& state) {
rightOpts.showWhitespace = state.ui.showWhitespace;
rightOpts.showLineNumbers = state.ui.showLineNumbers;
rightOpts.showCurrentLine = false;
rightOpts.useAnnotationShapes = state.settings.getUseAnnotationShapes();
rightOpts.lineHeightScale = state.settings.getLineHeightScale();
rightOpts.letterSpacing = state.settings.getLetterSpacing();
rightOpts.highlightLines = &state.diff.afterLines;

View File

@@ -216,6 +216,7 @@ static void renderEditorPanel(EditorState& state) {
opts.showMinimap = state.ui.showMinimap;
opts.showAnnotations = state.ui.showAnnotations;
opts.showLineNumbers = state.ui.showLineNumbers;
opts.useAnnotationShapes = state.settings.getUseAnnotationShapes();
opts.lineHeightScale = state.settings.getLineHeightScale();
opts.letterSpacing = state.settings.getLetterSpacing();
opts.cursorBlinkRate = state.settings.getCursorBlinkRate();

View File

@@ -349,6 +349,11 @@ static void renderSettingsPanel(EditorState& state) {
state.settings.setReduceMotion(reduceMotionSetting);
settingsChanged = true;
}
bool useAnnotationShapes = state.settings.getUseAnnotationShapes();
if (ImGui::Checkbox("Use Shapes for Annotations", &useAnnotationShapes)) {
state.settings.setUseAnnotationShapes(useAnnotationShapes);
settingsChanged = true;
}
bool blockVulnImports = state.settings.getBlockVulnerableImports();
if (ImGui::Checkbox("Block Vulnerable Imports", &blockVulnImports)) {
state.settings.setBlockVulnerableImports(blockVulnImports);