Open Bug 1524772 Opened 5 years ago Updated 1 month ago

Webcompat: Offline unavailable in Gmail

Categories

(Web Compatibility :: Site Reports, defect, P1)

Desktop
Windows 10

Tracking

(Webcompat Priority:P1, firefox67 affected, firefox103 affected, firefox111 affected)

ASSIGNED
Webcompat Priority P1
Tracking Status
firefox67 --- affected
firefox103 --- affected
firefox111 --- affected

People

(Reporter: tyu, Assigned: ksenia)

References

(Depends on 3 open bugs, )

Details

(Keywords: webcompat:contact-ready)

Attachments

(2 files)

Gmail is showing a message:

`Offline unavailable.

The browser you are using is missing some features required to enable offline. To enable offline, you must use Chrome with version 61 or higher.`

at https://mail.google.com/mail/u/0/#settings/offline with a logged in gmail account.

Environment:

67.0a1(2019-02-02), Windows 10

Surprisingly I can't find a duplicate here or on webcompat.com

Component: General → Desktop
Product: Firefox → Tech Evangelism
Version: 67 Branch → unspecified

On Firefox Nightly 67.0a1 (2019-02-04) (64-bit)

    xti = "Offline unavailable.",

minified hell.

    Kti = function() {
      var b = jc + N(pg) + NFg + N(Jl) + g;
      b += Jti({
        xZa: Dy(xti),
        vZa: Dy(
          "The browser you are using is missing some features required to enable offline. To enable offline, you must use Chrome with version 61 or higher."
        )
      });
      return L(b + sea);
    },

I would contact them directly. Probably UA sniffing. Given the hard coded string about using Chrome.

Whiteboard: [webcompat] [contactready] [clientsniff]
Product: Tech Evangelism → Web Compatibility

Migrating Webcompat whiteboard priorities to project flags. See bug 1547409.

Webcompat Priority: --- → ?

See bug 1547409. Migrating whiteboard priority tags to program flags.

See bug 1547409. Moving webcompat whiteboard tags to keywords.

I wonder what tech they rely on for Offline Gmail. Overholt, I think we talked about this recently... are you aware of what blockers might exist?

Flags: needinfo?(overholt)
Priority: -- → P1

I heard https://wicg.github.io/web-locks/ was needed and maybe also https://github.com/WICG/cookie-store (my quick bugzilla searches have turned up empty for implementation bugs; sorry). Last time we spoke about this on the mailing list, https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Clear-Site-Data was required but that had been shipped in Firefox right around that time.

Flags: needinfo?(overholt)

I sent an email to the mailing list shared with google folks with a summary of the discussions so far.
The discussion started on June 2018. And as Andrew said most of the blockers at the time have been fixed since.
It's not yet clear if Chrome is using the cookie store and web-locks features for Gmail. We might know soon.

In Gmail js

this.wa = !!up.navigator.locks && vp && wp(69);

and

    LTf = function(b) {
      return new Qp(function(c) {
        var d = as + "_offline_lock";
        b.ra.Ib(YZb);
        up.navigator.locks.request(
          d,
          {
            ifAvailable: !0
          },
          function(e) {
            (e = !!e) ? b.ra.Ib(ZZb) : KTf(b, 7);
            c(e);
            return new Qp(m());
          }
        );
      });
    },

so there is a dependency on web-locks at least. Let's check for cookie store

The bug is in very active development
https://bugs.chromium.org/p/chromium/issues/detail?id=729800

but I didn't find trace of any usage in Gmail JS

Setting to webcompat:p1, but I don't think this is actually actionable by us right now.

Webcompat Priority: ? → P1
  • Web Locks (Chromium) has been fixed in Aug 14, 2018
  • Cookie Store (Chromium) has been fixed in Sep 25, 2020

I would be good to diagnose again, to understand if anything prevent the offline mode.

Attached image product.name

They definitely test different scenarios

    var uWi = function (c) {
      for (var d = c.rows, e = _.Vc + _.Q(_.ch) + _.cZ, f = d.length, g = 0; g < f; g++) e += _.qPi(d[g]);
      e += _.tPi(c) + _.vc;
      return (0, _.F) (e)
    },
    vWi = function (c, d) {
      c = yNi + _.Q(d.Jwb) + _.xa + _.Q(_.HS) + '" name="enable-offline"' + (c ? _.la : '') + _.w1f + _.Q(_.Xl) + _.iba + _.Q(d.Jwb) + _.Qa;
      return (0, _.F) (c + 'Enable offline mail</label>')
    },
    wWi = function (c) {
      var d = _.Wc + _.Q('r8') + _.db + _.Q(_.Xl) + _.Qa;
      d = d + _.RNi + (_.Q('r9') + _.$a + _.Q('PS') + _.$a + _.Q('byX') + _.Wa + _.Q('PU') + _.Qa);
      d = d + 'Offline unavailable.</div><p class="' + (_.Q('PT') + _.Qa + _.Vp(c) +
      '</p></div></td>');
      return (0, _.F) (d)
    },
    xWi = function () {
      var c = _.Vc + _.Q(_.ch) + _.hNi + _.Q(_.Sl) + _.Qa;
      c += wWi((0, _.Lz) ('The browser you are using is missing some features required to enable offline. To enable offline, you must use Chrome with version 61 or higher.'));
      return (0, _.F) (c + _.zea)
    },
    yWi = function (c) {
      var d = c.dad;
      c = c.Cad;
      var e = _.Vc + _.Q(_.ch) + _.hNi + _.Q(_.Sl) + _.Qa;
      e = d ? e + wWi((0, _.Lz) ('The version of Chrome you are using is missing some features required to enable offline. To enable offline, you must use Chrome with version 61 or higher.')) :
      c ? e + wWi((0, _.Lz) ('The version of Firefox you are using is missing some features required to enable offline. To enable offline, you must use Firefox with version 63 or higher.')) : e + wWi((0, _.Lz) ('The browser you are using is missing some features required to enable offline. To enable offline, you must use either Chrome or Firefox.'));
      return (0, _.F) (e + _.zea)
    },
    zWi = function (c) {
      c = c || {
      };
      var d = _.Vc + _.Q(_.ch) + _.hNi + _.Q(_.Sl) + _.Qa;
      c = '<span>Looks like there is not enough space available for offline mail. This may be caused by insufficient hard drive space or a web browser mode.&nbsp;</span><span>' + (_.mN(c) + _.rc);
      d += wWi((0, _.Lz) (c));
      return (0, _.F) (d + _.zea)
    },
    AWi = function () {
      var c = _.Vc + _.Q(_.ch) + _.hNi + _.Q(_.Sl) + _.Qa;
      c += wWi((0, _.Lz) ('Contact your administrator for further details.'));
      return (0, _.F) (c + _.zea)
    },
    BWi = function () {
      var c = _.Vc + _.Q(_.ch) + _.hNi + _.Q(_.Sl) + _.Qa;
      c += wWi((0, _.Lz) ('Offline is restricted to designated devices. Contact your administrator for further details.'));
      return (0, _.F) (c + _.zea)
    },

on Firefox, xWi is being triggered by _.Yp as d

They do have a specific product called "Mozilla Mail" which is sent to Firefox.

What I can't determine is that if it's hardcoded in the Mozilla Mail or if it's a feature detection.
The code being minified makes it very hard to know.

And given that this is in the HTTP raw response

    <meta name="application-name" content="Mozilla Mail" />
…
    <script type="text/javascript" nonce="w3dEBxZ1tiQ3+VlLWmpmvw">
      // <![CDATA[

…
      var GM_SUPPORTED_GECKO_VERSION = "46";
      var GM_SUPPORTED_CHROME_VERSION = "43";
      var GM_SUPPORTED_SAFARI_VERSION = "9";

…
      var GM_APP_NAME = "Mozilla Mail";

…
    </script>

OK there's a GLOBALS[61] which is associated to offlineEnabled and the value is 0 in the raw http response.

Whiteboard: [webcompat] [contactready] [clientsniff]
Depends on: weblocks, 1740044

I tested with a chrome UA on Firefox Nightly 96.0a1 (2021-11-29) (64-bit)

  1. I was able to activate the offline mode.
  2. I was able to go to my mail with network deactivated
  3. I was able to reload the UI with network deactivated
  4. I was able to queue an email for sending later. When the network was reactivated, the email was sent.

It's not an exhaustive test of all features but that seems to work as expected.

The severity field for this bug is set to normal. However, this bug has a P1 WebCompat priority.
:denschub, could you consider increasing the severity of this web compatibility bug?

For more information, please visit auto_nag documentation.

Flags: needinfo?(dschubert)

Thank you, bot!

This isn't a S1 in my opinion, this isn't completely breaking Gmail, it's "only" breaking offline mode. Since there is active work going on here, S2 feels appropriate.

Severity: normal → S2
Flags: needinfo?(dschubert)

This is still an issue.
https://prnt.sc/UUMBePIpX2dX

Tested with:
Browser / Version: Firefox Nightly 103.0a1 (2022-06-07)
Operating System: Windows 10 Pro

Still affected.
https://prnt.sc/kNkuXbFTubiU

Tested on:
Operating system: Windows 10
Browser/Version: Firefox Nightly 111.0a1 (2023-01-20)

Assignee: nobody → kberezina
Status: NEW → ASSIGNED
Depends on: 1829240
Depends on: 1885871
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: