| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
| |
* configure.ac:
* meson.build: Require glib-2.0 >= 2.73.2.
* gio/src/appinfo.hg: Add get_default_for_type_async/finish(),
get_default_for_uri_scheme_async/finish().
* gio/src/file.hg: Add make_symbolic_link_async/finish().
* gio/src/liststore.hg: Add property_n_items().
* gio/src/resolver.hg: Add enum Resolver::NameLookupFlags,
lookup_by_name_with_flags(), lookup_by_name_with_flags_async/finish().
* gio/src/gio_docs_override.xml:
* tools/m4/convert_gio.m4: Add conversions for Resolver::NameLookupFlags.
|
|
|
|
| |
using gtk files from glib 2.73.3.
|
|
|
|
|
|
| |
get_connection() and get_interface_info() must add a reference.
The error in get_connection() was noticed by 우정모 (kr.woaini).
Fixes #102
|
|
|
|
| |
GListStore is declared G_DECLARE_FINAL_TYPE.
|
|
|
|
| |
See issue #100
|
|
|
|
|
| |
Don't call constructors that don't work because the g_tls_certificate_new_*()
functions do more than just call g_object_new().
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* configure.ac:
* meson.build: Require glib-2.0 >= 2.71.2.
* gio/src/dbusproxy.hg: signal_signal() accepts a signal name.
* gio/src/file.[ccg|hg]: Add move_async() and move_finish().
* gio/src/socketclient.hg: Deprecate set/get/property_tls_validation_flags().
* gio/src/tlscertificate.hg: Add properties private_key, private_key_pem,
pkcs11_uri, private_key_pkcs11_uri.
* gio/src/tlsclientconnection.hg: Deprecate set/get/property_validation_flags().
* glib/glibmm/main.[cc|h]: Add create(MainContextFlags flags).
* glib/src/enums.hg: Add enum Glib::MainContextFlags.
|
|
|
|
|
| |
using gtk files from glib 2.72.0.
And update gio/src/gio_signals.defs.patch.
|
|
|
|
| |
Fixes #97
|
| |
|
|
|
|
|
|
|
| |
g_socket_client_[set,get]_tls_validation_flags() and
g_tls_client_connection_[set,get]_validation_flags() are deprecated in
glib 2.72. They can't be deprecated in glibmm 2.70. Ignore the deprecations,
so it will still be possible to compile with warnings=fatal.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* configure.ac:
* meson.build: Require glib-2.0 >= 2.69.1.
* glib/src/binding.[ccg|hg]: Add dup_source(), dup_target(),
Deprecate get_source(), get_target().
* glib/src/spawn.[ccg|hg]: Change parameter name, exit_status to wait_status.
* glib/src/timezone.[ccg|hg]: Add operator bool(), create_identifier().
Deprecate create().
* gio/src/fileinfo.hg: Add get/set_access_date(), get/set_creation_date().
* gio/src/notification.hg: Add set_category().
* gio/src/tlscertificate.hg: Add property/get_not_valid_before(),
property/get_not_valid_after(), property/get_subject_name(),
property/get_issuer_name().
* gio/src/tlsconnection.hg: Add enum Gio::TlsProtocolVersion,
property/get_protocol_version(), property/get_ciphersuite_name().
* tools/m4/convert_gio.m4: Add conversion for enum TlsProtocolVersion.
|
|
|
|
|
| |
using gtk files from glib 2.70.0.
And update gio_docs_override.xml and glib_extra_objects.defs.
|
|
|
|
|
|
|
| |
Instead of a specialization of Glib::Container_Helpers::TypeTraits
for Glib::RefPtr<Gio::AppInfo>, add and use struct TypeTraits_AppInfo,
local in gio/src/appinfo.ccg and appinfo.cc.
Modifies the issue #94 fix.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Applies also to get_all_for_type().
Make a complete specialization of Glib::Container_Helpers::TypeTraits for
Glib::RefPtr<Gio::AppInfo>, calling Glib::wrap(GAppInfo*, bool) which uses
Glib::wrap_auto_interface(). The partial specialization in
containerhandle_shared.h calls Glib::wrap_auto(), which is not acceptable
if the GAppInfo object does not already have a wrapper, and its class type
has been wrapped in a C++ class (e.g. GWin32AppInfo or GOsxAppInfo).
Fixes #94
|
|
|
|
|
|
|
| |
Gio::ListModel::get_object() returns Glib::RefPtr<Glib::ObjectBase>.
Don't try to dynamic_cast it to Glib::Object. It would fail if the object
has been constructed as an interface, and e.g. has a Gio::File wrapper.
Fixes #93
|
| |
|
| |
|
|
|
|
|
|
|
| |
Instead, mark the individual members with GLIBMM_API so that we avoid having
the code tied to a particular STL and compiler version.
Update the classes that derive from Glib::Source accordingly as well
|
|
|
|
|
|
|
| |
...and templates that inherit std::string. This will help us to also eliminate
C4251 warnings from code that use thid class and related items, and avoid ABI
compatibility issues when building code that link and run aginst glibmm on
Visual Studio builds.
|
|
|
|
|
|
|
| |
It shall not be possible to find a glibmm header file
with #include <xxx.h> instead of #include <glibmm/xxx.h>.
Not fully fixed until https://github.com/mesonbuild/meson/issues/8562
has been fixed.
|
|
|
|
|
|
| |
and update gio/src/gio_docs_override.xml.
Regenerated while the glib-2-66 branch was checked out from glib.
|
|
|
|
| |
and remove unnecessary TODO comments in several files.
|
|
|
|
|
|
|
|
|
|
|
| |
TlsConnection_Class::wrap_new() can wrap a C object in a TlsConnection,
TlsClientConnectionImpl or TlsServerConnectionImpl depending on which
interface, if any, the C object implements.
No need for special wrap*() functions in Tls[Client,Server]Connection
or SocketClient::signal_event().
This is similar to Gdk::DeviceWithPad.
|
|
|
|
|
|
|
|
|
|
|
|
| |
The GIOStream* parameter in the 'event' signal can point to either a
GSocketConnection or to a subclass of GTlsConnection that implements
the GTlsClientConnection interface. If it implements the
GTlsClientConnection interface, wrap it in a Gio::TlsClientConnectionImpl.
Then a signal handler can do:
auto tls_client_connection =
std::dynamic_pointer_cast<Gio::TlsClientConnection>(connection);
Fixes #73
|
|
|
|
|
|
|
|
|
|
| |
Restructure Tls[Client,Server]Connection. They are interfaces. Now they
derive only from Glib::Interface, like all interfaces shall do.
Tls[Client,Server]ConnectionImpl don't correspond to C classes. They can
wrap any C object that derives from GTlsConnection and implements
GTls[Client,Server]Connection. Such C classes in GLib are not public.
They can't be wrapped in the usual way.
|
|
|
|
|
|
| |
Change enum Gio::MenuAttribute to Gio::MenuModel::Attribute and
change enum Gio::MenuLink to Gio::MenuModel::Link.
Add new enum values to Attribute.
|
| |
|
|
|
|
|
|
| |
I noticed that I couldn't create a ListStore containing AppInfo objects,
because an AppInfo is not an Object but an Interface. ListStore seems to
work fine with Interfaces, so I just changed the static_assert.
|
|
|
|
|
| |
As per Kjell's suggestions, make things more future-proof by marking all
_WRAP_ENUM()'s with 'decl_prefix GIOMM_API'.
|
|
|
|
|
|
|
| |
This way, we can mark the template<> classes with GIOMM_API so that we
can export them as well using compiler directives. Note that those
marked with NO_GTYPE do not need to be marked with this, as no
template<> classes are generated with these.
|
| |
|
|
|
|
| |
Fixes #68
|
|
|
|
|
|
| |
This prepares the build to export symbols using compiler directives, in
our bid to drop gendef.exe. We will also mark pre-declarations of usage
of glibmm class items with GLIBMM_API as well.
|
|
|
|
|
|
| |
In Meson builds, we don't even generate giomm/unixfdlist.h unless we are
building for *nix, and we aren't using the items there on non-*nix
builds.
|
|
|
|
| |
Fixes #27
|
|
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=783216
Fix https://gitlab.gnome.org/GNOME/glibmm/issues/19
Close https://gitlab.gnome.org/GNOME/glibmm/merge_requests/20
|
|
|
|
|
|
| |
https://bugzilla.gnome.org/show_bug.cgi?id=783216
https://gitlab.gnome.org/GNOME/glibmm/issues/19
https://gitlab.gnome.org/GNOME/glibmm/merge_requests/20
|
|
|
|
|
|
|
| |
Add a std::mutex that guarantees that two threads don't create C++
wrappers for the same GDBusConnection instance.
Fixes #56
|
| |
|
|
|
|
|
|
|
|
| |
The deserialize vfunc in GLib is a class virtual function (not associated
with an instance). Such functions don't exist in C++. But it must be wrapped
in one way or another. g_socket_control_message_deserialize() assumes that
all subclasses of GSocketControlMessage override this vfunc. A user-program
can crash, if any subclass does not. Fixes #52
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
GTimeVal has been deprecated in glib. Remove its wrapping in glibmm.
* examples/dbus/server_without_bus.cc:
* examples/dbus/session_bus_service.cc: Replace TimeVal by DateTime.
* gio/src/fileinfo.[ccg|hg]: Remove [set_]modification_time().
Add set/get_modification_date_time().
* glib/glibmm.h:
* glib/glibmm/filelist.am: Remove timeval.
* glib/glibmm/timeval.[cc|h]: Removed files.
* glib/src/date.[ccg|hg]: Remove set_time(const GTimeVal& timeval).
* glib/src/datetime.[ccg|hg]: Remove create_now_local/utc(const TimeVal& tv)
and to_timeval(). Add create_from_iso8601(), format_iso8601() and
operator bool().
* tools/m4/convert_glib.m4:
* tools/m4/convert_gio.m4: Remove conversions for GTimeVal.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
* gio/src/drive.hg: get_volumes(): Glib::OWNERSHIP_SHALLOW -> DEEP
* gio/src/mountoperation.hg: signal_ask_question(): DEEP -> NONE
A signal handler shall not deallocate its input data.
* gio/src/themedicon.hg: get_names(): DEEP -> NONE
* gio/src/tlsdatabase.[ccg|hg]: lookup_certificates_issued_by[_finish]_vfunc():
g_list_copy() -> g_list_copy_deep()
* gio/src/volumemonitor.hg: get_connected_drives(), get_volumes(),
get_mounts(): SHALLOW -> DEEP
|
|
|
|
|
| |
Add Gio::DBus::ObjectManager, Gio::DBus::ObjectManagerClient and
Gio::DBus::ObjectManagerServer. Fixes #43
|
|
|
|
|
|
| |
The previous fix of Gio::DBus::Object vfuncs added a Glib::unwrap_copy()
overload, which became a global symbol in the load module. Replace it
with a local name in an anonymous namespace.
|
|
|
|
|
| |
In preparation for adding Gio::DBus::ObjectManager, ObjectManagerClient
and ObjectManagerServer. See issue #43.
|
|
|
|
| |
and update gio_signals.defs.patch and generate_defs_gio.cc.
|
|
|
|
|
|
|
| |
Gio::DBus::Object::get_interface_vfunc() and get_interfaces_vfunc()
must add a reference to the returned DBus interfaces. The caller shall
unref them. g_dbus_object_get_interface() and g_dbus_object_get_interfaces()
are marked (transfer full).
|
|
|
|
| |
Fixes #46
|