Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revision | Next revisionBoth sides next revision |
releng:4.14:roadmap:thunar:thunarx-cleanup [2018/01/14 20:41] – [Compatibility Matrix] Update thunar-archive-plugin release andreldm | releng:4.14:roadmap:thunar:thunarx-cleanup [2018/02/15 00:56] – [Thunarx API clean-up] slightly improve the text andreldm |
---|
====== Thunarx API clean-up ====== | ====== Thunarx API clean-up ====== |
| |
Since the API soname had to bumped to 3 to avoid conflicts with GTK3 symbols, it's an appropriate opportunity to remove deprecated Widgets from the Thunar Extension Framework (thunarx), specifically [[https://developer.gnome.org/gtk3/stable/GtkAction.html|GtkAction]]. | Since the API soname had to bumped to avoid conflicts with GTK3 symbols, it's an appropriate opportunity to remove deprecated Widgets from the Thunar Extension Framework (thunarx), specifically [[https://developer.gnome.org/gtk3/stable/GtkAction.html|GtkAction]]. |
| |
Considering the effort it would that take replace all GtkAction/GtkUiManager related code with [[https://wiki.gnome.org/HowDoI/GAction|GAction]]/GtkBuilder/[[https://wiki.gnome.org/HowDoI/GMenu|GMenu]], and realising this is [[https://wiki.gnome.org/Projects/GTK+/Menus#Comments|not a straightforward task]], we decided to keep these deprecated internally and deal with them by the time of the GTK4 port. Based on [[https://github.com/linuxmint/nemo/tree/master/libnemo-extension|Nemo's approach]], the **ThunarxMenuItem** and **ThunarxMenu** classes were designed as drop-in replacements for GtkAction yielded by providers, hence updating plugins should be an easy task. | Considering the effort it would that take replace all GtkAction/GtkUiManager related code with [[https://wiki.gnome.org/HowDoI/GAction|GAction]]/GtkBuilder/[[https://wiki.gnome.org/HowDoI/GMenu|GMenu]], and realising this is [[https://wiki.gnome.org/Projects/GTK+/Menus#Comments|not a straightforward task]], we decided to keep these deprecated widget internally and deal with them by the time of the GTK4 port. Based on [[https://github.com/linuxmint/nemo/tree/master/libnemo-extension|Nemo's approach]], the **ThunarxMenuItem** and **ThunarxMenu** classes were designed as drop-in replacements for GtkAction yielded by providers, hence updating plugins should be an easy task. |
==== Provider interfaces affected ==== | ==== Provider interfaces affected ==== |
* ThunarxMenuProvider - The interface to extensions that provide additional menu items | * ThunarxMenuProvider - The interface to extensions that provide additional menu items |