Grisha Kruglov
013a08c6cf
[components] Closes https://github.com/mozilla-mobile/android-components/issues/7016 : Emit awesomebar provider metrics in ms
2020-05-18 17:10:08 -07:00
Christian Sadilek
0095b9eed6
[components] Closes https://github.com/mozilla-mobile/android-components/issues/6985 : Make sure suggestions with long title/desc don't freeze UI
2020-05-15 11:47:45 -04:00
Grisha Kruglov
5179fdefa0
[components] Closes https://github.com/mozilla-mobile/android-components/issues/4992 : Emit provider duration facts from BrowserAwesomeBar
...
Some things to consider and trade-offs:
When recording durations of various providers into a glean metric, we have a bit of a hurdle.
One approach would be to encapsulate all of the awesomebar-related perf telemetry entirely within the
awesomebar a-c component. But, set of providers isn't entirely known to us at the a-c level.
We know what providers we have defined, but we don't know what providers applications will provide themselves.
Also, glean doesn't have a metric of type (string->timespan), which would allow us to work-around this.
So, we can't define ping/metrics in the a-c component. This means that they need to be defined elsewhere, while
the measurement happens within the component. An established pattern for that in the codebase is emitting "facts",
which is what this patch does.
We delegate to the consuming application to then actually do something with these facts - e.g. map providers
to concrete glean metric definitions.
Another consideration is if we should try to group timings related to a single query. That's hard to do reliably,
and will introduce additional complexity into what's otherwise a super simple setup. Source of that complexity
is that we actively try to cancel query jobs as user is typing; our providers could take an arbitrary time to resolve,
and so grouping becomes difficult. However, we care about improving how long each individual provider takes,
since that's a good proxy for "how responsive is this UI?". Simply recording each individual timing we see
should be enough for that.
2020-05-12 15:36:21 -07:00
Jonathan Almeida
b86fa6dfb5
[components] Close https://github.com/mozilla-mobile/android-components/issues/6601 : Update targetSdkVersion to 29
2020-04-28 03:16:54 -04:00
levimatheri
181eaea947
[components] Closes https://github.com/mozilla-mobile/android-components/issues/4632 . Add contains function for suggestion providers
2020-03-24 16:29:22 -04:00
Tiger Oakes
1bdf8c8234
[components] Add JUnit coroutine test rule
2019-11-18 19:52:50 -08:00
MozLando
fe3b207233
[components] Merge https://github.com/mozilla-mobile/android-components/pull/4584 https://github.com/mozilla-mobile/android-components/pull/4817 (part 1)
...
4584: For https://github.com/mozilla-mobile/android-components/issues/4583 Avoid icon engine in suggestion being cut off in RTL r=pocmo a=mcarare
4817: For https://github.com/mozilla-mobile/android-components/issues/4816 Remove autoMirrored from checkmark drawable r=pocmo a=mcarare
Co-authored-by: mcarare <mihai.carare.dev@gmail.com>
2019-10-22 15:11:42 +00:00
Sawyer Blatz
9755cb907b
[components] For https://github.com/mozilla-mobile/android-components/issues/4653 : Improves performance
2019-10-08 10:15:55 +02:00
Sawyer Blatz
c3abe2f6c9
[components] For https://github.com/mozilla-mobile/android-components/issues/4653 : Do not display suggestion until icon is ready
2019-10-07 17:20:06 -07:00
mcarare
e03aa5ed63
[components] For https://github.com/mozilla-mobile/android-components/issues/4583 Avoid icon engine in suggestion being cut off in RTL
2019-09-30 15:56:38 +03:00
Denys M
b95c932f81
[components] For https://github.com/mozilla-mobile/android-components/issues/4460 . Fix detekt warning about license in project files.
2019-09-24 01:01:03 +04:00
Sebastian Kaspari
c6fecc6f06
[components] Closes https://github.com/mozilla-mobile/android-components/issues/4283 : Migrate feature-contextmenu to use browser-state.
2019-09-16 12:09:09 +02:00
ekager
0627b5b321
[components] Closes https://github.com/mozilla-mobile/android-components/issues/4016 - Use padding instead of margin for awesomebar item layout
2019-08-06 10:56:14 -07:00
Sawyer Blatz
780a36ab65
[components] For https://github.com/mozilla-mobile/android-components/issues/3574 : Updates visuals for search view
...
Co-authored-by: NotWoods <contact@tigeroakes.com>
2019-06-27 12:45:26 -07:00
Tiger Oakes
e5b6e27420
[components] Fixes https://github.com/mozilla-mobile/android-components/issues/2605 - Replace pxToDp with dpToPx
2019-06-25 06:05:10 -07:00
Denys M
1f8fc3fa5b
[components] For https://github.com/mozilla-mobile/android-components/issues/1481 . Enable unit test binary resources globally.
...
Excluded few modules.
2019-06-13 09:29:52 +02:00
Denys M
b6629cd6fc
[components] For https://github.com/mozilla-mobile/android-components/issues/1481 . Use androidx runner in browser-domains.
2019-06-11 17:48:41 +02:00
Denys M
cfcec95e0f
[components] For https://github.com/mozilla-mobile/android-components/issues/1481 . Use androidx runner in browser-awesomebar.
2019-06-10 09:23:10 -04:00
Christian Sadilek
95177f1a4c
[components] Issue https://github.com/mozilla-mobile/android-components/issues/2364 : Always clear previous provider suggestions
2019-06-06 11:30:33 -04:00
Christian Sadilek
69501e16bb
[components] Issue https://github.com/mozilla-mobile/android-components/issues/2364 : Make sure suggestions are removed before new ones are added
2019-06-03 13:37:42 -04:00
Christian Sadilek
14ff2b71dd
[components] Issue https://github.com/mozilla-mobile/android-components/issues/2364 : getItemId is not synchronized
2019-05-30 18:54:51 -04:00
Christian Sadilek
895c4571a5
[components] Closes https://github.com/mozilla-mobile/android-components/issues/3177 : AwesomeBar should throw when duplicate provider added
2019-05-30 14:56:52 -04:00
Denys M
faf850118e
[components] Fixes https://github.com/mozilla-mobile/android-components/issues/3124 . Make BrowserAwesomeBarTests more deterministic.
2019-05-27 12:22:01 -04:00
Sebastian Kaspari
8d595984e7
[components] BrowserAwesomeBar: Only call onInputChanged() after onInputStarted() and allow provider to return suggestions from onInputStarted().
...
For: https://github.com/mozilla-mobile/fenix/issues/2406
2019-05-23 11:05:02 -04:00
Christian Sadilek
56937dbe3a
[components] Issue https://github.com/mozilla-mobile/android-components/issues/2997 : Add back layout constraint for awesomebar desc.
2019-05-14 13:36:17 -04:00
Blake Winton
ef4f476d8b
[components] Closes https://github.com/mozilla-mobile/android-components/issues/2997 : Tighten the spacing between search result title and description.
2019-05-13 17:21:53 -04:00
Denys M
c65630b16a
[components] For https://github.com/mozilla-mobile/android-components/issues/2346 . Enable kotlin warningsAsErrors for browser-awesomebar.
2019-05-13 10:54:19 -04:00
Blake Winton
a649b5ce1f
[components] Line up the text, as well.
...
The start with the start of the search term and the end with the end of the search box's content.
2019-05-10 19:29:36 -04:00
Blake Winton
8cbbdb96cb
[components] Closes https://github.com/mozilla-mobile/android-components/issues/2952 : Add padding to the mozac_browser_awesomebar_icon to line up with the search icon.
2019-05-10 19:29:36 -04:00
Sebastian Kaspari
5c54ec453d
[components] Closes https://github.com/mozilla-mobile/android-components/issues/842 : Migrate from support libraries to AndroidX.
2019-05-02 16:08:55 +02:00
Sawyer Blatz
ec6deef3f5
[components] Fixes https://github.com/mozilla-mobile/android-components/issues/2859 : Corrects scroll position on new suggestion
2019-04-26 11:32:33 -07:00
Christian Sadilek
985c3dc80f
[components] Closes https://github.com/mozilla-mobile/android-components/issues/2364 : Prevent duplicate ViewHolder IDs in AwesomeBar
...
- This also fixes the HistoryStorageSuggestionProvider to dedupe
history suggestions based on the ID, picking the one with the
highest score.
- Should other providers still return suggestions with duplicate
IDs we now throw an exception containing the provider class name.
Co-authored-by: Grisha Kruglov <gkruglov@mozilla.com>
2019-04-11 14:34:44 -07:00
Sawyer Blatz
7621efa71f
[components] Closes https://github.com/mozilla-mobile/android-components/issues/2494 : Centers DefaultSuggestionViewHolder title if no description provided
2019-03-27 13:25:31 +01:00
Sawyer Blatz
96befb3993
[components] Closes https://github.com/mozilla-mobile/android-components/issues/2272 : Adds removeProvider and removeAllProviders to AwesomeBar
2019-03-07 11:50:43 -08:00
Sebastian Kaspari
3af4505e8e
[components] Use browser-icons component in providers implemented by feature-awesomebar.
2019-03-05 18:12:47 +01:00
Grisha Kruglov
1db5d27efa
[components] Use stableIDs in SuggestionAdapter; retain suggestions on the screen
...
Co-authored-by: Sebastian Kaspari <s.kaspari@gmail.com>
2019-02-28 17:20:34 +01:00
Grisha Kruglov
8260324a9b
[components] Perform browser-toolbar autocompletion off the UI thread
...
At this point in the stack, we're not in control over what our
autocomplete providers are, what actions they'll do in order to
field our queries, etc. For example, some providers may hit the disk
and perform expensive DB queries internally. Some may even hit the
network, in theory!
In order to keep things perceptively speedy, let's run the actual work
off the main thread. This patch sets up a new pool thread to process
autocomplete requests. More than one thread is selected so that we maintain
liveliness during quick user input. Background tasks are cancelled as new
queries come in, and stale results are discarded.
2019-02-08 12:22:13 -08:00
Sebastian Kaspari
b337480cd0
[components] Issue https://github.com/mozilla-mobile/android-components/issues/1543 : BrowserAwesomeBar: Allow consumers to specific a SuggestionTransformer to modify suggestions returned by a provider.
2019-01-28 14:36:29 -05:00
Sebastian Kaspari
482f6380cb
[components] Issue https://github.com/mozilla-mobile/android-components/issues/1543 : BrowserAwesomeBar: Allow consumer to control layouting of suggestions by providing SuggestionLayout implementation.
2019-01-28 14:36:29 -05:00
Sebastian Kaspari
2fde89082c
[components] Issue https://github.com/mozilla-mobile/android-components/issues/1779 : SearchSuggestionProvider: Add option to show one item per search suggestion.
2019-01-24 12:09:41 +01:00
Sebastian Kaspari
1a971da296
[components] Closes https://github.com/mozilla-mobile/android-components/issues/1681 - Add ClipboardSuggestionProvider for providing URL suggestions from clipboard.
2019-01-15 18:52:17 +01:00
Mitchell Hentges
8fd19cdf3a
[components] Moves description to be part of project.ext
2019-01-11 10:08:32 +01:00
Mitchell Hentges
3ee4d96a84
[components] Reads componentsVersion from .buildconfig.yml
2019-01-11 10:08:32 +01:00
Sebastian Kaspari
afa0da01f6
[components] browser-awesomebar: Allow search suggestions to span multiple rows.
2018-11-29 17:53:59 +01:00
Sebastian Kaspari
0bec8a8d08
[components] Add awesome bar to sample browser.
2018-11-29 10:41:58 +01:00
ali-abdullah
89f3263d12
[components] included buildSrc in ktlint and detekt checks
2018-11-16 12:40:04 +01:00
Sebastian Kaspari
5672b0cb87
[components] Closes https://github.com/mozilla-mobile/android-components/issues/1314 : Make AwesomeBar styleable.
2018-11-13 08:58:00 +01:00
Christian Sadilek
32f801d429
[components] Closes https://github.com/mozilla-mobile/android-components/issues/1288 : Intermittently failing test in BrowserAwesomeBarTest
2018-11-09 09:26:47 +01:00
Christian Sadilek
e34c22f81b
[components] Closes https://github.com/mozilla-mobile/android-components/issues/1305 : Upgrade to Kotlin 1.3.0 and Coroutines 1.0.1
2018-11-09 09:26:47 +01:00
Grisha Kruglov
a589a09e45
[components] Don't nest runBlocking calls in awesomebar tests
2018-11-08 09:56:54 +01:00