Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merging EA into Mainline #979

Merged
merged 40 commits into from
Feb 3, 2024
Merged

Merging EA into Mainline #979

merged 40 commits into from
Feb 3, 2024

Conversation

Valkirie
Copy link
Owner

@Valkirie Valkirie commented Feb 3, 2024

Summary by CodeRabbit

  • New Features

    • Updated dependencies and version numbers for smoother installation and enhanced stability.
    • Introduced new settings for on-screen display of system metrics (CPU, GPU, RAM, battery levels).
    • Added functionality for GPU performance control and telemetry data access.
    • New classes for specific handheld device configurations and settings.
    • Enhanced fan control and power limit settings for specific devices.
    • Introduced GPU management functionalities for AMD and Intel GPUs.
    • Added new utility classes for improved application efficiency.
  • Enhancements

    • Improved UI elements handling and event management.
    • Refined controller handling for better user interaction.
    • Enhanced thread management for improved application performance.
  • Bug Fixes

    • Addressed issues related to event subscription and method calls.
    • Fixed improper handling of joystick and trigger parameters.
  • Refactor

    • Simplified and reorganized namespaces and using directives for clearer code structure.
    • Updated resource and settings management across the application.

Valkirie and others added 30 commits January 12, 2024 11:32
* Disable the RealTimeStylus for WPF Applications

* Update MainWindow.xaml.cs

* test ?
* restore Legion Go FanControl ability (requires BIOS v29)

* Implement Sapientia function getUSBVerify()

* Implement WMI class (wip)

* implement new functions

- GetFanFullSpeedAsync
- SetFanFullSpeedAsync
- SetFanTable
- SetSmartFanMode

* implement SetCPUPowerLimit()
* Start implementing IGCL (wip)

* More work

- Implemented GPUManager
- Implemented GPU-specific classes (AMDGPU, IntelGPU)
- Implemented IGCLBackend (wip)
- SystemManager renamed to MultimediaManager
- PowerManager renamed to SystemManager

* more work on IGCL

* prevent crash on null MainThread

* prevent useless SetResolution() calls

* more work on IGCL

* add missing sharpness check

* implement ctl_device_adapter_properties_t  (wip)

* what if the issue was deviceIdx all along...

* Update IGCL_Wrapper.dll

* fix remaining implementations

* implement IntegerScalingType (Intel only)

* make sure to use defaultGPU (idx: 0)

We need to find a proper way to guess which one is used for 3D rendering I guess or linked to main screen..

* fix ctl_device_adapter_properties_t Marshalling

* implemented some form of logic to pick the first available external GPU (if any)

* improve GPUManager

- add support for Manufacturer: "Advanced Micro Devices, Inc."
- improve GPUManager and GPU Start() and Stop() logics
- prevent Task Execution within Tasks on AMDGPU

* fix a crash when UpdateTimer is null
* Implement new UI classes

- UISounds to manage UI sounds on interaction.
- UIGamepad to manage gamepad interactions.
- Audio files from https://kenney.nl/assets/ui-audio.
- Add support for TextBox and RepeatButton selection via gamepad.

* Update HandheldCompanion/UI/UISounds.cs

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* fix PlayOggFile refs

* removed unused audio files

* Add UI Sounds toggle on SettingsPage (default Off)

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* Migrate everything ADLX related to ADLX_Wrapper()

* update IGCL logic

- Implemented Terminate() and Initialize() as well as GetTelemetryData()

* debug functions on both IGCL and ADLX backends

* Update ADLX_Wrapper and fix Initialize() calls on GPU classes

* add Telemetry Timer as part of GPU class

* Implement GPU GetLoad() and GetPower()
* SapientiaUsb update

* Legion Go - additional settings
)

Also improved the threading logic on powerWatchdog_Elapsed
#951)

* fixed issue with layoutmanager crashing when dismissing the quick settings

* Update HandheldCompanion/Managers/LayoutManager.cs

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
@0SkillAllLuck, we shouldn't loop through all video controllers but instead only look for "main" one
* Update ControllerPage and IController UI logic a bit

Should simplify the virtual/physical distinction

* more work on UI

* minor tweaks

* misc text tweaks

* more work on UI

* improve wording
When navigating, don't focus TextBox if IsReadOnly
This should prevent AutoTDP and TDP control to flood the log.
- GPUManager should be started before Profile and PowerProfile managers to avoid an IGCL/ADLX calls from being made before they're initialized.
- Implemented an IsInitialized check before executing any ADLX/IGCL calls.
- Implemented a try{] catch{} on GPU Execute().
- Halt Telemetry timer before closing IGCL/ADLX.
- Sorted Desktop list alphabetically to prevent possible duplicate entries in the future
- Added PC Manager and PowerToys' MouseWithoutBorders:
* Improvement, translations update.

* Localization support for Device page Legion Go settings.
* display "no virtual controller" error properly

* remove thread.Join() calls to avoid freezing the thread manager

* When XInput is drunk, add a delay

* safer thread manipulations

* improve threading management

* Update DynamicLightingManager.cs
Comment on lines +2761 to +2763
<data name="QuickSettingsPage_DisplayFrequency" xml:space="preserve">
<value>Refresh rate</value>
</data>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing translation for QuickSettingsPage_DisplayFrequency.

Comment on lines +2764 to +2766
<data name="QuickSettingsPage_DisplayFrequencyDesc" xml:space="preserve">
<value>Adjust main refresh rate</value>
</data>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing translation for QuickSettingsPage_DisplayFrequencyDesc.

Comment on lines +2767 to +2769
<data name="ProfilesPage_FanSettings" xml:space="preserve">
<value>Fan settings</value>
</data>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing translation for ProfilesPage_FanSettings.

Comment on lines +2770 to +2772
<data name="ProfilesPage_FanSettingsDesc" xml:space="preserve">
<value>Change the fan settings</value>
</data>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing translation for ProfilesPage_FanSettingsDesc.

Comment on lines +2773 to +2775
<data name="ProfilesPage_CreatePowerProfile" xml:space="preserve">
<value>Create a new power preset</value>
</data>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing translation for ProfilesPage_CreatePowerProfile.

Comment on lines +2776 to +2778
<data name="ProfilesPage_CreatePowerProfileButton" xml:space="preserve">
<value>Create power preset</value>
</data>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing translation for ProfilesPage_CreatePowerProfileButton.

Comment on lines +2779 to +2781
<data name="ProfilesPage_DeletePowerProfileButton" xml:space="preserve">
<value>Delete power preset</value>
</data>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing translation for ProfilesPage_DeletePowerProfileButton.

Comment on lines +2782 to +2784
<data name="MainWindow_Toggle" xml:space="preserve">
<value>Toggle</value>
</data>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing translation for MainWindow_Toggle.

Comment on lines +2785 to +2787
<data name="XInputController_Warning_USB" xml:space="preserve">
<value>Please wait a moment while we power cycle your controller.</value>
</data>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing translation for XInputController_Warning_USB.

Comment on lines +2788 to +2790
<data name="LayoutPage_SetAsDefault" xml:space="preserve">
<value>Make this the default layout</value>
</data>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing translation for LayoutPage_SetAsDefault.

Comment on lines +2791 to +2793
<data name="InputsHotkey_shortcutChangeHIDMode" xml:space="preserve">
<value>Toggle emulated controller type</value>
</data>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing translation for InputsHotkey_shortcutChangeHIDMode.

Comment on lines +2794 to +2796
<data name="InputsHotkey_shortcutChangeHIDModeDesc" xml:space="preserve">
<value>Toggle between Xbox 360 and Dualshock 4 emulated controllers</value>
</data>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing translation for InputsHotkey_shortcutChangeHIDModeDesc.

Comment on lines +2797 to +2799
<data name="QuickHomePage_Title" xml:space="preserve">
<value>Home</value>
</data>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing translation for QuickHomePage_Title.

Comment on lines +2800 to +2802
<data name="QuickDevicePage_Title" xml:space="preserve">
<value>Device</value>
</data>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing translation for QuickDevicePage_Title.

Comment on lines +2803 to +2805
<data name="QuickDevicePage_Desc" xml:space="preserve">
<value>Settings, display profile</value>
</data>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing translation for QuickDevicePage_Desc.

Comment on lines +2806 to +2808
<data name="PowerProfileROGAllyTurboName" xml:space="preserve">
<value>ROG Ally - Turbo</value>
</data>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing translation for PowerProfileROGAllyTurboName.

Comment on lines +2809 to +2811
<data name="DevicePage_DynamicLighting_Wheel" xml:space="preserve">
<value>Wheel</value>
</data>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing translation for DevicePage_DynamicLighting_Wheel.

Comment on lines +2812 to +2814
<data name="DevicePage_DynamicLighting_MatchAccentColor" xml:space="preserve">
<value>Match my Windows accent color</value>
</data>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing translation for DevicePage_DynamicLighting_MatchAccentColor.

Comment on lines +2815 to +2817
<data name="DevicePage_DynamicLighting_SecondColorSelection" xml:space="preserve">
<value>Second color</value>
</data>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing translation for DevicePage_DynamicLighting_SecondColorSelection.

Comment on lines +2818 to +2820
<data name="DevicePage_DynamicLighting_EffectSpeed" xml:space="preserve">
<value>Effect speed</value>
</data>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing translation for DevicePage_DynamicLighting_EffectSpeed.

Comment on lines +2821 to +2823
<data name="DevicePage_DynamicLighting_EffectDirection" xml:space="preserve">
<value>Direction</value>
</data>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing translation for DevicePage_DynamicLighting_EffectDirection.

Comment on lines +2824 to +2826
<data name="MainWindow_navPerformance" xml:space="preserve">
<value>Performance</value>
</data>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing translation for MainWindow_navPerformance.

Comment on lines +2827 to +2829
<data name="PerformancePage_Device" xml:space="preserve">
<value>Performance</value>
</data>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing translation for PerformancePage_Device.

Comment on lines +2830 to +2832
<data name="ProfilesPage_CPUMhz" xml:space="preserve">
<value>CPU Clock max frequency</value>
</data>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing translation for ProfilesPage_CPUMhz.

Comment on lines +2833 to +2835
<data name="QuickPerformancePage_CPUControl" xml:space="preserve">
<value>Manual CPU Clock Control</value>
</data>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing translation for QuickPerformancePage_CPUControl.

Comment on lines +2836 to +2838
<data name="DevicePage_DynamicLighting_Rainbow" xml:space="preserve">
<value>Rainbow</value>
</data>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing translation for DevicePage_DynamicLighting_Rainbow.

Comment on lines +2839 to +2841
<data name="QuickPerformancePage_CPUControlDesc" xml:space="preserve">
<value>Sets the CPU to a fixed clock</value>
</data>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing translation for QuickPerformancePage_CPUControlDesc.

Comment on lines +2842 to +2844
<data name="PowerProfileDefaultDescription" xml:space="preserve">
<value>Default power and fan speed for optimal performance, temperature, noise, and battery life.</value>
</data>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing translation for PowerProfileDefaultDescription.

Comment on lines +2845 to +2847
<data name="PowerProfileDefaultName" xml:space="preserve">
<value>Default</value>
</data>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing translation for PowerProfileDefaultName.

Comment on lines +2848 to +2850
<data name="PowerProfileManualDescription" xml:space="preserve">
<value>User-defined power and fan speed.</value>
</data>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing translation for PowerProfileManualDescription.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants