]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - tools/perf/ui/browser.c
Merge branch 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
[karo-tx-linux.git] / tools / perf / ui / browser.c
index c6c7e5189214fb7f8df1c3fb3659a673d80e8ffa..e9703c0829f104bf9d7819d04831306cfd31dbe8 100644 (file)
@@ -393,6 +393,7 @@ int ui_browser__run(struct ui_browser *browser, int delay_secs)
 
                if (browser->use_navkeypressed && !browser->navkeypressed) {
                        if (key == K_DOWN || key == K_UP ||
+                           (browser->columns && (key == K_LEFT || key == K_RIGHT)) ||
                            key == K_PGDN || key == K_PGUP ||
                            key == K_HOME || key == K_END ||
                            key == ' ') {
@@ -421,6 +422,18 @@ int ui_browser__run(struct ui_browser *browser, int delay_secs)
                                browser->seek(browser, -1, SEEK_CUR);
                        }
                        break;
+               case K_RIGHT:
+                       if (!browser->columns)
+                               goto out;
+                       if (browser->horiz_scroll < browser->columns - 1)
+                               ++browser->horiz_scroll;
+                       break;
+               case K_LEFT:
+                       if (!browser->columns)
+                               goto out;
+                       if (browser->horiz_scroll != 0)
+                               --browser->horiz_scroll;
+                       break;
                case K_PGDN:
                case ' ':
                        if (browser->top_idx + browser->rows > browser->nr_entries - 1)
@@ -459,6 +472,7 @@ int ui_browser__run(struct ui_browser *browser, int delay_secs)
                        browser->seek(browser, -offset, SEEK_END);
                        break;
                default:
+               out:
                        return key;
                }
        }