diff --git a/docs/en/MAGIC-API.txt b/docs/en/MAGIC-API.txt
index ea16632f5..193aaa467 100644
--- a/docs/en/MAGIC-API.txt
+++ b/docs/en/MAGIC-API.txt
@@ -191,6 +191,8 @@ Magic Tool Plugin API Documentation
features relevant to Magic tools which have been disabled in this
session. Test using the C bitwise 'and' operator, '&'. The
features are defined in tp_magic_api.h:
+ * MAGIC_FEATURE_CONTROL: Magic tool controls (paint vs
+ fullscreen) (--nomagiccontrols)
* MAGIC_FEATURE_SIZE: Magic tool size (--nomagicsizes)
Your Magic tool(s) may wish to react differently depending on
whether one or more features have been disabled. (For example, the
diff --git a/docs/en/html/MAGIC-API.html b/docs/en/html/MAGIC-API.html
index 4f51c6f18..d4b3ec8dd 100644
--- a/docs/en/html/MAGIC-API.html
+++ b/docs/en/html/MAGIC-API.html
@@ -289,6 +289,8 @@
Note: Called once by Tux Paint, at startup. It is called after "api_version()", if Tux Paint believes your plugin to be compatible.
The disabled_features value contains bits set for any Tux Paint features relevant to Magic tools which have been disabled in this session. Test using the C bitwise 'and' operator, '&'. The features are defined in tp_magic_api.h:
+ -
+
MAGIC_FEATURE_CONTROL: Magic tool controls (paint vs fullscreen) (--nomagiccontrols)
-
MAGIC_FEATURE_SIZE: Magic tool size (--nomagicsizes)
diff --git a/docs/es_ES.UTF-8/MAGIC-API.txt b/docs/es_ES.UTF-8/MAGIC-API.txt
index c48d82995..1059a085b 100644
--- a/docs/es_ES.UTF-8/MAGIC-API.txt
+++ b/docs/es_ES.UTF-8/MAGIC-API.txt
@@ -191,6 +191,8 @@ Magic Tool Plugin API Documentation
features relevant to Magic tools which have been disabled in this
session. Test using the C bitwise 'and' operator, '&'. The
features are defined in tp_magic_api.h:
+ * MAGIC_FEATURE_CONTROL: Magic tool controls (paint vs
+ fullscreen) (--nomagiccontrols)
* MAGIC_FEATURE_SIZE: Magic tool size (--nomagicsizes)
Your Magic tool(s) may wish to react differently depending on
whether one or more features have been disabled. (For example, the
diff --git a/docs/es_ES.UTF-8/html/MAGIC-API.html b/docs/es_ES.UTF-8/html/MAGIC-API.html
index 300f4876b..e3b308b1b 100644
--- a/docs/es_ES.UTF-8/html/MAGIC-API.html
+++ b/docs/es_ES.UTF-8/html/MAGIC-API.html
@@ -289,6 +289,8 @@
Note: Called once by Tux Paint, at startup. It is called after "api_version()", if Tux Paint believes your plugin to be compatible.
The disabled_features value contains bits set for any Tux Paint features relevant to Magic tools which have been disabled in this session. Test using the C bitwise 'and' operator, '&'. The features are defined in tp_magic_api.h:
+ -
+
MAGIC_FEATURE_CONTROL: Magic tool controls (paint vs fullscreen) (--nomagiccontrols)
-
MAGIC_FEATURE_SIZE: Magic tool size (--nomagicsizes)
diff --git a/docs/fr_FR.UTF-8/MAGIC-API.txt b/docs/fr_FR.UTF-8/MAGIC-API.txt
index 5ebbb160f..607ff530a 100644
--- a/docs/fr_FR.UTF-8/MAGIC-API.txt
+++ b/docs/fr_FR.UTF-8/MAGIC-API.txt
@@ -191,6 +191,8 @@ Magic Tool Plugin API Documentation
features relevant to Magic tools which have been disabled in this
session. Test using the C bitwise 'and' operator, '&'. The
features are defined in tp_magic_api.h:
+ * MAGIC_FEATURE_CONTROL: Magic tool controls (paint vs
+ fullscreen) (--nomagiccontrols)
* MAGIC_FEATURE_SIZE: Magic tool size (--nomagicsizes)
Your Magic tool(s) may wish to react differently depending on
whether one or more features have been disabled. (For example, the
diff --git a/docs/fr_FR.UTF-8/html/MAGIC-API.html b/docs/fr_FR.UTF-8/html/MAGIC-API.html
index b17eaf89f..2a8a48245 100644
--- a/docs/fr_FR.UTF-8/html/MAGIC-API.html
+++ b/docs/fr_FR.UTF-8/html/MAGIC-API.html
@@ -289,6 +289,8 @@
Note: Called once by Tux Paint, at startup. It is called after "api_version()", if Tux Paint believes your plugin to be compatible.
The disabled_features value contains bits set for any Tux Paint features relevant to Magic tools which have been disabled in this session. Test using the C bitwise 'and' operator, '&'. The features are defined in tp_magic_api.h:
+ -
+
MAGIC_FEATURE_CONTROL: Magic tool controls (paint vs fullscreen) (--nomagiccontrols)
-
MAGIC_FEATURE_SIZE: Magic tool size (--nomagicsizes)
diff --git a/docs/gl_ES.UTF-8/MAGIC-API.txt b/docs/gl_ES.UTF-8/MAGIC-API.txt
index 98e70d68a..7ead11323 100644
--- a/docs/gl_ES.UTF-8/MAGIC-API.txt
+++ b/docs/gl_ES.UTF-8/MAGIC-API.txt
@@ -191,6 +191,8 @@ Magic Tool Plugin API Documentation
features relevant to Magic tools which have been disabled in this
session. Test using the C bitwise 'and' operator, '&'. The
features are defined in tp_magic_api.h:
+ * MAGIC_FEATURE_CONTROL: Magic tool controls (paint vs
+ fullscreen) (--nomagiccontrols)
* MAGIC_FEATURE_SIZE: Magic tool size (--nomagicsizes)
Your Magic tool(s) may wish to react differently depending on
whether one or more features have been disabled. (For example, the
diff --git a/docs/gl_ES.UTF-8/html/MAGIC-API.html b/docs/gl_ES.UTF-8/html/MAGIC-API.html
index 1d3844c4b..9306b01ad 100644
--- a/docs/gl_ES.UTF-8/html/MAGIC-API.html
+++ b/docs/gl_ES.UTF-8/html/MAGIC-API.html
@@ -289,6 +289,8 @@
Note: Called once by Tux Paint, at startup. It is called after "api_version()", if Tux Paint believes your plugin to be compatible.
The disabled_features value contains bits set for any Tux Paint features relevant to Magic tools which have been disabled in this session. Test using the C bitwise 'and' operator, '&'. The features are defined in tp_magic_api.h:
+ -
+
MAGIC_FEATURE_CONTROL: Magic tool controls (paint vs fullscreen) (--nomagiccontrols)
-
MAGIC_FEATURE_SIZE: Magic tool size (--nomagicsizes)
diff --git a/docs/ja_JP.UTF-8/MAGIC-API.txt b/docs/ja_JP.UTF-8/MAGIC-API.txt
index 59260e006..85aa08116 100644
--- a/docs/ja_JP.UTF-8/MAGIC-API.txt
+++ b/docs/ja_JP.UTF-8/MAGIC-API.txt
@@ -191,6 +191,8 @@ Magic Tool Plugin API Documentation
features relevant to Magic tools which have been disabled in this
session. Test using the C bitwise 'and' operator, '&'. The
features are defined in tp_magic_api.h:
+ * MAGIC_FEATURE_CONTROL: Magic tool controls (paint vs
+ fullscreen) (--nomagiccontrols)
* MAGIC_FEATURE_SIZE: Magic tool size (--nomagicsizes)
Your Magic tool(s) may wish to react differently depending on
whether one or more features have been disabled. (For example, the
diff --git a/docs/ja_JP.UTF-8/html/MAGIC-API.html b/docs/ja_JP.UTF-8/html/MAGIC-API.html
index aa35c574e..7a260300e 100644
--- a/docs/ja_JP.UTF-8/html/MAGIC-API.html
+++ b/docs/ja_JP.UTF-8/html/MAGIC-API.html
@@ -289,6 +289,8 @@
Note: Called once by Tux Paint, at startup. It is called after "api_version()", if Tux Paint believes your plugin to be compatible.
The disabled_features value contains bits set for any Tux Paint features relevant to Magic tools which have been disabled in this session. Test using the C bitwise 'and' operator, '&'. The features are defined in tp_magic_api.h:
+ -
+
MAGIC_FEATURE_CONTROL: Magic tool controls (paint vs fullscreen) (--nomagiccontrols)
-
MAGIC_FEATURE_SIZE: Magic tool size (--nomagicsizes)
diff --git a/src/parse.gperf b/src/parse.gperf
index 23819a202..84043a55e 100644
--- a/src/parse.gperf
+++ b/src/parse.gperf
@@ -125,6 +125,7 @@ lang, MULTI(parsertmp_lang)
locale, MULTI(parsertmp_locale)
lockfile, POSBOOL(ok_to_use_lockfile)
magiccontrols, NEGBOOL(disable_magic_controls)
+magicsizes, NEGBOOL(disable_magic_sizes)
shapecontrols, NEGBOOL(disable_shape_controls)
mirrorstamps, POSBOOL(mirrorstamps)
mixedcase, NEGBOOL(only_uppercase)
diff --git a/src/parse.h b/src/parse.h
index f2a7fd507..19486e9db 100644
--- a/src/parse.h
+++ b/src/parse.h
@@ -16,6 +16,7 @@ struct cfginfo
const char *disable_label;
const char *disable_brushspacing;
const char *disable_magic_controls;
+ const char *disable_magic_sizes;
const char *disable_shape_controls;
const char *disable_print;
const char *disable_quit;
diff --git a/src/tuxpaint.c b/src/tuxpaint.c
index 011080922..8bf0adefc 100644
--- a/src/tuxpaint.c
+++ b/src/tuxpaint.c
@@ -1430,6 +1430,7 @@ static int simple_shapes;
static int only_uppercase;
static int disable_magic_controls;
+static int disable_magic_sizes;
static int disable_shape_controls;
static int shape_mode = SHAPEMODE_CENTER;
@@ -29443,6 +29444,7 @@ static void setup_config(char *argv[])
SETBOOL(disable_label);
SETBOOL(disable_brushspacing);
SETBOOL(disable_magic_controls);
+ SETBOOL(disable_magic_sizes);
SETBOOL(disable_shape_controls);
SETBOOL(disable_print);
SETBOOL(disable_quit);
@@ -31397,9 +31399,12 @@ static void setup(void)
/* Load magic tool plugins: */
magic_disabled_features = 0x00000000;
- if (0) { /* FIXME */
+ if (disable_magic_sizes) {
magic_disabled_features |= MAGIC_FEATURE_SIZE;
}
+ if (disable_magic_controls) {
+ magic_disabled_features |= MAGIC_FEATURE_CONTROL;
+ }
load_magic_plugins();
diff --git a/src/tuxpaint.conf b/src/tuxpaint.conf
index caa2eb452..47214402b 100644
--- a/src/tuxpaint.conf
+++ b/src/tuxpaint.conf
@@ -7,7 +7,7 @@
# https://tuxpaint.org/
#
# Default distribution version last modified:
-# December 11, 2020
+# February 12, 2023
#
# $Id$
@@ -21,6 +21,7 @@
# * nostampcontrols
# * nostamprotation
# * nomagiccontrols
+# * nomagicsizes
# * noshapecontrols
# * nolabel
# * nobrushspacing