summaryrefslogtreecommitdiffstats
path: root/devtools/client/responsive/docs/devices.md
diff options
context:
space:
mode:
Diffstat (limited to 'devtools/client/responsive/docs/devices.md')
-rw-r--r--devtools/client/responsive/docs/devices.md37
1 files changed, 37 insertions, 0 deletions
diff --git a/devtools/client/responsive/docs/devices.md b/devtools/client/responsive/docs/devices.md
new file mode 100644
index 0000000000..ba54428638
--- /dev/null
+++ b/devtools/client/responsive/docs/devices.md
@@ -0,0 +1,37 @@
+# Updating List of Devices for RDM
+
+## Where to locate the list
+
+The devices list is a [RemoteSettings](https://firefox-source-docs.mozilla.org/services/settings/index.html) collection named `devtools-devices`.
+A dump of the list can be found in [services/settings/dumps/main/devtools-devices.json](https://searchfox.org/mozilla-central/source/services/settings/dumps/main/devtools-devices.json).
+
+## Adding and removing devices
+
+There is no set criteria for which devices should be added or removed from the list. However, we can take this into account:
+
+- Adding the latest iPhone and iPad models from Apple.
+- Adding the latest Galaxy series from Samsung.
+- Checking out what devices Google Chrome supports in its DevTools. They keep the list hardcoded in [source](https://github.com/ChromeDevTools/devtools-frontend/blob/79095c6c14d96582806982b63e99ef936a6cd74c/front_end/models/emulation/EmulatedDevices.ts#L645)
+
+## Data format
+
+An important field is `featured`, which is a boolean. When set to `true`, the device will appear in the RDM dropdown. If it's set to `false`, the device will not appear in the dropdown, but can be enabled in the `Edit list` modal.
+Each device has a user agent specified. We can get this value by:
+
+- At `https://developers.whatismybrowser.com/useragents/explore/`
+- With a real device, open its default browser, and google "my user agent" will display a Google widget with the user agent string.
+- Looking at Google's own list of devices (they also specify the user agent)
+
+## Releasing the changes
+
+First, make sure you can have access to RemoteSettings (see https://remote-settings.readthedocs.io/en/latest/getting-started.html#getting-started).
+
+You should then be able to add the device to the [RemoteSettings Stage instance](https://remote-settings.allizom.org/v1/admin/#/buckets/main-workspace/collections/devtools-devices/) using the interface.
+Then use the RemoteSettings DevTools to make Firefox pull the devices list from the Stage instance (see https://remote-settings.readthedocs.io/en/latest/support.html?highlight=devtools#how-do-i-setup-firefox-to-pull-data-from-stage)
+Once that is done, open RDM and make sure you can see the new addition in the Devices modal.
+
+If everything is good, you can then ask for review on the data change. Once this get approved, you can replicate the same changes to the [RemoteSettings Prod instance](https://remote-settings.mozilla.org/v1/admin/#/buckets/main-workspace/collections/devtools-devices/), reset the RemoteSettings DevTools settings, check RDM again just to be sure and finally ask for review on the data change.
+
+## Things to consider in the future
+
+- Galaxy Fold has two screens, how do we handle that?