BartoszCichecki / LenovoLegionToolkit

Lightweight Lenovo Vantage and Hotkeys replacement for Lenovo Legion laptops.
GNU General Public License v3.0
5.54k stars 249 forks source link

[FEAT]: New action to change the scale of display screen #424

Closed Maplewings closed 1 year ago

Maplewings commented 1 year ago

Version

2.7.0

OS

Windows 11 21H2 22621.819

Device

Legion Y9000P IAH7H

Is your feature request related to a problem?

I use huawei matepad11 for the secondary screen, but this matepad scale is reset to 100% when i connect it to my laptop, and same time, the refresh rate of legion laptop is reset to 60Hz, so i want to resolve this issue.

How would you like the problem to be solved?

I want to use screen change event to handle this issue, when the matepad connect to the laptop, this program will receive this event. so we can handle this, and do some extra operation. Currentlly, i have done this feature in my repository which fork from your project, but it have a little limitation (i write hardcode in my repository. For example, i use "HW" as a prefix to filter the TargetDeviceName).

The above is just my idea, we can discuss whether it is necessary to integrate this function. Waiting for your reply, and thank you for providing this great project.

What alternatives have you considered?

i don't have any idea yet.

Additional information

No response

BartoszCichecki commented 1 year ago

Hey, the scope of LLT is to manage the laptop, not devices that are connected as it would basically explode the scope of this project by a lot.

Having said that, I actually think that adding a trigger "When external display is connected" (and disconnected) is not a bad idea, so I am open to adding this sort of trigger to LLT.

Regarding the actions, I want to keep the scope limited to the laptop itself, but since there is a run step users who are willing to expand the functionality, could do it with some scripts.

Step for changing the DPI of internal display also could make sense, since you are already able to change refresh rate and people are asking for resolution change too - this would complete display settings.

To sum up: feel free to make a PR for a trigger "External display connected" (and disconnected). You can also make one for the DPI scaling feature (both on the dashboard and as an action step). I checked code in your repo and it looks pretty nice already.

Maplewings commented 1 year ago

Great, it's my first time to create the PR, so i need to learn how to use it. It's already late at night, i have to go to bed, and will do that later follow your suggustion.