[Building Sakai] How to support proliferation of new tablets in CLE

Keli Sato Amann kamann at stanford.edu
Tue Oct 30 13:46:48 PDT 2012


Hello
Following up on an old thread, there are certain things I was hoping for with 2.9, but from my reading of the mobiledetect page (http://code.google.com/p/php-mobile-detect/), it doesn't sound like we can actually detect the device attributes that would be necessary. So I'll describe what I wish we could do, then describe what it sounds like we may have to actually do. As a lay person, I'm doing my best to follow along in JIRA (SAK-22302 and related), but can those in the know describe what *actually* is going to happen for 2.9? 

1) Direct users to PDA portal if screen size is 7.9 inch or smaller (iPad mini is the largest of the small tablets). However, it doesn't seem like mobileDetect can detect screensize though, only if something is a tablet versus a phone. So we would have to choose to direct all iPads to full site, or all iPads pda skin. Personally, I think we would opt to direct tablets to full site; at least 2.9 will make it easier for users swith smaller tablets to then switch to pda skin. But if we could build in some other way, other than size detection in the future to direct users to the proper skin (save preference, use some other detection method), or expand on our detection methods to include form factor detection, that would be ideal.

2) Suppress CKEditor when it won't work (browser doesn't support contenteditable OR when iOS5+ or Android3+) AND when screen size 7.9 inch or smaller. However, it doesn't seem like mobiledetect can detect contenteditable and even it it did, it doesn't accurately predict whether the browser actually supports CKEditor, per Matthew's note below. Sounds like OS version detection is in beta for mobile detect so we might have some luck there eventually, but without it, it sounds like we should to suppress CKEditor whenever ANY phone or tablet detected, unless there are some OS out there that have supported CKEditor from their first version. This is not currently happening on Qa server though --when I go to 2.9 with a Nook running a custom version of Android, my screen freezes when I touch the ckeditor.

If at some point we do implement something like the form factor detection that Matthew mentions AND we could also detect version, we could target the right experience a little better. It is kind of a bummer that we're finally able to support CKEditor use on current smartphones, in theory but not in practice. But for now, simple text is probably better for new content creation on ALL touch screens anyway, since it's a little unwieldy to  control cursor position in CKEditor to format text and the tool bar takes up precious space. The only drawback is when you are editing something that was originally created in rich text, it would be nice to see CKEditor instead, because otherwise you'll see html. 

Keli Amann
User Experience Specialist
Academic Computing Services, Stanford University

----- Original Message -----
From: "Matthew Jones" <jonespm at umich.edu>
To: sakai-dev at collab.sakaiproject.org
Sent: Monday, January 9, 2012 6:32:54 AM
Subject: [Building Sakai] How to support proliferation of new tablets in CLE





Yea, this is a somewhat tough issue (contenteditable) because as this post says 

"This works great but for someone looking to get this going on iPhone/iPad: the contentEditable property IS defined. Trouble is the OS doesn't actually support " - http://stackoverflow.com/questions/1882205/how-do-i-detect-support-for-contenteditable-via-javascript 

So if you try to use feature detection (like Modernizr) then it will still succeed. And if you do device detection, then it works in iOS5 but fails in iOS4! 

Getting rid of WURFL as Steve suggested is a good idea though. Both because of licensing problems and because it just sits there taking up 100MB in the heap at all times. 

The good news is for your original question (1) is that the new mobile browsers (iOS 5+ and Android 3.0+) are finally supporting this specific feature for editing ( http://caniuse.com/contenteditable ). And as far as I've seen in usage reports and overall usage (at least at Michigan), tablets are still either lightly used or used as as secondary option when a notebook is also available. So there's still a year or two till they're everywhere. :) 

For the (2) part, Steve's solution will make changing the string easier and more legal than changing the WURFL, so that really should be done. I think that the more important thing for the medium term future will be combining feature detection with device/form factor detection ( https://github.com/PaulKinlan/formfactor ) to ensure the optimal user experience. You're realistically not going to want to present the same view to a mobile phone with a 10 cm diagonal as one with a 25 cm diagonal. 

It also seems like if the feature detection was available client side (like in one of these js libraries) disabling specific features in certain places (like forums) would be much easier. 
On Jan 9, 2012 1:56 AM, "David Horwitz" < david.horwitz at uct.ac.za > wrote: 


Just a point for people looking at making a feature 
available/unavailable it is far better to query the service (being WURFL 
or Mobile detect based) for capabilities rather than specific devices. 
Part of the fragility of the current use is that it ask "is this an 
iPhone" rather than "does this device support feature x". 

D 

On 01/09/2012 01:01 AM, Steve Swinsburg wrote: 
> Hi Keli, 
> 
> The portal currently uses the WURFL library to detect mobile devices, however recent license changes means we cannot upgrade, so I am looking at switching it to an alternative project called Mobile Detect, which is based on MobileESP and available in the maven repositories. It is Apache2. 
> 
> https://jira.sakaiproject.org/browse/SAK-21334 
> 
> Once the code is cleaned up then tools will be able to check the mobile device easier, and via an entityprovider. 
> 
> cheers, 
> Steve 
> 
> 
> On 07/01/2012, at 11:42 AM, Keli Sato Amann wrote: 
> 
>> Hello, 
>> We are running 2.6 locally, but we added the patch that suppresses the rich text entry of the fckeditor and replaces it with simple text entry that comes with 2.8. We have manually updated that patch to do this switch when it detects additional useragents (iphone, and now Android phones and iPad). 
>> 
>> I was hoping this also covered Android tablets, but we just tested it on a Nook and we still see the non-responsive rich text options. So we will have to manually update this to include the useragent for the Nook and I guess the Kindle Fire if we can find one to test. 
>> 
>> My questions are this: 
>> 1) Is the rich text entry of the ckeditor (which I think comes with 2.9) supported on iOS and Android devices or will we need to continue this workaround? 
>> 
>> 2) If we have to continue this workaround, is there a different string we can search on that isn't quite so specific that would cover all iOS and Android devices so we can stop updating this? 
>> 
>> 3) We created another dependency: in Forums, we hid the Delete and Setting options for Topics so that they only show during a hover. We want to completely hide these options on touch devices (while it is possible to get this to display with a double click, this is confusing). So now we need to do the useragent check in two locations. Is there a way to maintain the approved list in just one location? 
>> 
>> I may not understand any of your answers, so I'm cc'ing Lydia ;-) 
>> 
>> Thanks, 
>> Keli Amann 
>> User Experience Specialist 
>> Academic Computing Services 
>> _______________________________________________ 
>> sakai-dev mailing list 
>> sakai-dev at collab.sakaiproject.org 
>> http://collab.sakaiproject.org/mailman/listinfo/sakai-dev 
>> 
>> TO UNSUBSCRIBE: send email to sakai-dev-unsubscribe at collab.sakaiproject.org with a subject of "unsubscribe" 
> _______________________________________________ 
> sakai-dev mailing list 
> sakai-dev at collab.sakaiproject.org 
> http://collab.sakaiproject.org/mailman/listinfo/sakai-dev 
> 
> TO UNSUBSCRIBE: send email to sakai-dev-unsubscribe at collab.sakaiproject.org with a subject of "unsubscribe" 

_______________________________________________ 
sakai-dev mailing list 
sakai-dev at collab.sakaiproject.org 
http://collab.sakaiproject.org/mailman/listinfo/sakai-dev 

TO UNSUBSCRIBE: send email to sakai-dev-unsubscribe at collab.sakaiproject.org with a subject of "unsubscribe" 



_______________________________________________
sakai-dev mailing list
sakai-dev at collab.sakaiproject.org
http://collab.sakaiproject.org/mailman/listinfo/sakai-dev

TO UNSUBSCRIBE: send email to sakai-dev-unsubscribe at collab.sakaiproject.org with a subject of "unsubscribe"


More information about the sakai-dev mailing list