aboutsummaryrefslogtreecommitdiffstats
path: root/src/redshift.c (unfollow)
Commit message (Collapse)AuthorFilesLines
2017-01-08redshift.c: Use 6500K and 4500K by defaultJon Lund Steffensen1-2/+2
2015-12-28Move signal processing functions and sigaction calls to signals from redshift.cMattias Andrée1-72/+6
Signed-off-by: Mattias Andrée <maandree@operamail.com>
2015-08-04Remove trailing whitespacesMichael Vetter1-3/+3
2015-05-07remove unnecessary null-checks, it is safe to pass NULL to free (per documentation)Mattias Andrée1-2/+2
Signed-off-by: Mattias Andrée <maandree@operamail.com>
2015-05-02Fix CLAMP macro overwritten by glib headersJordan Klassen1-7/+3
Fixes #188 When I moved the macro definition below all of the includes, I got the following compiler warning: /usr/include/glib-2.0/glib/gmacros.h:246:0: note: this is the location of the previous definition #define CLAMP(x, low, high) (((x) > (high)) ? (high) : (((x) < (low)) ? (low) : (x))) So, that's the macro definition that was being used whenever "CLAMP" was used. It's pretty obvious what went wrong.
2015-01-15Fix #162: Ensure that interpolation alpha is in [0;1]Jon Lund Steffensen1-3/+5
2015-01-10fixes jonls/redshift#157 introduced by jonls/redshift@f9c2a1568c308ec69970662a8f5ceb8726e8d8ccChristian Burger1-2/+2
2015-01-04redshift: Add print_location() functionJon Lund Steffensen1-17/+22
2015-01-04redshift: Add gamma_is_valid function to check gammaJon Lund Steffensen1-12/+15
This checks whether the gamma values are within the bounds of MIN_GAMMA and MAX_GAMMA.
2015-01-04redshift: Add transition scheme type with color settingsJon Lund Steffensen1-125/+122
This changes the transition_levels_t to transition_scheme_t and adds two fields day, night of type color_setting_t. This encapsulates all the information needed to calculate the current color setting from an elevation.
2015-01-04redshift: Make transition levels parameter to related functionsJon Lund Steffensen1-33/+56
Moves transition_low and transition_high from globals into a struct transition_levels_t that is created in main and passed to the relevant functions.
2015-01-04redshift: Move continual loop mode to separate functionJon Lund Steffensen1-222/+241
2015-01-04Add location_t type with lat/lon fieldsJon Lund Steffensen1-9/+11
2015-01-04redshift: Add noop pause() macro on windows platformJon Lund Steffensen1-0/+5
Build failed on windows platform since pause() is not available. The function is not needed on the windows platform so we just define a noop pause() macro.
2015-01-04Fix #152: redshift: Loop in reset/manual/one-shot mode with QuartzJon Lund Steffensen1-0/+23
The gamma adjustments made with the Quartz (OSX) method are tied to the process so when we exit, the gamma adjustments are reset. Therefore we need to run a loop that breaks on CTRL-C, after the gamma adjustments are made.
2014-12-30redshift: Fix untranslated status stringsJon Lund Steffensen1-3/+3
2014-12-28redshift: Add translation comment on period name NoneJon Lund Steffensen1-0/+1
2014-12-28redshift: Add translation of Daytime/Night in new gamma stringJon Lund Steffensen1-2/+4
2014-12-28redshift: Add translation comment to N,S,W,E stringsJon Lund Steffensen1-3/+16
2014-12-28systemtime: Add function wrapping platform sleep functionJon Lund Steffensen1-8/+5
Adds systemtime_msleep() which sleeps for a number of milliseconds. This wraps Sleep() on windows and usleep() on other platforms.
2014-12-28redshift: Add hooks for user actions on period switchJon Lund Steffensen1-0/+19
Hooks are executable scripts in ~/.config/redshift/hooks/ that are run when a certain event happens. The first parameter to the script indicates the event and further parameters may indicate more details about the event. The event "period-changed" is indicated when the period changes ("night", "daytime", "transition"). The second parameter is the old period and the third is the new period. The event is signaled when Redshift starts up with the old period set to "none".
2014-12-28redshift: Move period_t to headerJon Lund Steffensen1-8/+0
2014-12-28redshift: Add enum member for unknown period_t (PERIOD_NONE)Jon Lund Steffensen1-2/+5
2014-12-28redshift: Properly handle errors in sigactionJon Lund Steffensen1-4/+19
2014-12-27redshift: Fix translation of period namesJon Lund Steffensen1-5/+9
The static string array period_names contains strings that are printed but these were not marked for translation. This is fixed now by adding the _N() macro and calling gettext() when the strings are used.
2014-12-27redshift: Only print period information when it changesJon Lund Steffensen1-9/+65
This change adds functions to determine what the current period is so we can keep track and only print the period when it changes.
2014-12-27redshift: Be less verbose when color values did not changeJon Lund Steffensen1-2/+20
This keeps a copy of the previous color_setting_t in the loop so that we can avoid printing the color temperature and brightness if they did not change.
2014-12-27redshift: Change duration of sleep to macroJon Lund Steffensen1-5/+8
2014-12-27redshift: Simplify set_temperature by passing color_setting_tJon Lund Steffensen1-10/+8
Changes all set_temperature function in gamma adjustment methods to take a color_setting_t pointer with the color settings. Colorramp functions are similarly changed to take a color settings struct.
2014-12-27redshift: Add config setting to set gamma separately for day/nightJon Lund Steffensen1-1/+25
These settings are gamma-day and gamma-night. The setting gamma will still override both the daytime and nighttime gamma setting.
2014-12-27redshift: Move color settings into struct for periodJon Lund Steffensen1-70/+119
Move color settings (temperature, gamma and brightness) into a struct for each period (day, night). Change the interpolation function to interpolate all values between these structs.
2014-12-27redshift: Use double for interpolation functionJon Lund Steffensen1-4/+4
2014-12-15Add CoreLocation (OSX) location providerJon Lund Steffensen1-0/+18
Similarly to the Geoclue provider, the CoreLocation provider only requests the location on startup.
2014-12-15Add Quartz (OSX) gamma adjustment methodJon Lund Steffensen1-0/+19
2014-12-15Fix #80: Add Geoclue2 location providerJon Lund Steffensen1-1/+19
This simply runs a GLib main loop when the location is requested and tries to get the location from GeoClue2. We need to run a main loop since the location is not immediately available, instead it becomes available through a signal.
2014-08-16Fix #105: Limit decimals in displayed location to twoJon Lund Steffensen1-1/+1
2014-08-16Fix #90: Print N/S and E/W in the locationMattias Andrée1-2/+4
2014-05-07Add support for custom transition start and end elevationMattias Andrée1-9/+30
Implemented through config options transition-high and transition-low (there is no command line switch at this point). Determines at what solar elevation Redshift will change from night to transition period to day. Signed-off-by: Mattias Andrée <maandree@operamail.com>
2014-05-07Fix #41: Do not jump to 0 % or 100 % when changing direction of transitionMattias Andrée1-55/+26
Signed-off-by: Mattias Andrée <maandree@operamail.com>
2014-03-22Support for running Redshift without a graphical environment in Linux by using Direct Rendering ManagerMattias Andrée1-0/+19
Signed-off-by: Mattias Andrée <maandree@operamail.com>
2014-03-13Free resources from config-ini.c on exitMattias Andrée1-0/+2
Signed-off-by: Mattias Andrée <maandree@operamail.com>
2013-12-09Only start "dummy" gamma method if explicitly requestedJon Lund Steffensen1-4/+6
2013-12-09Remove Gnome Clock location providerJon Lund Steffensen1-21/+0
This was basically a hack that happened to work because the Gnome Clock applet could store the current location of the user, and Redshift was able to fetch this location through GConf. Since Redshift for some time now has supported a config file where the location can be set, there is not really any reason to use an external, fragile solution to do the same.
2013-12-09Do not allow NULL keys when setting optionsJon Lund Steffensen1-10/+25
This should fix a bug where command line options for the "manual" location provider cannot override the config file. To keep compatability with previous versions the command line parser will still special case parsing "-l LAT:LON" and set the correct options in "manual".
2013-12-09When in print mode do not start a gamma methodJon Lund Steffensen1-27/+31
A gamma method is not needed in print mode
2013-12-09Add dummy gamma adjustment methodJon Lund Steffensen1-5/+11
This method does not do anything but print the temperature to the terminal. An external program implementing a color temperature adjustment scheme that is not supported by redshift can use this method to determine the desired color temperature. It is also useful for testing other parts of redshift on systems where neither RandR nor VidMode works.
2013-12-08Fix newline in help output textJon Lund Steffensen1-1/+1
2013-10-21colorramp: Use new color ramp table provided by Ingo Thies.Jon Lund Steffensen1-6/+6
This table is calculated by the actual Planckian locus below 5000K, and by CIE daylight standard above 5000K. Also, the new table applies proper gamma correction according to sRGB. More information can be found in README-colorramp.
2013-10-21Fix typos (Benjamin Kerensa)Jon Lund Steffensen1-2/+2
2013-10-21Fix slight wobble in temperature caused by float.Jon Lund Steffensen1-1/+1
The transition variable 'adjustment_alpha' is a float. Redshift will wobble between 6499 and 6500K as the float runs out of precision. Using a double seems to solve the issue. (Thanks to Sean Hildebrand)