void
update_now_usec (struct timeval *tv)
{
  const time_t last = now;
  update_now (tv->tv_sec);
  if (now > last || (now == last && tv->tv_usec > now_usec))
    now_usec = tv->tv_usec;
}
Example #2
0
static void tuple_changed_callback(const uint32_t key, const Tuple* tuple_new, const Tuple* tuple_old, void* context) {
  int value = tuple_new->value->uint8;
  switch (key) {
    case setting_seconds:
      seconds = value;
      persist_write_int(setting_seconds, seconds);
      
      if (seconds == seconds_on)
        enable_seconds();
      else
        disable_seconds();
      break;
    case setting_background:
      background = value;
      persist_write_int(setting_background, background);
      
      bitmap_layer_set_bitmap(background_layer, (background == background_simple) ? background_simple_bitmap : background_bitmap);
      layer_mark_dirty((Layer*) background_layer);
      break;
    case setting_info:
      info = value;
      persist_write_int(setting_info, info);
      
      if (info == info_on)
        enable_info();
      else
        disable_info();
      break;
    case setting_digital:
      digital = value;
      persist_write_int(setting_digital, digital);
      
      if (digital == digital_off)
        disable_digital();
      else
        enable_digital();
      break;
  }
    
  update_now();
}