Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(AppRoot): add userSelectMode #7005

Merged
merged 11 commits into from
Jun 19, 2024
Merged

Conversation

mendrew
Copy link
Contributor

@mendrew mendrew commented Jun 10, 2024


  • Unit-тесты
  • документация фичи.

Описание

Добавляем возможность выставлять режим выделения текста с помощью свойства userSelectMode у AppRoot:

  • disabled-in-webview режим для приложений, которые встраиваются в webview, где нужен запрет на выделение, в то же время в мобильных браузерах выделение следует оставить. Теперь по умолчанию.
    Если у приложения isWebView=true в ConfigProvider, то выделять текст будет запрещено.
  • enabled-with-pointer режим в котором текст разрешается выделять только при наличии мыши. (То, что сейчас)
  • enabled режим где выделять текст разрешено.
  • disabled режим в котором выделать текст запрещается.

Изменения

  • убираем принудительно разрешение выделения Header. для [Feature][Header]: Убрать user-select у Header #3507
  • добавляем новое свойство userSelectMode для AppRoot.
  • логику для работы нового свойства перенесли в helpers.

Copy link
Contributor

github-actions bot commented Jun 10, 2024

size-limit report 📦

Path Size
JS 363.92 KB (+0.1% 🔺)
JS (gzip) 111.48 KB (+0.08% 🔺)
JS (brotli) 91.71 KB (-0.01% 🔽)
JS import Div (tree shaking) 1.42 KB (0%)
CSS 278.03 KB (-0.03% 🔽)
CSS (gzip) 36.27 KB (-0.02% 🔽)
CSS (brotli) 29.4 KB (-0.1% 🔽)

Copy link

codesandbox-ci bot commented Jun 10, 2024

This pull request is automatically built and testable in CodeSandbox.

To see build info of the built libraries, click here or the icon next to each commit SHA.

Copy link
Contributor

github-actions bot commented Jun 10, 2024

e2e tests

Playwright Report

Copy link
Contributor

github-actions bot commented Jun 10, 2024

👀 Docs deployed

Commit cb04cb9

Copy link

codecov bot commented Jun 10, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 83.44%. Comparing base (0aa34d9) to head (cb04cb9).
Report is 12 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #7005      +/-   ##
==========================================
+ Coverage   83.40%   83.44%   +0.03%     
==========================================
  Files         352      352              
  Lines       10532    10556      +24     
  Branches     3496     3506      +10     
==========================================
+ Hits         8784     8808      +24     
  Misses       1748     1748              
Flag Coverage Δ
unittests 83.44% <100.00%> (+0.03%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@mendrew mendrew marked this pull request as ready for review June 13, 2024 13:10
@mendrew mendrew requested a review from a team as a code owner June 13, 2024 13:10
SevereCloud
SevereCloud previously approved these changes Jun 13, 2024
SevereCloud
SevereCloud previously approved these changes Jun 14, 2024
inomdzhon
inomdzhon previously approved these changes Jun 17, 2024
Copy link
Contributor

@inomdzhon inomdzhon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

блеск ✨💖✨


Note

мб disabled-in-webview удалим и будем смотреть, что userSelectMode не определён, чтобы на isWebView смотреть?

isWebView пока сомнительный параметр, поэтому не хочется упоминать про него в других параметрах.

В v7 isWebView надо пересмотреть. Это больше про режим и по именования подходит standalone. Либо завести параметр в <ConfigProvider appType="standalone" />, либо в AppRoot.

@mendrew
Copy link
Contributor Author

mendrew commented Jun 17, 2024

мб disabled-in-webview удалим и будем смотреть, что userSelectMode не определён, чтобы на isWebView смотреть?

isWebView пока сомнительный параметр, поэтому не хочется упоминать про него в других параметрах.

В v7 isWebView надо пересмотреть. Это больше про режим и по именования подходит standalone. Либо завести параметр в <ConfigProvider appType="standalone" />, либо в AppRoot.

В целом на счёт isWebView и standalone не могу ничего с уверенностью сказать. isWebView хорош тем, что он конкретен. Если вводить appType=standalone то это значит учить пользователей, что standalone это алиас для webview. В общем не знаю, надо будет обсудить, так то идея интересная. Вот что это даёт и нам и пользователю - надо обсудить.

Да, давай тогда уберу disabled-in-webview, но в описании всё равно придётся прописать про isWebView, на который мы смотрим по умолчанию, чтобы было понятно что происходит по умолчанию.

Because we don't want to mention isWebView via props
in other components as we want to reconsider the isWebView approach
in v7
@mendrew mendrew dismissed stale reviews from inomdzhon and SevereCloud via cb04cb9 June 17, 2024 09:39
Copy link
Contributor

@inomdzhon inomdzhon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🙏

@mendrew mendrew requested review from SevereCloud and BlackySoul and removed request for BlackySoul June 17, 2024 13:24
@mendrew mendrew merged commit 60a58ff into master Jun 19, 2024
26 checks passed
@mendrew mendrew deleted the mendrew/fix/user-select-default branch June 19, 2024 10:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
4 participants