thompsonate / Shifty

☀️ A macOS menu bar app that gives you more control over Night Shift.
http://shifty.natethompson.io
GNU General Public License v3.0
1.24k stars 33 forks source link

Night Shift intensity custom curve #12

Open choco opened 6 years ago

choco commented 6 years ago

Before anything, congratulations on the great app :)

Something that I'm really missing from flux is the custom curve for the intensity, with night shift you either have it enabled or you don't. Would it be possible to implement a similar feature and be able to define a custom curve so we can have a gradual color change?

thompsonate commented 6 years ago

Thanks!

This is definitely possible, but I think it would take a lot of work. I'm currently relying on Night Shift for automatically shifting based on the schedule. To implement this feature, Shifty would need to have its own scheduling and a good UI to set this preference in.

It's more than I'm willing to take on in the near future, but if someone else would like to take a crack at it, this would be a welcome addition.

choco commented 6 years ago

I noticed that there's actually already a curve applied when Night Shift is scheduled to activate on sunset. The issue is more on how to customise this curve and more importantly how to keep on respecting the curve when Night Shift is activated manually or by rules (which seem to delete the current status on the curve, I'll open an issue to track this)

maciboy commented 6 years ago

As a longtime flux user this is the feature I'm missing to with Apple's Nightshift implementation (also on iOS), too...

A very basic solution would be to obtain the max reddish tint desired by the user and based on this first set the tint to a certain percentage of the max value and increase stepwise.

E.g. I set the tint to the warmest option. I would be really happy if it would start going to 25%, then eg 15 minutes later to 50% of the slider, 75% after another 15 minutes and then to my max level afterwards. These stepwise transition over a longer period would be much better then the full transition in just some minutes. :)

thompsonate commented 6 years ago

I don't disagree that this would be a good thing to have, but I just feel like trying to implement this would be opening a can of worms that I don't want to deal with in the near future.

If somebody can come up with a good implementation, I'm open to a PR!

choco commented 4 years ago

Posted originally by @ioemilio in #91

What about adding multiple custom schedules in the preferences, each with custom color temperature/intensity? For example, I often find myself setting a stronger intensity at late night than that at sunset. With multiple custom schedules the change would be automatic!

It would be cool to also have relative times with respect to sunset and sunrise. For example turning NightShift on at sunset and setting it stronger after, say, two hours.

This is similar to intensity custom curve Issue #12, but instead of having a gradual change in color it could be possible to set different colors at different times in the day.

This feature would somewhat emulate the behavior of flux. An example would be like the following:

Schedule1 From: Sunrise To: Sunrise + 2h Intensity: 50

Schedule2 From: Sunrise + 2h To: Sunset Intensity: 0

Schedule3 From: Sunset To: Sunset + 2h Intensity: 50

Schedule4 From: Sunset + 2h To: Sunrise Intensity: 100

xoxwgys56 commented 2 years ago

Hi thanks for making this awesome application.
Could you tell me about this issue?

I wanna know is it work in progress? or already implemented?

LiyangSong commented 2 months ago

A vote for this question: I would open Night Shift for an entire day. Closing Night Shift completely would harm my eyes, but I would also like a less warmer screen at noon compared with midnight.