Commit Graph

119 Commits

Author SHA1 Message Date
Simon Giesecke
a69d79b6db Bug 1648010 - Replace uses of NS_LITERAL_STRING/NS_LITERAL_CSTRING macros by _ns literals. r=geckoview-reviewers,jgilbert,agi,hsivonen,froydnj
Differential Revision: https://phabricator.services.mozilla.com/D80860
2020-07-01 08:29:29 +00:00
Emilio Cobos Álvarez
03cfd95496 Bug 1641245 - Make string comparators not virtual. r=froydnj,necko-reviewers,geckoview-reviewers,jgilbert,agi,valentin
There's no use case for stateful comparators, so they can be just plain
function pointers.

This is used in some hot places like CSS selector matching.

Differential Revision: https://phabricator.services.mozilla.com/D77084
2020-05-27 18:11:12 +00:00
aarushivij
02b2813cc5 Bug 1519099 - removeFromDb parameter of nsIAutoCompleteResult::RemoveValueAt is always true r=mak
Differential Revision: https://phabricator.services.mozilla.com/D70704
2020-04-15 10:05:12 +00:00
Emilio Cobos Álvarez
6869665d58 Bug 1627520 - Use keydown instead of keypress for autocomplete event listeners. r=mak,Gijs
This is so that we can avoid needing mozSystemGroup (to get keypress for
non-printable keys), which in turn prevents racing with the native key event
listeners, see the second patch in bug 1624657.

This turned out to be a bit tricky, because we need to guarantee the ordering of
the search one-offs handling in the searchbar with the usual autocomplete-input
handling. We could try to move this to the popup subclass but this is already a
bigger patch than what I'd like.

We can also revert the customElements.js change I did in bug 1624657, as the bug
is no longer relevant.

Differential Revision: https://phabricator.services.mozilla.com/D69743
2020-04-14 20:48:26 +00:00
Bogdan Tara
8df8611a4f Backed out changeset b92904ec121f (bug 1627520) for browser_searchbar_keyboard_navigation.js failures CLOSED TREE 2020-04-14 16:58:35 +03:00
Emilio Cobos Álvarez
773cbf50dc Bug 1627520 - Use keydown instead of keypress for autocomplete event listeners. r=mak,Gijs
This is so that we can avoid needing mozSystemGroup (to get keypress for
non-printable keys), which in turn prevents racing with the native key event
listeners, see the second patch in bug 1624657.

This turned out to be a bit tricky, because we need to guarantee the ordering of
the search one-offs handling in the searchbar with the usual autocomplete-input
handling. We could try to move this to the popup subclass but this is already a
bigger patch than what I'd like.

We can also revert the customElements.js change I did in bug 1624657, as the bug
is no longer relevant.

Differential Revision: https://phabricator.services.mozilla.com/D69743
2020-04-14 12:42:16 +00:00
Emilio Cobos Álvarez
e578b2da67 Bug 1620778 - Fix interaction of up/down keys with autocomplete and <input type=number>. r=masayuki,smaug
Differential Revision: https://phabricator.services.mozilla.com/D66011
2020-03-16 15:50:31 +00:00
Ciure Andrei
48da06cc68 Backed out 2 changesets (bug 1620778) for causing test_autocomplete_mac_caret.xhtml failures
Backed out changeset 66f97d1cf94a (bug 1620778)
Backed out changeset eda75d901f4c (bug 1620778)
2020-03-15 16:04:36 +02:00
Emilio Cobos Álvarez
d3ed4b69b7 Bug 1620778 - Fix interaction of up/down keys with autocomplete and <input type=number>. r=masayuki,smaug
Differential Revision: https://phabricator.services.mozilla.com/D66011
2020-03-15 12:11:09 +00:00
Bogdan Tara
5e7e742b42 Backed out changeset 00ab51ea2723 (bug 1620778) for test_autocomplete_mac_caret.xhtml failures CLOSED TREE 2020-03-10 12:24:48 +02:00
Emilio Cobos Álvarez
544cca1b7b Bug 1620778 - Fix interaction of up/down keys with autocomplete and <input type=number>. r=masayuki,smaug
Differential Revision: https://phabricator.services.mozilla.com/D66011
2020-03-10 02:44:44 +00:00
Eric Rahm
6bdf02842c Bug 1617334 - Remove nsAutoPtr usage from toolkit. r=gsvelto
Differential Revision: https://phabricator.services.mozilla.com/D63746
2020-02-22 14:50:52 +00:00
Gabriele Svelto
f03cdb2b2d Bug 1600545 - Remove useless inclusions of header files generated from IDL files in modules/, netwerk/, parser/, security/, startupcache/, storage/, toolkit/, tools/, uriloader/, widget/, xpcom/ and xpfe/ r=Ehsan
The inclusions were removed with the following very crude script and the
resulting breakage was fixed up by hand. The manual fixups did either
revert the changes done by the script, replace a generic header with a more
specific one or replace a header with a forward declaration.

find . -name "*.idl" | grep -v web-platform | grep -v third_party | while read path; do
    interfaces=$(grep "^\(class\|interface\).*:.*" "$path" | cut -d' ' -f2)
    if [ -n "$interfaces" ]; then
        if [[ "$interfaces" == *$'\n'* ]]; then
          regexp="\("
          for i in $interfaces; do regexp="$regexp$i\|"; done
          regexp="${regexp%%\\\|}\)"
        else
          regexp="$interfaces"
        fi
        interface=$(basename "$path")
        rg -l "#include.*${interface%%.idl}.h" . | while read path2; do
            hits=$(grep -v "#include.*${interface%%.idl}.h" "$path2" | grep -c "$regexp" )
            if [ $hits -eq 0 ]; then
                echo "Removing ${interface} from ${path2}"
                grep -v "#include.*${interface%%.idl}.h" "$path2" > "$path2".tmp
                mv -f "$path2".tmp "$path2"
            fi
        done
    fi
done

Differential Revision: https://phabricator.services.mozilla.com/D55444
2019-12-06 09:17:57 +00:00
Dão Gottwald
2e0516c2f4 Bug 1597878 - Reset selectedButton when closing the panel. r=Standard8
Differential Revision: https://phabricator.services.mozilla.com/D54694
2019-11-27 15:51:34 +00:00
Sylvestre Ledru
ad31adba4c Bug 1547143 - Format the tree: Be prescriptive with the pointer style (left) r=Ehsan
# ignore-this-changeset

Depends on D28954

Differential Revision: https://phabricator.services.mozilla.com/D28956
2019-05-01 08:47:10 +00:00
Masayuki Nakano
769c571f03 Bug 1543315 - part 11: Mark nsIPresShell::ScrollContentIntoView() as MOZ_CAN_RUN_SCRIPT r=smaug
This patch marks `ScrollContentIntoView()` as `MOZ_CAN_RUN_SCRIPT` and changing
some callers of them to guarantee thar their parent callers are also safe.

Additionally, this patch moves it from `nsIPresShell` to `PresShell` because
all callers can refer `PresShell` directly.

Unfortunately, this patch changes a lot of methods in autocomplete and satchel
since this patch needs to mark some interface methods as `can_run_script` and
they are called each other.  This means that autocomplete module is really
sensitive like editor module.  Perhaps, autocomplete and satchel should do
scroll asynchronously and unmark some of them as `MOZ_CAN_RUN_SCRIPT` again.

Differential Revision: https://phabricator.services.mozilla.com/D28320
2019-04-23 01:34:24 +00:00
prathiksha
cbe1725fcf Bug 1539677 - Do not highlight the password field when pressing enter on the footer or the insecure field warning. r=MattN
Differential Revision: https://phabricator.services.mozilla.com/D27405
2019-04-19 11:54:32 -07:00
Matthew Noorenberghe
e24ba068b6 Bug 1538952 - Don't automatically open the password autocomplete popup when we only have the footer to show. r=jaws,mak
Normally autocomplete results are cached based upon the search string but to get the desired behaviour we want two different sets of results for the same search string depending on how the autocomplete search was started:
a) Via automatically focusing a password field.
b) Every other method of starting an autocomplete search.

In order to not have cached results used, the result code for case (a) [an empty result] will be `RESULT_FAILURE` and I've updated the autocomplete code to not re-use an error result.

In the coming months we may be rewriting our content autocomplete code but that would be too risky to uplift to 67 so for now I'm tracking when satchel automatically opens the popup upon focus and then using that state in the autocomplete result creation code to know whether to include the footer.

Differential Revision: https://phabricator.services.mozilla.com/D25173
2019-03-30 04:20:20 +00:00
prathiksha
5e3dc75527 Bug 1526522 - Provide visual effects on password field autocomplete. r=MattN
Differential Revision: https://phabricator.services.mozilla.com/D20745
2019-03-19 16:57:18 +00:00
Marco Bonardo
5fd5e16acd Bug 1530706 - IME may be displayed along with the urlbar results panel. r=Standard8
Differential Revision: https://phabricator.services.mozilla.com/D23836
2019-03-19 14:06:33 +00:00
Matthew Noorenberghe
25b014fbfa Bug 1534896 - Don't close the login autocomplete popup when the search string becomes empty. r=jaws
Differential Revision: https://phabricator.services.mozilla.com/D23622
2019-03-15 20:57:02 +00:00
Alexander Surkov
3ad0c4b140 Bug 1525101 - adjust nsIAutoCompletePopup to make custom element popups working, r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D20504
2019-02-25 20:02:17 +00:00
Kris Maglione
a10656a5c8 Bug 1524687: Part 8 - Convert remaining toolkit modules to static registration. r=mossop
Differential Revision: https://phabricator.services.mozilla.com/D18403
2019-01-24 16:34:52 -08:00
Csoregi Natalia
ddfb8b53b5 Backed out 79 changesets (bug 1524687, bug 1524688) for crashes on mozilla::dom::ScreenOrientation::ScreenOrientation(nsPIDOMWindowInner *,nsScreen *). CLOSED TREE
Backed out changeset 68a001a42406 (bug 1524687)
Backed out changeset 328de611bcd3 (bug 1524688)
Backed out changeset 68cffca6927a (bug 1524687)
Backed out changeset 81dc12cc9257 (bug 1524688)
Backed out changeset c7c49f64048f (bug 1524688)
Backed out changeset fb23a0271da0 (bug 1524688)
Backed out changeset 0c1d1248e59e (bug 1524688)
Backed out changeset 9e9ec7de4160 (bug 1524688)
Backed out changeset de0b9993bd5d (bug 1524688)
Backed out changeset 92877cf4fe33 (bug 1524688)
Backed out changeset b4938f2ff8fd (bug 1524688)
Backed out changeset 230d2feaf941 (bug 1524688)
Backed out changeset 6c63bc240972 (bug 1524688)
Backed out changeset 0ad5465eace1 (bug 1524688)
Backed out changeset 1e75ce91029b (bug 1524688)
Backed out changeset 34a978503b1d (bug 1524688)
Backed out changeset 183602e8a30b (bug 1524688)
Backed out changeset 12a9135dc005 (bug 1524688)
Backed out changeset 978ef5dac9db (bug 1524688)
Backed out changeset 28105bf7bf6a (bug 1524688)
Backed out changeset a9fb74beaf2b (bug 1524688)
Backed out changeset fe106b369a72 (bug 1524688)
Backed out changeset e657e77d4271 (bug 1524688)
Backed out changeset 09f626870ad0 (bug 1524688)
Backed out changeset fe9b6695212e (bug 1524688)
Backed out changeset 995ea188bc31 (bug 1524688)
Backed out changeset 01c4d3edb1b0 (bug 1524688)
Backed out changeset 1bb7dfbb9f48 (bug 1524688)
Backed out changeset 56c61e0a1f45 (bug 1524688)
Backed out changeset c819943ff466 (bug 1524688)
Backed out changeset a1dd5cec066e (bug 1524688)
Backed out changeset 517838ee0c3c (bug 1524688)
Backed out changeset f509a5759fdf (bug 1524688)
Backed out changeset 56f5c8f0d708 (bug 1524688)
Backed out changeset 5746311ef859 (bug 1524688)
Backed out changeset df02f7d25212 (bug 1524688)
Backed out changeset c9846136d105 (bug 1524688)
Backed out changeset 2bd48db9cd0f (bug 1524688)
Backed out changeset ff120b4eeb79 (bug 1524688)
Backed out changeset fe583e7aae8d (bug 1524688)
Backed out changeset 18f156d6355a (bug 1524688)
Backed out changeset f4eaebbe2e0f (bug 1524688)
Backed out changeset bf6b18e23f69 (bug 1524688)
Backed out changeset dd89eb7e9b0d (bug 1524688)
Backed out changeset 4cbbb367ba0b (bug 1524688)
Backed out changeset 4ed0cf6be580 (bug 1524688)
Backed out changeset d8efb5ed62b1 (bug 1524688)
Backed out changeset ea347d57d73a (bug 1524688)
Backed out changeset 911689ef9f33 (bug 1524688)
Backed out changeset 28670fdc418d (bug 1524688)
Backed out changeset 38e1e42a0fb0 (bug 1524688)
Backed out changeset 35a5f031dd1e (bug 1524688)
Backed out changeset b586d55d76d5 (bug 1524688)
Backed out changeset 6dcacead1746 (bug 1524688)
Backed out changeset 9895239d8ac6 (bug 1524688)
Backed out changeset 25f982fd53bd (bug 1524688)
Backed out changeset 4fb0f0a59fe2 (bug 1524688)
Backed out changeset fdc6c4ed241a (bug 1524688)
Backed out changeset 5ce5986068f0 (bug 1524688)
Backed out changeset ab64ed7388ae (bug 1524688)
Backed out changeset 56607c5a301a (bug 1524688)
Backed out changeset 6b3684e7d8f9 (bug 1524688)
Backed out changeset ee28258a5724 (bug 1524688)
Backed out changeset 9201a7ea3c54 (bug 1524688)
Backed out changeset d5dca413e2da (bug 1524688)
Backed out changeset 68eb174a337b (bug 1524688)
Backed out changeset 625f71135038 (bug 1524687)
Backed out changeset 46e13c453538 (bug 1524687)
Backed out changeset 614be688767f (bug 1524687)
Backed out changeset 9c24919ac5c2 (bug 1524687)
Backed out changeset b9862758b98c (bug 1524687)
Backed out changeset 92d9e927deec (bug 1524687)
Backed out changeset f4ee175bc5bd (bug 1524687)
Backed out changeset 191afe83da2e (bug 1524687)
Backed out changeset c58caf41bb94 (bug 1524687)
Backed out changeset df95a56dae04 (bug 1524687)
Backed out changeset 10c69df4444d (bug 1524687)
Backed out changeset 219b84a58f50 (bug 1524687)
Backed out changeset e96e61bd282f (bug 1524687)
2019-02-14 11:50:23 +02:00
Kris Maglione
f001a35eb9 Bug 1524687: Part 8 - Convert remaining toolkit modules to static registration. r=mossop
Differential Revision: https://phabricator.services.mozilla.com/D18403
2019-01-24 16:34:52 -08:00
Sylvestre Ledru
e5a134f73a Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
# ignore-this-changeset
2018-11-30 11:46:48 +01:00
Marco Bonardo
7abd9bf710 Bug 1388123 - Make autocomplete handle Enter on keydown. r=MattN
Some pages, like the Google login form, submit information on keydown, that
causes us to not autocomplete, because we handle keypress instead.
The patch changes autocomplete to happen on keydown.
Unfortunately formautofill also uses keydown and tries to access popup data too
late, thus it needs some hacks to work properly.
In general the formautofill code has too many indirections due to e10s, and that
makes the fix more fragile than we'd want. Ideally content autocomplete should
have its own codebase, rather than sharing the same controller as chrome code.

MozReview-Commit-ID: oAyASmDFm1
2018-06-22 12:37:09 +02:00
Jeff Gilbert
70a22b2878 Bug 1470325 - s/FooBinding/Foo_Binding/g - r=qdot
MozReview-Commit-ID: JtTcLL5OPF0
2018-06-26 17:05:01 -07:00
Marco Bonardo
fc1090f8aa Bug 1467537 - The delete trigger on moz_updateoriginsinsert_temp is recalculating the whole table every time. r=adw
The trigger is missing a WHERE clause, and as such it ends up doing a lot more work than necessary.

The nsAutoCompleteController changes cover a bug where VK_RIGHT autofills when it's not necessary,
and by doing that it will move the caret to an unexpected position (far right) even if it didn't
actually complete some preselected text.

MozReview-Commit-ID: 1mVbxCdqVSr
2018-06-08 11:31:13 +02:00
Julian Viereck
b14ee48f19 Bug 1124238 - The autofill placeholder should not override keywords. r=mak
MozReview-Commit-ID: D6gBdkQxMrW
2018-05-30 16:50:37 +02:00
Boris Zbarsky
00c784322e Bug 1455052 part 4. Stop using nsIDOMEvent in xpidl interfaces. r=masayuki
MozReview-Commit-ID: GIs8DVfduKe
2018-04-20 12:53:17 -04:00
Valentin Gosu
ca5c5bbf19 Bug 1439931 - nsIIOService.extractScheme/net_ExtractURLScheme should lowercase its output r=mayhemer
MozReview-Commit-ID: LZ2rqIdIoXQ
2018-02-26 16:42:27 +01:00
Marco Bonardo
506fe4efc1 Bug 1435711 - Remove controller support for tree autocomplete. r=Paolo
MozReview-Commit-ID: 5NJu2ILBP5h
2018-02-17 18:11:13 +01:00
Boris Zbarsky
d81bb35cf8 Bug 1436508 part 11. Remove the use of the nsIDOMKeyEvent::DOM_VK* constants in C++. r=masayuki
MozReview-Commit-ID: Honw0NrVMuV
2018-02-09 11:17:09 -05:00
Florian Quèze
2199ef4ac7 Bug 1371610 - Delay getting the search component service until the first StartSearch, r=mak. 2018-02-08 12:28:34 +01:00
Tim Nguyen
0f11886f22 Bug 1430374 - Remove support for progressmeter tree cells. r=bz,dao
MozReview-Commit-ID: 3hydkeoneC0
2018-01-18 10:36:05 +00:00
Masayuki Nakano
b93a0ce668 Bug 1407085 - nsAutoCompleteController shouldn't restore original value after somebody changes the input value even when Escape key is pressed r=mak
When Escape key is pressed, nsAutoCompleteController needs to restore last
string which was default value of the input or typed by the user.  However,
somebody may change the value, e.g., an event listener which handles
Escape key.  In this case, nsAutoCompleteController shouldn't restore the
last string.

Unfortunately, when JS sets input value, DOM "input" event won't be fired.
Therefore, nsAutoCompleteController doesn't have a chance to modify
mSearchString in this case.  Therefore, nsAutoCompleteController needs to
store expected input string for checking if somebody modified the input value.
For solving this issue, this patch adds a new member, mSetValue which is
modified when the input value is modified by nsAutoCompleteController itself
or mSearchString is modified.

Even with this patch, if user temporarily selects an item of the popup and
JS sets same value as the selected item from JS, nsAutoCompleteController
restores the input value with mSearchString.  However, this must be rare
case and I don't have idea to fix this issue with simple patches.

MozReview-Commit-ID: lig8c7xvD7
2017-12-19 16:46:20 +09:00
Drew Willcoxon
f0eb3eb041 Bug 1410240 - Search suggestions keep displacing awesomebar results as I'm about to click on them. r=mak
MozReview-Commit-ID: 2NdV9qWzld1
2017-11-22 16:22:32 -08:00
Marco Bonardo
c6b922c0b7 Bug 1415908 - Intermittent failure (nsIAutoCompleteController.getCommentAt) in browser_ext_omnibox.js. r=adw
Fixes a timing bug where in certain moments matchCount may not be in sync with the current search status,
due to previous results not being cleared immediately. Still delays tree updates to avoid UI flickering.
Fixes a theorical timing issue in unifiedComplete where a stopped search could notify a result.
Removes the no more used OnUpdateSearchResult API.

MozReview-Commit-ID: COoIN4oQT4v
2017-11-19 21:58:14 +01:00
Ray Lin
74e309f85d Bug 1410821 - Call startSearch again when the new search string could not hit the cached result. r=mak
MozReview-Commit-ID: 1AJutt4IA0E
2017-11-03 15:22:45 +08:00
Kris Maglione
60872d7b31 Bug 1404198: Part 2f - Switch to NS_NewTimer* in toolkit. r=njn
MozReview-Commit-ID: 185rZ99R6zV
2017-10-15 23:14:00 -07:00
Shane Caraveo
d540205171 Bug 1406229 fix autocomplete crash in panels when window is closed during event, r=mak
MozReview-Commit-ID: 6TrLuwrk2nD
2017-10-06 16:58:15 -07:00
Bevis Tseng
59627df038 Bug 1382172 - Name nsITimerCallback instances in native implementation. r=billm 2017-07-27 02:18:20 +08:00
Sylvestre Ledru
9d4a84d778 Bug 1378712 - Remove all trailing whitespaces r=Ehsan
MozReview-Commit-ID: Kdz2xtTF9EG
2017-07-06 14:00:35 +02:00
Marco Bonardo
999435c9e2 Bug 1370518 - Don't completely detach/attach the autocomplete controller on TabSelect. r=mconley
Due to recent changes to tabbrowser focus behavior, now the "focus" event to the location bar
happens before the "TabSelect" event. On "focus" we would like to open the location bar popup,
but detaching the controller would immediately close it. Thus we don't want "TabSelect" to
detach the controller just to reset its internal state. Moreover, this should be cheaper.

MozReview-Commit-ID: 5NZ1TTI9NFW
2017-06-06 18:47:19 +02:00
Marco Bonardo
817dd58fcc Bug 1368074 - Autocomplete popup is not re-opened when repeating the same search in a new tab. r=mconley
MozReview-Commit-ID: GSZoWFgw0X8
2017-05-30 17:28:34 +02:00
Marco Bonardo
12b2b6852f Bug 1304501 - Properly disable trimUrl on autofill. r=adw
MozReview-Commit-ID: IxCOWkqFYV0
2016-09-21 21:55:00 +02:00
Marco Bonardo
9f5dc75ac5 Bug 1306639 - Searching in locationbar by typing something and pressing enter is not accounted in telemetry. r=adw
MozReview-Commit-ID: 9r8IyyyxruC
2016-10-06 17:40:13 +02:00
Marco Bonardo
238ca13b58 Bug 1303624 - Remove typeAheadResult support from autocomplete. r=adw
MozReview-Commit-ID: 7XLTON1Rj96
2016-09-21 18:11:45 +02:00
Marco Bonardo
f838352255 Bug 1302472 - keyboard selected value in autocomplete popup cannot be confirmed with <enter> if completedefaultindex is true but completeselectedindex is false. r=adw
MozReview-Commit-ID: FR4pKGZLAl2
2016-09-17 14:03:37 +02:00