2019-03-17 Kjell Ahlstedt 2.61.1 2019-03-17 Kjell Ahlstedt Change the ABI to glibmm-2.62 So we can use the 2.60 version numbers for stable releases in the glibmm-2.4 ABI series. We don't need to release a stable ABI-parallel glibmm until we need to release gtkmm 4.0, and that won't happen until GTK 4.0.0 happens. We've done similar ABI name changes several times before. 2019-03-15 Kjell Ahlstedt Put _WRAP_VFUNC in protected sections 2019-03-15 Kjell Ahlstedt Gio: Add some API (AppInfo::launch_uris_async() etc.) * gio/src/appinfo.hg: Add launch_uris_async() and launch_uris_async(). * gio/src/asyncresult.hg: _IGNORE g_async_result_legacy_propagate_error(). * gio/src/datainputstream.hg: _IGNORE deprecated methods. * gio/src/dbusconnection.hg: Add get/property_flags(). * tools/m4/convert_gio.m4: Add conversions for GDBusConnectionFlags. 2019-03-15 Kjell Ahlstedt Glib: Add some API (DateTime::get_timezone() etc.) * glib/src/datetime.[ccg|hg]: Add get_timezone(). * glib/src/keyfile.hg: Add get_locale_for_key(). * glib/src/timezone.hg: Add get_identifier(). 2019-03-15 Kjell Ahlstedt Glib, Gio: Regenerate .defs and docs.xml files 2019-03-03 Kjell Ahlstedt generate_wrap_init.pl.in: Don't exclude any Gtk classes Don't exclude GtkTree, GtkTreeItem or GtkText from generated wrap_init.cc files. No such classes have existed for a long time, but now there is a new GtkText in gtk4. If a class really shall be excluded, insert _NO_WRAP_INIT_REGISTRATION in its .hg file. 2019-02-02 Kjell Ahlstedt Glib::KeyFile: Make it a _CLASS_OPAQUE_REFCOUNTED * examples/keyfile/main.cc: * gio/src/desktopappinfo.hg: Store KeyFile in a RefPtr. * glib/src/keyfile.[ccg|hg]: Replace _CLASS_GENERIC by _CLASS_OPAQUE_REFCOUNTED. Remove handcoded methods that are now generated by gmmproc. * tools/m4/convert_glib.m4: Update conversion for KeyFile. GKeyFile is refcounted since 2009. 2019-01-31 Kjell Ahlstedt gmmproc: _WRAP_PROPERTY: Check the data type * glib/glibmm/value_custom.h: Add template class Glib::Traits::ValueCompatibleWithWrapProperty<> that checks if the template parameter names a type that can be used with _WRAP_PROPERTY and _WRAP_CHILD_PROPERTY. * tools/m4/property.m4: * tools/pm/Output.pm: * tools/pm/WrapParser.pm: _WRAP_PROPERTY and _WRAP_CHILD_PROPERTY generate a static_assert() that checks if the data type is acceptable. The generation of the static_assert() can be suppressed with the new no_type_check parameter. 2019-01-30 Kjell Ahlstedt Glib, Gio: Use _IS_REFCOUNTED_BOXEDTYPE where appropriate * gio/src/dbusintrospection.hg: Add _IS_REFCOUNTED_BOXEDTYPE to Gio::DBus::InterfaceInfo which is used in _WRAP_PROPERTY in Gio::DBus::Proxy. * gio/src/settingsschema.hg: Add _IS_REFCOUNTED_BOXEDTYPE. SettingsSchema is used in _WRAP_PROPERTY in Gio::Settings. * glib/src/bytearray.[ccg|hg]: Replace the hand-coded Value specialization with _IS_REFCOUNTED_BOXEDTYPE. 2019-01-30 Kjell Ahlstedt gmmproc: Add _IS_REFCOUNTED_BOXEDTYPE * glib/glibmm/value.h: Add Value_RefPtrBoxed<>. * tools/m4/class_opaque_refcounted.m4: Add _IS_REFCOUNTED_BOXEDTYPE, which can be used together with _CLASS_OPAQUE_REFCOUNTED. It generates a *_get_type() function and a Glib::Value specialization. A Glib::Value specialization is required, if the C++ class is used in _WRAP_PROPERTY. 2019-01-28 Kjell Ahlstedt Gio::UnixSocketAddress: ByteArray is in namespace Glib, not in Gio 2019-01-28 Kjell Ahlstedt Gio::TlsClientConnection: Remove property_accepted_cas() It does not work because there is no suitable Glib::Value specialization. get_accepted_cas() can be used instead. 2019-01-27 Kjell Ahlstedt Glib::Value: Add Value> specializations Add Value> and Value>. One of them is needed in _WRAP_PROPERTY("names", std::vector) in Gio::ThemedIcon and in _WRAP_PROPERTYs in gtkmm. 2019-01-27 Kjell Ahlstedt Gio::ThemedIcon: Add create(const std::vector& iconnames) And change the type of icon names to Glib::ustring in methods where it was std::string. Gtkmm consistently uses Glib::ustring for icon names, but Gio::ThemedIcon has been inconsistent. (The string returned by Gio::Icon::to_string() is not an icon name. It shall remain a std::string.) 2019-01-25 Kjell Ahlstedt Gio::AsyncResult: Explain why wrap() is not used in get_source_object_base() * gio/src/asyncresult.ccg: Replace a TODO comment with an explanation. * tests/giomm_asyncresult_sourceobject/main.cc: Add code that demonstrates why Glib::wrap(GObject* object, bool take_copy) returns an empty RefPtr. 2019-01-20 Kjell Ahlstedt Glib::Value: Add ValueBase_Variant Nice to have as a base class for Value and possibly for future Glib::Value specializations. 2019-01-19 Tapasweni Pathak Add few installation instructions 2019-01-18 Kjell Ahlstedt Glib::Value: Remove obsolete create_param_spec() overload Glib::Property uses the create_param_spec() method with 4 parameters. Remove the one with only a 'name' parameter. 2019-01-18 Kjell Ahlstedt Glib: Add some Glib::Value<> specializations * glib/glibmm/error.[cc|h]: Add operator bool(). Add Glib::Value which is needed in _WRAP_PROPERTY() in Gtk::MediaStream. * glib/glibmm/objectbase.[cc|h]: Add get_base_type(), which is necessary for one of the existing Value<> specializations to apply. ObjectBase is used in _WRAP_PROPERTY() in Glib::Binding. * glib/src/variant.[ccg|hg]: Add Glib::Value which is needed in _WRAP_PROPERTY() in Gio:Action. * glib/src/varianttype.[ccg|hg]: Add Glib::Value which is needed in _WRAP_PROPERTY() in Gio:Action. All data types that occur in _WRAP_PROPERTY() must have correct Glib::Value<> specializations. In most cases missing Value<> specializations are noticed only during execution of code that calls an affected property_*() method. 2019-01-18 Kjell Ahlstedt Gio::SocketAddress: Fix property_family() Gio::SocketFamily is an enum. It shall not be stored in a Glib::RefPtr. 2019-01-15 Kjell Ahlstedt gmmproc: _WRAP_SIGNAL: Use {} for the default value of detail_name See issue #20 2019-01-13 Tapasweni Pathak Use {} for function arguments initialisation Closes https://gitlab.gnome.org/GNOME/glibmm/issues/20. 2019-01-07 Kjell Ahlstedt Gio: Remove NO_GTYPE from some _WRAP_ENUMs NO_GTYPE can't be used in _WRAP_ENUM if the enum is used in _WRAP_PROPERTY. The error is noticed only during execution of code that calls the generated property_*() method. Fixes #37 2019-01-07 Kjell Ahlstedt gmmproc: _WRAP_ENUM and _WRAP_GERROR: Add gtype_func parameter The M4 macro _GET_TYPE_FUNC() does not generate correct function names for GDBus* enums. This fix makes it possible to specify the function name in the call to _WRAP_ENUM or _WRAP_GERROR. See issue #37 2019-01-04 Kjell Ahlstedt glibmmconfig.h.in: Remove unused configuration constants These configuration variables have been removed: GLIBMM_HAVE_C_STD_TIME_T_IS_NOT_INT32 GLIBMM_MEMBER_FUNCTIONS_MEMBER_TEMPLATES GLIBMM_CAN_USE_NAMESPACES_INSIDE_EXTERNC GLIBMM_CAN_USE_THREAD_LOCAL GLIBMM_HAVE_NAMESPACE_STD GLIBMM_COMPILER_SUN_FORTE GLIBMM_EXCEPTIONS_ENABLED GLIBMM_PROPERTIES_ENABLED GLIBMM_VFUNCS_ENABLED GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED and this preprocessor macro: GLIBMM_USING_STD(Symbol) The corresponding M4 macros in build/ and their calls in configure.ac have also been removed. Fixes #22 2019-01-03 Kjell Ahlstedt tools/gen_scripts: Update for non-source-dir builds of glibmm jhbuild/modulesets/gnome-suites-core-deps-latest.modules has been changed to allow jhbuild to build glibmm with builddir != sourcedir. 2018-12-28 Kjell Ahlstedt tools/gen_scripts: Update for non-source-dir builds Most modules (e.g. glib) can be built in a directory separated from the source directory. Update the scripts that generate .defs and doc.xml files to handle that. See gtkmm!11. The environment variable JHBUILD_SOURCES is not used any more. Instead the environment variables GMMPROC_GEN_SOURCE_DIR and GMMPROC_GEN_BUILD_DIR are read. See comments in init_generate.sh. 2018-12-17 Daniel Boles stringutils: Don't use @retval here either as pointed out by Kjell: https://gitlab.gnome.org/GNOME/gtkmm/merge_requests/9#note_389406 2018-12-16 Daniel Boles fileutils|IOChannel: Don’t use @retval on out args as it is for documenting particular values of the return variable. Replace @retval with @param[out], and while here, reorder some arguments in doc comments to match the order they have in function argument lists. See https://gitlab.gnome.org/GNOME/gtkmm/merge_requests/9 for more disussion on the rationale for this. 2018-12-09 Daniel Boles extraclassinit: Fix typo in comment in doc example 2018-12-06 Kjell Ahlstedt Gio::TlsConnection: Remove rehandshake API * gio/src/tlsconnection.hg: Remove set/get/property_rehandshake_mode() and enum Gio::TlsRehandshakeMode. Their equivalents in glib have been deprecated. * tools/m4/convert_gio.m4: Remove conversions for GTlsRehandshakeMode. 2018-12-06 Kjell Ahlstedt Gio::Application: Add signal_name_lost() 2018-12-06 Kjell Ahlstedt Gio: Regenerate .defs and docs.xml files 2018-11-10 Kjell Ahlstedt MSVC_NMake: Change the ABI to glibmm-2.60 * MSVC_NMake/config-msvc.mak: This file was forgotten in the previous commit that changed the ABI name.