Oops, forgot we already had is_tablet defined -- I think we should change
layout.html as you have done below.
Anthony
On Wednesday, April 4, 2012 7:18:28 PM UTC-4, naveed wrote:
>
> I worked around it using this:
>
> {{is_mobile=request.user_agent().is_mobile and not
> request.user_agent().is_tablet}}
>
> in layout.html
>
> Naveed
>
> *From:* Anthony <[email protected]>
> *Sent:* Tuesday, April 03, 2012 08.45
> *To:* [email protected]
> *Subject:* Re: [web2py] Prevent mobile rendering on iPad/Tablets
>
>
>> Any future development really needs to be flexible in this regard:
>> iPads are not iPhones (and likewise for other device families). OTOH, iPads
>> are not desktops either: they have a touch interface. A good responsive
>> design framework should handle this properly, and not as a hack.
>>
>
> Note, Skeleton does actually retain the desktop layout on iPads (and any
> device at least 768 CSS pixels wide) -- it doesn't drop to the
> single-column layout until the device falls below 768px (Bootstrap does the
> same). So, it's probably not necessary to edit the skeleton.css file to
> accommodate iPads.
>
> On the other hand, the mobile menu could use improvement.
> request.user_agent().is_mobile is True even for tablets like the iPad, but
> we don't necessarily want the mobile menu on tablets. It would be helpful
> if request.user_agent() included additional attributes, such as is_tablet
> (or maybe some basic size categories, like small, medium, large).
> Server-side user agent parsing can get tricky, though, so ultimately it's
> probably best to handle as much of the responsive stuff on the client side
> (via CSS media queries and JS) as possible. Another approach with the menu
> would be to include both the desktop and the mobile menus in the HTML, each
> with its own class. Then use CSS media queries to selectively show one and
> hide the other depending on the screen size.
>
> Anthony
>