summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-02-19Add: draw the screen at a steady pace, also during fast-forwardPatric Stout
During fast-forward, the game was drawing as fast as it could. This means that the fast-forward was limited also by how fast we could draw, something that people in general don't expect. To give an extreme case, if you are fully zoomed out on a busy map, fast-forward would be mostly limited because of the time it takes to draw the screen. By decoupling the draw-tick and game-tick, we can keep the pace of the draw-tick the same while speeding up the game-tick. To use the extreme case as example again, if you are fully zoomed out now, the screen only redraws 33.33 times per second, fast-forwarding or not. This means fast-forward is much more likely to go at the same speed, no matter what you are looking at.
2021-02-19Codechange: track _realtime_tick more accuratePatric Stout
_realtime_tick was reset every time the diff was calculated. This means if it would trigger, say, every N.9 milliseconds, it would after two iterations already drift a millisecond. This adds up pretty quick.
2021-02-19Codechange: switch all video drivers to std::chrono for keeping timePatric Stout
On all OSes we tested the std::chrono::steady_clock is of a high enough resolution to do millisecond measurements, which is all we need. By accident, this fixes a Win32 driver bug, where we would never hit our targets, as the resolution of the clock was too low to do accurate millisecond measurements with (it was ~16ms resolution instead).
2021-02-19Codechange: use std::chrono to track time in modal windowsPatric Stout
Adding to _realtime_ticks in a random place is a bit of a hack, and by using modern C++, we can avoid this hack.
2021-02-19Add: Indonesia Rupiah as in-game currency (#8616)Tegas Aziz
The exchange rate is actually more like 19,000, but OpenTTD doesn't handle such high exchange rates kindly.
2021-02-19Feature: Object class selection string filtering (#8603)Didac Perez Parera
2021-02-19Codechange: Apply coding styleSamuXarick
2021-02-18Update: Translations from eintstranslators
russian: 1 change by Ln-Wolf polish: 2 changes by yazalo
2021-02-18Fix cc39fa9: New orders are non-stop by default (#8689)Tyler Trahan
2021-02-18Fix: Whole status bar instead of money widget refreshed on money change (#8692)Jonathan G Rennison
This could result in the rest of the status bar being redrawn unnecessarily frequently
2021-02-18Fix: Unnecessary status bar redraws when there is no news to show (#8691)Jonathan G Rennison
InvalidateWindowData with mode SBI_NEWS_DELETED was called on the status bar when checking for a new item of news to be shown in the ticker, even if there is no news queued and no change occurs.
2021-02-18Fix: Autorenew failure advice due to bad refit being shown to all companies ↵Jonathan G Rennison
(#8681)
2021-02-18Change: Darken graph grid lines for legibility (#8690)Tyler Trahan
2021-02-17Change: "(Business/Chair)man" to "...person" (#8659)Wuzzy
2021-02-17Fix: [SDL2] simplify what to redraw to prevent tearing (#8685)Patric Stout
When there are a lot of rects to redraw, of which one of the last ones is almost the full screen, visual tearing happens over the vertical axis. This is most visible when scrolling the map. This can be prevented by using less rects. To simplify the situation, and as solutions like OpenGL need this anyway, keep a single rect that shows the biggest size that updates everything correctly. Although this means it needs a bit more time redrawing where it is strictly seen not needed, it also means less commands have to be executed in the backend. In the end, this is a trade-off, and from experiments it seems the approach of this commit gives a better result.
2021-02-17Fix #8676, a2c3197f: GUI-visible settings may not be part of misc settings.Michael Lutz
2021-02-17Codechange: Allow early-load settings that are not misc settings.Michael Lutz
2021-02-17Update: Translations from eintstranslators
german: 2 changes by Wuzzy2 slovak: 5 changes by FuryPapaya dutch: 4 changes by LouisDeconinck spanish: 1 change by MontyMontana
2021-02-17Fix 52317bb7: [SDL2] ensure we don't try to blit out of bounds (#8684)Patric Stout
During resizing, there can still be dirty-rects ready to blit based on the old dimensions. X11 with shared memory enabled crashes if you try to do this. So, instead, if we resize, reset the dirty-rects. This is fine, as moments later we mark the whole (new) screen as dirty anyway.
2021-02-16Fix: framerate window showed a slightly higher rate than actually measured ↵Patric Stout
(#8682) The first point was counted, but also initialized as "last". As such, it didn't add to "total", but did add to "count", which made the "count" 1 more than the total actually represents.
2021-02-16Update: Translations from eintstranslators
korean: 2 changes by telk5093 indonesian: 11 changes by dimaspaf14 russian: 2 changes by Ln-Wolf finnish: 3 changes by hpiirai french: 4 changes by glx22
2021-02-15Update: Translations from eintstranslators
korean: 2 changes by telk5093 german: 56 changes by Wuzzy2 finnish: 2 changes by hpiirai catalan: 2 changes by J0anJosep polish: 9 changes by yazalo
2021-02-15Fix: [Actions] Use vcpkg to provide libpng on macOSOwen Rudge
2021-02-15Add: Allow translation of "(Directory)" and "(Parent directory)"glx22
2021-02-14Fix: Stopped ships shouldn't block depots (#8578)Tyler Trahan
2021-02-14Feature: [GS] Allow non-question type windows to have no buttonsdP
2021-02-14Fix: VkMapping declarations violated C++ ODR rule.milek7
2021-02-14Change: move the 'road drive side' selection to settings tree, and give it ↵frosch
the same 'basic' visibilty as 'signal side'.
2021-02-14Change: move townname generator selection to mapgen GUI.frosch
2021-02-14Codechange: move non-GUI code to non-GUI source files.frosch
2021-02-14Codechange: turn a constant variable into a real constant.frosch
2021-02-14Codechange: minor rearrangement of settings in random map and heightmap GUI.frosch
2021-02-14Change: move the 'tree placer algorithm' selection to the settings tree ↵frosch
window, and give it the same 'basic' visibility as 'in-game tree placement'.
2021-02-14Doc: Add labels to landscape grid description. (#8452)Joan Josep
2021-02-14Update: Translations from eintstranslators
slovak: 13 changes by FuryPapaya catalan: 7 changes by J0anJosep french: 1 change by arikover
2021-02-14Add: [OSX] Automatic zoom level suggestion for Cocoa video driver.Michael Lutz
2021-02-14Add: [Win32] Automatic zoom level suggestion for Win32 video driver.Michael Lutz
The zoom level suggestion is based on the DPI scaling set in Windows. We use 150% scaling as the threshold for 2X zoom and 300% scaling as the threshold for 4X zoom.
2021-02-14Codechange: [Win32] Increase SDK version for 32-bit target.Michael Lutz
Use the same Windows XP target as for 64-bit. Current MSVC version will not produce a binary that works on anything earlier anyway.
2021-02-14Codechange: Re-init GUI zoom only when really changed.Michael Lutz
2021-02-14Feature: Automatic UI and font zoom levels when supported by the OS.Michael Lutz
2021-02-14Codechange: Make the settings for min/max zoom early load settings.Michael Lutz
2021-02-14Fix 9c872192: [OSX] Clear mouse button emulation flag.Michael Lutz
2021-02-14Add: [OSX] Setting to disable HiDPI graphics rendering.Michael Lutz
2021-02-14Change: [OSX] Render screen in full native resolution on HiDPI displays.Michael Lutz
2021-02-14Codechange: Consistently use screen size and not driver resolution for ↵Michael Lutz
determining window sizes.
2021-02-14Change: [OSX] When auto-detecting a font, try for sans-serif first.Michael Lutz
On a display, especially with small fonts or low pixel sizes, sans-serif fonts are usually easier to read than serif fonts.
2021-02-14Add: [OSX] Native font rendering without using FreeType.Michael Lutz
2021-02-14Codechange: Replace magic numbers by constants.Michael Lutz
2021-02-13Fix #8620: Scale spacing between date & news in history window according to ↵Charles Pigott
font scaling
2021-02-13Fix #8625: Wrong ending year was displayed in highscore tableCharles Pigott