Show video backend and audio engine in title bar.

Fixes issue 6276.
The evdpy should be used for the X11 window creation and in the event
thread.  dpy should only be used for GL.
Apparently we can't trust m_strVideoBackend on osx.
Make EGL and X11 dpy/evdpy usage consistent.  EGL needs testing.
Make sure the EGL evdpy is closed.
Merge branch 'fix-linux-win-resize'
﻿Fixing or disabling the "Download Codes (WiiRD Database)" button problem

The "Download Codes (WiiRD Database)" button is enabled (and its click return silently without an effect) when "Tools → Cheats Manager" is opened when there's a running emulation for which there's no "[Gecko]" ini section, confusing the user about the reason for not downloading codes or showing an error when there's no running emulation

Solution

when there's a running emulation: fix the button

when there's no running emulation: disable the button (to indicate to the user that this button must be clicked elsewhere, in the ISO settings dialog, the user will realise or remember)
Don't exit when bluetooth support is not available on Windows.

Fixes running Dolphin in Wine and on regular Windows setups where bthprops.cpl is not available.

Fixes issue 6283.
Adding option to save and load state by timestamp

Load by timestamp: load last state is expanded from 1 to 8 actions, for newest to oldest state

Save by timestamp: overwrite the oldest state (or use an empty slot if available)

Adding remaining hardcoded state keys to hotkey dialog

Adding a program exit hotkey
Merge remote-tracking branch 'John-Peterson/state'
Added Dance Mat support for the Family Trainer/Active Life series.

Select the dance mat via Configure > Gamecube > Port 1 > Dance Mat

The dance mat is mapped to the GC Pad:

D-Pad Up = Blue Arrow Up
D-Pad Down = Blue Arrow Down
D-Pad Left = Blue Arrow Left
D-Pad Right = Blue Square
Y Button = Orange Arrow Up
A Button = Orange Arrow Down
X Button = Orange Arrow Right
B Button = Oranage Square
Apply color mask when alpha test parameters change. Required to make the changes in revision be706a397720 work properly.

Fixes issue 6080.
Fix a bug where FIFO recording could not work.

Example (in step by step explanation):

1. Run Dolphin.

2. Go to Tools -> Fifo Player

3. Go to the Record tab and hit record and then stop without a game loaded.

The button is now disabled and will not become active again for the whole time that Dolphin is running. Dolphin must be closed and then re-opened in order to use it again. This fixes that.

I've tested it with multiple conditions to make sure this doesn't beef anything else related to the Fifo Player.

ie)

- Record then Stop without a game loaded (multiple times)
- Record then Stop with a game loaded (multiple times, as well as testing playback. All of which work fine).
Display the initial number of frames that are to be recorded in the Fifo Player.

Before this commit, nothing would would be displayed in the "Frames to Record" text control.

This fixes that by setting it to what m_FramesToRecord is initially set to, which is 1 (at the time of this commit).
Dammit Ctrl-Z. Restore a wxSpinCtrl parameter that accidentally got removed in the last commit.
Clear the texture cache when a new dol is loaded via ES_LAUNCH.  Fixes the black screen in The House of the Dead 2.
Abbreviated some of the information in the window titlebar.
GCMemcard: Initialize the current/previous DIR BAT pointers when creating a new memory card fixes issue 6288
Immediately process ARAM DMA transfers if they are 1 block in length.  Fixes the teleportation in Beyond Good and Evil.

Fixes issue 6289.
Forced an exception check on short ARAM DMA transfers.
ogl: report shader compilation issues in the same way as other backends