Commit Graph

24722 Commits

Author SHA1 Message Date
Léo Lam b08653d69d Common: Add a std::optional implementation
std::optional makes a few things a bit neater and less error prone.
However, we still cannot use C++17 (unfortunately), so this commit
adds an implementation of std::optional that we can use right now.

Based on https://github.com/tensorflow/tensorflow/blob/master/tensorflow/core/lib/gtl/optional.h
which seems to be fairly similar to C++17's <optional> and standards
compliant. It's one of the few implementations that handle propagating
type traits like copy constructibility, just like libc++/libstdc++.
2017-06-03 12:36:24 +02:00
shuffle2 3443454ba2 Merge pull request #5271 from JosJuice/allow-aslr
Allow (but don't force) ASLR
2017-06-02 21:53:02 -07:00
shuffle2 0b63fcc78f Merge pull request #5505 from spycrab/wx_stars
Wx: Implement new, themed stars
2017-06-02 18:44:48 -07:00
spycrab 1d8ba6f865 Wx: Implement new, themed stars 2017-06-02 22:38:56 +02:00
Leo Lam 93020f6c1b Merge pull request #5509 from ligfx/qtshutdowncontrollers
MainWindow: shutdown different input interfaces
2017-06-02 22:08:53 +02:00
shuffle2 1eac267930 Merge pull request #5511 from sepalani/revert-addrinfo
IP/Top: Properly fix GetAddrInfo
2017-06-01 09:11:49 -07:00
Sepalani 5e4986d835 IP/Top: Properly fix GetAddrInfo 2017-06-01 17:05:12 +01:00
shuffle2 80732f959b Merge pull request #5506 from sepalani/getaddrinfo
IP/Top: Fix GetAddrInfo written socket
2017-06-01 07:24:59 -07:00
Sepalani 726d8de16c IP/Top: Fix GetAddrInfo written socket 2017-06-01 15:17:59 +01:00
Michael Maltese 040bddafa6 MainWindow: shutdown different input interfaces
`MainWindow` initializes a number of input interfaces but never shuts
them down. This was causing a crash-after-exit on macOS where the
ControllerInterface backend stores a `std::thread` object in a static
variable and only stops it when ControllerInterface::Shutdown is called.
2017-05-31 21:14:55 -07:00
Michael Maltese 87a74ca3ae MappingButton: remove unused includes 2017-05-31 01:17:33 -07:00
Michael Maltese 046c6f468f MappingButton: derive from ElidedButton 2017-05-31 01:17:33 -07:00
Michael Maltese b378ffb4ec MappingButton: don't set text twice in constructor 2017-05-31 01:17:33 -07:00
Michael Maltese 07c90bed08 DolphinQt2: add QtUtils/ElidedButton 2017-05-31 01:17:33 -07:00
Leo Lam 6dc3b2e8bc Merge pull request #5502 from spycrab/qt_stars
Qt: Implement new, themed stars
2017-05-31 09:59:02 +02:00
spycrab 118e90ec6e Qt: Use new, themed rating stars 2017-05-31 05:50:37 +02:00
Anthony 25f24d32ff Merge pull request #5463 from spycrab/qt_hidpi
Qt: Fix HiDPI icon scaling
2017-05-30 14:57:05 -07:00
spycrab 1737e81b16 Qt: Fix HiDPI icon scaling 2017-05-30 22:42:21 +02:00
Markus Wick 7d27fb4067 Merge pull request #5501 from iwubcode/d3d_apply_state_loop
Fix for loop in D3D Renderer ApplyState function
2017-05-30 13:32:23 +02:00
iwubcode 1b685bcde9 Fix for loop in D3D Renderer ApplyState function 2017-05-29 23:32:32 -05:00
Michael Maltese 1a7210aa74 GameListModel: provide Qt::InitialSortOrderRole for sorting
Fixes regression where pixmap columns can't be sorted by default.
2017-05-29 17:32:40 -07:00
Michael Maltese 8bbc31e0a2 GameList: sort case-insensitively 2017-05-29 17:32:40 -07:00
Michael Maltese 051cbf1962 GameListModel: invert role-column choice tree 2017-05-29 17:32:40 -07:00
Michael Maltese 0cc88342d6 DolphinQt2: add indentation back to ControllerWindow 2017-05-29 17:29:04 -07:00
Michael Maltese cb235cf142 DolphinQt2: use GridLayout for ControllersWindow
FormLayout is not intended for this sort of dialog:

> QFormLayout is a convenience layout class that lays out its children
> in a two-column form. The left column consists of labels and the right
> column consists of "field" widgets (line editors, spin boxes, etc.).
2017-05-29 17:29:03 -07:00
Leo Lam 1afb0a134d Merge pull request #5497 from sepalani/getaddrinfo
IP/Top: Use a constant for addrinfo size
2017-05-29 22:39:33 +02:00
Leo Lam c76335eaf1 Merge pull request #5484 from BhaaLseN/permissive
Windows: Enable MSVC Standards Conformance (/permissive-)
2017-05-29 22:29:44 +02:00
Sepalani e90404a4f6 IP/Top: Use a constant for addrinfo size 2017-05-29 21:00:22 +01:00
JosJuice 9b8f57725f Automatic translation resources sync with Transifex 2017-05-29 18:42:46 +02:00
Leo Lam 5d7f4cb9c8 Merge pull request #5496 from spycrab/qt_fixtheme
Qt: Fix GetThemeDir()
2017-05-29 18:33:56 +02:00
spycrab 845cc68bba Qt: Fix HiDPI icon scaling 2017-05-29 13:52:01 +02:00
shuffle2 c8f9900d26 Merge pull request #5495 from Tilka/gamelist
WX: improve game list reload speed
2017-05-28 22:03:38 -07:00
Anthony 57898654b9 Merge pull request #5236 from lioncash/d3d
D3D/Render: Minor cleanup
2017-05-28 20:46:31 -07:00
Lioncash d6b6b070bc D3D/Render: Get rid of undefined behavior in Create3DVisionTexture
pSysMem is of the type const void* -- because of this, it makes the
original delete[] call undefined behavior, as deleting a void pointer is
undefined behavior.

Also punning types into existence, like what was done for the stereo
image header is undefined behavior as well. The proper way to do this is
to either manually add all individual bytes manually, or memcpy the
struct into memory.

As we want to deallocate the memory before returning, and because
pSysMem is a const void*, we keep a unique_ptr to the data and just pass
pSysMem a raw pointer to the data.
2017-05-28 23:28:00 -04:00
Lioncash 278e406f0b D3D/Render: Use std::array where applicable 2017-05-28 23:28:00 -04:00
Lioncash 0c3958bbe5 D3D/Render: Join variable with declaration 2017-05-28 23:27:59 -04:00
Lioncash 3ee447e5f7 D3D/Render: Get rid of unnecessary casts 2017-05-28 23:27:59 -04:00
Lioncash ba5b215c42 D3D/Render: Mark translation unit local variables as static 2017-05-28 23:27:59 -04:00
Tillmann Karras 5c08b1d704 WX: improve game list reload speed
When loading a big game list, this eliminates the long delay after the
progress dialog disappears.
2017-05-28 23:02:03 +01:00
Tillmann Karras 599774aacc Qt2: remove unused variables 2017-05-28 23:01:41 +01:00
Leo Lam 4d0f458f2f Merge pull request #5494 from leoetlino/file-selector
WX: Minor file selector fixes
2017-05-28 20:24:17 +02:00
Léo Lam d5e397aa14 WX: Add dff to the file selector filter description 2017-05-28 19:08:24 +02:00
Léo Lam 473f90c08f WX: Remove .tmd from the file selector filter
No idea why it was in the whitelist.
2017-05-28 19:07:12 +02:00
BhaaL e37ab851ad add the same flags to CMake 2017-05-28 13:37:34 +02:00
BhaaL 076d3cd639 enable latest C++ Standard features (/std:c++latest) 2017-05-28 13:37:33 +02:00
Arkadiy Shapkin dda7e2cc2c VS2015/2017 build fix and enable C++11 features
Patch by KindDragon from google/googletest#811
2017-05-28 13:37:33 +02:00
BhaaL 0fcc625b56 clean up Base.props
/permissive- automatically enables /Zc:rvalueCast and /Zc:strictStrings
2017-05-28 13:37:32 +02:00
BhaaL ec8f6e6d26 enable MSVC Standards Conformance (/permissive-) 2017-05-28 13:37:31 +02:00
BhaaL 072c161445 upgrade to Windows SDK 10.0.15063.0
this is required for /permissive- to work, because some headers in the
Windows SDK use Microsoft extensions that are not allowed in standards mode
2017-05-28 13:37:31 +02:00
Mat M 9fa1e8f45f Merge pull request #5493 from lioncash/include
CubebStream: Add missing <vector> include
2017-05-28 02:08:35 -04:00