Draft
Conversation
…-Night-Mode into winui3-coloriztionpage # Conflicts: # AutoDarkModeApp/Strings/ar/Resources.resw # AutoDarkModeApp/Strings/cs/Resources.resw # AutoDarkModeApp/Strings/de/Resources.resw # AutoDarkModeApp/Strings/el-gr/Resources.resw # AutoDarkModeApp/Strings/en-us/Resources.resw # AutoDarkModeApp/Strings/es/Resources.resw # AutoDarkModeApp/Strings/fa/Resources.resw # AutoDarkModeApp/Strings/fr/Resources.resw # AutoDarkModeApp/Strings/he/Resources.resw # AutoDarkModeApp/Strings/hu/Resources.resw # AutoDarkModeApp/Strings/id/Resources.resw # AutoDarkModeApp/Strings/it/Resources.resw # AutoDarkModeApp/Strings/ja/Resources.resw # AutoDarkModeApp/Strings/ko/Resources.resw # AutoDarkModeApp/Strings/nb-no/Resources.resw # AutoDarkModeApp/Strings/nl/Resources.resw # AutoDarkModeApp/Strings/pl/Resources.resw # AutoDarkModeApp/Strings/pt-br/Resources.resw # AutoDarkModeApp/Strings/pt-pt/Resources.resw # AutoDarkModeApp/Strings/ro/Resources.resw # AutoDarkModeApp/Strings/ru/Resources.resw # AutoDarkModeApp/Strings/sr/Resources.resw # AutoDarkModeApp/Strings/sv/Resources.resw # AutoDarkModeApp/Strings/tr/Resources.resw # AutoDarkModeApp/Strings/uk/Resources.resw # AutoDarkModeApp/Strings/vi/Resources.resw # AutoDarkModeApp/Strings/zh-hans/Resources.resw # AutoDarkModeApp/Strings/zh-hant/Resources.resw # AutoDarkModeApp/Views/ColorizationPage.xaml
disable controls
Currently translated at 82.9% (239 of 288 strings) Translated using Weblate (Persian) Currently translated at 82.6% (238 of 288 strings) Translated using Weblate (Hebrew) Currently translated at 82.6% (238 of 288 strings) Translated using Weblate (Swedish) Currently translated at 82.6% (238 of 288 strings) Translated using Weblate (Serbian) Currently translated at 82.6% (238 of 288 strings) Translated using Weblate (Romanian) Currently translated at 82.6% (238 of 288 strings) Translated using Weblate (Portuguese (Portugal)) Currently translated at 82.6% (238 of 288 strings) Translated using Weblate (Portuguese (Brazil)) Currently translated at 92.7% (267 of 288 strings) Translated using Weblate (Norwegian Bokmål) Currently translated at 82.6% (238 of 288 strings) Translated using Weblate (Chinese (Traditional Han script)) Currently translated at 82.6% (238 of 288 strings) Translated using Weblate (Chinese (Simplified Han script)) Currently translated at 90.9% (262 of 288 strings) Translated using Weblate (Vietnamese) Currently translated at 82.6% (238 of 288 strings) Translated using Weblate (Ukrainian) Currently translated at 90.9% (262 of 288 strings) Translated using Weblate (Turkish) Currently translated at 82.6% (238 of 288 strings) Translated using Weblate (Russian) Currently translated at 82.6% (238 of 288 strings) Translated using Weblate (Polish) Currently translated at 84.7% (244 of 288 strings) Translated using Weblate (Dutch) Currently translated at 91.3% (263 of 288 strings) Translated using Weblate (Korean) Currently translated at 82.6% (238 of 288 strings) Translated using Weblate (Japanese) Currently translated at 86.8% (250 of 288 strings) Translated using Weblate (Italian) Currently translated at 82.6% (238 of 288 strings) Translated using Weblate (Indonesian) Currently translated at 82.6% (238 of 288 strings) Translated using Weblate (Hungarian) Currently translated at 82.6% (238 of 288 strings) Translated using Weblate (French) Currently translated at 82.6% (238 of 288 strings) Translated using Weblate (Spanish) Currently translated at 84.0% (242 of 288 strings) Translated using Weblate (Greek) Currently translated at 90.6% (261 of 288 strings) Translated using Weblate (German) Currently translated at 96.8% (279 of 288 strings) Translated using Weblate (Czech) Currently translated at 82.6% (238 of 288 strings) Co-authored-by: Anonymous <noreply@weblate.org> Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/ar/ Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/cs/ Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/de/ Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/el/ Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/es/ Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/fa/ Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/fr/ Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/he/ Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/hu/ Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/id/ Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/it/ Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/ja/ Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/ko/ Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/nb_NO/ Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/nl/ Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/pl/ Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/pt_BR/ Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/pt_PT/ Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/ro/ Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/ru/ Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/sr/ Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/sv/ Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/tr/ Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/uk/ Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/vi/ Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/zh_Hans/ Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/zh_Hant/ Translation: Auto Dark Mode/App
Currently translated at 100.0% (288 of 288 strings) Co-authored-by: 大王叫我来巡山 <hamburger2048@users.noreply.hosted.weblate.org> Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/zh_Hans/ Translation: Auto Dark Mode/App
Currently translated at 100.0% (288 of 288 strings) Co-authored-by: dlawoals2713 <dlawoals2713@users.noreply.hosted.weblate.org> Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/ko/ Translation: Auto Dark Mode/App
Currently translated at 98.9% (285 of 288 strings) Translated using Weblate (Dutch) Currently translated at 91.6% (264 of 288 strings) Co-authored-by: Jay <jm.paans@gmail.com> Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/nl/ Translation: Auto Dark Mode/App
Currently translated at 100.0% (288 of 288 strings) Co-authored-by: Максим Горпиніч <gorpinicmaksim0@gmail.com> Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/uk/ Translation: Auto Dark Mode/App
…s/Windows-Auto-Night-Mode into ChenYiLins-winui3-coloriztionpage
* Translated using Weblate (German) Currently translated at 100.0% (288 of 288 strings) Co-authored-by: Martin Wilichowski <martin.wilichowski@gmx.de> Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/de/ Translation: Auto Dark Mode/App * Translated using Weblate (Chinese (Traditional Han script)) Currently translated at 99.3% (286 of 288 strings) Co-authored-by: hugoalh <hugoalh@users.noreply.hosted.weblate.org> Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/zh_Hant/ Translation: Auto Dark Mode/App * Translated using Weblate (Persian) Currently translated at 86.1% (248 of 288 strings) Co-authored-by: Moji <moj.enjoy@gmail.com> Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/fa/ Translation: Auto Dark Mode/App * Translated using Weblate (Chinese (Simplified Han script)) Currently translated at 100.0% (288 of 288 strings) Translated using Weblate (Chinese (Simplified Han script)) Currently translated at 100.0% (288 of 288 strings) Co-authored-by: Kazuto Iris <78157415+kazutoiris@users.noreply.github.com> Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/zh_Hans/ Translation: Auto Dark Mode/App * Translated using Weblate (Spanish) Currently translated at 84.3% (243 of 288 strings) Co-authored-by: Daniel <daniel-sevillano@hotmail.com> Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/es/ Translation: Auto Dark Mode/App * Translated using Weblate (Hungarian) Currently translated at 98.2% (283 of 288 strings) Co-authored-by: turi1122 <61917421+turi1122@users.noreply.github.com> Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/hu/ Translation: Auto Dark Mode/App * Translated using Weblate (Italian) Currently translated at 100.0% (288 of 288 strings) Translated using Weblate (Italian) Currently translated at 100.0% (288 of 288 strings) Translated using Weblate (Italian) Currently translated at 83.3% (240 of 288 strings) Co-authored-by: Massimo Pissarello <mapi68@gmail.com> Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/it/ Translation: Auto Dark Mode/App * Translated using Weblate (Chinese (Traditional Han script)) Currently translated at 100.0% (288 of 288 strings) Co-authored-by: jrthsr700tmax <jrthsr700tmax@gmail.com> Translate-URL: https://hosted.weblate.org/projects/auto-dark-mode/app/zh_Hant/ Translation: Auto Dark Mode/App * Fix: WallpaperPickerPage crash * Code quality: Code style * Code quality: Same design from ColorizationPage * Code quality: Add strings * Revert "Code quality: Add strings" This reverts commit d5586a9. * Code quality: Change header text --------- Co-authored-by: Martin Wilichowski <martin.wilichowski@gmx.de> Co-authored-by: hugoalh <hugoalh@users.noreply.hosted.weblate.org> Co-authored-by: Moji <moj.enjoy@gmail.com> Co-authored-by: Kazuto Iris <78157415+kazutoiris@users.noreply.github.com> Co-authored-by: Daniel <daniel-sevillano@hotmail.com> Co-authored-by: turi1122 <61917421+turi1122@users.noreply.github.com> Co-authored-by: Massimo Pissarello <mapi68@gmail.com> Co-authored-by: jrthsr700tmax <jrthsr700tmax@gmail.com>
…ows-Auto-Night-Mode into fix-missing-icons
Delete nuget.config
…or the root folder
fix missing icons
Code quality: Check whether the registry allows theme switching cursor
Contributor
|
Oh, hello, office logo, welcome back 🤓 |
* fix(i18n): remove stray colon from Japanese "アプリケーション" resource (#1154) Remove an accidental trailing ':' from AutoDarkModeApp/Strings/ja/Resources.resw (line ~748). This fixes the menu label showing "アプリケーション:" — no functional changes, only a text/UI correction. * add info to csproj --------- Co-authored-by: Evan <evanmr4@gmail.com>
rename "hide" to "show"
Settings UI: Change some CheckBoxes to ToggleSwitches
…ription and title of the feature, resolving #1182
* feat(governor): add ambient light sensor theme switching Implements #1070 - Switch light/dark mode according to ambient light sensor. - Add new AmbientLightGovernor that uses Windows.Devices.Sensors.LightSensor - Implement hysteresis with configurable dark/light thresholds (default 40/80 lux) - Add real-time lux reading display with reference guide in UI - Add visual sliders and number inputs for threshold configuration - Theme changes immediately when thresholds are adjusted - Thresholds enforce minimum 5 lux gap to prevent rapid switching - Rename TimeSourceMode to SwitchTriggerMode for semantic clarity Note: This PR was vibe coded with AI assistance. Local testing worked well including immediate theme change preview when adjusting thresholds. * fix(ui): address PR feedback for ambient light sensor settings - Add fallback text when no sensor is detected - Move ambient light settings inline with other switch options - Fix inconsistent max values (slider and numberbox both use 500 now) - Add localization string for 'No sensor detected' message - Remove unused AmbientLightSettingsVisibility property * refactor(ui): refine ambient light settings layout - Move threshold labels to the left side of sliders for better readability - Layout is now: Label | Icon | Slider | NumberBox - Restore the Lux Reference Guide as an inline expandable section - Reference guide shows light levels from moonlight to direct sunlight * tweak UI * Improve ambient light UI: precision, tooltip hiding, tick marks - Increase RangeSelector precision from 0-100 to 0-1000 steps for finer lux control - Hide RangeSelector tooltip (showed raw 0-1000 values instead of lux) - Add logarithmic tick marks with key lux reference labels (10, 50, 150, 400, 1k) - Remove 5 lux minimum gap constraint, now only requires light > dark - Fix right margin alignment for NumberBox (12px) * Add visual gradient to ambient light range selector - Add dark-to-light gradient background behind the slider - Colors transition from deep navy (night) through warm peach to bright yellow (daylight) - Provides intuitive visual feedback for lux level selection * Fix ambient light slider alignment and tooltips - Refine tick mark grid to use precise logarithmic proportions (e.g., 54.5% for 150 lux) for pixel-perfect alignment. - Add margins to tick grid to account for slider thumb padding. - Improve tooltip suppression by targeting specific thumb elements and using delayed execution to catch lazy-loaded templates. * Implement ambient light auto-calibration and smart gap logic - Add 'Calibrate' button with Flash icon to automatically set thresholds based on current light level. - Implement 'Smart Gap' logic: sets thresholds at ±15% of current lux (min 2 lux gap). - Add Auto-Configure trigger when first enabling Ambient Light mode. - Add real-time visual indicator (arrow) on the slider to show current lux position. - Refactor LogarithmicLuxConverter to share logic with ViewModel. - Remove startup auto-calibration option in favor of on-enable/manual trigger. * Code quality: Increase debounce of theme switching * Merge maintainer refactoring: adopt RangeStart/End properties - Update TimeViewModel to use RangeStart/RangeEnd properties with built-in log conversion (cleaner architecture from maintainer) - Update TimePage.xaml to bind directly to RangeStart/RangeEnd - Keep AutoConfigure command and Visual Indicator features - Restore AutoDarkModeApp.csproj dependency configuration to fix build * Fix build configuration and restore UI features - Restore CommunityToolkit.Labs dependency in csproj to fix build - Update TimePage.xaml to bind RangeSelector directly to ViewModel properties (RangeStart/End) - Restore Visual Indicator and AutoConfigure button - Ensure RangeSelector precision and tooltips are correct * Enhance Ambient Light experience: stability, feedback, performance - Fix 'Auto Configure' logic to anchor thresholds around current lux based on active theme ('Shifted Window' logic), preventing 'smashed values'. - Implement 15s debounce delay in AmbientLightGovernor to prevent accidental switching. - Optimize Governor performance by removing redundant config reloads on every sensor reading. - Update description text to clarify feature purpose. - Hide ambient light controls (Slider, Calibrate) when no sensor is detected (showing only status text). - Update 'Calibrate' button icon to 'AutoEnhance' (Wand) glyph. - Ensure 'Auto Configure' only runs automatically on first enable of the mode, not on every switch or app launch. - Adjust slider minimum to 1 lux (from 0) for logical consistency. * Final ambient light polish: calibration tweaks, delay fix, smooth indicator - Fix 'Auto Configure' calibration: use 10 lux floor for dark threshold and ensure Light is significantly higher (1:3 ratio) to avoid tight hysteresis ranges in very dark environments. - Fix switching delay: prevent debounce timer reset on repeated same-state signals, ensuring a strict 15s delay from first detection. - Add animation to current lux indicator for smooth movement. - Move feature description tooltip to the RadioButton for better discoverability. - Ensure UI/ViewModel properties stay in sync with bi-directional enforcement logic. * Fix crash on mode selection and finalize UI polish - Update EnumToBooleanConverter to return DependencyProperty.UnsetValue instead of null to prevent binding crashes when unselecting radio buttons - Finalize ambient light UI layout: correct margins, centered alignment, tooltip on radio button container - Ensure Segmented control works by using correct package version * Fix mode selection crash and polish UI - Switch RadioButton bindings to OneWay + Command to avoid binding loops and crashes - Update tooltip placement to be next to RadioButton for visibility when disabled - Wrap tooltip icon in transparent border for better hit testing - Finalize layout adjustments * Final tweaks based on user feedback - Update tooltip text to be shorter and distinct from description - Fix calibration logic for very dark environments (min 10 lux floor) - Force 15s delay in governor to prevent rapid switching - Improve indicator smoothness with animation and faster sensor polling - Fix UI hiding logic when sensor is missing * Final ambient light polish: calibration tweaks, delay fix, smooth indicator - Fix 'Auto Configure' calibration: use 10 lux floor for dark threshold and ensure Light is significantly higher (1.3 ratio) to avoid tight hysteresis ranges in very dark environments. - Fix switching delay: prevent debounce timer reset on repeated same-state signals, ensuring a strict 15s delay from first detection. - Add animation to current lux indicator for smooth movement. - Move feature description tooltip to the RadioButton for better discoverability. - Ensure UI/ViewModel properties stay in sync with bi-directional enforcement logic. * Fix ambient light debounce delay - Fix: Service was running from wrong directory (core\ vs core\win-x64\) - Use actual system theme as baseline on startup, not sensor reading - Return null from Run() during debounce to prevent timer-triggered switches - Config/slider changes apply immediately (no debounce) - Sensor reading changes have 10-second delay to prevent accidental switching - Immediate mode for ReEvaluateWithCurrentConfig bypasses debounce * Refactor: use constants for debounce timing - Add SensorDebounceDelayMs constant (10 seconds) - Add DebounceToleranceMs constant (1 second) - Use constants in delay and safety check to keep values in sync * tweak UI updated layout NumberBox.Width may wrap header * Address PR review comments - Fix bug: restore OffsetTimeSettingsCardVisibility for LocationTimes mode - Add XAML styles for tick marks (TickMarkStackPanelStyle, TickMarkBorderStyle, TickMarkTextBlockStyle) - Add detailed comment explaining why Light threshold must be > Dark (hysteresis) - Refactor tick marks to use new styles, reducing XAML repetition * fix(ui): use Inline spin buttons for threshold NumberBoxes Changes SpinButtonPlacementMode from Compact to Inline for both Dark and Light threshold NumberBoxes to prevent UI jamming when the SpinButton expands while sliding the RangeSelector. Addresses PR review feedback from ChenYiLins. * Revert "fix(ui): use Inline spin buttons for threshold NumberBoxes" This reverts commit a70c425. * fix(ui): hide spin buttons on threshold NumberBoxes Changes SpinButtonPlacementMode to Hidden for cleaner UI and to avoid interaction issues with the RangeSelector. Also normalizes SmallChange to 1 for both NumberBoxes for consistent keyboard increment behavior. * Address PR review comments from Armin2208 - Move info icon next to 'Ambient light sensor' text and add conditional tooltip explaining when sensor is unavailable - Fix debounce delay: update config default from 15000 to 10000ms and use constant in Math.Max calls to respect configured values - Add 'Current:' label before lux reading display for clarity - Fix touch slider issue by adding IsHitTestVisible=False to indicator canvas * Improve auto-calibration gap scaling Changed from fixed 1:1.3 ratio to exponential formula (currentLux^0.7) for calculating the gap between dark and light thresholds. This creates non-linear scaling where gaps grow proportionally larger at higher lux values, addressing feedback that the gap was too narrow at moderate light levels. * Fix tooltip not showing on disabled RadioButton Wrap the Ambient Light RadioButton in a transparent Border that stays enabled and receives mouse events, allowing the tooltip to show even when the RadioButton is disabled. * Code quality: Tweak UI * Address Armin's latest PR feedback - Fix debounce delay config: use _debounceDelayMs instead of constant so config values are respected - Skip location access checks for AmbientLight and WindowsNightLight modes - Add explicit Height to IndicatorCanvas to prevent it from overlapping RangeSelector touch area * Address final PR feedback from Armin2208 - Add AutoThemeSwitchingEnabled check: skip theme changes when toggle is off - Add config reload in Run(): pick up config file changes for thresholds - Add PostponeManager.IsPostponed check: skip processing when postponed - Fix touch slider: move IndicatorCanvas inside RangeSelector Grid to avoid blocking touch events * Address Armin2208 and Spiritreader feedback - Lower debounce delay minimum from 10s to 1s (user configurable) - Fix touch/visual issues: move IndicatorCanvas to Row 0 of outer Grid - Add AmbientLight handling in PrepareSwitchAutoPause with 1-hour postpone - Toggle theme now pauses ambient light switching for 1 hour * Fix RangeSelector accent line and revert indicator to working layout - Remove Foreground="Transparent" from RangeSelector to show accent-colored selected range indicator between thresholds - Revert IndicatorCanvas to original working layout from before touch fixes: - Move back to Grid.Row="1" (same cell as RangeSelector) - Remove Height constraint that was blocking touch - Restore original Margin="10,12,10,0" and VerticalAlignment="Top" This reverts to the layout that was working before the touch fix attempts. The Canvas renders behind the RangeSelector due to XAML declaration order, and the different margins position it above the slider track visually. * Code quality: Code cleaning * Fix slider thumb not snapping to canonical position for rounded lux values When dragging the slider to positions that round to the same lux value (e.g., slider positions 1-43 all round to lux = 1), the thumb now snaps back to the canonical position for that value (position 0 for lux = 1). This fixes the visual inconsistency where the NumberBox shows "1" but the slider thumb is not at the leftmost position. * fix scrolling issue with thumbs Dragging the thumbs was having compatibility issues with the ScrollViewer. * Fix: Error string file * Delete: Changes folder and file * Code quality: Move style code to CustomStyles --------- Co-authored-by: Jay <65828559+Jay-o-Way@users.noreply.github.com> Co-authored-by: ChenYiLins <1062790901@qq.com> Co-authored-by: ChenYiLins <ChenYiLins@foxmail.com>
…r yaml serializer - no longer generates empty Component objects in the config file - forces configuration objects to be of type class not struct and change to nullable
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.