On 22/10/2013 7:26 a.m., Richard Bair wrote: >> 3. The Listview shows a scrollbar. That makes me believe that the control >> doesn't really know that it is running >> in embedded mode. Maybe the mouse emulation is not possible if the embedded >> mode is correcly enabled. >> Where do I enable the embedded mode? I though it is this property >> android.com.sun.javafx.isEmbedded=true. That's of course enabled >> in javafx.platform.properties. > There's some bit of mess here where some places are explicitly checking iOS > etc to hide/show stuff instead of just "embedded". Jonathan do you remember > all the places to check?
I believe we've switched out all places that used to use the simple isEmbedded() check to now use Platform.isSupported(ConditionalFeature.*) checks instead. In the case of ListView scrollbars, this code is handled in the VirtualFlow class and checks (indirectly) the ConditionalFeature.INPUT_TOUCH property for being true (in which case the scrollbars are hidden when not in use). I would suggest checking what you get when you call Platform.isSupported(ConditionalFeature.INPUT_TOUCH). Additionally, for your interest, you may want to check out some of the other ConditionalFeature options. Here's some that may be of interest: /** * Indicates whether an on-screen virtual keyboard is used for text input. * <p> * On embedded platforms JavaFX makes an attempt to initialize this * ConditionalFeature based on what input peripherals are attached. On * desktop platforms this ConditionalFeature will typically default to * false. * @since JavaFX 8.0 */ VIRTUAL_KEYBOARD, /** * Indicates whether or not a touch screen is attached to the device on * which JavaFX in running. * <p> * On embedded platforms JavaFX makes an attempt to initialize this * ConditionalFeature based on what input peripherals are attached. On * desktop platforms this ConditionalFeature will typically default to * false. * @since JavaFX 8.0 */ INPUT_TOUCH, /** * Indicates whether or not a touch screen providing multi-touch input is * attached to the device on which JavaFX in running. * <p> * On embedded platforms JavaFX makes an attempt to initialize this * ConditionalFeature based on what input peripherals are attached. On * desktop platforms this ConditionalFeature will typically default to * false. * <p> * If INPUT_MULTITOUCH is available then INPUT_TOUCH is also available. * @since JavaFX 8.0 */ INPUT_MULTITOUCH, /** * Indicates whether or not a relative motion pointer device such as a * mouse, trackpad or trackball is attached. * <p> * On embedded platforms JavaFX makes an attempt to initialize this * ConditionalFeature based on what input peripherals are attached. On * desktop platforms this ConditionalFeature will typically default to * true. * @since JavaFX 8.0 */ INPUT_POINTER -- Jonathan