summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2021-02-13Codechange: [OSX] Move some things from video driver to our NSView.Michael Lutz
2021-02-13Codechange: [OSX] Use newer mouse tracking API.Michael Lutz
2021-02-13Codechange: [OSX] Split drawing into its own subview.Michael Lutz
This allows the drawing backend code to be independent of any event or command handling.
2021-02-13Codechange: [OSX] Drain autoreleased objects in each game loop cycle.Michael Lutz
2021-02-13Codechange: [OSX] Split Window and back buffer creation in Cocoa video driver.Michael Lutz
2021-02-13Cleanup: [OSX] Doxygen comment style in video driver.Michael Lutz
2021-02-13Codechange: [OSX] Inline some functions that are used in only one place.Michael Lutz
2021-02-13Codechange: [OSX] Replace #define with modern code.Michael Lutz
2021-02-13Codechange: [OSX] Fold remaining Cocoa video subdriver into the main driver.Michael Lutz
2021-02-13Change: [OSX] Replace screen resolution list with suggested window sizes.Michael Lutz
We never change the real screen resolution on OSX. As such, offering a list of resolutions is pointless. Instead of that, offer the user a list of commonly used window sizes up to the current screen size.
2021-02-13Codechange: [OSX] There is only one subdriver left, remove virtual dispatch.Michael Lutz
2021-02-13Codechange: Move Fontconfig-specific code to a seperate file.Michael Lutz
2021-02-13Codechange: [OSX] Move OSX-specific font code to a separate file.Michael Lutz
2021-02-13Codechange: [Win32] Move Win32-specific font code to a seperate file.Michael Lutz
2021-02-13Codechange: Make OS font handle of the FontCache read-only.Michael Lutz
2021-02-13Codechange: OS-specific data for font search is not used outside of searching.Michael Lutz
2021-02-13Codechange: Remove all remaining uses of cpp_offset.Michael Lutz
2021-02-13Codechange: Don't use cpp_offsetof in the save/load code.Michael Lutz
Many of the member variables that are used in save/load are inside types that are not standard layout types. Using pointer arithmetics to determine addresses of members inside types that are not standard layout is generally undefined behaviour. If we'd use C++17, it is conditionally supported, which means each compiler may or may not support it. And even then using it for individual array elements is syntactically not supported the the standard offsetof function. Unfortunately, the trickery employed for saving linkgraph settings causes quite some clutter in the settings ini files.
2021-02-13Codechange: Don't use cpp_offsetof in the TTO/TTD savegame loader.Michael Lutz
Many of the member variables that are used in the oldloader are inside types that are not standard layout types. Using pointer arithmetics to determine addresses of members inside types that are not standard layout is generally undefined behaviour. If we'd use C++17, it is conditionally supported, which means each compiler may or may not support it. And even then using it for individual array elements is syntactically not supported the the standard offsetof function.
2021-02-13Update: Translations from eintstranslators
portuguese (brazilian): 36 changes by AKANexus
2021-02-13Fix: Desert/rainforest data coordinate 'y' is off by 1 when their 'x' ↵SamuXarick
coordinate is negative
2021-02-13Change: Use a more specific error message when attempting to bulldoze your ↵Charles Pigott
own HQ
2021-02-13Fix f1f281b31: [Win32] MinGW doesn't know timeapi.hglx22
2021-02-13Codechange: Implement a constructor for CurrencySpecglx22
2021-02-13Codechange: [NewGRF] Make it more explicit which parts of the TTD vehicle ↵Johannes E. Krause
structure (var 80+) are not implemented
2021-02-12Update: Translations from eintstranslators
spanish (mexican): 7 changes by absay dutch: 7 changes by Afoklala french: 7 changes by arikover
2021-02-11Change: [SDL2] Remove unneeded delay of redrawing the screenPatric Stout
In testing, I could find no reason why this statement is here. The comment is rather unclear (it states what it does, but not why it would be needed). This line of code was introduced with f4f40448, which gives no further insight on why it would be needed to have it here. As such, let's remove it and see if anyone else reports any problems with it. If so, this commit can be reverted and a more clear comment should be added what this line of code is dealing with (the WHY, not the WHAT).
2021-02-11Codechange: [SDL2] Don't use globals if we can do with localsPatric Stout
2021-02-11Codechange: [SDL2] Name paint function Paint(), like other drivers doPatric Stout
This reduces confusion when reading different drivers.
2021-02-11Fix 30e69c51: palette was not marked dirty when creating a newPatric Stout
This means the code depended that the caller did this for us before MakePalette() is executed, which is neither a requirement nor a promise the code makes.
2021-02-11Update: Translations from eintstranslators
korean: 7 changes by telk5093 russian: 11 changes by Ln-Wolf finnish: 7 changes by hpiirai
2021-02-10Feature: Remove all industries button in scenario editor (#8550)Kuhnovic
2021-02-09Fix: [Win32] Set minimum resolution for timers to 1ms. (#8660)Loïc Guilloux
2021-02-08Fix: [Emscripten] open links in browser (#8655)embeddedt
2021-02-08Fix: mention our websites with https:// (instead of http://) (#8657)Patric Stout
It is 2021. Nobody should advertise http anymore. Not even us.
2021-02-07Change: [CMake] Bump minimum version to 3.9glx22
2021-02-07Fix 81d335b081: Use non-pulsating red highlight for coverage (#8622)Loïc Guilloux
2021-02-07Fix 0125892: Don't crash when towns upgrade road tiles during expansion (#8651)Matt Kimber
2021-02-06Fix #8029: [SDL2] disable draw-thread on wayland SDL video driver (#8648)Patric Stout
When the wayland SDL video driver is used, an EGL context is created in the main thread. It is not allowed to update this context from another thread, which is exactly what our draw-thread is trying. The other solution would be to move all of SDL into the draw-thread, but that would introduce a whole scala of different problems. The wayland SDL backend is significantly faster than the X11 SDL backend, but there is a performance hit nevertheless.
2021-02-05Codechange: Apply coding style (#8640)SamuXarick
* Fix: Missing or needed spaces * Codechange: Remove space * Codechange: Remove space * Codechange: More missing spaces * Codechange: Missing spaces * Codechange: Remove space * Codechange: Remove space
2021-02-02Update: Translations from eintstranslators
german: 4 changes by Wuzzy2
2021-02-02Fix: [CMake] Language files should depend on english.txtglx22
2021-02-01Update: Translations from eintstranslators
estonian: 110 changes by siimsoni
2021-01-31Update: Translations from eintstranslators
estonian: 17 changes by siimsoni german: 410 changes by Wuzzy2
2021-01-31Fix 2db88953: default Network Server List sorter put compatible servers in ↵Patric Stout
wrong order (#8626) If a server is compatible, it falls back to sorting by clients. This used to be in reverse, so full servers are on top. With the codechange commit, this was removed by accident, and as such empty servers were on top. This is silly.
2021-01-31Fix: don't walk out of the map when trying to build tunnels (#8600)Tyler Trahan
2021-01-30Codechange: [SDL2] Use MakeDirty() to force a redrawPatric Stout
The original code is "strictly correct", but just reads really weird, and we use MakeDirty() in several other places instead too.
2021-01-30Codechange: [SDL2] Rework how palette is updatedPatric Stout
It now follows more what the Win32 driver does, and has far less exceptions and special casing. MakePalette creates the Palette and prepares surface. UpdatePalette updates the Palette. CheckPaletteAnim checks if UpdatePalette needs to be called and marks the whole screen dirty so DrawSurfaceToScreen will do a full redraw.
2021-01-30Fix: [SDL2] Display why SDL_CreateWindow() failed in case it doesPatric Stout
All SDL_NNN errors print SDL_GetError, except for this one place.
2021-01-30Codechange: [SDL2] Split away CreateMainWindow from CreateMainSurfacePatric Stout
This makes the code a bit more readable, as both intentions are more clear, and there is less nesting in the main function.