diff --git a/addons/web/static/src/views/fields/phone/phone_field.xml b/addons/web/static/src/views/fields/phone/phone_field.xml
index 2d28ca010b6..99337bb2daf 100644
--- a/addons/web/static/src/views/fields/phone/phone_field.xml
+++ b/addons/web/static/src/views/fields/phone/phone_field.xml
@@ -19,7 +19,7 @@
-
+
{
};
};
+class FormUrlField extends UrlField {}
+FormUrlField.template = "web.FormUrlField";
+
registry.category("fields").add("url", UrlField);
+registry.category("fields").add("form.url", FormUrlField);
diff --git a/addons/web/static/src/views/fields/url/url_field.xml b/addons/web/static/src/views/fields/url/url_field.xml
index 7244d7f0618..22d234df2f7 100644
--- a/addons/web/static/src/views/fields/url/url_field.xml
+++ b/addons/web/static/src/views/fields/url/url_field.xml
@@ -6,15 +6,30 @@
-
+
+
+
+
+
+
+
+
+
+
+
diff --git a/addons/web/static/tests/views/fields/url_field_tests.js b/addons/web/static/tests/views/fields/url_field_tests.js
index e5692586571..2dfb84a1a9f 100644
--- a/addons/web/static/tests/views/fields/url_field_tests.js
+++ b/addons/web/static/tests/views/fields/url_field_tests.js
@@ -63,6 +63,14 @@ QUnit.module("Fields", (hooks) => {
"input should contain field value"
);
+ const webLink = target.querySelector(".o_field_url a");
+ assert.containsOnce(
+ target,
+ webLink,
+ "should have rendered the url button as a link with correct classes"
+ );
+ assert.hasAttrValue(webLink, "href", "http://yop", "should have proper href");
+
await editInput(target, ".o_field_widget input[type='text']", "limbo");
// save