Bug 919070

Summary: "all displays" slide show mode doesn't span all screens
Product: Red Hat Enterprise Linux 7 Reporter: Jiri Koten <jkoten>
Component: libreofficeAssignee: Caolan McNamara <caolanm>
Status: CLOSED CURRENTRELEASE QA Contact: Desktop QE <desktop-qa-list>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 7.0CC: dtardon, jkoten
Target Milestone: rc   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: libreoffice-4.1.4.2-2.el7 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 1019359 (view as bug list) Environment:
Last Closed: 2014-06-13 11:29:04 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: 1019277    
Bug Blocks: 1019359    
Attachments:
Description Flags
Screenshot
none
dump some hopefully useful info none

Description Jiri Koten 2013-03-07 14:30:10 UTC
Description of problem:
On dualhead when I choose "Presentation display" to be "All displays", the slide show is not displayed. 

Version-Release number of selected component (if applicable):
libreoffice-impress-4.0.0.3-2.el7

How reproducible:
100%

Steps to Reproduce:
1. Have laptop connected to external screen
2. Open presentation
3. Choose "All displays" as a "Presentation display" in SlideShow settings
  
Actual results:
No presentation is displayed.

Comment 1 Caolan McNamara 2013-04-08 20:15:53 UTC
How about now with libreoffice-4.0.2.1-2.el7 which includes additional primary/secondary screen detection fixes ?

Comment 2 Caolan McNamara 2013-08-29 10:19:12 UTC
and 4.1.0.4-5.el7 has another fix in this area, is this still a problem ?

Comment 3 Caolan McNamara 2013-10-08 10:38:33 UTC
does this now work, it should, so I'll claim that it does now

Comment 10 Caolan McNamara 2013-10-11 10:04:34 UTC
So this has gone from showing on no screens to showing on 1 screen, right ?

Can I get the output of xrandr

Comment 11 Jiri Koten 2013-10-11 12:57:41 UTC
(In reply to Caolan McNamara from comment #10)
> So this has gone from showing on no screens to showing on 1 screen, right ?
Correct, presentation is displayed only on one of the screens, in my case on the left screen, primary shows desktop with the LO window, no notes etc. 


> Can I get the output of xrandr
LVDS-1 is off, DP-2 is left monitor, DP-3 is right monitor

$ xrandr -q
Screen 0: minimum 320 x 200, current 3280 x 1200, maximum 8192 x 8192
LVDS-1 connected (normal left inverted right x axis y axis)
   1600x900       60.0 +   40.0  
   1152x864       60.0  
   1024x768       59.9  
   800x600        59.9  
   640x480        59.4  
   720x400        59.6  
   640x400        60.0  
   640x350        59.8  
VGA-1 disconnected (normal left inverted right x axis y axis)
DP-1 disconnected (normal left inverted right x axis y axis)
DP-2 connected 1600x1200+0+0 (normal left inverted right x axis y axis) 367mm x 275mm
   1600x1200      60.0*+
   1280x1024      75.0     60.0  
   1152x864       75.0  
   1024x768       75.1     60.0  
   800x600        75.0     60.3  
   640x480        75.0     60.0  
   720x400        70.1  
DP-3 connected primary 1680x1050+1600+0 (normal left inverted right x axis y axis) 459mm x 296mm
   1680x1050      59.9*+
   1280x1024      75.0     60.0  
   1280x960       60.0  
   1152x864       75.0  
   1024x768       75.1     70.1     60.0  
   832x624        74.6  
   800x600        72.2     75.0     60.3     56.2  
   640x480        72.8     75.0     66.7     60.0  
   720x400        70.1

Comment 12 Jiri Koten 2013-10-11 12:59:46 UTC
Created attachment 811090 [details]
Screenshot

Presentation display: All displays

Comment 13 Caolan McNamara 2013-10-15 15:55:59 UTC
caolanm->dtardon: do you have access to a similar setup as this to see what is going on in e.g. GtkSalSystem::countScreenMonitors ?

If not I guess we could try and cook up some standalone test programs to probe the problem.

Comment 14 Caolan McNamara 2013-10-16 14:36:42 UTC
Created attachment 812965 [details]
dump some hopefully useful info

can you run this and paste in the output. I want to know if gtk things there are three monitors or two monitors.

Comment 15 David Tardon 2013-10-17 11:01:27 UTC
I doubt we are handling correctly a situation where there are three screens: two of them at the same position (i.e., mirror) and the third next to them. At least I explicitly ignored that scenario when I did my last change to that code (I think I even left a comment re that). Maybe that is the problem here?

Comment 16 Caolan McNamara 2013-10-17 11:49:33 UTC
Nah, the thing is the explicit selection of "all displays". We are supposed to span the entire pair of monitors. We use gtk_window_fullscreen for this, but that limits to the *current* monitor and overrides the size/pos suggestion for the entire monitor. There's no need for an exotic configuration after all to reproduce this.

gtk3 has a nice gdk_window_set_fullscreen_mode to allow spanning all monitors which would resolve this, but we can only use gtk2 so that's not an option. qeeqie can achieve this in gtk2 (edit preferences windows screen...fullsize) but it uses gdk_window_set_override_redirect so I don't know if thats an option for us.

Comment 17 Jiri Koten 2013-10-17 11:54:16 UTC
(In reply to Caolan McNamara from comment #14)
> Created attachment 812965 [details]
> dump some hopefully useful info
> 
> can you run this and paste in the output. I want to know if gtk things there
> are three monitors or two monitors.

$ ./a.out 
index 0 monitor name DP-2
index 1 monitor name DP-3
gdk_screen_get_primary_monitor is 1

Comment 18 Caolan McNamara 2013-10-17 15:55:35 UTC
gtk3 can do what I want to do easily these days. It's a pile of tricky code that we couldn't practically replicate up in LibreOffice so far from the details we need to feed the window manager. So... we could write a little gtk3 utility and feed it the xid of the window we want to span all monitors and launch that when we want to handle this corner case.

Comment 19 Caolan McNamara 2013-10-18 10:13:31 UTC
Going the gtk3 utility route works to allow "all displays" to span all screens. Committed that approach upstream now.

Comment 20 Caolan McNamara 2014-02-25 14:24:21 UTC
This fix is in 4.1.4.2-2

Comment 24 Ludek Smid 2014-06-13 11:29:04 UTC
This request was resolved in Red Hat Enterprise Linux 7.0.

Contact your manager or support representative in case you have further questions about the request.