Перейти к содержанию
  • Регистрация
  • 0
Сергей Сергеев

TWebBrowser показывает две клавиатуры в IOS

Вопрос

Обнаружил глюк, как исправить - не нашел, по вот этому обсуждению на Embe - похоже он с 15 года..

https://forums.embarcadero.com/thread.jspa?threadID=116534

Выглядит так, взял из примера WebBrowser, прописал в дизайне адрес, к примеру Яндекс,

и запускаю на Ифоне 5 - нажимаю Гоу, при клике на любой ссылке ( например на большой надписи Яндекс в центре), вдруг откдуда не возьмись - появляется клава - английская,

 

 

Спойлер

IMG_0024.thumb.PNG.70db7a40e7c226b50f16224811aef07e.PNG

 

которая Done, ничего никуда не вводит, и не прячется от слова Никак ( с экрана)

дальше - тапаем в поле ввода поиска, вылазит похоже еще одна, уже похоже ФМХ клава - со словом Готово, которая работает..

переключается и по готово - прячется.

 

 

Спойлер

IMG_0025.thumb.PNG.7a9580b73362b5db54897666a6197ab7.PNG

 

 

но после того как Готово спряталась - эта ( от Сафари чтоли ) остается, по Доне не скрывается, и при кликах по ссылкам - прячется и опять вылазит..

 

Спойлер

IMG_0026.thumb.PNG.ed8bd9e5ee73213039116a9270ff1ede.PNG

сделал то что написано в обсуждении, но это прячется только второй ( Доне)ТулБар - клавы две так и висят..

Ничего по теме не нашел, похоже глюк старый, и возможно уже решенный..

пс.  клавиатуры не две все таки, два тул бара, повесил на он хайд, он Шоу обработчики, происходит следующее, по Готово - прячется клава и сразу опять показывается уже без "готово" - с "доне".. она же сразу показывается при клике по ссылке..

 

Изменено пользователем Сергей Сергеев

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Рекомендуемые сообщения

  • 0

добавлю, все это в последней, на сегодня Delphi 10.3.2. В то же время, такого не заметил на скомпиленной в 17 г. на Берлине, наверное, - открытие сайтов в отдельной форме и переход по ссылкам, не открывает не нужную клавиатуру.. Если не сложно, у кого Берлин, Сиеттл выложите FMX.VirtualKeyboard.iOS.pas  посравниваю.. Спасибо

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

Коллеги.. я только один это наблюдаю? может кто нибудь подтвердить или опровергнуть этот эффект.. 

воспроизводится просто.. берет из  Samle -Snippet - WebBrowser проект..

image.png.e3b75f00460e966eebc6e6f03fd3ec5f.png

 

запускаете на IOS ( там по умолчанию адрес Embarcadero  нажимаете ссылки на странице, и начинает вылазить клавиатура c Done, которая ничего никуда не вводит, и не закрывается по Done. 

А если есть поле для ввода ( поиск например) , то появляется 2 Бара + еще Готово. И клава все равно не закрывается.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

Закиньте сюда тестовый проект, я проверю на своем устройстве.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
6 часов назад, Евгений Корепов сказал:

Закиньте сюда тестовый проект, я проверю на своем устройстве.

вот прямо из примера поставки.. 

пс. получается пользоваться TWebBrowser в IOS затруднительно ( если Евгений подтвердит наличие глюка)

WebBrowser.7z

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

Да, легко удалось воспроизвести проблему - набрал yandex.ru, нажал Go (открылась страница), на странице нажал ссылку "Картинки" - появилась клавиатура, которая не получает фокуса, не реагирует на тыканье.

Среда 10.3.2, iPhone SE, iOS 12.3.1

Возможно проблема перекликается с https://quality.embarcadero.com/browse/RSP-25523

Screen Shot 2019-08-24 at 22.18.46.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
12 часов назад, Евгений Корепов сказал:

которая не получает фокуса,

спасибо за проверку..  и встает вопрос - как с этим жить?

такое впечатление, что клавиатура становится на что то, что определяется как окно ввода, и поэтому появляется, почему не прячется по Done - не понятно..

также, в тексте примера обнаружил  event не подключенный никуда ( понятно, что нужно на кейдаун  поля адреса), и по кнопке возврат на клаве должен передать фокус на кнопку, что по идее прячет фокус

но этот частный случай не решает проблемы выскакивания клавы при хождении по сайту.. 

немного улучщил ситуацию так.. на onShouldLoadStartRequest , поставил активацию таймера, который через 100 мс - делает HideKeyBoard. Помогает, но не всегда.. Событие OnShoKeyBoard возникает при появлении фейковой клавы. Как бы понять , что она не нужна и захлопнуть, но все это пляски.. надо в Emb писать глюк - чтобы правили. Возможно это изза нового SDK Ios - в старой, в скомпиленной в 2017 г. версии в webBrowser такого не заметил. Куда заводить БагТрек, подскажите, или заведите, если не сложно..

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
1 час назад, Сергей Сергеев сказал:

спасибо за проверку..  и встает вопрос - как с этим жить?

такое впечатление, что клавиатура становится на что то, что определяется как окно ввода, и поэтому появляется, почему не прячется по Done - не понятно..

также, в тексте примера обнаружил  event не подключенный никуда ( понятно, что нужно на кейдаун  поля адреса), и по кнопке возврат на клаве должен передать фокус на кнопку, что по идее прячет фокус

но этот частный случай не решает проблемы выскакивания клавы при хождении по сайту.. 

немного улучщил ситуацию так.. на onShouldLoadStartRequest , поставил активацию таймера, который через 100 мс - делает HideKeyBoard. Помогает, но не всегда.. Событие OnShoKeyBoard возникает при появлении фейковой клавы. Как бы понять , что она не нужна и захлопнуть, но все это пляски.. надо в Emb писать глюк - чтобы правили. Возможно это изза нового SDK Ios - в старой, в скомпиленной в 2017 г. версии в webBrowser такого не заметил. Куда заводить БагТрек, подскажите, или заведите, если не сложно..

Я в своем сообщении указал способ решения:

https://quality.embarcadero.com/browse/RSP-25523

Там Dave Nottage написал причину и способ исправления:

image.thumb.png.daf0a8db5e626d537db71edade83a397.png

Прикладываю архив с исправленным FMX.Platform.iOS.pas - положите в папку с проектом и все заработает нормально (я проверил).

P.S. Несчастный FMX.Platform.iOS.pas изуродовали в Рио бесчеловечно )) Какой то индус прошелся по нему в наркотическом угаре.

FMX.Platform.iOS.pas.7z

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
3 часа назад, Евгений Корепов сказал:

Прикладываю архив с исправленным FMX.Platform.iOS.pas

спасибо - завтра проверю на работе.. как то не провел параллель между тмемо и браузером.. 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
3 часа назад, Сергей Сергеев сказал:

спасибо - завтра проверю на работе.. как то не провел параллель между тмемо и браузером.. 

 

Там видимо все контролы ControlType Platform подвержены этому глюку. А Браузер  - это нативный контрол по умолчанию.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0

Все  заработало - огромное спасибо Евгению за активное участие в решении "мировой" проблемы!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.


  • Похожий контент

    • От Сергей Сергеев
      Приветствую всех!
      Сделал приложение для Андроид, делал свой стиль в BSD  - освоил добавление ( копированием ) панелей и чекбоксов со своими картинками.
      В принципе, все получилось, на разным смартфонах работатет - все картинки на месте.
      Но при попытке повторить стиль для Ios обнаружилась проблема, стиль для iPhone 5 ( scale 2) - все ок, но  Iphone 6+ ( scale 3) - все картинки из стиля на панельках и чек боксах берутся со смещением ( примерно 30%).
      Т.е. указана координата левого верхнего угла  в файле скажем 300 по Х, берется 400 . н у итак далее.. натыкался на тексты, что для IOS - разрешение 3х - поддерживают не все стили. Может в этом дело? никто не сталкивался?
      Попутно обнаружил, что при редактировании стиля IOS в BSD - не создаются новые обьекты в файле .style , при этом, при редактировании стиля Андроид - все нормально создается. 
      вав проверил ! и в Андроид перестало сохряняться в style файле! но полгода назад в 10.3 - все работала.. стиль то для андроид я именно так сделал ( примерно в феврале)
      Например:
      в BSD делаю - File - New - New Ios Style

      делаю копию обьекта Panel

      копия создается Panel_copy, в файле vsf - сохраняется, но при сохранении стиля для FMX, ( Save as .style) - обьекта в файле нет, причем как Panel, так и Panel_Copy

       
      если проделать, так же в стиле для Андроид Лайт, то обьект добавляется в конец файла..  ( Уже не делается и для Андроида)
        а здесь нет - последний icon.. и поиском не находится и если загрузить в BookStyle - то стиля Panel_Copy нет.

      про "сьезжающие"  картинке в стиле для Ios 3x - опишу подробнее позже, решение не найдено пока..
       
    • От Евгений Корепов
      Подскажите, реально ли в текущий момент сделать рекламу в iOS приложениях? 
      Документация эмбаркадеры, вроде и современная (http://docwiki.embarcadero.com/RADStudio/Rio/en/Using_the_AdMob_Service в примеру), но пометка внизу страниц "This page was last edited on 28 September 2015, at 15:17." дает понять что они забили на этот раздел документации 4 года назад, и с выходом Rio тупо скопипастили, чтоб было. Издевательство какое то (
       
      P.S. В документации идет речь о iAd, но согласно Apple:
      About the iAd App Network Shutdown : As of December 31, 2016, the iAd App Network is no longer available.
       
       
    • От Паршенко Виктор
      Доброго времени суток.
      Возникла проблема с использование TLocationSensor в Delphi 10.3 Rio под iOS. 
      Открыл, скомпилировал и установил приложение LocationDemo взятое из примеров.
      Device: iPhone 7+, version ios: 12.1.3. 
      При запуске, приложение запросило разрешение на доступ к геолокации (разумеется разрешил)
      Индикатор локации в верхнем баре показал, что его сейчас используют, но само приложение не реагирует на это никак. В частности событие OnChangeLocation не срабатывает у TLocationSensor. 
      Что делал я, чтоб попытаться устранить эту проблему:
      - скомпилировал этот же проект под Android (пример рабочий, Android отреагировал и показал мне местоположение)
      - внес изменения в системные юниты по рабочему примеру : 
      - открывал любые другие приложения, которые используют геолокацию (успешно находит и показывает мое местоположение)
      У меня закончились идеи, почему не работает TLocationSensor на iOS.
      P.S. не проверял компиляцию на версии делфи по ниже (10.2.3, 10.2 ... ). 
      Для красоты эксперимента, есть тут кто на Rio использовал геолокацию для iOS, у вас работает? 
       
    • От void
      Добрый день.
      (Delphi 10.3)
      (XCode 10.1)

      Подключил статический framework на версии SDK 11.2 (macMini)
      как описано в:
      ВСЕ ЗАРАБОТАЛО!
       
       

      После обновления:
      1) macMini к
              XCode 10.1
              SDK 12.1
              PAServer 20.0
      2) windows
              PAServer 20.0
      3) PAServer - конектится
      4) прописал дополнительные SDK  (Delphi -> SDK Manager -> Properties)
      5) Получил SDK 12 на windows (Delphi -> Update Local File Cache)
      6) Пути в Linking изменил для SDK12

      При сборке выдает ОШИБКУ:
      [DCC Error] E2597 Undefined symbols for architecture arm64 (для 32 - armv7):...

      [DCC Fatal Error] F2588 Linker error code: 1 ($00000001)

      Кто нибудь сталкивался с такой ошибкой после обновления?
       
    • От FREEFAR
      Всем доброго времени суток. 
      Казалось бы. Во время разработки и перед тем как подписали приложение сертификатом Distribution, пуши приходили норм. Но после того как прошли аудит Apple пуши куда-то пропали. FCM возвращал ошибку InvalidRegistration.
      Оказалось все достаточно просто. На сервере с которого мы отправляем пуш, В php скрипте, который отправляет пуши надо выставить
      sandbox = false
      Ура! Всем удачи)
    • От Bohdan
      Всем Привет!

      Платформа ios Delphi 10.2.2, хочу при нажатии на label показывать edit (для редактирования label.) Столкнулся с проблемой:
       Как отследить Tap  за пределами Edit чтобы его скрыть, не могу понять как это сделать.
    • От ENERGY
      Есть большой файл с анимацией, ~3 мб.  
      120 AnimCount - кадров, raws 10, одна картинка 400x400
      Под Android и Windows анимация прекрасно работает.
      Под iOS анимация скачет влево-вправо, или появляються куски предыдущего фрейма (нижней части) в верху текущей анимации.
      Я уже что только не делал, много раз менял файл, создавая его с разными raws, разными размерами картинок. Что-то меняется конечно, но остаются эти эффекты разной интенсивности.
      Файл склеиваю в своей проге из картинок, в финальном файле ошибок нет.
       
      Подскажите куда копать, просто замучался уже..
    • От Martifan
      Добрый день,
      Может ктонибудь помочь разобраться с записью/проигрыванием звука на iOS устройствах? 
      Нужно записывать звук в буффер (массив байтов). Нашли "замечатульную" библиотеку на github, которая позволяет обращаться к нативным методам устройства намрямую, и следуя инструкциям по записи звука в xCode пытаемся собрать тоже самое. Ниже привяжу ссылки... Библиотека мягко говоря не в лучшей кондиции такчто некоторые типы приходилось править вручную, и форматирование не вызывает восторга, но другого выбора нет. Если у когонибудь есть практика с другой библиотекой, или какиенибудь идеи, подскажите пожалуйста. Записывать надо обязательно в буффер, для дальнейшей обработки.
      GitHub библиотека
      Запись звука в xCode - github
      IOS.rar
    • От Martifan
      Всем доброго времени суток
      может кто знает как на iOS распознать речь и получены результат записать текстовом поле
      как на Android сделать я знаю но на iOS не получается
       
      Спасибо за ранее
    • От Astghik
      Hello !!!
      I want onButtonClick create popup. I use TPopup component. All good, but on android "Back button" click closing forma. But I want close popup (when popup is shown).

       
      //---------------------------------------------------------------------------------
      void __fastcall  btn3PointsClick(TObject *Sender)
      {
          PopUpSettings->IsOpen = true;
          PopUpSettings->PlacementTarget = btn3Points;
          PopUpSettings->BringToFront();
      }
      //-------------------------------------------------------------------------------------
      void __fastcall FormCloseQuery(TObject *Sender, bool &CanClose)
      {
          try {
              if (PopUpSettings->IsOpen == true) {
                  CanClose = false;
              }
              else {
                  CanClose = true;
              }
          } __finally {
              PopUpSettings->IsOpen = false;
          }
      }
      //-------------------------------------------------------------------
       
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...