Options: convert hide_cursor to std::chrono::steady_clock::duration
authorMax Kellermann <max@musicpd.org>
Wed, 26 Sep 2018 23:43:56 +0000 (01:43 +0200)
committerMax Kellermann <max@musicpd.org>
Wed, 26 Sep 2018 23:43:56 +0000 (01:43 +0200)
src/Options.hxx
src/QueuePage.cxx
src/conf.cxx

index 3618294..f44e6f9 100644 (file)
@@ -45,7 +45,7 @@ struct Options {
        int timeout_ms = 0;
        int crossfade_time = DEFAULT_CROSSFADE_TIME;
        int search_mode;
-       int hide_cursor;
+       std::chrono::steady_clock::duration hide_cursor;
        int seek_time = 1;
 #ifdef ENABLE_LYRICS_SCREEN
        std::chrono::steady_clock::duration lyrics_timeout = std::chrono::minutes(1);
index 0248833..71625b8 100644 (file)
@@ -108,10 +108,10 @@ private:
        void OnHideCursorTimer(const boost::system::error_code &error) noexcept;
 
        void ScheduleHideCursor() {
-               assert(options.hide_cursor > 0);
+               assert(options.hide_cursor > std::chrono::steady_clock::duration::zero());
 
                boost::system::error_code error;
-               hide_cursor_timer.expires_from_now(std::chrono::seconds(options.hide_cursor),
+               hide_cursor_timer.expires_from_now(options.hide_cursor,
                                                   error);
                hide_cursor_timer.async_wait(std::bind(&QueuePage::OnHideCursorTimer, this,
                                                       std::placeholders::_1));
@@ -334,7 +334,7 @@ QueuePage::OnHideCursorTimer(const boost::system::error_code &error) noexcept
        if (error)
                return;
 
-       assert(options.hide_cursor > 0);
+       assert(options.hide_cursor > std::chrono::steady_clock::duration::zero());
 
        /* hide the cursor when mpd is playing and the user is inactive */
 
@@ -350,7 +350,7 @@ QueuePage::OnOpen(struct mpdclient &c) noexcept
 {
        playlist = &c.playlist;
 
-       if (options.hide_cursor > 0) {
+       if (options.hide_cursor > std::chrono::steady_clock::duration::zero()) {
                lw.hide_cursor = false;
                ScheduleHideCursor();
        }
@@ -490,7 +490,7 @@ QueuePage::OnCommand(struct mpdclient &c, Command cmd)
 
        lw.hide_cursor = false;
 
-       if (options.hide_cursor > 0) {
+       if (options.hide_cursor > std::chrono::steady_clock::duration::zero()) {
                hide_cursor_timer.cancel();
                ScheduleHideCursor();
        }
index ca0e7a9..26c9d68 100644 (file)
@@ -506,7 +506,7 @@ parse_line(char *line)
        else if (!strcasecmp(CONF_SEARCH_MODE, name))
                options.search_mode = get_search_mode(value);
        else if (!strcasecmp(CONF_HIDE_CURSOR, name))
-               options.hide_cursor = atoi(value);
+               options.hide_cursor = std::chrono::seconds(atoi(value));
        else if (!strcasecmp(CONF_SEEK_TIME, name))
                options.seek_time = atoi(value);
        else if (!strcasecmp(CONF_SCREEN_LIST, name)) {