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

Abstract hint service #106

Merged
merged 6 commits into from
Feb 16, 2021
Merged

Conversation

chausovSurfStudio
Copy link
Owner

@chausovSurfStudio chausovSurfStudio commented Jan 5, 2021

Что сделано

  • жил и был HintService
  • только был он скрыт от внешнего мира модификатором internal
  • так вот я его закрыл сверху протоколом и дал возможность подменять его, как и сервисы для плейсхолдеров
  • а уже после этого с легкостью сделалась задача описанная в issue Возможность выводить подсказку под полем всегда #104
  • ну и правки в Example проекте сделал

На что обратить внимание

  • сейчас после создания ПРа еще разок сам гляну, может еще где комментов дописать?
  • или вообще дичь идея? именно с вынесением в сервисы
  • ну кстати да, спецом не стал указывать где-то import'ы, запустил потом fastlane - поругал меня) так что, надеюсь, swift package не отвалится теперь
  • ах, да, с политиками высоты поигрался - убрал там небольшое дублирование и выпилил одну из политик, которую еще в мае 2020 пометил как deprecated (кто проигнорировал его - сам виноват)

Как протестировать

  • в Example проекте изменил у полей ввода с рамкой - хинт должен быть виден всегда
  • при этом у всех полей (в том числе и у с рамкой) для поля ввода имени - подсказка отображается еще и в неактивном состоянии
  • в целом можно и с другими поиграться при желании полями)

@chausovSurfStudio chausovSurfStudio added the update Update some funcionality label Jan 5, 2021
@chausovSurfStudio chausovSurfStudio self-assigned this Jan 5, 2021
# Conflicts:
#	Example/TextFieldsCatalogExample/TextFields/Types and presets/Presets/UnderlinedFieldPreset.swift
Copy link
Collaborator

@Alelenka Alelenka left a comment

Choose a reason for hiding this comment

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

Огонь

*/
case elastic(minHeight: CGFloat, bottomSpace: CGFloat, ignoreEmptyHint: Bool)
case elastic(policy: FlexibleHeightPolicy)
Copy link
Collaborator

Choose a reason for hiding this comment

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

Вообще как то усложнилась логика - мы в elastic policy указываем flexible policy...
И вызов стал тяжелее
.elastic(policy: .init(minHeight: 77, bottomOffset: 5, ignoreEmptyHint: false))
Но это вкусовщина и ничего лучше я предложить не могу :(

Copy link
Owner Author

Choose a reason for hiding this comment

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

понял, погляжу, но скорее всего тоже ничего предложить не смогу :(

@chausovSurfStudio chausovSurfStudio merged commit b077e34 into dev/version-1 Feb 16, 2021
@chausovSurfStudio chausovSurfStudio deleted the abstract-hint-service branch February 16, 2021 14:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
update Update some funcionality
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants