Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
SUSE:SLE-12-SP1:Update
tigervnc.5211
u_tigervnc-use_preferred_mode.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File u_tigervnc-use_preferred_mode.patch of Package tigervnc.5211
Author: Michal Srb <msrb@suse.com> Subject: Use preferred mode. Patch-Mainline: To be upstreamed References: bnc#896540 If there is any resolution specified with -geometry or -screen parameters, report this resolution as preferred one. That way desktop environments won't change it immediately after start. Index: unix/xserver/hw/vnc/xvnc.cc =================================================================== --- unix/xserver/hw/vnc/xvnc.cc (revision 5186) +++ unix/xserver/hw/vnc/xvnc.cc (working copy) @@ -1319,12 +1319,22 @@ /* Make sure the CRTC has this output set */ vncRandRCrtcSet(pScreen, crtc, NULL, 0, 0, RR_Rotate_0, 1, &output); - /* Populate a list of default modes */ - RRModePtr modes[sizeof(vncRandRWidths)/sizeof(*vncRandRWidths)]; - int num_modes; + /* Populate a list of modes */ + RRModePtr modes[sizeof(vncRandRWidths)/sizeof(*vncRandRWidths) + 1]; + int num_modes = 0; - num_modes = 0; + /* Start with requested mode */ + mode = vncRandRModeGet(pScreen->width, pScreen->height); + if(mode != NULL) { + modes[num_modes] = mode; + num_modes++; + } + + /* Add default modes */ for (int i = 0;i < sizeof(vncRandRWidths)/sizeof(*vncRandRWidths);i++) { + if (vncRandRWidths[i] == pScreen->width && vncRandRHeights[i] == pScreen->height) + continue; + mode = vncRandRModeGet(vncRandRWidths[i], vncRandRHeights[i]); if (mode != NULL) { modes[num_modes] = mode; @@ -1332,7 +1342,7 @@ } } - RROutputSetModes(output, modes, num_modes, 0); + RROutputSetModes(output, modes, num_modes, 1); return crtc; }
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor