Commit Graph
4 Commits
Author SHA1 Message Date
Drew Barbarello 557be7cf1b 5 1 new backport x11 fs rework (#1485)
* Use XRandR 1.2 to set fullscreen resolution for single output

Squash of roothorick's PR #497
(also includes Kyzentun's CMake changes from PR #716)

* Cherry-pick json c++1x stuff (b9e3d7174e)

* Cherry-pick c++11 support from 5bba5c0038 and 9f8b045309

* rework Linux (X11) fullscreen, improve display-related Graphics Options

Implement option to select between monitors for exclusive fullscreen mode
on X11 (using XRandR 1.2), or use a fullscreen borderless window.

Reimplement resolution/refresh rate/display mode-related option rows
using Lua, update choices dynamically so only known-good groupings of
resolution/refresh rate/aspect ratio can be selected.

Minimally update Windows/MacOS LowLevelWindow implementations to support
changes made for Linux side. Fullscreen Borderless Window/multi monitor
support from X11 not implemented for those in this commit.

* allow forcibly disabling xinerama use on Linux

When libXinerama is available, SM tries to use it to find the proper
monitor indexes to use to set _NET_WM_FULLSCREEN_MONITORS (on borderless
fullscreen). xfwm4 seems to assume that monitors are numbered in increasing
order from left to right (rather than using the Xinerama-assigned numbers),
so _NET_WM_FULLSCREEN_MONITORS misbehaves on Xfce.

This commit bypasses use of libXinerama, and instead forces SM to induce fullscreen
on the desired monitor in the backup, hacky way: remove all window hints, move window
to desired monitor, then add _NET_WM_STATE_FULLSCREEN hint. This works on
mutter and Xfce.

* Remove multiple warnings on redundant define.

This used to be hard-coded due to pthread related items, but now it's dynamically determined.

* fix _fallback menu behavior for unrecognized aspect ratios

* Fix error recreating existing FS texture

* Bump deployment target to 10.7 to use libc++ on XCode 8

* Add explicit casts to please clang

* Update changelog
2017-06-18 08:55:16 -07:00
Drew Barbarello e5e5b94242 Add missing breaks to case statement, fix #1445 (#1460)
On default theme on fresh checkout on fresh install of Arch, I
encountered a segfault when entering the ScreenSelectMusic screen. The
fault was trying to dereference a NULL pWID->m_pAction in the
WheelItemDataType_Sort case, which we fell through to because of the
missing break statements.
2017-05-26 15:31:32 -07:00
Andrew Barbarello f451cc72cd don't specify a filler transformation when writing RGBA
Apparently fixes the failure of Texture Font Generator to write
the necessary PNGs.
2015-12-20 22:01:50 -05:00
Andrew Barbarello 43ec2f13b5 use corresponding free function for png_create_write_struct
Prevents access violation on PNG error in Texture Font Generator
2015-12-20 22:00:51 -05:00