static JScrollPane jHigherScrollPane(final JComponent c) { ret swing(-> new JScrollPane(c) { public Dimension getPreferredSize() { Component view = getViewport().getView(); if (view == null) ret super.getPreferredSize(); int pref_width = view.getPreferredSize().width; setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS); Dimension dim = new(pref_width, super.getPreferredSize().height + getHorizontalScrollBar().getSize().height); setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); ret dim; } }); }