diff --git a/README.md b/README.md index e24a9a1c..a0784b7d 100644 --- a/README.md +++ b/README.md @@ -22,6 +22,9 @@ This README is being written.
*Note that today's entry may be updated later today.* +* **28 May 2016** + * As promised, **the minimum system requirements are now OS X 10.8 and GTK+ 3.10 for OS X and Unix, respectively**. + * **26 May 2016** * Two OS X-specific functions have been added: `uiDarwinMarginAmount()` and `uiDarwinPaddingAmount()`. These return the amount of margins and padding, respectively, to give to a control, and are intended for container implementations. These are suitable for the constant of a NSLayoutConstraint. They both take a pointer parameter that is reserved for future use and should be `NULL`. @@ -50,8 +53,8 @@ This README is being written.
## Runtime Requirements * Windows: Windows Vista SP2 with Platform Update or newer -* Unix: GTK+ 3.4 or newer -* Mac OS X: OS X 10.7 or newer +* Unix: GTK+ 3.10 or newer +* Mac OS X: OS X 10.8 or newer ## Build Requirements diff --git a/TODO.md b/TODO.md index 0df9f24a..e66885ec 100644 --- a/TODO.md +++ b/TODO.md @@ -6,9 +6,9 @@ - provisions for controls that cannot be grown? especiailly for windows -- LC_VERSION_MIN_MACOSX has the 10.11 SDK; see if we can knock it down to 10.7 too; OS version is fine +- LC_VERSION_MIN_MACOSX has the 10.11 SDK; see if we can knock it down to 10.8 too; OS version is fine - apply the OS version stuff to the test program and examples too - - what about micro versions (10.7.x)? force 10.7.0? + - what about micro versions (10.8.x)? force 10.8.0? - go through ALL the objective-c objects we create and make sure we are using the proper ownership (alloc/init and new are owned by us, all class method constructors are autoreleased - thanks mikeash) diff --git a/build/GNUmakefile.test b/build/GNUmakefile.test index 66e1921c..1179f8e8 100644 --- a/build/GNUmakefile.test +++ b/build/GNUmakefile.test @@ -18,7 +18,7 @@ ifeq ($(TOOLCHAIN),gcc) # tell the dynamic loader to search in the executable path for shared objects # note: OS X's linker complains if we say -rpath= instead of -rpath, # also note that OS X doesn't use $ORIGIN - see http://jorgen.tjer.no/post/2014/05/20/dt-rpath-ld-and-at-rpath-dyld/ - # the extra slash is needed on OS X 10.7 + # the extra slash is needed on OS X 10.7; have it around just to be correct ifeq ($(OS),darwin) LDFLAGS += -Wl,-rpath,@executable_path/ else diff --git a/darwin/GNUfiles.mk b/darwin/GNUfiles.mk index aacf382f..ed145a9d 100644 --- a/darwin/GNUfiles.mk +++ b/darwin/GNUfiles.mk @@ -49,13 +49,13 @@ LDFLAGS += \ # flags for OS X versioning CFLAGS += \ - -mmacosx-version-min=10.7 \ - -DMACOSX_DEPLOYMENT_TARGET=10.7 + -mmacosx-version-min=10.8 \ + -DMACOSX_DEPLOYMENT_TARGET=10.8 CXXFLAGS += \ - -mmacosx-version-min=10.7 \ - -DMACOSX_DEPLOYMENT_TARGET=10.7 + -mmacosx-version-min=10.8 \ + -DMACOSX_DEPLOYMENT_TARGET=10.8 LDFLAGS += \ - -mmacosx-version-min=10.7 + -mmacosx-version-min=10.8 # flags for building a shared library LDFLAGS += \ diff --git a/darwin/radiobuttons.m b/darwin/radiobuttons.m index 5af0bdea..a0228967 100644 --- a/darwin/radiobuttons.m +++ b/darwin/radiobuttons.m @@ -4,7 +4,6 @@ // In the old days you would use a NSMatrix for this; as of OS X 10.8 this was deprecated and now you need just a bunch of NSButtons with the same superview AND same action method. // This is documented on the NSMatrix page, but the rest of the OS X documentation says to still use NSMatrix. // NSMatrix has weird quirks anyway... -// TODO this does not work on 10.7 // TODO // - check that multiple radio buttons on the same parent container work right diff --git a/darwin/uipriv_darwin.h b/darwin/uipriv_darwin.h index 0bc79f37..c1e842ca 100644 --- a/darwin/uipriv_darwin.h +++ b/darwin/uipriv_darwin.h @@ -1,6 +1,6 @@ // 6 january 2015 -#define MAC_OS_X_VERSION_MIN_REQUIRED MAC_OS_X_VERSION_10_7 -#define MAC_OS_X_VERSION_MAX_ALLOWED MAC_OS_X_VERSION_10_7 +#define MAC_OS_X_VERSION_MIN_REQUIRED MAC_OS_X_VERSION_10_8 +#define MAC_OS_X_VERSION_MAX_ALLOWED MAC_OS_X_VERSION_10_8 #import #import "../ui.h" #import "../ui_darwin.h" @@ -10,9 +10,6 @@ #error Sorry, libui cannot be compiled with ARC. #endif -// 10.7 fixups -#define NSEventModifierFlags NSUInteger - #define toNSString(str) [NSString stringWithUTF8String:(str)] #define fromNSString(str) [(str) UTF8String] diff --git a/unix/stddialogs.c b/unix/stddialogs.c index e4653442..53e3301a 100644 --- a/unix/stddialogs.c +++ b/unix/stddialogs.c @@ -6,7 +6,7 @@ #define windowWindow(w) (GTK_WINDOW(uiControlHandle(uiControl(w)))) -static char *filedialog(GtkWindow *parent, GtkFileChooserAction mode, const gchar *stock) +static char *filedialog(GtkWindow *parent, GtkFileChooserAction mode, const gchar *confirm) { GtkWidget *fcd; GtkFileChooser *fc; @@ -14,8 +14,8 @@ static char *filedialog(GtkWindow *parent, GtkFileChooserAction mode, const gcha char *filename; fcd = gtk_file_chooser_dialog_new(NULL, parent, mode, - GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, - stock, GTK_RESPONSE_ACCEPT, + "_Cancel", GTK_RESPONSE_CANCEL, + confirm, GTK_RESPONSE_ACCEPT, NULL); fc = GTK_FILE_CHOOSER(fcd); gtk_file_chooser_set_local_only(fc, FALSE); @@ -35,12 +35,12 @@ static char *filedialog(GtkWindow *parent, GtkFileChooserAction mode, const gcha char *uiOpenFile(uiWindow *parent) { - return filedialog(windowWindow(parent), GTK_FILE_CHOOSER_ACTION_OPEN, GTK_STOCK_OPEN); + return filedialog(windowWindow(parent), GTK_FILE_CHOOSER_ACTION_OPEN, "_Open"); } char *uiSaveFile(uiWindow *parent) { - return filedialog(windowWindow(parent), GTK_FILE_CHOOSER_ACTION_SAVE, GTK_STOCK_SAVE); + return filedialog(windowWindow(parent), GTK_FILE_CHOOSER_ACTION_SAVE, "_Save"); } static void msgbox(GtkWindow *parent, const char *title, const char *description, GtkMessageType type, GtkButtonsType buttons) diff --git a/unix/uipriv_unix.h b/unix/uipriv_unix.h index cd89e869..785c5824 100644 --- a/unix/uipriv_unix.h +++ b/unix/uipriv_unix.h @@ -1,8 +1,8 @@ // 22 april 2015 -#define GLIB_VERSION_MIN_REQUIRED GLIB_VERSION_2_32 -#define GLIB_VERSION_MAX_ALLOWED GLIB_VERSION_2_32 -#define GDK_VERSION_MIN_REQUIRED GDK_VERSION_3_4 -#define GDK_VERSION_MAX_ALLOWED GDK_VERSION_3_4 +#define GLIB_VERSION_MIN_REQUIRED GLIB_VERSION_2_40 +#define GLIB_VERSION_MAX_ALLOWED GLIB_VERSION_2_40 +#define GDK_VERSION_MIN_REQUIRED GDK_VERSION_3_10 +#define GDK_VERSION_MAX_ALLOWED GDK_VERSION_3_10 #include #include #include // see drawtext.c