Uploaded image for project: 'Moodle'
  1. Moodle
  2. MDL-30784

Android Tablets sent to mobile theme

    Details

    • Testing Instructions:
      Hide
      1. Set the mobile theme as afterburner
      2. Set the tablet theme as standard
      3. Set the default theme as brick
      4. Access the site on a android mobile phone and see the afterburner theme
      5. Access device on android tablet and see the standard theme
      6. Access device on ipad and see the standard theme.
      Show
      Set the mobile theme as afterburner Set the tablet theme as standard Set the default theme as brick Access the site on a android mobile phone and see the afterburner theme Access device on android tablet and see the standard theme Access device on ipad and see the standard theme.
    • Affected Branches:
      MOODLE_21_STABLE, MOODLE_22_STABLE, MOODLE_23_STABLE
    • Fixed Branches:
      MOODLE_21_STABLE, MOODLE_22_STABLE
    • Pull from Repository:
    • Pull Master Branch:
      wip-MDL-30784-master

      Description

      Android tablets are detected as mobile devices not as tablets in themes.

      I have attached a patch to lib/moodlelib.php to fix the issue. The change is that the mobile regex needs to search for android and mobile in the user agent not just android.

      The user agent for an android mobile device lists (Android version number) /4.0 Mobile Safari/
      The user agent for an android tablet device lists (Android version number) / 4.0 Safari/

      In the patch I change /android| to /android \. mobile| for the mobile regex and then I added |android to the tablet regex.

      This was tested and validated on a iPod OS 5, Galaxy Nexus on Android 4.0.2, a Motorola Xoom on Honeycomb 3.2, a Droid (original) running Android 2.3.6 and an iPad.

        Gliffy Diagrams

          Attachments

            Activity

            Hide
            jrh18 Jason Hardin added a comment -

            well the first file was a crappy diff. the second file i sent in at 8:32 AM is the correct file.

            Show
            jrh18 Jason Hardin added a comment - well the first file was a crappy diff. the second file i sent in at 8:32 AM is the correct file.
            Hide
            salvetore Michael de Raadt added a comment -

            Thanks for reporting that an sharing a solution.

            Show
            salvetore Michael de Raadt added a comment - Thanks for reporting that an sharing a solution.
            Hide
            phalacee Jason Fowler added a comment -

            there is more to this issue, My HTC Sensation running Android 2.3.4 reports this:
            Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_3; HTC_Sensation_Z710a; en-au) AppleWebKit/533.16 (KHTML, like Gecko) Version/5.0 Safari/533.16
            As it's user agent when I have "Mobile view" off (when it is set to desktop viewing)

            When mobile view is on, it reports
            Mozilla/5.0 (Linux; U; Android 2.3.4; en-au; HTC_Sensation_Z710a Build/GRJ22) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1

            I don't have my Acer Iconia A500 to test with at the moment as it is in for repairs at the moment.

            Show
            phalacee Jason Fowler added a comment - there is more to this issue, My HTC Sensation running Android 2.3.4 reports this: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_3; HTC_Sensation_Z710a; en-au) AppleWebKit/533.16 (KHTML, like Gecko) Version/5.0 Safari/533.16 As it's user agent when I have "Mobile view" off (when it is set to desktop viewing) When mobile view is on, it reports Mozilla/5.0 (Linux; U; Android 2.3.4; en-au; HTC_Sensation_Z710a Build/GRJ22) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1 I don't have my Acer Iconia A500 to test with at the moment as it is in for repairs at the moment.
            Hide
            phalacee Jason Fowler added a comment -

            My Acer Iconia A500 running 3.2 reports this
            Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_3; en-us) AppleWebKit/533.16 (KHTML, like Gecko) Version/5.0 Safari/533.16
            when running in desktop mode

            And this:
            Mozilla/5.0 (Linux; U; Android 3.2; en-us; A500 Build/HTJ85B) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13
            when running in tablet mode

            So I never see the tablet theme ...

            Show
            phalacee Jason Fowler added a comment - My Acer Iconia A500 running 3.2 reports this Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_3; en-us) AppleWebKit/533.16 (KHTML, like Gecko) Version/5.0 Safari/533.16 when running in desktop mode And this: Mozilla/5.0 (Linux; U; Android 3.2; en-us; A500 Build/HTJ85B) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13 when running in tablet mode So I never see the tablet theme ...
            Hide
            phalacee Jason Fowler added a comment -

            Having added the patch, the tablet view now shows the right theme. Pushing this for peer review, and then porting back through the other versions of moodle

            Show
            phalacee Jason Fowler added a comment - Having added the patch, the tablet view now shows the right theme. Pushing this for peer review, and then porting back through the other versions of moodle
            Hide
            rajeshtaneja Rajesh Taneja added a comment -
            Show
            rajeshtaneja Rajesh Taneja added a comment - Patch looks good Jason. Looking at http://googlewebmastercentral.blogspot.com.au/2011/03/mo-better-to-also-detect-mobile-user.html , and patch make sense.
            Hide
            phalacee Jason Fowler added a comment -

            Cherry picked across to the different versions of Moodle, pushing for integration. Thanks Jason Hardin for the patch.

            Show
            phalacee Jason Fowler added a comment - Cherry picked across to the different versions of Moodle, pushing for integration. Thanks Jason Hardin for the patch.
            Hide
            stronk7 Eloy Lafuente (stronk7) added a comment -

            The main moodle.git repository has just been updated with latest weekly modifications. You may wish to rebase your PULL branches to simplify history and avoid any possible merge conflicts. This would also make integrator's life easier next week.

            TIA and ciao

            Show
            stronk7 Eloy Lafuente (stronk7) added a comment - The main moodle.git repository has just been updated with latest weekly modifications. You may wish to rebase your PULL branches to simplify history and avoid any possible merge conflicts. This would also make integrator's life easier next week. TIA and ciao
            Hide
            phalacee Jason Fowler added a comment -

            Just rebased this for all three branches

            Show
            phalacee Jason Fowler added a comment - Just rebased this for all three branches
            Hide
            nebgor Aparup Banerjee added a comment -

            Thanks all, this has been integrated into 21, 22 and master.

            Tester: i'm not sure about the lowercase (A/android) used here but only testing and/or more user agent strings will help here.

            Show
            nebgor Aparup Banerjee added a comment - Thanks all, this has been integrated into 21, 22 and master. Tester: i'm not sure about the lowercase (A/android) used here but only testing and/or more user agent strings will help here.
            Hide
            ankit_frenz Ankit Agarwal added a comment -

            Hi guys,
            I used firefox with different user agents. And all seems to be working fine.
            passing
            Thanks

            Show
            ankit_frenz Ankit Agarwal added a comment - Hi guys, I used firefox with different user agents. And all seems to be working fine. passing Thanks
            Hide
            nebgor Aparup Banerjee added a comment -

            The code here has been spread to upstream moodle repositories and mirrors for anyone to use .

            Closing, have a good weekend!

            Show
            nebgor Aparup Banerjee added a comment - The code here has been spread to upstream moodle repositories and mirrors for anyone to use . Closing, have a good weekend!

              People

              • Votes:
                0 Vote for this issue
                Watchers:
                0 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:
                  Fix Release Date:
                  14/May/12