Customising scroll bars

Hi everyone,

I am trying to customise the scroll bars of my editor. There are a couple of things I’m trying to accomplish:

  1. I would like that scroll bars would fade out when their parent is not hovered with the mouse cursor. Trying to accomplish this, I added the following lines to my styles.less stylesheet:
atom-text-editor.editor {
    .horizontal-scrollbar, .vertical-scrollbar {
        opacity: 0.2;
        transition: opacity 250ms;
    }
    .scroll-view:hover .horizontal-scrollbar {
        opacity: 1;
    }
    .scroll-view:hover .vertical-scrollbar {
        opacity: 1;
    }
}

This works very well for the main editor view. When two or more panes are present, the scroll bar of the hovered file is shown in full colour while the other(s) fade out. Unfortunately this applies only to files and not to the tree view nor search results. How would I adapt the code above to include the scroll bars of the tree view as well as the ones of the files?

  1. I would love to set a minimum size for the scroll bars, as they get really short (vertically) when dealing with very large files. Is that possible at all?

  2. When minimap package is enabled, the position of of the vertical scroll bar moves to the left of the minimap. When minimap is enabled but untoggled (i.e. using minimap:toggle so that the package is still active but the minimap is not visible), the scroll bars remain at their shifted position. Is there a way of fixing this behaviour so that when toggling minimap off the scroll bars would move back to their original default position?

Many, many thanks!

I have managed to solve 1) and 3). For 1), I am using:

// fading scrollbars when pane not hovered
.pane:not(:hover) {
    ::-webkit-scrollbar {
        &-thumb {
            background-color: rgba(68, 169, 249, 0.3);
        }
    }
}

For 3), I am simply enabling Absolute Mode in Minimap; this means that minimap will show above the current pane, and so everything below it will be displayed as normal.

I am still stuck with 2) though, and would be really grateful for any tips.