44043: committed styling fixes specific for certain components to appear right-aligned and using 50% of the available width on non-desktop environments.
After seeing the issues reported above and the issues reported in ICE-10476 and seeing how components are being used inside mobi:fieldSet rows, it is no longer the aim of this JIRA to modify the styling of ALL components that appear at the end of a field set row. The fixes just committed only affect the components that make the most sense to be used in mobile environments in this fashion, which are all standard h: components that render either an <input>, <textarea> or <select> element as their root/only node, ace:textEntry, ace:textareaEntry, ace:maskedEntry, ace:simpleSelectOneMenu, mobi:flipswitch, mobi:dateSpinner, and mobi:timeSpinner.
The above was determined after surveying all ACE and MOBI components. All other components are simply not very likely to be used inside a mobifieldSet row with the intention to occupy the right 50% of the area, such as container components, buttons, data components, utility components, and other complex components like ace:gMap and ace:chart. The only components that still make sense to be used in this fashion but weren't included in the fixes above are ace:autoCompleteEntry, ace:comboBox, ace:selectMenu and ace:slider. The issue with these components is that they have their own 'width' or 'length' attributes, so their widths cannot be easily modified by general CSS classes only.
A CSS class was also added to this mobile stylesheet (that is only loaded on non-desktop environments when having mobi:deviceResource on the page) that users can add arbitrarily to other components to make them align to the right when inside a mobi:fieldSet row. This class is 'mobi-float-right'.
The only remaining issue is that when using this mobile stylesheet, the mobi:dateSpinner and mobi:timeSpinner components will have the popup button to the left when being in the non-native mode. This is due to the way in which the markup for these components in rendered, and can be fixed by changing the current way of rendering this markup.