Minor cleanups.

This commit is contained in:
byuu 2019-07-28 06:13:48 +09:00
parent e6d7df41da
commit 6b284bb247
4 changed files with 20 additions and 2 deletions

View File

@ -31,7 +31,7 @@ using namespace nall;
namespace Emulator {
static const string Name = "bsnes";
static const string Version = "107.17";
static const string Version = "107.18";
static const string Author = "byuu";
static const string License = "GPLv3";
static const string Website = "https://byuu.org";

View File

@ -164,7 +164,7 @@ auto InputMapping::displayName() -> string {
//show device IDs to distinguish between multiple joypads
path.append("(", hex(mapping.device->id()), ")");
}
if(mapping.device->name() != "Keyboard") {
if(mapping.device->name() != "Keyboard" && mapping.device->name() != "Mouse") {
//keyboards only have one group; no need to append group name
path.append(".", mapping.device->group(mapping.group).name());
}

View File

@ -263,6 +263,12 @@ auto Presentation::create() -> void {
auto Presentation::updateProgramIcon() -> void {
presentation.iconLayout.setVisible(!emulator->loaded() && !settings.video.snow);
presentation.layout.resize();
//todo: video.clear() is not working on macOS/OpenGL 3.2
if(auto [output, length] = video.acquire(1, 1); output) {
*output = 0;
video.release();
video.output();
}
}
auto Presentation::updateStatusIcon() -> void {

View File

@ -1,10 +1,20 @@
#if defined(Hiro_Application)
#include <nall/terminal.hpp>
namespace hiro {
auto Log_Ignore(const char* logDomain, GLogLevelFlags logLevel, const char* message, void* userData) -> void {
}
auto Log_Filter(const char* logDomain, GLogLevelFlags logLevel, const char* message, void* userData) -> void {
//FreeBSD 12.0: caused by gtk_combo_box_size_allocate() internal function being defective
if(string{message}.find("gtk_widget_size_allocate():")) return;
//prin all other messages
print(terminal::color::yellow("hiro: "), logDomain, "::", message, "\n");
}
auto pApplication::modal() -> bool {
return Application::state().modal > 0;
}
@ -92,6 +102,8 @@ auto pApplication::initialize() -> void {
//prevent useless terminal messages:
//GVFS-RemoteVolumeMonitor: "invoking List() failed for type GProxyVolumeMonitorHal: method not implemented"
g_log_set_handler("GVFS-RemoteVolumeMonitor", G_LOG_LEVEL_MASK, Log_Ignore, nullptr);
//Gtk: gtk_widget_size_allocate(): attempt to allocate widget with (width or height < 1)
g_log_set_handler("Gtk", G_LOG_LEVEL_MASK, Log_Filter, nullptr);
//set WM_CLASS to Application::name()
auto name = Application::state().name ? Application::state().name : string{"hiro"};