Bug 1261524
Summary: | Console window could be hidden after login via consoles on multiple hosts | ||||||
---|---|---|---|---|---|---|---|
Product: | Red Hat Directory Server | Reporter: | Viktor Ashirov <vashirov> | ||||
Component: | Directory Console | Assignee: | Rich Megginson <rmeggins> | ||||
Status: | CLOSED ERRATA | QA Contact: | Viktor Ashirov <vashirov> | ||||
Severity: | medium | Docs Contact: | |||||
Priority: | high | ||||||
Version: | 9.1.1 | CC: | gparente, nhosoi, nkinder, pbokoc, rmeggins, vashirov | ||||
Target Milestone: | DS 9.1.2 | ||||||
Target Release: | --- | ||||||
Hardware: | Unspecified | ||||||
OS: | Unspecified | ||||||
Whiteboard: | |||||||
Fixed In Version: | idm-console-framework-1.1.15-1.el6dsrv | Doc Type: | Bug Fix | ||||
Doc Text: |
Red Hat Directory Console window coordinates are stored in user preferences in the "o=netscaperoot" suffix. Previously, if the Directory Console was used by the same user on two different systems with different monitor setups, it was possible for the coordinates to be off screen on one of them, and consequently the Directory Console window could be hidden after logging in. This update adds a check which compares saved window coordinates with the current screen size, and resets the window location if currently outside the screen, which ensures the window is always visible.
|
Story Points: | --- | ||||
Clone Of: | |||||||
: | 1331891 (view as bug list) | Environment: | |||||
Last Closed: | 2016-06-08 12:10:41 UTC | Type: | Bug | ||||
Regression: | --- | Mount Type: | --- | ||||
Documentation: | --- | CRM: | |||||
Verified Versions: | Category: | --- | |||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||
Cloudforms Team: | --- | Target Upstream Version: | |||||
Embargoed: | |||||||
Bug Depends On: | |||||||
Bug Blocks: | 1331891 | ||||||
Attachments: |
|
389-admin-1.1.42-1.el6dsrv.x86_64 389-admin-console-1.1.10-2.el6dsrv.noarch 389-admin-console-doc-1.1.10-2.el6dsrv.noarch 389-adminutil-1.1.22-1.el6dsrv.x86_64 389-console-1.1.10-1.el6dsrv.noarch 389-ds-base-1.2.11.15-62.el6_7.x86_64 389-ds-base-libs-1.2.11.15-62.el6_7.x86_64 389-ds-console-1.2.12-1.el6dsrv.noarch 389-ds-console-doc-1.2.12-1.el6dsrv.noarch idm-console-framework-1.1.14-1.el6dsrv.noarch redhat-idm-console-9.1.1-3.el6dsrv.x86_64 redhat-ds-9.1.1-1.el6dsrv.x86_64 redhat-ds-admin-9.1.1-1.el6dsrv.x86_64 redhat-ds-base-9.1.1-2.el6dsrv.x86_64 redhat-ds-console-9.1.1-4.el6dsrv.noarch redhat-ds-console-doc-9.1.1-4.el6dsrv.noarch I had this issue with admin user only. With Directory Manager window opens normally. dn: cn=General,ou=1.1,ou=Console,ou=uid\3Dadmin\2Cou\3DAdministrators\2Cou\3DTopologyManagement\2Co\3DNetscapeRoot,ou=UserPreferences,ou=brq.redhat.com,o=NetscapeRoot cn: General objectClass: top objectClass: nsAdminConsoleUser creatorsname: uid=admin,ou=administrators,ou=topologymanagement,o=netscaperoot modifiersname: uid=admin,ou=administrators,ou=topologymanagement,o=netscaperoot createtimestamp: 20150909113855Z modifytimestamp: 20150909122844Z nsuniqueid: 3ae21f83-56e711e5-8a218402-8f08f95f parentid: 97 entryid: 98 nsPreference:: Iw0KI1dlZCBTZXAgMDkgMTY6MzE6MTcgTURUIDIwMTUNCldpZHRoPTE5MjgNClNob3dTdGF0dXNCYXI9dHJ1ZQ0KU2hvd0Jhbm5lckJhcj10cnVlDQpZPS00DQpIZWlnaHQ9MTA0NA0KWD0tNA0K entrydn: cn=general,ou=1.1,ou=console,ou=uid\3dadmin\2cou\3dadministrators\2cou\3dtopologymanagement\2co\3dnetscaperoot,ou=userpreferences,ou=brq.redhat.com,o=netscaperoot hassubordinates: FALSE numsubordinates: 0 subschemasubentry: cn=schema base64 -d Iw0KI1dlZCBTZXAgMDkgMTY6MzE6MTcgTURUIDIwMTUNCldpZHRoPTE5MjgNClNob3dTdGF0dXNCYXI9dHJ1ZQ0KU2hvd0Jhbm5lckJhcj10cnVlDQpZPS00DQpIZWlnaHQ9MTA0NA0KWD0tNA0K # #Wed Sep 09 16:31:17 MDT 2015 Width=1928 ShowStatusBar=true ShowBannerBar=true Y=-4 Height=1044 X=-4 Seems like preferences for user were not properly initialized. For the comparison, here's my case. dn: cn=General,ou=1.1,ou=Console,ou=uid\3Dadmin\2Cou\3DAdministrators\2Cou\3DT opologyManagement\2Co\3DNetscapeRoot,ou=UserPreferences,ou=usersys.redhat.com ,o=NetscapeRoot nsPreference:: Iw0KI0ZyaSBBdWcgMjggMTM6NDA6MDYgUERUIDIwMTUNCldpZHRoPTkyMQ0KU2h vd1N0YXR1c0Jhcj10cnVlDQpTaG93QmFubmVyQmFyPXRydWUNClk9MTc0DQpIZWlnaHQ9ODAyDQpY PTQ2NQ0K ==> # #Fri Aug 28 13:40:06 PDT 2015 Width=921 ShowStatusBar=true ShowBannerBar=true Y=174 Height=802 X=465 On Windows, ~/.redhat-idm-console/Console.1.1.14.Login # #Wed Sep 09 11:08:36 PDT 2015 UserID=admin HostURL1=http\://<host>:<port> HostURL1=https\://<host>:<port> Y=371 X=548 It seems the local Console.1.1.14.Login is being used for me. > On Windows, ~/.redhat-idm-console/Console.1.1.14.Login
> #
> #Wed Sep 09 11:08:36 PDT 2015
> UserID=admin
> HostURL1=http\://<host>:<port>
> HostURL1=https\://<host>:<port>
> Y=371
> X=548
>
> It seems the local Console.1.1.14.Login is being used for me.
I believe these are coordinates of Login window, not main window.
I found the real issue. Before connecting from Windows, I connected from my machine to verify that ssl worked as expected. I have 3-monitor setup and coordinates of main window would be offscreen in Windows. They were saved in UserPreferences in o=netscaperoot. So, to reproduce this issue, import ldif: dn: cn=General,ou=1.1,ou=Console,ou=uid\3Dadmin\2Cou\3DAdministrators\2Cou\3DTopologyManagement\2Co\3DNetscapeRoot,ou=UserPreferences,ou=brq.redhat.com,o=NetscapeRoot cn: General objectClass: top objectClass: nsAdminConsoleUser nsPreference:: IwojVGh1IFNlcCAxMCAyMDowMDowNiBDRVNUIDIwMTUKV2lkdGg9MTg5OApTaG93U3RhdHVzQmFyPXRydWUKU2hvd0Jhbm5lckJhcj10cnVlClk9MjAwMApYPTIwMDAKSGVpZ2h0PTEwNDQK Where X and Y would be offscreen: # #Thu Sep 10 20:00:06 CEST 2015 Width=1898 ShowStatusBar=true ShowBannerBar=true Y=2000 X=2000 Height=1044 And then login. WMs in Linux are smart enough to place offscreen windows somewhere where user can interact with them, but not in Windows. This is a corner case, so I'm setting low priority to this bz. I can reproduce this issue with putty+xming on Windows and vnc on linux (without WM). In both cases workaround is not working. Another workaround would be to reset/delete nsPreference. Upstream ticket: https://fedorahosted.org/389/ticket/48811 Doc Text: Changing the last 2 items: Workaround (if any): Click on the Windows Console icon, press Alt-Space, choose Maximize, then close the window. Result: On next startup window will be visible. to: Fix: Get the screen size and compare the location of the Console window. If the location is outside of the screen, it force to reset it with the initial position (0, 0). Result: The Console window is always visible. Build tested: idm-console-framework-1.1.15-1.el6dsrv.noarch In the debug log I see: Windows Location: coordinate x 10700 is less than -1500 or greater than 1500. Resetting to 0. Windows Location: coordinate y 10000 is less than -1080 or greater than 1080. Resetting to 0. Window is located correctly. Marking as VERIFIED. Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2016:1210 |
Created attachment 1071777 [details] Video Description of problem: After login to the admin server, main window is hidden. It has position (-1, 1105). As a workaround, user can press Alt-Space, choose Maximize, then close the window. On next startup window will be visible. Version-Release number of selected component (if applicable): RedHat-Console-9.1.1-x86_64.msi How reproducible: Always Steps to Reproduce: 1. Make a fresh install of RedHat-Console-9.1.1-x86_64.msi 2. Login to admin server using console 3. Actual results: Main window is hidden, icon is present on a taskbar. Expected results: Main window should be visible for user. Additional info: java version "1.8.0_60" Java(TM) SE Runtime Environment (build 1.8.0_60-b27) Java HotSpot(TM) 64-Bit Server VM (build 25.60-b23, mixed mode) Video describing the issue is attached.