User Experience on Discourse with optional touch-input

Continuing the discussion from here, here, here, and here

All the topics linked above have in common that there are issues with Discourse, generally related to UX, when a using Discourse on a system that has touch, but primarily is interacted with via keyboard and mouse. First, it is my understanding (according to @codinghorror) that it is not possible with JS and HTML to detect this type of system, separately from any other system that has a touch input.

With that out of the way, I would like to suggest that this issue as a whole needs to be looked at seeing how the PC market is moving in recent years. When Discourse was first started, you could generally see two types of devices: mobile - like iPads, iPhones, Android phones/tablets, etc. - and desktop, like laptops, workstations, full-size PCs, etc. Today, the device landscape is very different. Thanks in part to a much better adoption of Windows 10 vs Windows 8, more “desktop” devices are coming with touch as an option. Now, touch is an option on most devices purchased from major manufacturers, even in their “business” models, and devices like Microsoft’s Surface, Lenovo’s Yoga, and similar 2-1/convertible designs are becoming much more popular in the marketplace.

Given that there is no reliable way to detect these devices, whether the user has a mouse and keyboard attached, or reliably guess what type of UX the user prefers, I would like to suggest a user setting “toggle” for Discourse. The closest analogous feature I can think of is Windows 10’s Tablet mode, that is user toggleable and makes changes to the UI to make Windows more (or less) friendly to touch. I understand that might not be ideal, as currently Discourse has a fully responsive design, and has purposefully avoided distinguishing “mobile mode” from “desktop mode”, but for users who use a laptop with an attached touch-enabled monitor, or multiple laptops some with and some without touch, it is jarring to have Discourse react differently depending on if the external monitor is connected, or if the device has touch or not.

4 лайка

We have some precedent now, for iPads we have a “I have a keyboard” user setting

9 лайков

So I haven’t used a device with touch (other than a phone) in 2+ years. Will see if I can get my hands on a Windows laptop with a touch screen to see the current situation.

5 лайков

I actually have one, will try it out on Monday

4 лайка

Didn’t @sam add this for iPad specifically? It could be opened up to everyone at the risk of confusing people.

Похоже, этого так и не произошло?

А что насчёт устройств со съёмными клавиатурами, вроде Surface Pro?

Предлагаю добавить настройку пользователя «У меня есть мышь/трекпад», которая работала бы аналогично настройке «У меня есть клавиатура».

Это произошло. Я внес несколько изменений — нам потребовалась дополнительная настройка пользователя «У меня есть клавиатура».

Всё работало очень хорошо.

Собираюсь протестировать ещё раз, чтобы убедиться, что всё по-прежнему в порядке.

3 лайка

У меня снова есть опциональное сенсорное устройство (ноутбук с сенсорным экраном). Пользуюсь им периодически, серьезных проблем не заметил. Есть ли что-то конкретное, что работает не так, как ожидалось, @Justin_Vega?

1 лайк

У нас есть 3 проблемы, которые @pmusaraj будет исследовать на iPad с клавиатурой:

  1. Оверлей мешает отображению синей кнопки ответа.
  2. Горячая клавиша для ответа не переводит фокус на поле ввода.
  3. Комбинация Tab+Enter не отправляет сообщение.
9 лайков

Напоминаем, что новая клавиатура/тачпад для iPad появится в продаже только в мае. Это примерно через два месяца. Я знаю это, потому что пытался сделать заказ…

6 лайков

Из всех тем, на которые я дал ссылки в первом сообщении, только эта всё ещё кажется проблемой: Links to posts aren't auto-selected reliably

На устройстве без сенсорного экрана URL — это текстовое поле, по умолчанию выделенное для копирования. На сенсорном устройстве, например на моём ноутбуке, это гиперссылка, которая выделяется не всегда. Я бы использовал предпочтение пользователя «у меня есть клавиатура» (окончательная формулировка TBD) для каждого устройства.

3 лайка

Нам следует попытаться исправить проблему с совместным использованием, не прибегая к настройкам пользователя.

5 лайков

Абсолютно согласен :clap: Я очень рад, что вы убрали эту настройку, так как почти нет смысла добавлять какое-то особое магическое решение, которое никто никогда не найдёт.

5 лайков

Нужно оставить это открытым, мы всё ещё отслеживаем User Experience on Discourse with optional touch-input - #13 by pmusaraj. Я убрал оффтоп-отступление.

1 лайк

У меня не получается отобразить ссылку на сенсорных устройствах iOS — она сразу открывает окно общего доступа системы. Вы используете сенсорное устройство на Windows, Джошуа? Например, ноутбук с сенсорным экраном?

1 лайк

Верно, ноутбук на Windows 10 с сенсорным экраном. На Android/iOS открывается системное диалоговое окно «Поделиться».

1 лайк

Я не вижу здесь возможности решения проблемы, @jomaxro, поэтому не понимаю, зачем вы её снова открыли… Как сказал Сэм:

следовательно, единственное возможное решение — добавить параметр — было исключено из обсуждения. О чём ещё можно говорить?

Лично я могу занять любую сторону, но склоняюсь к согласию с тем, что только 0,00000001% пользователей когда-либо найдут или воспользуются этим параметром, если мы его предложим.

От

Я предположил, что будет предпринята попытка исправить это без настройки сайта…

1 лайк