Commit Graph

69 Commits

Author SHA1 Message Date
Marc Seibert
8e9c1afce9 Bug 1860528 - Mixed content warning doesn't look right with enabled.r=dao
Differential Revision: https://phabricator.services.mozilla.com/D192017
2023-11-01 11:22:39 +00:00
Dão Gottwald
2e37e96e44 Bug 1859813 - Make UrlbarTestUtils.promisePopupClose structurally more robust, r=adw
Differential Revision: https://phabricator.services.mozilla.com/D191324
2023-10-19 08:50:23 +00:00
Marc Seibert
f02f36a981 Bug 1853418 - Urlbar Test Utils Preparation.r=dao
Differential Revision: https://phabricator.services.mozilla.com/D191171
2023-10-17 12:19:47 +00:00
Narcis Beleuzu
a9acd29277 Backed out changeset 444db85796e2 (bug 1853418) for bc failure on browser_closePanelOnClick.js . CLOSED TREE 2023-10-17 01:00:51 +03:00
Marc Seibert
cba6737181 Bug 1853418 - Prepare Urlbar Tests.r=dao
Differential Revision: https://phabricator.services.mozilla.com/D190554
2023-10-16 16:42:29 +00:00
Norisz Fay
36e5c4f496 Backed out changeset 1c43d6be9b10 (bug 1853418) for causing bc failures on browser_closePanelOnClick.js CLOSED TREE 2023-10-12 18:20:51 +03:00
Marc Seibert
252f83f5b0 Bug 1853418 - Prepare Urlbar Tests.r=dao
Differential Revision: https://phabricator.services.mozilla.com/D190554
2023-10-12 11:10:36 +00:00
Marco Bonardo
0a487b36b8 Bug 1816572 - Allow more time for Address Bar heuristic results to be returned. r=adw
Differential Revision: https://phabricator.services.mozilla.com/D181128
2023-07-07 15:48:34 +00:00
Marco Bonardo
b99e0f7f7e Bug 1827770 - Remove isPrivate argument from onEngagement() since it can be inferred. r=daleharvey
We can't use context.isPrivate because sometimes context is undefined.
I filed https://bugzilla.mozilla.org/show_bug.cgi?id=1841762 about that.

Differential Revision: https://phabricator.services.mozilla.com/D182772
2023-07-07 10:01:50 +00:00
Butkovits Atila
ceeb51063d Backed out changeset 986f4f6398a4 (bug 1816572) for causing failures at browser_search_bookmarks.js. CLOSED TREE 2023-07-04 16:29:04 +03:00
Marco Bonardo
dc48e94cda Bug 1816572 - Allow more time for Address Bar heuristic results to be returned. r=adw
Differential Revision: https://phabricator.services.mozilla.com/D181128
2023-07-04 09:28:46 +00:00
Dão Gottwald
760282cdb1 Bug 1777870 - Format the urlbar value after tab select and focus change, and avoid formatting multiple times when handling blur events. r=jteow
Differential Revision: https://phabricator.services.mozilla.com/D181888
2023-06-27 12:42:07 +00:00
Katherine Patenio
ce9d8a5dad Bug 1834831 - update imports of browser/modules JSMs r=webdriver-reviewers,perftest-reviewers,zeid,extension-reviewers,settings-reviewers,pip-reviewers,credential-management-reviewers,devtools-reviewers,fxview-reviewers,sessionstore-reviewers,tabbrowser-reviewers,whimboo,mhowell,sgalich,robwu,sparky,Standard8,mconley,dao,sclements
Differential Revision: https://phabricator.services.mozilla.com/D179169
2023-06-19 18:44:48 +00:00
Cristian Tuns
f826f1b621 Backed out 2 changesets (bug 1834831) for causing node failures with checkBundles CLOSED TREE
Backed out changeset 58b351a155c8 (bug 1834831)
Backed out changeset 1acbb5231d14 (bug 1834831)
2023-06-19 13:22:35 -04:00
Katherine Patenio
333197cd22 Bug 1834831 - update imports of browser/modules JSMs r=webdriver-reviewers,perftest-reviewers,zeid,extension-reviewers,settings-reviewers,pip-reviewers,credential-management-reviewers,devtools-reviewers,fxview-reviewers,sessionstore-reviewers,tabbrowser-reviewers,whimboo,mhowell,sgalich,robwu,sparky,Standard8,mconley,dao,sclements
Differential Revision: https://phabricator.services.mozilla.com/D179169
2023-06-19 16:46:18 +00:00
Dão Gottwald
23b423498e Bug 1837034 - Clean up UrlbarTestUtils.inputIntoURLBar. r=mak
Differential Revision: https://phabricator.services.mozilla.com/D181376
2023-06-19 16:12:53 +00:00
Marc Seibert
493096de39 Bug 1833091 - Replacing all set refs of UrlbarInput 'inputField.value'.r=dao
Differential Revision: https://phabricator.services.mozilla.com/D180228
2023-06-14 12:45:55 +00:00
Mark Banner
232facd440 Bug 1824613 - Convert consumers of toolkit/mozapps/extensions/ to import ES modules directly. r=extension-reviewers,settings-reviewers,application-update-reviewers,credential-management-reviewers,devtools-reviewers,sync-reviewers,sgalich,bytesized,robwu,skhamis
Depends on D179819

Differential Revision: https://phabricator.services.mozilla.com/D179820
2023-06-02 20:00:35 +00:00
Marco Bonardo
ddbafa4329 Bug 1834989 - Clean up UrlbarTestUtils use. r=adw
Differential Revision: https://phabricator.services.mozilla.com/D179056
2023-05-26 14:56:55 +00:00
Marco Bonardo
ddb344e8a3 Bug 1834546 - Add a Nimbus feature and variables for alternative frecency. r=daisuke
Differential Revision: https://phabricator.services.mozilla.com/D178831
2023-05-25 09:35:04 +00:00
Mark Banner
0666077666 Bug 1826062 - Automatic fixes for upgrading Prettier to 2.8.8. r=mossop,perftest-reviewers,webcompat-reviewers,geckoview-reviewers,denschub,devtools-reviewers,sparky,calu
Differential Revision: https://phabricator.services.mozilla.com/D177027
2023-05-20 12:26:53 +00:00
Drew Willcoxon
ddcd315951 Bug 1833161 - Properly restore selection when showing the dismissal acknowledgment tip. r=ahal,dao
The problem is the row remains selected after its content is replaced with the
dismissal acknowledgment tip. This patch clears the selection and selects the
tip's "Got it" button if the row was selected.

I didn't add a general browser test for feedback and dismissal acknowledgments
earlier, so I added one now. I cp'ed the weather test and used it as a starting
point since it does test the acknowledgments but is specific to the weather
suggestion. Even though some of it now duplicates the new test, I left it intact
because we still need a test for the weather-specific commands, and the amount
of duplicated code isn't very much.

I modified the test helper function that opens the result menu so that the row
is not selected when `byMouse` is true. That way I can make sure the selection
doesn't change when the dismissed row is not selected. I used
`EventUtils.promiseElementReadyForUserInput()` to synthesize a mousemove over
the row to make the menu button visible. That function has a bug where the
interval is added after `onHit` is called and the promise is resolved, leaving
the interval ticking forever. Moving the `synthesizeMouseAtCenter()` after the
timeout is created fixes the problem.

Differential Revision: https://phabricator.services.mozilla.com/D178264
2023-05-19 22:13:10 +00:00
Drew Willcoxon
dd3f90bea7 Bug 1831760 - Use a native popup menu for positioned popups on Mac. r=dao,mstange
This does two things:

* Modify `nsXULPopupManager::ShowPopup()` so it calls `ShowPopupAsNativeMenu()`
  as long as an anchor wasn't passed in, and only on Mac.
* Modify `-[MOZMenuOpeningCoordinator _openMenu:atScreenPosition:forView:withAppearance:]`
  so it also takes a `aIsContextMenu` param. If the param is true, we synthesize
  a right-click event and pop up a context menu as usual. If it's false, we use
  `-[NSMenu popUpMenuPositioningItem:atLocation:inView:]` instead.

The reason this works is because `-[NSMenu popUpMenuPositioningItem:atLocation:inView:]`
opens the menu in a sensible place when the x-y coords are near the right edge
of the screen. In contrast, `+[NSMenu popUpContextMenu:withEvent:forView:]` will
anchor the menu's top-right corner to the mouse cursor when near the right edge.

Differential Revision: https://phabricator.services.mozilla.com/D177355
2023-05-18 05:51:19 +00:00
Drew Willcoxon
6658471116 Bug 1832826 - Add a way to invalidate cached result menu commands and use it when the weather min keyword length cap is reached. r=dao
Differential Revision: https://phabricator.services.mozilla.com/D177954
2023-05-18 02:23:07 +00:00
Drew Willcoxon
7a78f112c8 Bug 1831657 - Implement the "Show less frequently" weather suggestion command. r=daisuke
This increments the minimum keyword length when the user clicks the "Show less
frequently" command for the weather suggestion. It adds a pref to keep track of
the current min length. If the pref is zero, we use the min length in Nimbus or
remote settings.

There is a limit to the number of times "Show less frequently" can be clicked.
This patch calls it the cap. Once the cap is reached, the min length can't be
incremented any more and the command is not shown in the menu again. The cap can
be set in Nimbus and remote settings.

This patch also modifies UrlbarPrefs by making it possible to remove observers.
`Weather` needs to listen for changes to the `weather.minKeywordLength` pref,
and when the weather feature is disabled, it needs to stop listening.

Depends on D175827

Differential Revision: https://phabricator.services.mozilla.com/D177218
2023-05-08 09:08:43 +00:00
Drew Willcoxon
c26ec9b3d6 Bug 1827762 - Replace UrlbarProvider.pickResult() and blockResult() with onEngagement() r=mak
This removes `UrlbarProvider.pickResult()` and `blockResult()` in favor of
handling picks and dismissals through `onEngagement()`. A number of providers
use those two methods, so this revision touches a lot of files.

Handling dismissals through `onEngagement()` means `UrlbarInput.pickResult()`
can no longer tell whether a result is successfully dismissed, so it can't
remove the result anymore. (Maybe `onEngagement()` could return some value
indicating it dismissed the result, but I don't want to go down that road.)
Instead, I split `UrlbarController.handleDeleteEntry()` into two methods: a
public one that removes the result and notifies listeners, and a private one
that handles dismissing the selected result internally in
UrlbarController. Providers that have dismissable results should now implement
`onEngagement()` and call `controller.removeResult()`.

I made some other improvements to engagement handling. There's still room for
more but this patch is big enough already.

Other notable changes:

Include the engaged result in engagement notifications so providers have easy
access to it and can respond to clicks and dismissals more easily. That also
lets us stop passing `selIndex` and `provider` to `engagementEvent.record()`
since now it can compute those from the passed-in result.

Add the concept of `isSessionOngoing` to engagement notifications so providers
can tell whether an engagement ended the search session. Right now, providers
like quick suggest that record a bunch of provider-specific legacy telemetry
assume that `onEngagement()` ends the session, but that's no longer true.

Unify result buttons and result menu commands by setting
`element.dataset.command` on buttons (hopefully we can remove buttons soon, at
least the ones that aren't tip buttons)

Make sure we always notify providers on engagement even on dismissals or
when skipping legacy telemetry

Move dismissal of restyled search suggestions and history results from
`UrlbarController.handleDeleteEntry()` to the Places provider

Move dismissal of form history results from
`UrlbarController.handleDeleteEntry()` to the search suggestions provider

In the Places provider, remove the unused `_addSearchEngineMatch()` method. Also
remove the code in the "searchengine" case that creates a non-search-history
result. This code is unreached because the only time the provider creates a
"searchengine" match it also sets `isSearchHistory` to true.

In `UrlbarTestUtils.promiseAutocompleteResultPopup()`, change the default value
of the `fireInputEvent` param from false to true. This is necessary because
without a starting input event, the start event info in `engagementEvent` will
be null, so when `engagementEvent.record()` is called at the end of the
engagement, it will bail, and providers will not be notified of the engagement.
IMO true is a better default value anyway because input events will typically be
fired when the user performs a search.

Differential Revision: https://phabricator.services.mozilla.com/D174941
2023-04-13 06:03:33 +00:00
Barret Rennie
f7a4fadf48 Bug 1788954 - Convert toolkit/components/nimbus to ES modules r=Standard8,pip-reviewers,credential-management-reviewers,sgalich
Differential Revision: https://phabricator.services.mozilla.com/D172850
2023-03-30 20:51:58 +00:00
Daisuke Akatsuka
3fb17ccb59 Bug 1821660: Avoid showing result view to make the same behavior every time. r=mak
Differential Revision: https://phabricator.services.mozilla.com/D172393
2023-03-15 21:15:01 +00:00
mcheang
b2a902585c Bug 1815699 - Modify existing Glean telemetry and add new telemetry to account for weather as a suggestion. r=adw
This patch modifies existing Glean urlbar abandonment, engagement, and
impression events by including a weather suggestion.

This patch also adds a new telemetry scalar url.picked.weather to the legacy
telemetry system.

Differential Revision: https://phabricator.services.mozilla.com/D169225
2023-03-01 19:06:49 +00:00
Dão Gottwald
1d64874fd4 Bug 1818455 - Fix selecting the result menu button by mouse with browser.urlbar.resultMenu.keyboardAccessible=false. r=mak
Differential Revision: https://phabricator.services.mozilla.com/D170736
2023-02-23 16:27:40 +00:00
Dão Gottwald
fa7b554ee2 Bug 1801389 - SPACE should open the result menu when the button is selected. r=mak,Jamie
Differential Revision: https://phabricator.services.mozilla.com/D168522
2023-02-03 03:11:20 +00:00
Dão Gottwald
e53679d678 Bug 1813505 - Make browser_view_selectionByMouse.js work with the result menu button. r=mak
Differential Revision: https://phabricator.services.mozilla.com/D168242
2023-01-31 09:52:44 +00:00
Dão Gottwald
b480cfa156 Bug 1810647 - Prepare for enable urlbar result menu in Nightly. r=mak,fluent-reviewers,flod
Differential Revision: https://phabricator.services.mozilla.com/D167004
2023-01-23 15:54:53 +00:00
Dão Gottwald
0d540405bb Bug 1806491 - Add urlbar result menu for history suggestions. r=mak,fluent-reviewers,flod
Differential Revision: https://phabricator.services.mozilla.com/D165061
2022-12-23 15:54:08 +00:00
Daisuke Akatsuka
4b4fa32e15 Bug 1805717: Introduce search_mode property. r=mak,jteow
Differential Revision: https://phabricator.services.mozilla.com/D164794
2022-12-20 07:10:11 +00:00
Daisuke Akatsuka
98c1beeb43 Bug 1805321: Move initNimbusFeature() to UrlbarTestUtils r=adw
Differential Revision: https://phabricator.services.mozilla.com/D164529
2022-12-13 23:00:12 +00:00
Daisuke Akatsuka
42601e6a91 Bug 1800579: Implement the impression event. r=mak,Dexter
Differential Revision: https://phabricator.services.mozilla.com/D162085
2022-12-07 06:35:50 +00:00
Cristian Tuns
6d439f9c19 Backed out 2 changesets (bug 1800579) for causing mochitest failures on browser_glean_telemetry_impression_interaction.js
Backed out changeset 329d79c6403b (bug 1800579)
Backed out changeset 2796c110119d (bug 1800579)
2022-12-06 17:08:20 -05:00
Daisuke Akatsuka
6d66275743 Bug 1800579: Implement the impression event. r=mak,Dexter
Differential Revision: https://phabricator.services.mozilla.com/D162085
2022-12-06 20:48:39 +00:00
Daisuke Akatsuka
f12f72c9eb Bug 1797265: Implement the engagement event. r=mak,adw,Dexter
Differential Revision: https://phabricator.services.mozilla.com/D160193
2022-12-01 12:05:48 +00:00
Mark Banner
319bc25bd8 Bug 1802855 - Convert toolkit/components/satchel JSM modules to ES modules. r=credential-management-reviewers,daleharvey,sgalich
Differential Revision: https://phabricator.services.mozilla.com/D163201
2022-11-29 15:53:20 +00:00
Hanna Jones
f147294407 Bug 1794823 - port site specific search from pine to central r=daleharvey
Some random thoughts:
* This is a minimal implementation - there were plans to expand this with autocomplete support that we never got around to
* I built this just from reading docs + poking around in the urlbar code, so there might be a more desireable way to do all of this
* We've gone back and forth between calling this "contextual search" and "site specific search," we should probably pick a name and stick to it
* There were never any design specs for this so the UI/UX was based off of existing urlbar results as they appeared in Flowstate
* There were some open questions around how we treat installing opensearch engines, since how they are handled here seems to differ from how we use them elsewhere
* I don't remember the reasoning for showing this result last in the urlbar, we may want to move it elsewhere

Differential Revision: https://phabricator.services.mozilla.com/D159052
2022-11-25 15:17:08 +00:00
Mark Banner
5d1820b074 Bug 1799314 - Convert consumers of testing modules to import ES modules direct (browser/). r=Gijs,settings-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D161914
2022-11-17 12:00:30 +00:00
Dão Gottwald
2a5b80b660 Bug 1798917 - Convert pseudo-private UrlbarView properties and methods to be truly private. r=mak
Differential Revision: https://phabricator.services.mozilla.com/D161143
2022-11-08 16:57:20 +00:00
trickypr
4b9c23b007 Bug 1510561 - Part 7: Apply plugin:mozilla/require-jsdoc to browser/components/urlbar. r=Standard8
Differential Revision: https://phabricator.services.mozilla.com/D159472
2022-10-24 13:32:38 +00:00
trickypr
f28fa5aa80 Bug 1510561 - Part 6: Apply plugin:mozilla/valid-jsdoc to browser/components/urlbar. r=Standard8
Differential Revision: https://phabricator.services.mozilla.com/D159471
2022-10-24 13:32:37 +00:00
Mark Banner
5407bdffa8 Bug 1792341 - Migrate more toolkit/modules consumers to use direct ES module import. r=Gijs,webdriver-reviewers,perftest-reviewers,necko-reviewers,geckoview-reviewers,preferences-reviewers,application-update-reviewers,pip-reviewers,credential-management-reviewers,sgalich,owlish,bytesized,AlexandruIonescu,whimboo,mconley,mixedpuppy
Mainly automated changes. Some manual ESLint fixes and whitespace cleanup.

Differential Revision: https://phabricator.services.mozilla.com/D158452
2022-10-18 11:21:26 +00:00
Daisuke Akatsuka
c2da12f995 Bug 1792513: Do not show full list of Quick Actions while scrolling one off buttons. r=daleharvey,adw
Depends on D158220

Differential Revision: https://phabricator.services.mozilla.com/D158245
2022-10-13 21:35:09 +00:00
Mark Banner
79b9557a71 Bug 1792398 - Enable ESLint rule 'strict' on mjs files as the directive is not necessary for modules. r=arai,pip-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D158115
2022-09-26 21:47:50 +00:00
Marian-Vasile Laza
b7f6194b8d Backed out changeset 0679274d6ed5 (bug 1792398) for causing bc failures on browser_sendQuery.js. CLOSED TREE 2022-09-26 22:53:00 +03:00