intl/moz.build
author Drew Willcoxon <adw@mozilla.com>
Thu, 22 Aug 2019 14:50:42 +0000
changeset 542066 91c666707c219c5215117da97cbbec3bf07f42e1
parent 536236 f6d04ade73b5b970416a76f323f5b79c850cef47
permissions -rw-r--r--
Bug 1575038 - Quantumbar: Record engagement event telemetry when openViewOnFocus is triggered without mouse clicks. r=dao, a=RyanVM We need to start engagement event recording when the view opens due to `openViewOnFocus`. We already do for mouse clicks since we call `engagementEvent.start` from `_on_mousedown`. But we don't for the Ctrl/Command-L key shortcut. The shortcut command calls `openLocation` in browser.js, which calls `gURLBar.startQuery` but not `engagementEvent.start`. Every time we call `engagementEvent.start`, we do it before calling `input.startQuery`. The one exception is in `input._on_drop` because there we just handle the dropped value directly instead of starting a new query with it. The inverse is also mostly true, i.e., every time we call `input.startQuery`, we also call `engagementEvent.start`. The three exceptions are: in UITour (where it looks like we should be calling `urlbar.search` instead), in `UrlbarInput` after picking a keyword offer result, and in `openLocation` in browser.js (mentioned above). So really the only valid place is after picking a keyword entry. So, it makes sense to move `engagementEvent.start()` into `input.startQuery` so that callers don't have to call it. I added an `event` param to `startQuery`, since `engagementEvent.start` needs one. I considered removing that need. It's possible, but then we would need a way to avoid calling `engagementEvent.start` in the keyword offer case, so `startQuery` would need something like a `suppressEngagementEvent` param. `event` basically functions as that, so I left it. Another thing to point out about this patch is that I chose to record a "typed" value when the pageproxystate is invalid and the view opens due to `openViewOnFocus`. The view does not show the user's top sites in that case, so "topsites" seems wrong. Differential Revision: https://phabricator.services.mozilla.com/D42749

# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
# vim: set filetype=python:
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.

TEST_DIRS += [
    'gtest',
]

DIRS += [
    'hyphenation/hyphen',
    'hyphenation/glue',
    'locale',
    'locales',
    'lwbrk',
    'strres',
    'unicharutil',
    'l10n',
]

DIRS += [
    'uconv',
    'build',
]

EXPORTS.mozilla += [
    'Encoding.h',
    'JapaneseDetector.h',
]

EXPORTS += [
    '../third_party/rust/encoding_c/include/encoding_rs.h',
    '../third_party/rust/encoding_c/include/encoding_rs_statics.h',
    '../third_party/rust/shift_or_euc_c/include/shift_or_euc.h',
]

with Files("**"):
    BUG_COMPONENT = ("Core", "Internationalization")

with Files("icu/**"):
    BUG_COMPONENT = ("Core", "JavaScript: Internationalization API")

with Files("icu-patches/**"):
    BUG_COMPONENT = ("Core", "JavaScript: Internationalization API")

with Files("tzdata/**"):
    BUG_COMPONENT = ("Core", "JavaScript: Internationalization API")

with Files("update*"):
    BUG_COMPONENT = ("Core", "JavaScript: Internationalization API")

with Files("icu_sources_data.py"):
    BUG_COMPONENT = ("Firefox Build System", "General")

SPHINX_TREES['/intl'] = 'docs'