Feature #81
Improved support for GNOME3
| Status: | Closed | Start: | 08/07/2011 | |
|---|---|---|---|---|
| Priority: | Normal | Due date: | ||
| Assigned to: | Alguno | % Done: |
100% |
|
| Category: | GTK GUI (regular GUI) | |||
| Target version: | 0.8.0 | |||
| Votes: | 0 |
Description
Recently GNOME3 was released. One of the new features of GNOME3 (better said: GTK3) is GtkApplication. This is a class which arranges things like unique instances and handling 'open with' actions. See https://developer.gnome.org/gtk3/stable/GtkApplication.html for more details.
Once this is implemented, the dbus-glib pieces and most of the Linux IPC code can be marked as obsolete
Associated revisions
- Rewritten the ipc_linux.c file to use GDbus instead of dbus-glib
- When the connection with DBus is lost, automatically try to reconnect
- Don't depend on a code generator anymore for the processing of the DBus XML file
- Now that nothing in NNTPGrab uses dbus-glib anymore, drop it's dependency. Closes #81
- Dropped the --disable-dbus configure flag as GDbus it part of a regular GLib installation
so it doesn't make sense anymore to have it as an optional feature
- Moved all IPC code to the nntpgrab_utils library so it can be used by all frontends
- Five new API functions got added to the nntpgrab_utils library because of this move:
nntpgrab_utils_test_is_frontend_already_running, nntpgrab_utils_register_frontend, nntpgrab_utils_unregister_frontend,
nntpgrab_utils_send_open_nzb_file_request and nntpgrab_utils_send_bring_to_front_request
- Improved detection of already running NNTPGrab instances on Linux in both the Gtk and Qt frontends
This solves the issues mentioned at feature #89. Closes #89
- Added various testcases for the IPC code
- Dropped the old test_dbus testcase as it was using dbus-glib
- Added support for the 'BringToFront' IPC method which can be used to have a running NNTPGrab process present itself
- Parse the command line arguments earlier in startup of the program when using the GTK3 frontend (GtkApplication)
History
- Status changed from New to In Progress
- % Done changed from 0 to 80
Support for GtkApplication has been added in r1873
The dbus-glib pieces for the automatic shutdown feature have been replaced by GDbus code in r1874 (GDBus is part of GLib >= 2.24.0)
The PolicyKit dependency has also been eliminated by this change.
Before the dbus-glib dependency can be fully dropped, the code in client/gui/ipc_linux.c needs to be ported to GDbus (this code is still needed for environments without GTK3)
#2 Updated by Alguno over 4 years ago
- Status changed from In Progress to Closed
- % Done changed from 80 to 100
Applied in changeset r1907.
Snapshots can be found at the following URLs:
Win32: https://snapshots.nntpgrab.nl/win32/unstable-trunk/nntpgrab_trunk_snapshot_svn_r1907_setup.exe
Win64: https://snapshots.nntpgrab.nl/win64/unstable-trunk/nntpgrab_trunk_snapshot_svn_r1907_setup_x64.exe
Mac OS X: https://snapshots.nntpgrab.nl/osx/unstable-trunk/NNTPGrab_unstable_r1907.zip
Also available in: Atom PDF
NNTPGrab

