Branch: refs/heads/resizing_high_dpi_work
  Home:   https://github.com/Warzone2100/warzone2100
  Commit: 413a2199acc48394f12e1e59b113c869c20018ad
      
https://github.com/Warzone2100/warzone2100/commit/413a2199acc48394f12e1e59b113c869c20018ad
  Author: past-due <[email protected]>
  Date:   2018-01-27 (Sat, 27 Jan 2018)

  Changed paths:
    M configure.ac
    M lib/framework/wzapp.h
    M lib/ivis_opengl/bitimage.cpp
    M lib/ivis_opengl/pieblitfunc.cpp
    M lib/ivis_opengl/pieblitfunc.h
    M lib/ivis_opengl/piedef.h
    M lib/ivis_opengl/piedraw.cpp
    M lib/ivis_opengl/piemode.cpp
    M lib/ivis_opengl/piemode.h
    M lib/ivis_opengl/screen.cpp
    M lib/ivis_opengl/screen.h
    M lib/ivis_opengl/textdraw.cpp
    M lib/ivis_opengl/textdraw.h
    M lib/qtgame/main_qt.cpp
    A lib/sdl/cocoa_sdl_helpers.h
    A lib/sdl/cocoa_sdl_helpers.mm
    M lib/sdl/main_sdl.cpp
    M lib/widget/bar.cpp
    M lib/widget/bar.h
    M lib/widget/editbox.cpp
    M lib/widget/editbox.h
    M lib/widget/label.cpp
    M lib/widget/label.h
    M lib/widget/tip.cpp
    M lib/widget/widgbase.h
    M lib/widget/widget.cpp
    M lib/widget/widget.h
    M macosx/Resources/Warzone-Info.plist
    M macosx/Warzone.xcodeproj/project.pbxproj
    M src/challenge.cpp
    M src/challenge.h
    M src/component.cpp
    M src/configuration.cpp
    M src/console.cpp
    M src/console.h
    M src/design.cpp
    M src/display3d.cpp
    M src/display3d.h
    M src/frontend.cpp
    M src/frontend.h
    M src/game.cpp
    M src/game.h
    M src/hci.cpp
    M src/hci.h
    M src/ingameop.cpp
    M src/init.cpp
    M src/init.h
    M src/intdisplay.cpp
    M src/intdisplay.h
    M src/intelmap.cpp
    M src/intorder.cpp
    M src/keyedit.cpp
    M src/loadsave.cpp
    M src/loadsave.h
    M src/main.cpp
    M src/mission.cpp
    M src/multiint.cpp
    M src/multiint.h
    M src/multijoin.cpp
    M src/multijoin.h
    M src/multilimit.cpp
    M src/multimenu.cpp
    M src/multimenu.h
    M src/multiplay.cpp
    M src/scores.cpp
    M src/scores.h
    M src/seqdisp.cpp
    M src/transporter.cpp
    M src/warzoneconfig.cpp
    M src/warzoneconfig.h

  Log Message:
  -----------
  Fixes #4720: Display scaling, live window resizing, and high-DPI support

- Internal enhancements to support screen / game / rendering scaling factors.
- Internal enhancements to support live window resizing / resolution changes.
- Internal enhancements to support UI layout recalculation.
- [SDL backend] Support for live window resizing / resolution changes. (*Cannot 
currently change between Windowed / Fullscreen without restarting Warzone 
because of SDL quirks, but live resolution changes in the current mode are 
supported.)
- [SDL backend] New "displayScale" variable for config file (can also be set as 
"Display Scale" in video options), offering 100%-500%* display scaling options 
(*scaling options are limited by the window/screen size, as no combination can 
result in a logical screen size lower than the minimum supported by Warzone).
- [macOS] Automatic high-DPI ("retina") display support. (Currently limited to 
macOS because of SDL 2.0.x high-DPI support limitations.)
- Better caching of text rasterization (through judicious use of the improved 
WzText).


  Commit: dc69eb5958d5449a6e19377641c50172a2d96382
      
https://github.com/Warzone2100/warzone2100/commit/dc69eb5958d5449a6e19377641c50172a2d96382
  Author: past-due <[email protected]>
  Date:   2018-01-27 (Sat, 27 Jan 2018)

  Changed paths:
    M lib/ivis_opengl/pieblitfunc.cpp
    M lib/ivis_opengl/pieblitfunc.h
    M lib/ivis_opengl/piedraw.cpp
    M lib/ivis_opengl/piematrix.cpp
    M lib/ivis_opengl/piematrix.h
    M src/atmos.cpp
    M src/component.cpp
    M src/display.h
    M src/display3d.cpp
    M src/display3d.h

  Log Message:
  -----------
  Performance improvements to support display scaling

- Reduction in unnecessary OpenGL state changes.
- More accurate clipping techniques yield a large reduction in wasted 
non-visible drawing.
- Other small performance enhancements (such as avoiding duplicated 
calculations of values).


  Commit: 58741acb4fd08bf7ce4f6109dec2f70ff48ed37b
      
https://github.com/Warzone2100/warzone2100/commit/58741acb4fd08bf7ce4f6109dec2f70ff48ed37b
  Author: past-due <[email protected]>
  Date:   2018-01-27 (Sat, 27 Jan 2018)

  Changed paths:
    M lib/sdl/main_sdl.cpp
    M src/frontend.cpp

  Log Message:
  -----------
  Fixes for desktop window managers / OSes that yield differing SDL behavior

When changing resolution in windowed mode, use SDL_GetDisplayUsableBounds to 
obtain the usable display bounds.
Prevent endless loop on resolution change when only a single resolution is in 
the available list.


  Commit: d1b2c77053dae1507705368ec5f01f36aed42dca
      
https://github.com/Warzone2100/warzone2100/commit/d1b2c77053dae1507705368ec5f01f36aed42dca
  Author: past-due <[email protected]>
  Date:   2018-01-28 (Sun, 28 Jan 2018)

  Changed paths:
    M src/frontend.cpp

  Log Message:
  -----------
  Disable Video options menu `Resolution` option when in windowed mode

When live-resizing (i.e. using the OS / window-manager functionality to resize 
the window) is available, disable the Video options menu `Resolution` option in 
windowed mode.

(The option is still visible, to show the current windowed resolution.)

This is to avoid an issue caused by SDL & certain window managers (ex. i3), 
where SDL does not receive the actual window size after attempts to set the 
window size are rejected / reversed / altered by the window manager. The 
discrepancy between the actual window size and what SDL *thinks* the window 
size is causes issues.

The ability to change the windowed resolution from the menu isn't necessary 
when live resizing is available, so disabling the menu option is the simple 
solution.


Compare: 
https://github.com/Warzone2100/warzone2100/compare/413a2199acc4^...d1b2c77053da
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Warzone2100-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/warzone2100-commits

Reply via email to