Bug 10708

Summary: Потеря фокуса 1С 7.7 при закрытии модального окна
Product: WINE@Etersoft Reporter: Vitaly Lipatov <lav>
Component: Окна / фокус / перерисовкаAssignee: Konstantin Artyushkin <akv>
Status: CLOSED FIXED QA Contact: Vitaly Lipatov <lav>
Severity: minor    
Priority: P4    
Version: unspecified   
Target Milestone: ---   
Hardware: PC   
OS: Linux   
Whiteboard:
Заявки RT: Связано с:
Дата напоминания:
Bug Depends on: 165    
Bug Blocks: 9358    
Deadline: 2015-08-20   

Description Vitaly Lipatov 2015-08-20 11:50:47 MSK
Воспроизведение:
В 1С 7.7 Торговля и Склад при создании документа (накладной или счёта) есть кнопка Подбор, которая открывает выбор в справочнике. Далее при добавлении позиции появляется модальное окно для указания количества. После закрытия этого окна фокус не возвращается (стрелочки с клавиатуры не работают, приходится применять мышку).

К bug 165 приложена тестовая конфигурация.

Нужно подготовить бутылку с воспроизведённой проблемой, уточнить при необходимости описание способа воспроизведения и передать Дмитрию.
Comment 1 Konstantin Artyushkin 2015-08-20 12:32:27 MSK
В конфигурации из задания 165 нету вообще ничего. Как воспроизводить не понятно.

Ни одну из инструкций из баг: #2938, #165, #73 не удалось выполнить, потому что нет элементов про которые описаны в них. Конфигурация пустая вообще.

Где взять эту кнопку "Подбор" , видимо, нужно гуглить.

Подготовил бутылку swine 2.1 bugs/10708
Comment 2 Vitaly Lipatov 2015-08-20 12:37:38 MSK
Просьба так же проверить:
- на 2.0
- с UseTakeFocus и патченным xfvm4
Comment 3 Konstantin Artyushkin 2015-08-20 13:19:03 MSK
Бутылка swine 2.1 bugs/10708

Воспроизведение:

1) Запустить 1С в режиме "Предприятие" 
2) Операции ->	Обработки -> "новый1"
3) Нажать "Выполнить Модально"
4) Нажать "Закрыть"
5) Нажать вверх или вниз на клавиатуре ( можно вообще что угодно нажимать )

Результат : 
  Фокус не вернулся в родительское окно. 
  Попасть в родительское окно можно только с помощью мыши
  
Ожидание  : Фокус должен вернуться в родительское окно

NB: Если окно создать "Немодально", то фокус возвращается в родителя и клавиши работают


Решение :
  Получилось найти решение https://bugs.etersoft.ru/show_bug.cgi?id=10676#c16 
  HKEY_CURRENT_USER\Software\Wine\AppDefaults\1c7l.exe\X11 Driver UseTakeFocus false
  Проверил в xfwm4 и macro(mate wm ) проблема больше не воспроизводитсях
Comment 4 Konstantin Artyushkin 2015-08-20 14:01:58 MSK
(Ответ Vitaly Lipatov на комментарий2)
> Просьба так же проверить:
> - на 2.0
> - с UseTakeFocus и патченным xfvm4

Бутылка:
  swine 2.0 bugs/10708


NB : Ветки HKEY_CURRENT_USER\Software\Wine\AppDefaults\1c7.exe\X11 Driver небыло с
самого начала( проверил после   окружения )

Результат :
  Без  "UseTakeFocus false" - воспроизводиться
  C    "UseTakeFocus false" - не воспроизводиться
Comment 5 Konstantin Artyushkin 2015-08-20 14:03:13 MSK
(Ответ Konstantin Artyushkin на комментарий4)
> 
> NB : Ветки HKEY_CURRENT_USER\Software\Wine\AppDefaults\1c7.exe\X11 Driver
> небыло с
> самого начала( проверил после   окружения )
> 
Имел ввиду проверил сразу после создания окружения
Comment 6 Vitaly Lipatov 2015-08-26 23:46:47 MSK
Мы конечно ждём решения баги 10636, в том числе и в виде патча для 2.1.3.
Но видимо нужно придумывать решение, которое подойдёт и для систем без исправленного оконного менеджера. Видимо, будем пробовать добавить соотв. строки в реестр.
Comment 7 Konstantin Artyushkin 2015-09-07 17:25:30 MSK
(Ответ Vitaly Lipatov на комментарий6)
> Мы конечно ждём решения баги 10636, в том числе и в виде патча для 2.1.3.
> Но видимо нужно придумывать решение, которое подойдёт и для систем без
> исправленного оконного менеджера. Видимо, будем пробовать добавить соотв.
> строки в реестр.

Что значит исправленного оконного менеджера ? 
Я воспроизводил в swine из vbox(altlinux p7) на котором не было исправленного Оконного менеджера, если речь про xwm4 для ubuntu Текона.
Comment 9 Vitaly Lipatov 2015-10-05 23:22:10 MSK
(Ответ Konstantin Artyushkin на комментарий8)
> Движения не вижу поэтому откладываю

Ой ну да пожалуйста:

Author: Vitaly Lipatov <lav@etersoft.ru>
Date:   Mon Oct 5 22:52:42 2015 +0300

    add UseTakeFocus hack for 1c 7.7 (eterbug 10708)

diff --git a/reg/1c.reg b/reg/1c.reg
index 8df9b28..a046f54 100644
--- a/reg/1c.reg
+++ b/reg/1c.reg
@@ -10,3 +10,13 @@
 
 [HKEY_USERS\S-1-5-21-0-0-0-1000\Software\Wine\AppDefaults\1cv7.exe\DllOverrides]
 "msvcrt"="native"
+
+# see https://bugs.etersoft.ru/show_bug.cgi?id=10708
+[HKEY_USERS\S-1-5-21-0-0-0-1000\Software\Wine\AppDefaults\1cv7s.exe\X11 Driver]
+"UseTakeFocus"="false"
+
+[HKEY_USERS\S-1-5-21-0-0-0-1000\Software\Wine\AppDefaults\1cv7l.exe\X11 Driver]
+"UseTakeFocus"="false"
+
+[HKEY_USERS\S-1-5-21-0-0-0-1000\Software\Wine\AppDefaults\1cv7.exe\X11 Driver]
+"UseTakeFocus"="false"
Comment 10 Vitaly Lipatov 2015-10-13 12:56:13 MSK
Сборка закрытой части готова, можно проверять:
* Пт окт 09 2015 Etersoft Builder <builder@etersoft.ru> 2.1.3-alt9
...
- add UseTakeFocus hack for 1c 7.7 (eterbug 10708)
Comment 11 Konstantin Artyushkin 2015-10-13 16:02:19 MSK
swine 2.1 bugs/10708-check

wine-etersoft-2.1.3-alt26
wine-etersoft-gl-2.1.3-alt26
wine-etersoft-sql-2.1.3-alt9.M70P.10


Чистое окружение wine

Установлено  1C77 и Конфигурация с тестом
Никаких действий с реестром не производилось

Проблема не воспроизводится
Comment 12 Konstantin Artyushkin 2015-10-13 16:06:00 MSK
Пока закрываю
Comment 14 Vitaly Lipatov 2016-02-11 13:06:40 MSK
Принято.