Patric Stout 
							
						 
					 
					
						
						
							
						
						457b4f80b6 
					 
					
						
						
							
							Fix  91b8ce07: dedicated servers could no longer create screenshots ( #9232 )  
						
						... 
						
						
						
						Although most commands are not useful on a dedicated server,
screenshot commands should be dequeued.
(cherry picked from commit 56050fc96f 
						
						
					 
					
						2021-05-14 18:25:34 +01:00 
						 
				 
			
				
					
						
							
							
								Milek7 
							
						 
					 
					
						
						
							
						
						deb2ad8997 
					 
					
						
						
							
							Codechange: Acquire video buffer before taking game state lock to prevent erratic fast forward behaviour ( #9140 )  
						
						... 
						
						
						
						(cherry picked from commit 20762f9117 
						
						
					 
					
						2021-05-06 21:12:59 +01:00 
						 
				 
			
				
					
						
							
							
								Michael Lutz 
							
						 
					 
					
						
						
							
						
						1b46ef756e 
					 
					
						
						
							
							Codechange: Generalise the delayed blitter change to a generic video driver command queue.  
						
						... 
						
						
						
						(cherry picked from commit 91b8ce073f 
						
						
					 
					
						2021-05-06 20:52:00 +01:00 
						 
				 
			
				
					
						
							
							
								Peter Nelson 
							
						 
					 
					
						
						
							
						
						a469b4f395 
					 
					
						
						
							
							Fix: Recalculate padding and minimum sizes when GUI or Font zoom is changed.  
						
						... 
						
						
						
						(cherry picked from commit 4791ff2862 
						
						
					 
					
						2021-05-06 20:11:55 +01:00 
						 
				 
			
				
					
						
							
							
								Jonathan G Rennison 
							
						 
					 
					
						
						
							
						
						8eb27e1ac7 
					 
					
						
						
							
							Merge branch 'master' into jgrpp  
						
						... 
						
						
						
						# Conflicts:
#	src/company_cmd.cpp
#	src/lang/japanese.txt
#	src/network/core/config.h
#	src/network/core/packet.cpp
#	src/network/core/tcp.cpp
#	src/network/network_content.cpp
#	src/network/network_server.cpp
#	src/network/network_udp.cpp
#	src/toolbar_gui.cpp
#	src/vehicle_gui_base.h 
						
						
					 
					
						2021-04-25 22:14:59 +01:00 
						 
				 
			
				
					
						
							
							
								Jonathan G Rennison 
							
						 
					 
					
						
						
							
						
						253772e9af 
					 
					
						
						
							
							Merge branch 'master' into jgrpp  
						
						... 
						
						
						
						# Conflicts:
#	CMakeLists.txt
#	COMPILING.md
#	src/console.cpp
#	src/console_cmds.cpp
#	src/console_internal.h
#	src/rev.cpp.in 
						
						
					 
					
						2021-04-25 02:14:58 +01:00 
						 
				 
			
				
					
						
							
							
								Michael Lutz 
							
						 
					 
					
						
						
							
						
						f4d5c8d99e 
					 
					
						
						
							
							Fix: [OpenGL] Main loop expects to start with the video buffer unmapped. ( #9100 )  
						
						
						
						
					 
					
						2021-04-25 00:43:38 +02:00 
						 
				 
			
				
					
						
							
							
								Michael Lutz 
							
						 
					 
					
						
						
							
						
						d1dd997f07 
					 
					
						
						
							
							Change: [Win32] Limit the OpenGL video driver to OpenGL 3.2 or newer on Windows.  
						
						
						
						
					 
					
						2021-04-22 21:04:04 +02:00 
						 
				 
			
				
					
						
							
							
								Michael Lutz 
							
						 
					 
					
						
						
							
						
						ef80baf75c 
					 
					
						
						
							
							Codechange: [Win32] Try getting an OpenGL 4.5 context first before aiming at 3.2.  
						
						
						
						
					 
					
						2021-04-22 21:04:04 +02:00 
						 
				 
			
				
					
						
							
							
								Michael Lutz 
							
						 
					 
					
						
						
							
						
						e53313391a 
					 
					
						
						
							
							Fix: [OpenGL] Check maximum supported texture size against screen resolution.  
						
						
						
						
					 
					
						2021-04-21 22:44:59 +02:00 
						 
				 
			
				
					
						
							
							
								Jonathan G Rennison 
							
						 
					 
					
						
						
							
						
						205673715c 
					 
					
						
						
							
							MinGW32: Fix EnumDisplayMonitors callback calling convention compile error  
						
						
						
						
					 
					
						2021-04-14 20:49:26 +01:00 
						 
				 
			
				
					
						
							
							
								Jonathan G Rennison 
							
						 
					 
					
						
						
							
						
						253d54ce05 
					 
					
						
						
							
							Merge branch 'master' into jgrpp  
						
						... 
						
						
						
						# Conflicts:
#	src/lang/french.txt
#	src/network/network_udp.cpp 
						
						
					 
					
						2021-04-12 22:59:30 +01:00 
						 
				 
			
				
					
						
							
							
								Michael Lutz 
							
						 
					 
					
						
						
							
						
						433602b072 
					 
					
						
						
							
							Fix   #9028 : [OpenGL] Clear cursor cache on destroying the OpenGL backend.  
						
						
						
						
					 
					
						2021-04-12 22:40:40 +02:00 
						 
				 
			
				
					
						
							
							
								Rubidium 
							
						 
					 
					
						
						
							
						
						468b1c6c5d 
					 
					
						
						
							
							Fix: [win32] buffer_locked state not initialised, causing _screen.dst_ptr to be potentially not set  
						
						
						
						
					 
					
						2021-04-12 21:14:01 +02:00 
						 
				 
			
				
					
						
							
							
								Rubidium 
							
						 
					 
					
						
						
							
						
						8562395413 
					 
					
						
						
							
							Fix: [Video] fast forward boolean states not initialised, potentially causing unstoppable fast forward  
						
						
						
						
					 
					
						2021-04-12 21:14:01 +02:00 
						 
				 
			
				
					
						
							
							
								Rubidium 
							
						 
					 
					
						
						
							
						
						64e8305874 
					 
					
						
						
							
							Fix: [SDL] buffer_locked state not initialised, causing _screen.dst_ptr to be potentially not set  
						
						
						
						
					 
					
						2021-04-12 21:14:01 +02:00 
						 
				 
			
				
					
						
							
							
								Jonathan G Rennison 
							
						 
					 
					
						
						
							
						
						272e583478 
					 
					
						
						
							
							Merge branch 'master' into jgrpp  
						
						... 
						
						
						
						# Conflicts:
#	src/lang/korean.txt
#	src/settings.cpp 
						
						
					 
					
						2021-04-12 00:22:13 +01:00 
						 
				 
			
				
					
						
							
							
								Michael Lutz 
							
						 
					 
					
						
						
							
						
						5644c00482 
					 
					
						
						
							
							Fix: Check for a validly mapped OpenGL screen buffer during driver init. ( #9007 )  
						
						
						
						
					 
					
						2021-04-11 14:28:29 +02:00 
						 
				 
			
				
					
						
							
							
								Patric Stout 
							
						 
					 
					
						
						
							
						
						f0f2073006 
					 
					
						
						
							
							Feature: allow a toggle to enable/disable vsync  
						
						... 
						
						
						
						Vsync should be off by default, as for most players it will be
better to play without vsync. Exception exist, mainly people who
play in fullscreen mode. 
						
						
					 
					
						2021-04-11 14:26:00 +02:00 
						 
				 
			
				
					
						
							
							
								Jonathan G Rennison 
							
						 
					 
					
						
						
							
						
						227041008f 
					 
					
						
						
							
							Merge branch 'master' into jgrpp  
						
						... 
						
						
						
						# Conflicts:
#	src/debug.cpp
#	src/lang/russian.txt
#	src/misc_gui.cpp
#	src/os/windows/crashlog_win.cpp
#	src/os/windows/font_win32.cpp
#	src/os/windows/win32.cpp
#	src/rail_cmd.cpp
#	src/window_gui.h 
						
						
					 
					
						2021-04-11 03:05:08 +01:00 
						 
				 
			
				
					
						
							
							
								Jonathan G Rennison 
							
						 
					 
					
						
						
							
						
						edfa04286b 
					 
					
						
						
							
							Merge branch 'master' into jgrpp  
						
						... 
						
						
						
						# Conflicts:
#	.github/workflows/release.yml
#	bin/CMakeLists.txt
#	src/dock_gui.cpp
#	src/lang/brazilian_portuguese.txt
#	src/lang/catalan.txt
#	src/lang/czech.txt
#	src/lang/dutch.txt
#	src/lang/english.txt
#	src/lang/english_US.txt
#	src/lang/estonian.txt
#	src/lang/finnish.txt
#	src/lang/french.txt
#	src/lang/german.txt
#	src/lang/hungarian.txt
#	src/lang/indonesian.txt
#	src/lang/italian.txt
#	src/lang/japanese.txt
#	src/lang/korean.txt
#	src/lang/lithuanian.txt
#	src/lang/luxembourgish.txt
#	src/lang/norwegian_bokmal.txt
#	src/lang/polish.txt
#	src/lang/portuguese.txt
#	src/lang/romanian.txt
#	src/lang/russian.txt
#	src/lang/serbian.txt
#	src/lang/simplified_chinese.txt
#	src/lang/slovak.txt
#	src/lang/spanish.txt
#	src/lang/spanish_MX.txt
#	src/lang/swedish.txt
#	src/lang/tamil.txt
#	src/lang/ukrainian.txt
#	src/lang/vietnamese.txt
#	src/newgrf.cpp
#	src/newgrf_gui.cpp
#	src/object_gui.cpp
#	src/pathfinder/yapf/yapf_costrail.hpp
#	src/pathfinder/yapf/yapf_node_rail.hpp
#	src/rail_cmd.cpp
#	src/roadveh_cmd.cpp
#	src/town_cmd.cpp
#	src/vehicle.cpp
#	src/water_cmd.cpp 
						
						
					 
					
						2021-04-11 02:39:33 +01:00 
						 
				 
			
				
					
						
							
							
								Jonathan G Rennison 
							
						 
					 
					
						
						
							
						
						39b7ef31f8 
					 
					
						
						
							
							Fix: Data races on cursor state in OpenGL backends  
						
						
						
						
					 
					
						2021-04-10 18:31:42 +02:00 
						 
				 
			
				
					
						
							
							
								Jonathan G Rennison 
							
						 
					 
					
						
						
							
						
						fbd0a2e65a 
					 
					
						
						
							
							Fix: Thread unsafe use of sprite cache in OpenGLBackend::DrawMouseCursor  
						
						... 
						
						
						
						See also: #8870 
See also: #8977  
						
						
					 
					
						2021-04-10 18:31:42 +02:00 
						 
				 
			
				
					
						
							
							
								Michael Lutz 
							
						 
					 
					
						
						
							
						
						96d33ab46a 
					 
					
						
						
							
							Fix   #8930 : [Win32] Don't handle printable keys on keydown if an edit box is in focus.  
						
						... 
						
						
						
						Handle printable input only when the matching WM_CHAR message is incoming.
Without an edit box, do the handling in keydown as usual to support hotkeys. 
						
						
					 
					
						2021-04-09 12:24:27 +02:00 
						 
				 
			
				
					
						
							
							
								Niels Martin Hansen 
							
						 
					 
					
						
						
							
						
						e0561dbded 
					 
					
						
						
							
							Fix   #8713 : Change OTTD2FS and FS2OTTD to return string objects instead of static buffers  
						
						
						
						
					 
					
						2021-04-07 09:31:47 +02:00 
						 
				 
			
				
					
						
							
							
								Jonathan G Rennison 
							
						 
					 
					
						
						
							
						
						ef81729dde 
					 
					
						
						
							
							Partially fix data race issues around _cur_palette  
						
						... 
						
						
						
						See: https://github.com/OpenTTD/OpenTTD/issues/8712  
						
						
					 
					
						2021-04-06 19:32:15 +01:00 
						 
				 
			
				
					
						
							
							
								Jonathan G Rennison 
							
						 
					 
					
						
						
							
						
						63ddf7f587 
					 
					
						
						
							
							Crashlog: Update thread/lock handling to match GameLoop changes  
						
						
						
						
					 
					
						2021-04-06 18:43:50 +01:00 
						 
				 
			
				
					
						
							
							
								Jonathan G Rennison 
							
						 
					 
					
						
						
							
						
						0e959a0563 
					 
					
						
						
							
							OpenGL: Avoid data races around _cursor  
						
						
						
						
					 
					
						2021-04-05 23:34:01 +01:00 
						 
				 
			
				
					
						
							
							
								Jonathan G Rennison 
							
						 
					 
					
						
						
							
						
						59daa573b5 
					 
					
						
						
							
							Avoid data races around modifier keys and pause/FF state  
						
						
						
						
					 
					
						2021-04-05 23:34:01 +01:00 
						 
				 
			
				
					
						
							
							
								Jonathan G Rennison 
							
						 
					 
					
						
						
							
						
						f2bfcc5524 
					 
					
						
						
							
							Partially fix data race issues around _cur_palette  
						
						... 
						
						
						
						See: https://github.com/OpenTTD/OpenTTD/issues/8712  
						
						
					 
					
						2021-04-05 23:34:01 +01:00 
						 
				 
			
				
					
						
							
							
								Jonathan G Rennison 
							
						 
					 
					
						
						
							
						
						e9186308e9 
					 
					
						
						
							
							Fix data race in OpenGLBackend::DrawMouseCursor  
						
						
						
						
					 
					
						2021-04-05 23:34:01 +01:00 
						 
				 
			
				
					
						
							
							
								Jonathan G Rennison 
							
						 
					 
					
						
						
							
						
						70897c3e5e 
					 
					
						
						
							
							Only call InteractiveRandom when game state mutex is held  
						
						
						
						
					 
					
						2021-04-05 23:34:01 +01:00 
						 
				 
			
				
					
						
							
							
								Jonathan G Rennison 
							
						 
					 
					
						
						
							
						
						e094b7f1d6 
					 
					
						
						
							
							Partially fix thread safety issues around _cur_palette  
						
						... 
						
						
						
						Replaces: 4c59dfb6https://github.com/OpenTTD/OpenTTD/issues/8712  
						
						
					 
					
						2021-04-05 23:34:01 +01:00 
						 
				 
			
				
					
						
							
							
								Jonathan G Rennison 
							
						 
					 
					
						
						
							
						
						f94eb286f2 
					 
					
						
						
							
							Fix missing MinGW thread includes  
						
						
						
						
					 
					
						2021-04-05 20:04:53 +01:00 
						 
				 
			
				
					
						
							
							
								Jonathan G Rennison 
							
						 
					 
					
						
						
							
						
						2a13c8623c 
					 
					
						
						
							
							Revert:  4c59dfb6, move DoPaletteAnimations back into GameLoop  
						
						... 
						
						
						
						Race fix to follow 
						
						
					 
					
						2021-04-05 19:55:53 +01:00 
						 
				 
			
				
					
						
							
							
								Jonathan G Rennison 
							
						 
					 
					
						
						
							
						
						2e6dbfee05 
					 
					
						
						
							
							Merge branch 'master' into jgrpp  
						
						
						
						
					 
					
						2021-04-05 19:31:34 +01:00 
						 
				 
			
				
					
						
							
							
								Jonathan G Rennison 
							
						 
					 
					
						
						
							
						
						5e14b54a0c 
					 
					
						
						
							
							Merge branch 'master' into jgrpp  
						
						
						
						
					 
					
						2021-04-05 17:51:45 +01:00 
						 
				 
			
				
					
						
							
							
								Jonathan G Rennison 
							
						 
					 
					
						
						
							
						
						297b340697 
					 
					
						
						
							
							Revert "OpenGL: Temporarily reduce OpenGL driver priorities"  
						
						... 
						
						
						
						This reverts commit f81c71e15b 
						
						
					 
					
						2021-04-05 17:48:46 +01:00 
						 
				 
			
				
					
						
							
							
								Michael Lutz 
							
						 
					 
					
						
						
							
						
						1cd3a3b070 
					 
					
						
						
							
							Fix   #8935 : [OSX] Crash when clicking 'Save' due to wrongly-threaded OS call. ( #8944 )  
						
						
						
						
					 
					
						2021-04-05 12:18:45 +02:00 
						 
				 
			
				
					
						
							
							
								Milek7 
							
						 
					 
					
						
						
							
						
						7a886cb4d4 
					 
					
						
						
							
							Change: Do not disallow persistent buffer mapping on AMD GPUs, as it is actually faster.  
						
						
						
						
					 
					
						2021-03-25 19:37:24 +00:00 
						 
				 
			
				
					
						
							
							
								Michael Lutz 
							
						 
					 
					
						
						
							
						
						df958dc907 
					 
					
						
						
							
							Fix  f0f96e31: [OpenGL] Broken window resizing due to invalid buffer pitch on texture creation.  
						
						
						
						
					 
					
						2021-03-21 22:26:55 +01:00 
						 
				 
			
				
					
						
							
							
								frosch 
							
						 
					 
					
						
						
							
						
						0230624359 
					 
					
						
						
							
							Fix  f0f96e31: [OpenGL] warning: comparison of integer expressions of different signedness. ( #8881 )  
						
						
						
						
					 
					
						2021-03-21 18:38:51 +01:00 
						 
				 
			
				
					
						
							
							
								Michael Lutz 
							
						 
					 
					
						
						
							
						
						f0f96e3103 
					 
					
						
						
							
							Fix   #8871 : [OpenGL] Initialize all buffers after resize and clear back buffer. ( #8877 )  
						
						
						
						
					 
					
						2021-03-20 19:43:54 +01:00 
						 
				 
			
				
					
						
							
							
								Patric Stout 
							
						 
					 
					
						
						
							
						
						970fedd78c 
					 
					
						
						
							
							Add: make modal windows update more smooth  
						
						... 
						
						
						
						Basically, modal windows had their own thread-locking for what
drawing was possible. This is a bit nonsense now we have a
game-thread. And it makes much more sense to do things like
NewGRFScan and GenerateWorld in the game-thread, and not in a
thread next to the game-thread.
This commit changes that: it removes the threads for NewGRFScan
and GenerateWorld, and just runs the code in the game-thread.
On regular intervals it allows the draw-thread to do a tick,
which gives a much smoother look and feel.
It does slow down NewGRFScan and GenerateWorld ever so slightly
as it spends more time on drawing. But the slowdown is not
measureable on my machines (with 700+ NewGRFs / 4kx4k map and
a Debug build).
Running without a game-thread means NewGRFScan and GenerateWorld
are now blocking. 
						
						
					 
					
						2021-03-10 13:41:18 +01:00 
						 
				 
			
				
					
						
							
							
								sean 
							
						 
					 
					
						
						
							
						
						0464a50ab8 
					 
					
						
						
							
							Add: Display refresh rate game option ( #8813 )  
						
						
						
						
					 
					
						2021-03-09 10:22:52 +01:00 
						 
				 
			
				
					
						
							
							
								Michael Lutz 
							
						 
					 
					
						
						
							
						
						436cdf1fc8 
					 
					
						
						
							
							Fix   #8825 : [OpenGL] Don't clear cursor cache from the game loop thread.  
						
						
						
						
					 
					
						2021-03-08 21:35:35 +01:00 
						 
				 
			
				
					
						
							
							
								Patric Stout 
							
						 
					 
					
						
						
							
						
						8946b41d20 
					 
					
						
						
							
							Fix: ensure switching blitter happens in the main thread  
						
						... 
						
						
						
						This because video-drivers might need to make changes to their
context, which for most video-drivers has to be done in the same
thread as the window was created; main thread in our case. 
						
						
					 
					
						2021-03-08 19:18:55 +01:00 
						 
				 
			
				
					
						
							
							
								Patric Stout 
							
						 
					 
					
						
						
							
						
						e56d2c63c3 
					 
					
						
						
							
							Add: [Video] move GameLoop into its own thread  
						
						... 
						
						
						
						This allows drawing to happen while the GameLoop is doing an
iteration too.
Sadly, not much drawing currently can be done while the GameLoop
is running, as for example PollEvent() or UpdateWindows() can
influence the game-state. As such, they first need to acquire a
lock on the game-state before they can be called.
Currently, the main advantage is the time spend in Paint(), which
for non-OpenGL drivers can be a few milliseconds. For OpenGL this
is more like 0.05 milliseconds; in these instances this change
doesn't add any benefits for now.
This is an alternative to the former "draw-thread", which moved
the drawing in a thread for some OSes. It has similar performance
gain as this does, although this implementation allows for more
finer control over what suffers when the GameLoop takes too
long: drawing or the next GameLoop. For now they both suffer
equally. 
						
						
					 
					
						2021-03-08 19:18:55 +01:00 
						 
				 
			
				
					
						
							
							
								Michael Lutz 
							
						 
					 
					
						
						
							
						
						3a4a15cc93 
					 
					
						
						
							
							Codechange: don't set the window position when changing blitter  
						
						... 
						
						
						
						There really is no need to make an extra call to the OS in
these cases. 
						
						
					 
					
						2021-03-08 19:18:55 +01:00 
						 
				 
			
				
					
						
							
							
								Patric Stout 
							
						 
					 
					
						
						
							
						
						b9eac7c6dc 
					 
					
						
						
							
							Codechange: remove the unused lock around Blitter  
						
						
						
						
					 
					
						2021-03-08 19:18:55 +01:00