provide control over use-cocoa-invalidation
This commit is contained in:
parent
6c38e0a4e3
commit
d57ce0eba1
@ -50,6 +50,10 @@
|
||||
|
||||
#include "pbd/i18n.h"
|
||||
|
||||
#ifdef __APPLE__
|
||||
extern void use_cocoa_invalidation (int); // cocoacarbon.mm
|
||||
#endif
|
||||
|
||||
using namespace Gtk;
|
||||
using namespace Gtkmm2ext;
|
||||
using namespace ARDOUR;
|
||||
@ -501,6 +505,10 @@ ARDOUR_UI::parameter_changed (std::string p)
|
||||
} else if (p == "no-strobe") {
|
||||
stop_clocking ();
|
||||
start_clocking ();
|
||||
} else if (p == "use-cocoa-invalidation") {
|
||||
#ifdef __APPLE__
|
||||
use_cocoa_invalidation (UIConfiguration::instance().get_use_cocoa_invalidation());
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -201,3 +201,10 @@ query_darwin_version ()
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
|
||||
void
|
||||
use_cocoa_invalidation (int yn)
|
||||
{
|
||||
gdk_quartz_set_use_cocoa_invalidation (yn);
|
||||
std::cerr << "cocoa invalidation: " << yn << std::endl;
|
||||
}
|
||||
|
@ -3096,6 +3096,18 @@ These settings will only take effect after %1 is restarted.\n\
|
||||
add_option (_("Appearance/Quirks"), bo);
|
||||
#endif
|
||||
|
||||
#ifdef __APPLE__
|
||||
BoolOption* bco = new BoolOption (
|
||||
"use-cocoa-invalidation",
|
||||
_("Use macOS to determine GUI redraw areas"),
|
||||
sigc::mem_fun (UIConfiguration::instance(), &UIConfiguration::get_use_cocoa_invalidation),
|
||||
sigc::mem_fun (UIConfiguration::instance(), &UIConfiguration::set_use_cocoa_invalidation)
|
||||
);
|
||||
|
||||
Gtkmm2ext::UI::instance()->set_tip (bco->tip_widget(), string_compose (_("When enabled, macOS is in charge of what areas of the GUI are redrawn.\nWhen disabled, %1 manages this by itself"), PROGRAM_NAME));
|
||||
add_option (_("Appearance/Quirks"), bco);
|
||||
#endif
|
||||
|
||||
add_option (_("Appearance/Quirks"), new OptionEditorBlank ());
|
||||
#if (!defined USE_CAIRO_IMAGE_SURFACE || defined CAIRO_SUPPORTS_FORCE_BUGGY_GRADIENTS_ENVIRONMENT_VARIABLE || defined __APPLE__)
|
||||
add_option (_("Appearance"), new OptionEditorHeading (_("Graphics Acceleration")));
|
||||
|
@ -157,6 +157,7 @@ UI_CONFIG_VARIABLE (int, max_note_height, "max-note-height", 20)
|
||||
UI_CONFIG_VARIABLE (bool, prefer_tap_tempo, "prefer-tap-tempo", false)
|
||||
UI_CONFIG_VARIABLE (bool, sandbox_all_lua_scripts, "sandbox-all-lua-scripts", false)
|
||||
UI_CONFIG_VARIABLE (bool, update_action_scripts, "update-action-scripts", true)
|
||||
UI_CONFIG_VARIABLE (bool, use_cocoa_invalidation, "use-cocoa-invalidation", false)
|
||||
|
||||
/* these are visibility-type selections in the New Track dialog that we should make persistent for the user's choices */
|
||||
UI_CONFIG_VARIABLE (bool, show_on_cue_page, "show-on-cue-page", true)
|
||||
|
Loading…
Reference in New Issue
Block a user