[ER] scrollable drop-down menus in pfsense_ng theme…
-
Well, the problem isn't new, but I thought I bring it up again:
Something like a MacBook Air is a fairly common computer, and an ideal ultra-portable sysadmin workstation, because it's light enough that one actually brings it along.But the screenshot below demonstrates what happens after a few packages are installed: anything after SNMP in my case becomes inaccessible.
So there are two not mutually exclusive ways to fix this:
a) hierarchical menus, that would e.g. group all sorts of DNS related things in one menu item with a list of sub-items, similar with all the DHCP stuff, etc.b) the menus become scrollable somehow (not a CSS wizard, but I have seen stuff like that, before, so it must be possible to do somehow).
![Screen Shot 2012-05-24 at 18.51.54.png](/public/imported_attachments/1/Screen Shot 2012-05-24 at 18.51.54.png)
![Screen Shot 2012-05-24 at 18.51.54.png_thumb](/public/imported_attachments/1/Screen Shot 2012-05-24 at 18.51.54.png_thumb) -
We auto-switch the theme to the "pfsense" theme with the menus down the side on mobile devices, to avoid just this problem.
If someone wants to find a css/js way to make the menus scrollable, that would be preferable. Hierarchical menus are a mess and would be even more trouble.
-
How about this approach, then?
http://css-tricks.com/long-dropdowns-solution/
Even though better grouping with hierarchical menus might have other benefits, because it's nice to find e.g. all proxies in one spot, DNS services in another, DHCP related things in a third, etc. but that would likely require that various packages be changed where they place themselves into a more hierarchical structure, or the menu structure would have to be user definable; neither of which are quick fixes and would be something that would be better undertaken with a major version upgrade, say 2.5 or 3.0
Long-term, I think the menu needs to be cleaned up a bit, and needs more descriptive names
-
Yikes, not fond of that one at all, it makes it really hard to narrow in on something since the menu scrolls by as you simply move. One you can manually drag or scroll with arrows would be preferable.
-
We had talked about, in the future, having fully customizable menus - as in the user could move any entry to any menu they want and change the names/descriptions/etc.
Many of the descriptions are limited due to space restrictions on the menu to prevent them from wrapping/overflowing.
But as the old saying goes… ideas are cheap. There are tons of good ideas (just check redmine for things labeled "future"), the problem is implementation.
-
Yikes, not fond of that one at all, it makes it really hard to narrow in on something since the menu scrolls by as you simply move. One you can manually drag or scroll with arrows would be preferable.
I actually thought this felt very natural, at least to a user of various iOS devices where things scroll by somewhat similarly. But it could be that this is also sensitive to mouse settings and how the browser handles events. On my Mac here with a touchpad and Firefox, his demo performed really well, could go back and forth with ease, and also it stopped as soon as I stopped moving the mouse.
But there are a slew of pages that came up when I googled "css js scrollable drop down menu", however this seemed to behave the most like native menus from the feel of it.
Of course with mouse, different OS/Browser combination, etc. this may work less smoothly.
-
Of course, there's the other less elegant solution: stop the menubar from being floating, such that it scrolls up with the window content, because then I can just scroll the browser window, the menu bar disappears because it's nailed to the top of the page rather than to the top of the view, and then we can access things in arbitrarily long windows..
Otherwise, I'm not sure if these sort of things are applicable here:
http://www.codeproject.com/Questions/229885/how-to-make-scroll-bars-in-dropdown-list
Another approach might be to replace the menu with drop-down boxes. Might offer less options to style to look, but it would also work on small devices like e.g. an iPhone, because it would pop-up a big selector to choose the items. A solution to a different problem made me think about that: http://css-tricks.com/convert-menu-to-dropdown/
-
Well for those, see above, re: theme change.
That's why the other themes exist – the default isn't the best for everyone.
-
Actually, this has kind of nifty stuff, too, even for other parts of the pfSense GUI; I really like the way they do multiple selects. That would make quite a few things nicer.
http://harvesthq.github.com/chosen/
The neat thing is, that it just could be turned off on mobile devices, and then e.g. touch optimized elements can take over.
-
Yeah we've looked at that one specifically before (or one nearly exactly like that) - I especially like the multi-select parts, the one with the grouping would be nice for VIP selections.
-
But as the old saying goes… ideas are cheap. There are tons of good ideas (just check redmine for things labeled "future"), the problem is implementation.
Maybe more two done by a package:
-
favorites menu
-
hide less used/unsued menu options
-
-
Hello,
This pull request https://github.com/bsdperimeter/pfsense/pull/141 improve menu css style removing some gifs, including more effects and automatic scroolbars to menus with more then 260px
Tested in: Firefox 12/13, Chrome 19.0.1084.46, IE 8 and 9
See the screenshot attached
-
Big thumbs up for this one!!! Awesome! Now at least a device like an 11" MacBook Air or some netbook can be used comfortably. That was just like a birthday gift for me :D
Now if we get the multiple selection stuff from "Chosen" in, the GUI will have taken a massive step forward.
-
Github was reporting that it couldn't be merged in for some reason. Might need updated and resubmitted as a new pull request.
-
260 pixels seems a bit low to me. I wouldn't want this on a standard machine if it didn't need it. What length menu can you fit on a netbook (1024x600) screen? In full screen mode?
Steve
-
I use a netbook a lot, carry it around and plug it into an external monitor at home and work. It is annoying when dropdown lists, menus, dialog boxes etc extend down below the screen and I can't easily select the lower items, or press the OK button! When there is something to test, I am happy to put it through its paces, switching between the netbook screen and external monitor, seeing if things automatically adjust etc.
Hopefully the scrollbars only appear if the menu won't fit on the screen - so people with big screens will never see them. -
Github was reporting that it couldn't be merged in for some reason. Might need updated and resubmitted as a new pull request.
Ok Jimp. I resubmitted the pull request with my respository sync.
thanks
-
Would there be some way to make that dynamic based on the window height? Seems that should only need to kick in for small screens. I do not want scrollbars on my full size window when it's capable of showing the whole menu.
-
Well,
The this pull request https://github.com/bsdperimeter/pfsense/pull/144 add scrollbar in dropdown menu based in window height.
I think this may solve the problem of big and small screens
;)
-
I shrank my window's vertical size way down (it was a tiny strip across) and it didn't kick in for me… hmm.