summaryrefslogtreecommitdiffstats
path: root/meta-xfce
diff options
context:
space:
mode:
authorTudor Florea <tudor.florea@enea.com>2014-10-10 03:20:04 +0200
committerTudor Florea <tudor.florea@enea.com>2014-10-10 03:20:04 +0200
commit1b8dfe266937a37a4c642f96ceb2347bf4c00a17 (patch)
tree0c6aab146bb3c82efd9c7846a9a4e70dcb0ec84f /meta-xfce
downloadmeta-openembedded-1b8dfe266937a37a4c642f96ceb2347bf4c00a17.tar.gz
initial commit for Enea Linux 4.0-140929daisy-140929
Migrated from the internal git server on the daisy-enea-point-release branch Signed-off-by: Tudor Florea <tudor.florea@enea.com>
Diffstat (limited to 'meta-xfce')
-rw-r--r--meta-xfce/README22
-rw-r--r--meta-xfce/classes/thunar-plugin.bbclass10
-rw-r--r--meta-xfce/classes/xfce-app.bbclass4
-rw-r--r--meta-xfce/classes/xfce-git.bbclass5
-rw-r--r--meta-xfce/classes/xfce-panel-plugin.bbclass11
-rw-r--r--meta-xfce/classes/xfce.bbclass20
-rw-r--r--meta-xfce/conf/layer.conf9
-rw-r--r--meta-xfce/recipes-apps/mousepad/mousepad_0.3.0.bb14
-rw-r--r--meta-xfce/recipes-apps/orage/orage_4.8.4.bb19
-rw-r--r--meta-xfce/recipes-apps/ristretto/ristretto_0.6.3.bb13
-rw-r--r--meta-xfce/recipes-apps/xarchiver/xarchiver_git.bb24
-rw-r--r--meta-xfce/recipes-apps/xfce4-mixer/xfce4-mixer_4.10.0.bb14
-rw-r--r--meta-xfce/recipes-apps/xfce4-notifyd/xfce4-notifyd_0.2.2.bb17
-rw-r--r--meta-xfce/recipes-apps/xfce4-screenshooter/files/0001-Fix-panel-plugin-build.patch43
-rw-r--r--meta-xfce/recipes-apps/xfce4-screenshooter/xfce4-screenshooter_1.8.1.bb15
-rw-r--r--meta-xfce/recipes-apps/xfce4-taskmanager/files/0001-do-not-build-documantation-Makefile-has-no-install-t.patch29
-rw-r--r--meta-xfce/recipes-apps/xfce4-taskmanager/xfce4-taskmanager_git.bb18
-rw-r--r--meta-xfce/recipes-apps/xfce4-terminal/xfce4-terminal_0.6.2.bb12
-rw-r--r--meta-xfce/recipes-art/cursor-themes/openzone_1.2.3.bb29
-rw-r--r--meta-xfce/recipes-art/xfce4-icon-theme/xfce4-icon-theme_4.4.3.bb14
-rw-r--r--meta-xfce/recipes-art/xfwm4-themes/xfwm4-themes_4.10.0.bb19
-rw-r--r--meta-xfce/recipes-bindings/vala/xfce4-vala_4.10.3.bb14
-rw-r--r--meta-xfce/recipes-multimedia/packagegroups/packagegroup-xfce-multimedia.bb10
-rw-r--r--meta-xfce/recipes-multimedia/xfce4-mpc-plugin/xfce4-mpc-plugin_0.4.4.bb15
-rw-r--r--meta-xfce/recipes-multimedia/xfmpc/xfmpc_0.2.2.bb13
-rw-r--r--meta-xfce/recipes-panel-plugins/battery/xfce4-battery-plugin_1.0.5.bb9
-rw-r--r--meta-xfce/recipes-panel-plugins/clipman/xfce4-clipman-plugin_1.2.3.bb15
-rw-r--r--meta-xfce/recipes-panel-plugins/closebutton/xfce4-closebutton-plugin_git.bb18
-rw-r--r--meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin_1.1.0.bb15
-rw-r--r--meta-xfce/recipes-panel-plugins/cpugraph/xfce4-cpugraph-plugin_1.0.5.bb9
-rw-r--r--meta-xfce/recipes-panel-plugins/datetime/xfce4-datetime-plugin_0.6.2.bb9
-rw-r--r--meta-xfce/recipes-panel-plugins/diskperf/xfce4-diskperf-plugin_2.5.4.bb9
-rw-r--r--meta-xfce/recipes-panel-plugins/embed/xfce4-embed-plugin_1.0.0.bb12
-rw-r--r--meta-xfce/recipes-panel-plugins/equake/xfce4-equake-plugin_1.3.3.bb13
-rw-r--r--meta-xfce/recipes-panel-plugins/eyes/xfce4-eyes-plugin_4.4.2.bb11
-rw-r--r--meta-xfce/recipes-panel-plugins/fsguard/xfce4-fsguard-plugin_1.0.1.bb9
-rw-r--r--meta-xfce/recipes-panel-plugins/genmon/files/0001-Allow-timer-period-to-be-set-at-250ms-resolution.-Pa.patch36
-rw-r--r--meta-xfce/recipes-panel-plugins/genmon/xfce4-genmon-plugin_3.4.0.bb13
-rw-r--r--meta-xfce/recipes-panel-plugins/mount/xfce4-mount-plugin_0.6.4.bb10
-rw-r--r--meta-xfce/recipes-panel-plugins/netload/xfce4-netload-plugin_1.2.0.bb9
-rw-r--r--meta-xfce/recipes-panel-plugins/notes/files/0001-Bump-dependency-to-Xfce-4.10.patch128
-rw-r--r--meta-xfce/recipes-panel-plugins/notes/files/0002-main-status-icon.c-remove-deprecated-g_type_init.patch32
-rw-r--r--meta-xfce/recipes-panel-plugins/notes/xfce4-notes-plugin_1.7.7.bb20
-rw-r--r--meta-xfce/recipes-panel-plugins/places/xfce4-places-plugin_1.5.0.bb12
-rw-r--r--meta-xfce/recipes-panel-plugins/systemload/xfce4-systemload-plugin_1.1.1.bb11
-rw-r--r--meta-xfce/recipes-panel-plugins/time-out/xfce4-time-out-plugin_1.0.1.bb10
-rw-r--r--meta-xfce/recipes-panel-plugins/wavelan/xfce4-wavelan-plugin_0.5.11.bb9
-rw-r--r--meta-xfce/recipes-panel-plugins/weather/xfce4-weather-plugin_0.8.3.bb13
-rw-r--r--meta-xfce/recipes-panel-plugins/xkb/xfce4-xkb-plugin_0.7.0.bb16
-rw-r--r--meta-xfce/recipes-thunar-plugins/archive/thunar-archive-plugin_0.3.1.bb12
-rw-r--r--meta-xfce/recipes-thunar-plugins/media-tags/thunar-media-tags-plugin_0.2.1.bb11
-rw-r--r--meta-xfce/recipes-xfce/exo/exo/configure.patch43
-rw-r--r--meta-xfce/recipes-xfce/exo/exo/exo-no-tests-0.8.patch31
-rw-r--r--meta-xfce/recipes-xfce/exo/exo/reduce-build-to-exo-csource-only.patch80
-rw-r--r--meta-xfce/recipes-xfce/exo/exo_0.10.2.bb37
-rw-r--r--meta-xfce/recipes-xfce/garcon/files/0001-xfce-applications.menu-don-t-bloat-settings-menu-by-.patch35
-rw-r--r--meta-xfce/recipes-xfce/garcon/garcon_0.2.1.bb14
-rw-r--r--meta-xfce/recipes-xfce/gtk-xfce-engine/gtk-xfce-engine_3.0.1.bb23
-rw-r--r--meta-xfce/recipes-xfce/libxfce4ui/files/0001-libxfce4kbd-private-xfce4-keyboard-shortcuts.xml-fix.patch31
-rw-r--r--meta-xfce/recipes-xfce/libxfce4ui/files/0002-configure.ac.in-remove-optional-gtk3-support.patch37
-rw-r--r--meta-xfce/recipes-xfce/libxfce4ui/libxfce4ui_4.10.0.bb29
-rw-r--r--meta-xfce/recipes-xfce/libxfce4util/libxfce4util_4.10.1.bb10
-rw-r--r--meta-xfce/recipes-xfce/packagegroups/packagegroup-xfce-base.bb39
-rw-r--r--meta-xfce/recipes-xfce/packagegroups/packagegroup-xfce-extended.bb57
-rw-r--r--meta-xfce/recipes-xfce/thunar-volman/thunar-volman_0.8.0.bb15
-rw-r--r--meta-xfce/recipes-xfce/thunar/thunar_1.6.3.bb29
-rw-r--r--meta-xfce/recipes-xfce/tumbler/tumbler_0.1.29.bb32
-rw-r--r--meta-xfce/recipes-xfce/xfce4-appfinder/xfce4-appfinder_4.10.1.bb10
-rw-r--r--meta-xfce/recipes-xfce/xfce4-dev-tools/xfce4-dev-tools_4.11.0.bb21
-rw-r--r--meta-xfce/recipes-xfce/xfce4-panel/xfce4-panel_4.10.1.bb29
-rw-r--r--meta-xfce/recipes-xfce/xfce4-power-manager/files/0001-Add-shutdown-reboot-functionality-for-systemd.patch677
-rw-r--r--meta-xfce/recipes-xfce/xfce4-power-manager/xfce4-power-manager_1.2.0.bb33
-rw-r--r--meta-xfce/recipes-xfce/xfce4-session/xfce4-session/0001-configure.in-hard-code-path-to-iceauth.patch40
-rw-r--r--meta-xfce/recipes-xfce/xfce4-session/xfce4-session_4.10.1.bb36
-rw-r--r--meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/0001-xsettings.xml-remove-trouble-causing-comment.patch31
-rw-r--r--meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/0002-xsettings.xml-Set-default-themes.patch32
-rw-r--r--meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/touchscreen/0001-add-cursor-theme-xfce-invisible.patch248
-rw-r--r--meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/touchscreen/0002-mouse-settings-dialog-add-touchscreen-pointer-option.patch152
-rw-r--r--meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/touchscreen/0003-XfcePointersHelper-gets-a-pointer-to-XfceXSettingsHe.patch137
-rw-r--r--meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/touchscreen/0004-XfceXSettingsHelper-gets-a-property-touchscreen-poin.patch249
-rw-r--r--meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/touchscreen/0005-pointers-detect-a-change-of-pointer-device-used-and-.patch586
-rw-r--r--meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/touchscreen/invisiblebin0 -> 4160 bytes
-rw-r--r--meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/touchscreen/waitbin0 -> 126096 bytes
-rw-r--r--meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings_git.bb47
-rw-r--r--meta-xfce/recipes-xfce/xfconf/files/0001-Simplify-checks.patch112
-rw-r--r--meta-xfce/recipes-xfce/xfconf/xfconf_4.10.0.bb16
-rw-r--r--meta-xfce/recipes-xfce/xfdesktop/xfdesktop_4.10.2.bb15
-rw-r--r--meta-xfce/recipes-xfce/xfwm4/files/0001-don-t-block-display-events-when-time-is-set-backward.patch33
-rw-r--r--meta-xfce/recipes-xfce/xfwm4/xfwm4_git.bb36
89 files changed, 3966 insertions, 0 deletions
diff --git a/meta-xfce/README b/meta-xfce/README
new file mode 100644
index 000000000..e34688895
--- /dev/null
+++ b/meta-xfce/README
@@ -0,0 +1,22 @@
1This layer depends on:
2
3URI: git://github.com/openembedded/oe-core.git
4branch: master
5revision: HEAD
6
7URI: git://github.com/openembedded/meta-oe.git
8branch: master
9revision: HEAD
10meta-xfce depends on meta-oe and meta-multimedia in this repository.
11
12To avoid dependencies on meta-multimedia you need to mask recipes by adding
13this to local.conf:
14
15BBMASK = "meta-xfce/recipes-multimedia"
16
17Send pull requests to openembedded-devel@lists.openembedded.org with '[meta-xfce]' in the subject'
18
19When sending single patches, please using something like:
20'git send-email -M -1 --to openembedded-devel@lists.openembedded.org --subject-prefix=meta-xfce][PATCH'
21
22Interim layer maintainer: Andreas Müller <schnitzeltony@googlemail.com>
diff --git a/meta-xfce/classes/thunar-plugin.bbclass b/meta-xfce/classes/thunar-plugin.bbclass
new file mode 100644
index 000000000..4ec073a67
--- /dev/null
+++ b/meta-xfce/classes/thunar-plugin.bbclass
@@ -0,0 +1,10 @@
1inherit xfce
2
3DEPENDS += "thunar"
4
5SRC_URI = "http://archive.xfce.org/src/thunar-plugins/${BPN}/${@'${PV}'[0:3]}/${BPN}-${PV}.tar.bz2"
6
7FILES_${PN} += "${libdir}/thunarx-2/*.so"
8FILES_${PN}-dbg += "${libdir}/thunarx-2/.debug"
9FILES_${PN}-dev += "${libdir}/thunarx-2/*.la"
10
diff --git a/meta-xfce/classes/xfce-app.bbclass b/meta-xfce/classes/xfce-app.bbclass
new file mode 100644
index 000000000..c60ad3d67
--- /dev/null
+++ b/meta-xfce/classes/xfce-app.bbclass
@@ -0,0 +1,4 @@
1inherit xfce
2
3SRC_URI = "http://archive.xfce.org/src/apps/${BPN}/${@'${PV}'[0:3]}/${BPN}-${PV}.tar.bz2"
4
diff --git a/meta-xfce/classes/xfce-git.bbclass b/meta-xfce/classes/xfce-git.bbclass
new file mode 100644
index 000000000..c4be55405
--- /dev/null
+++ b/meta-xfce/classes/xfce-git.bbclass
@@ -0,0 +1,5 @@
1do_configure_prepend() {
2 NOCONFIGURE=yes ./autogen.sh
3}
4
5AUTOTOOLS_COPYACLOCAL = "1"
diff --git a/meta-xfce/classes/xfce-panel-plugin.bbclass b/meta-xfce/classes/xfce-panel-plugin.bbclass
new file mode 100644
index 000000000..b2f06781d
--- /dev/null
+++ b/meta-xfce/classes/xfce-panel-plugin.bbclass
@@ -0,0 +1,11 @@
1inherit xfce
2
3DEPENDS += "libxfce4ui libxfce4util xfce4-panel"
4
5SRC_URI = "http://archive.xfce.org/src/panel-plugins/${BPN}/${@'${PV}'[0:3]}/${BPN}-${PV}.tar.bz2"
6
7FILES_${PN} += "${datadir}/xfce4/panel-plugins/"
8FILES_${PN} += "${datadir}/xfce4/panel/plugins/"
9FILES_${PN} += "${libdir}/xfce4/panel-plugins/*.so"
10FILES_${PN} += "${libdir}/xfce4/panel/plugins/*.so"
11FILES_${PN}-dbg += "${libexecdir}/xfce4/panel-plugins/.debug"
diff --git a/meta-xfce/classes/xfce.bbclass b/meta-xfce/classes/xfce.bbclass
new file mode 100644
index 000000000..f4ef55643
--- /dev/null
+++ b/meta-xfce/classes/xfce.bbclass
@@ -0,0 +1,20 @@
1def xfce_verdir(v):
2 import re
3 m = re.match("^([0-9]+)\.([0-9]+)", v)
4 return "%s.%s" % (m.group(1), m.group(2))
5
6HOMEPAGE = "http://www.xfce.org"
7SRC_URI = "http://archive.xfce.org/src/xfce/${BPN}/${@xfce_verdir("${PV}")}/${BPN}-${PV}.tar.bz2"
8
9inherit autotools gettext gtk-icon-cache pkgconfig
10
11FILES_${PN} += "${datadir}/icons/* ${datadir}/applications/* ${libdir}/xfce4/modules/*.so*"
12FILES_${PN}-doc += "${datadir}/xfce4/doc"
13
14FILES_${PN}-dev += "${libdir}/xfce4/*/*.la"
15FILES_${PN}-dev += "${libdir}/xfce4/*/*/*.la"
16FILES_${PN}-staticdev += "${libdir}/xfce4/*/*.a"
17FILES_${PN}-staticdev += "${libdir}/xfce4/*/*/*.a"
18FILES_${PN}-dbg += "${libdir}/xfce4/*/.debug"
19FILES_${PN}-dbg += "${libdir}/xfce4/*/*/.debug"
20
diff --git a/meta-xfce/conf/layer.conf b/meta-xfce/conf/layer.conf
new file mode 100644
index 000000000..d669e4e95
--- /dev/null
+++ b/meta-xfce/conf/layer.conf
@@ -0,0 +1,9 @@
1# We have a conf and classes directory, append to BBPATH
2BBPATH .= ":${LAYERDIR}"
3
4# We have a recipes directory, add to BBFILES
5BBFILES += "${LAYERDIR}/recipes-*/*/*.bb ${LAYERDIR}/recipes-*/*/*.bbappend"
6
7BBFILE_COLLECTIONS += "xfce-layer"
8BBFILE_PATTERN_xfce-layer := "^${LAYERDIR}/"
9BBFILE_PRIORITY_xfce-layer = "7"
diff --git a/meta-xfce/recipes-apps/mousepad/mousepad_0.3.0.bb b/meta-xfce/recipes-apps/mousepad/mousepad_0.3.0.bb
new file mode 100644
index 000000000..494753190
--- /dev/null
+++ b/meta-xfce/recipes-apps/mousepad/mousepad_0.3.0.bb
@@ -0,0 +1,14 @@
1SUMMARY = "A simple text editor for Xfce"
2SECTION = "x11/application"
3LICENSE = "GPLv2"
4LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
5
6# intltool to provide intltool.m4 with AC_PROG_INTLTOOL
7# xfce4-dev-tools-native for XDT_I18N macro and more importantly XDT_CHECK_OPTIONAL_PACKAGE
8# which fixes mousepad/Makefile.am:72: error: HAVE_DBUS does not appear in AM_CONDITIONAL
9DEPENDS = "gtk+ dbus dbus-glib gtksourceview2 intltool-native xfce4-dev-tools-native"
10
11inherit xfce-app
12
13SRC_URI[md5sum] = "dcfcdfaa8a19c89f35d5f6f64753e6e1"
14SRC_URI[sha256sum] = "10f27506994d0d0b8f9e02555404a144babedab97517abe3b6be8b2d21ff046d"
diff --git a/meta-xfce/recipes-apps/orage/orage_4.8.4.bb b/meta-xfce/recipes-apps/orage/orage_4.8.4.bb
new file mode 100644
index 000000000..cf3081e37
--- /dev/null
+++ b/meta-xfce/recipes-apps/orage/orage_4.8.4.bb
@@ -0,0 +1,19 @@
1SUMMARY = "Xfce Calender"
2SECTION = "x11/application"
3LICENSE = "GPLv2"
4LIC_FILES_CHKSUM = "file://COPYING;md5=9ac2e7cff1ddaf48b6eab6028f23ef88"
5DEPENDS = "gtk+ xfce4-panel libical popt"
6
7inherit xfce-app
8
9SRC_URI[md5sum] = "d5105981a9d77ed22be42615d70f3cc0"
10SRC_URI[sha256sum] = "b19df727da9da48b979e238ac7113c803976de80bd1e2dadf6d84b864956dfd5"
11
12PACKAGECONFIG ??= ""
13PACKAGECONFIG[notify] = "--enable-libnotify,--disable-libnotify,libnotify"
14
15PACKAGES =+ "xfce4-orageclock-plugin"
16FILES_${PN} += "${datadir}/dbus-1"
17FILES_${PN}-dbg += "${libdir}/orage/xfce4/panel-plugins/.debug"
18FILES_xfce4-orageclock-plugin = "${libdir}/orage/xfce4/panel-plugins/xfce4-orageclock-plugin ${datadir}/xfce4/panel-plugins"
19
diff --git a/meta-xfce/recipes-apps/ristretto/ristretto_0.6.3.bb b/meta-xfce/recipes-apps/ristretto/ristretto_0.6.3.bb
new file mode 100644
index 000000000..8e485f950
--- /dev/null
+++ b/meta-xfce/recipes-apps/ristretto/ristretto_0.6.3.bb
@@ -0,0 +1,13 @@
1SUMMARY = "Tiny image-viewer"
2HOMEPAGE = "http://goodies.xfce.org/projects/applications/ristretto"
3SECTION = "x11/application"
4LICENSE = "GPLv2"
5LIC_FILES_CHKSUM = "file://COPYING;md5=35d145429ad3cbf5308d1dc93f66376b"
6DEPENDS = "exo libexif gtk+ dbus-glib libxfce4ui libxfce4util xfconf cairo"
7
8inherit xfce-app
9
10RRECOMMENDS_${PN} += "tumbler"
11
12SRC_URI[md5sum] = "6b8c9a5d7ed319e4c84a9fefaa18792c"
13SRC_URI[sha256sum] = "2b6816de298e9a0d9b95662664690713c4123a9ac813a27bdde4727a03472d79"
diff --git a/meta-xfce/recipes-apps/xarchiver/xarchiver_git.bb b/meta-xfce/recipes-apps/xarchiver/xarchiver_git.bb
new file mode 100644
index 000000000..9e4b6963c
--- /dev/null
+++ b/meta-xfce/recipes-apps/xarchiver/xarchiver_git.bb
@@ -0,0 +1,24 @@
1SUMMARY = "Lightweight, desktop independent GTK+ archive manager"
2HOMEPAGE = "http://xarchiver.sourceforge.net"
3SECTION = "x11"
4
5LICENSE = "GPLv2+"
6LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
7
8DEPENDS = "gtk+ glib-2.0 xfce4-dev-tools-native intltool-native"
9
10SRC_URI = "git://gitorious.org/xfce/xarchiver.git;branch=master"
11SRCREV = "e80e90528c9aab2fe36d9078b945b44c05cc20d3"
12PV = "0.5.3"
13S = "${WORKDIR}/git"
14
15inherit xfce-git gettext pkgconfig autotools gtk-icon-cache
16
17# install tap files for thunar-archive-plugin in ${libdir}/thunar-archive-plugin
18EXTRA_OECONF += "--libexecdir=${libdir}"
19
20EXTRA_OECONF += "--enable-maintainer-mode"
21
22FILES_${PN} += "${libdir}/thunar-archive-plugin"
23
24RRECOMMENDS_${PN} = "lzop zip tar bzip2 unzip xz"
diff --git a/meta-xfce/recipes-apps/xfce4-mixer/xfce4-mixer_4.10.0.bb b/meta-xfce/recipes-apps/xfce4-mixer/xfce4-mixer_4.10.0.bb
new file mode 100644
index 000000000..aa3202fb8
--- /dev/null
+++ b/meta-xfce/recipes-apps/xfce4-mixer/xfce4-mixer_4.10.0.bb
@@ -0,0 +1,14 @@
1SUMMARY = "A volume control application based on GStreamer"
2LICENSE = "GPLv2"
3LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
4
5inherit xfce-panel-plugin
6
7DEPENDS += "glib-2.0 gst-plugins-base gtk+ xfconf libunique"
8
9SRC_URI = "http://archive.xfce.org/src/apps/${BPN}/${@xfce_verdir("${PV}")}/${BPN}-${PV}.tar.bz2"
10
11SRC_URI[md5sum] = "e47d5b3e873fdee3fa80d309a5f53e9c"
12SRC_URI[sha256sum] = "a8c589001b438171ea5a6b46ce9895c3ffbc5081ab67805ab9870e540068dade"
13
14RDEPENDS_${PN} = "gst-meta-audio"
diff --git a/meta-xfce/recipes-apps/xfce4-notifyd/xfce4-notifyd_0.2.2.bb b/meta-xfce/recipes-apps/xfce4-notifyd/xfce4-notifyd_0.2.2.bb
new file mode 100644
index 000000000..08af66dd6
--- /dev/null
+++ b/meta-xfce/recipes-apps/xfce4-notifyd/xfce4-notifyd_0.2.2.bb
@@ -0,0 +1,17 @@
1SUMMARY = "Easily themable notification daemon with transparency effects"
2HOMEPAGE = "http://goodies.xfce.org/projects/applications/xfce4-notifyd"
3LICENSE = "GPLv2"
4LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
5DEPENDS = "libxfce4util libxfce4ui xfconf gtk+ dbus dbus-glib"
6
7
8inherit xfce-app
9
10FILES_${PN} += " \
11 ${libdir}/xfce4/notifyd \
12 ${datadir}/themes \
13 ${datadir}/dbus-1 \
14"
15
16SRC_URI[md5sum] = "8687fb7a0f270231ada265e363b6ffcc"
17SRC_URI[sha256sum] = "b66e68dfc2164bcf479acd3c7e8b6f83065d23aef988535e2db3506d06a39168"
diff --git a/meta-xfce/recipes-apps/xfce4-screenshooter/files/0001-Fix-panel-plugin-build.patch b/meta-xfce/recipes-apps/xfce4-screenshooter/files/0001-Fix-panel-plugin-build.patch
new file mode 100644
index 000000000..98ce875b7
--- /dev/null
+++ b/meta-xfce/recipes-apps/xfce4-screenshooter/files/0001-Fix-panel-plugin-build.patch
@@ -0,0 +1,43 @@
1From 08053be7adc6d4a83191efed735c3f565bcbcf1f Mon Sep 17 00:00:00 2001
2From: Samuli Suominen <ssuominen@gentoo.org>
3Date: Sat, 5 May 2012 17:13:45 +0200
4Subject: [PATCH] Fix panel plugin build.
5
6- Don't use a versioned library.
7- Build as a module.
8- Only export needed symbols.
9---
10Upstream-Status: applied
11 Makefile.am | 12 +++++++++---
12 1 files changed, 9 insertions(+), 3 deletions(-)
13
14diff --git a/Makefile.am b/Makefile.am
15index 45100fd..d0c0adb 100644
16--- a/Makefile.am
17+++ b/Makefile.am
18@@ -132,13 +132,19 @@ panel_plugin_libscreenshooterplugin_la_CFLAGS = \
19 @SOUP_CFLAGS@
20
21 panel_plugin_libscreenshooterplugin_la_LDFLAGS = \
22+ -avoid-version \
23+ -module \
24+ -no-undefined \
25+ -export-symbols-regex '^xfce_panel_module_(preinit|init|construct)' \
26+ $(PLATFORM_LDFLAGS)
27+
28+panel_plugin_libscreenshooterplugin_la_LIBADD = \
29 @EXO_LIBS@ \
30 @LIBXFCE4PANEL_LIBS@ \
31 @GTHREAD_LIBS@ \
32 @SOUP_LIBS@ \
33- @LIBXFCE4UI_LIBS@
34-
35-panel_plugin_libscreenshooterplugin_la_LIBADD = lib/libscreenshooter.la
36+ @LIBXFCE4UI_LIBS@ \
37+ lib/libscreenshooter.la
38
39 panel_plugin_libscreenshooterplugin_la_SOURCES = \
40 panel-plugin/screenshooter-plugin.c
41--
421.7.4.4
43
diff --git a/meta-xfce/recipes-apps/xfce4-screenshooter/xfce4-screenshooter_1.8.1.bb b/meta-xfce/recipes-apps/xfce4-screenshooter/xfce4-screenshooter_1.8.1.bb
new file mode 100644
index 000000000..4cda352a8
--- /dev/null
+++ b/meta-xfce/recipes-apps/xfce4-screenshooter/xfce4-screenshooter_1.8.1.bb
@@ -0,0 +1,15 @@
1SUMMARY = "Application to take screenshots"
2HOMEPAGE = "http://goodies.xfce.org/projects/applications/xfce4-screenshooter"
3SECTION = "x11/application"
4LICENSE = "GPLv2"
5LIC_FILES_CHKSUM = "file://COPYING;md5=d791728a073bc009b4ffaf00b7599855"
6DEPENDS = "xfce4-panel libxfce4util libxfce4ui gdk-pixbuf gtk+ glib-2.0 libsoup-2.4 exo libxfixes xext virtual/libx11"
7
8inherit xfce-app
9
10SRC_URI += "file://0001-Fix-panel-plugin-build.patch"
11SRC_URI[md5sum] = "d0ffea2052a8e70154cf13789070711f"
12SRC_URI[sha256sum] = "40419892bd28989315eed053c159bba0f4264ed8c6c6738806024e481eab9492"
13
14FILES_${PN} += "${datadir}/xfce4/panel/plugins \
15 ${libdir}/xfce4/panel/plugins"
diff --git a/meta-xfce/recipes-apps/xfce4-taskmanager/files/0001-do-not-build-documantation-Makefile-has-no-install-t.patch b/meta-xfce/recipes-apps/xfce4-taskmanager/files/0001-do-not-build-documantation-Makefile-has-no-install-t.patch
new file mode 100644
index 000000000..eeee8f73b
--- /dev/null
+++ b/meta-xfce/recipes-apps/xfce4-taskmanager/files/0001-do-not-build-documantation-Makefile-has-no-install-t.patch
@@ -0,0 +1,29 @@
1From 9902fb9d4fce474426c35b73617149014799a0c8 Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
3Date: Thu, 19 Sep 2013 16:43:59 +0200
4Subject: [PATCH] do not build documantation - Makefile has no install target
5MIME-Version: 1.0
6Content-Type: text/plain; charset=UTF-8
7Content-Transfer-Encoding: 8bit
8
9Upstream-Status: Inappropriate [config]
10
11Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
12---
13 Makefile.am | 1 -
14 1 file changed, 1 deletion(-)
15
16diff --git a/Makefile.am b/Makefile.am
17index 6ffa8d9..6aef17a 100644
18--- a/Makefile.am
19+++ b/Makefile.am
20@@ -1,6 +1,5 @@
21 SUBDIRS = \
22 po \
23- doc \
24 src
25
26 desktopdir = $(datadir)/applications
27--
281.8.3.1
29
diff --git a/meta-xfce/recipes-apps/xfce4-taskmanager/xfce4-taskmanager_git.bb b/meta-xfce/recipes-apps/xfce4-taskmanager/xfce4-taskmanager_git.bb
new file mode 100644
index 000000000..289cf55b7
--- /dev/null
+++ b/meta-xfce/recipes-apps/xfce4-taskmanager/xfce4-taskmanager_git.bb
@@ -0,0 +1,18 @@
1SUMMARY = "Easy to use task manager"
2LICENSE = "GPLv2"
3LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
4
5inherit xfce-git xfce-app
6
7DEPENDS = "gtk+ cairo libwnck xfce4-dev-tools-native exo-native"
8
9SRC_URI = " \
10 git://git.xfce.org/apps/xfce4-taskmanager;protocol=git \
11 file://0001-do-not-build-documantation-Makefile-has-no-install-t.patch \
12"
13
14SRCREV = "e5d958738b6d2828a4c8353df67d3c1656c46af5"
15S = "${WORKDIR}/git"
16PV = "1.0.0+git${SRCPV}"
17
18EXTRA_OECONF += "--enable-maintainer-mode"
diff --git a/meta-xfce/recipes-apps/xfce4-terminal/xfce4-terminal_0.6.2.bb b/meta-xfce/recipes-apps/xfce4-terminal/xfce4-terminal_0.6.2.bb
new file mode 100644
index 000000000..8b2619d77
--- /dev/null
+++ b/meta-xfce/recipes-apps/xfce4-terminal/xfce4-terminal_0.6.2.bb
@@ -0,0 +1,12 @@
1SUMMARY = "Terminal emulator for the Xfce desktop environment"
2LICENSE = "GPLv2"
3LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
4DEPENDS = "glib-2.0 gtk+ vte libxfce4ui"
5
6inherit xfce-app
7
8FILES_${PN} += "${datadir}/xfce4 \
9 ${datadir}/gnome-control-center"
10
11SRC_URI[md5sum] = "d5cdb302bd770c9f2d30262c26639006"
12SRC_URI[sha256sum] = "3d92422288d26311880af694bb4e02c9235997ca307a5e85001bf6bef65c3b35"
diff --git a/meta-xfce/recipes-art/cursor-themes/openzone_1.2.3.bb b/meta-xfce/recipes-art/cursor-themes/openzone_1.2.3.bb
new file mode 100644
index 000000000..9547736bd
--- /dev/null
+++ b/meta-xfce/recipes-art/cursor-themes/openzone_1.2.3.bb
@@ -0,0 +1,29 @@
1SUMMARY = "X11 Mouse Theme"
2HOMEPAGE = "http://xfce-look.org/content/show.php/OpenZone?content=111343"
3SECTION = "x11/wm"
4LICENSE = "MIT"
5LIC_FILES_CHKSUM = "file://COPYING;md5=a2f562fb8fb1e138b810d69521c4bcd7"
6DEPENDS = "icon-slicer-native xcursorgen-native"
7
8inherit allarch
9
10SRC_URI = "http://xfce-look.org/CONTENT/content-files/111343-OpenZone-${PV}.tar.xz"
11SRC_URI[md5sum] = "4dae968cbd525072664ef7a4fc7c4154"
12SRC_URI[sha256sum] = "dc20f97a49e1ff1becf7853ef5f137ed30a4c27490540e755021d78d339efd92"
13
14S = "${WORKDIR}/OpenZone"
15
16do_install() {
17 install -d ${D}${datadir}/icons
18 for theme in `find -name '*.tar.xz'`; do
19 tar -Jxf ${theme} -C ${D}${datadir}/icons
20 done
21}
22
23python populate_packages_prepend () {
24 icondir = bb.data.expand('${datadir}/icons', d)
25 do_split_packages(d, icondir, '^(.*)', '%s', 'Open Zone cursors %s', allow_dirs=True)
26}
27
28PACKAGES_DYNAMIC += "^openzone-.*"
29ALLOW_EMPTY_${PN} = "1"
diff --git a/meta-xfce/recipes-art/xfce4-icon-theme/xfce4-icon-theme_4.4.3.bb b/meta-xfce/recipes-art/xfce4-icon-theme/xfce4-icon-theme_4.4.3.bb
new file mode 100644
index 000000000..ac104e2fd
--- /dev/null
+++ b/meta-xfce/recipes-art/xfce4-icon-theme/xfce4-icon-theme_4.4.3.bb
@@ -0,0 +1,14 @@
1SUMMARY = "xfce4 icon theme rodent"
2SECTION = "x11/wm"
3LICENSE = "GPLv2"
4LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
5
6DEPENDS = "intltool-native xfce4-dev-tools-native"
7
8inherit xfce
9
10SRC_URI = "http://archive.xfce.org/src/art/${PN}/${@'${PV}'[0:3]}/${PN}-${PV}.tar.bz2"
11SRC_URI[md5sum] = "73ce2977b84f634a6a6c5d9c27e336db"
12SRC_URI[sha256sum] = "d4786692d56b8a563f66a5f260f1f13ade11e86c78cbcb25a9f9a5fc47cf66fa"
13
14FILES_${PN} += "${datadir}/xfce4/mime"
diff --git a/meta-xfce/recipes-art/xfwm4-themes/xfwm4-themes_4.10.0.bb b/meta-xfce/recipes-art/xfwm4-themes/xfwm4-themes_4.10.0.bb
new file mode 100644
index 000000000..fc1062fec
--- /dev/null
+++ b/meta-xfce/recipes-art/xfwm4-themes/xfwm4-themes_4.10.0.bb
@@ -0,0 +1,19 @@
1SUMMARY = "Additional (old) themes for Xfwm4"
2SECTION = "x11/wm"
3LICENSE = "GPLv3"
4LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
5
6inherit xfce
7
8SRC_URI = "http://archive.xfce.org/src/art/${PN}/${@'${PV}'[0:4]}/${PN}-${PV}.tar.bz2"
9SRC_URI[md5sum] = "eaa58362053a3549c8be0b32efd3c54f"
10SRC_URI[sha256sum] = "3214d5f00e9703b5e8c9e7c3287d606dedec7285ceb4d5db332e93ada66fd575"
11
12# using xfwm4-theme as in xfwm4 might cause warnings of packages supplied by
13# multiple providers. So we use xfwm4-old-theme here.
14python populate_packages_prepend () {
15 themedir = d.expand('${datadir}/themes')
16 do_split_packages(d, themedir, '^(.*)', 'xfwm4-old-theme-%s', 'XFWM4 theme %s', allow_dirs=True)
17}
18
19PACKAGES_DYNAMIC += "^xfwm4-old-theme-.*"
diff --git a/meta-xfce/recipes-bindings/vala/xfce4-vala_4.10.3.bb b/meta-xfce/recipes-bindings/vala/xfce4-vala_4.10.3.bb
new file mode 100644
index 000000000..8e8e69129
--- /dev/null
+++ b/meta-xfce/recipes-bindings/vala/xfce4-vala_4.10.3.bb
@@ -0,0 +1,14 @@
1SUMMARY = "Xfce4 Vala provides bindings for the Xfce framework"
2LICENSE = "LGPLv2.1"
3LIC_FILES_CHKSUM = "file://COPYING;md5=243b725d71bb5df4a1e5920b344b86ad"
4DEPENDS = "libxfce4util garcon xfconf libxfce4ui xfce4-panel exo vala xfce4-dev-tools-native"
5
6inherit xfce
7
8SRC_URI = "http://archive.xfce.org/src/bindings/${BPN}/${@xfce_verdir("${PV}")}/${BPN}-${PV}.tar.bz2"
9SRC_URI[md5sum] = "0bbb1d6e473e0fe9b335b7b1b49d8a71"
10SRC_URI[sha256sum] = "07a8f2b7c09fcdd3d86e0c52adea3c58ca011d0142a93997a01b4af77260ae7b"
11
12FILES_${PN} += "${datadir}/vala-*/vapi"
13
14RDEPENDS_${PN} = "vala"
diff --git a/meta-xfce/recipes-multimedia/packagegroups/packagegroup-xfce-multimedia.bb b/meta-xfce/recipes-multimedia/packagegroups/packagegroup-xfce-multimedia.bb
new file mode 100644
index 000000000..00b0b9135
--- /dev/null
+++ b/meta-xfce/recipes-multimedia/packagegroups/packagegroup-xfce-multimedia.bb
@@ -0,0 +1,10 @@
1SUMMARY = "All packages multimedia packages available for XFCE"
2LICENSE = "MIT"
3LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=4d92cd373abda3937c2bc47fbc49d690"
4
5inherit packagegroup
6
7RDEPENDS_${PN} = " \
8 xfmpc \
9 xfce4-mpc-plugin \
10"
diff --git a/meta-xfce/recipes-multimedia/xfce4-mpc-plugin/xfce4-mpc-plugin_0.4.4.bb b/meta-xfce/recipes-multimedia/xfce4-mpc-plugin/xfce4-mpc-plugin_0.4.4.bb
new file mode 100644
index 000000000..ebef2baca
--- /dev/null
+++ b/meta-xfce/recipes-multimedia/xfce4-mpc-plugin/xfce4-mpc-plugin_0.4.4.bb
@@ -0,0 +1,15 @@
1SUMMARY = "Simple client plugin for Music Player Daemon"
2HOMEPAGE = "http://goodies.xfce.org/projects/panel-plugins/xfce4-mpc-plugin"
3SECTION = "x11/application"
4LICENSE = "BSD"
5LIC_FILES_CHKSUM = "file://COPYING;md5=3604d987e6dfdfc672c754d08953b0e0"
6
7inherit xfce-panel-plugin
8
9DEPENDS += "libmpd"
10
11# for now we recommend our own mpd-server
12RRECOMMENDS_${PN} = "mpd"
13
14SRC_URI[md5sum] = "1c126ca71d6db1ac6a0cc6720554e7bd"
15SRC_URI[sha256sum] = "4f0ce6146aa2680a4c1ca7bad1be30187a8a179e8c4355a8fe13d1fc38dac5c5"
diff --git a/meta-xfce/recipes-multimedia/xfmpc/xfmpc_0.2.2.bb b/meta-xfce/recipes-multimedia/xfmpc/xfmpc_0.2.2.bb
new file mode 100644
index 000000000..b1cabd682
--- /dev/null
+++ b/meta-xfce/recipes-multimedia/xfmpc/xfmpc_0.2.2.bb
@@ -0,0 +1,13 @@
1SUMMARY = "Music Player Daemon (MPD) client written in GTK+"
2HOMEPAGE = "http://goodies.xfce.org/projects/applications/xfmpc"
3LICENSE = "GPLv2"
4LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
5DEPENDS = "gtk+ libxfce4util libxfce4ui libmpd vala-native"
6
7# for now we recommend our own mpd-server
8RRECOMMENDS_${PN} = "mpd"
9
10inherit xfce-app
11
12SRC_URI[md5sum] = "e4e198850c2467c47783969ac9c16ec0"
13SRC_URI[sha256sum] = "ed0cc2940bd5928bb30fab1531c22185a97bd0cc5beacd9e3be4d4cd994a6862"
diff --git a/meta-xfce/recipes-panel-plugins/battery/xfce4-battery-plugin_1.0.5.bb b/meta-xfce/recipes-panel-plugins/battery/xfce4-battery-plugin_1.0.5.bb
new file mode 100644
index 000000000..36cb444c4
--- /dev/null
+++ b/meta-xfce/recipes-panel-plugins/battery/xfce4-battery-plugin_1.0.5.bb
@@ -0,0 +1,9 @@
1SUMMARY = "A battery monitor panel plugin for Xfce4, compatible with APM and ACP"
2HOMEPAGE = "http://goodies.xfce.org/projects/panel-plugins/xfce4-battery-plugin"
3LICENSE = "GPLv2"
4LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
5
6inherit xfce-panel-plugin
7
8SRC_URI[md5sum] = "ca2d394e411a20442a519efa0d14f8ec"
9SRC_URI[sha256sum] = "f659b1af40ab72c93448affaa693ab551827a5600ce9b97a799b7c2419bdeb11"
diff --git a/meta-xfce/recipes-panel-plugins/clipman/xfce4-clipman-plugin_1.2.3.bb b/meta-xfce/recipes-panel-plugins/clipman/xfce4-clipman-plugin_1.2.3.bb
new file mode 100644
index 000000000..06f0d9440
--- /dev/null
+++ b/meta-xfce/recipes-panel-plugins/clipman/xfce4-clipman-plugin_1.2.3.bb
@@ -0,0 +1,15 @@
1SUMMARY = "Clipman is a clipboard manager for Xfce"
2HOMEPAGE = "http://goodies.xfce.org/projects/panel-plugins/xfce4-clipman-plugin"
3SECTION = "x11/application"
4LICENSE = "GPLv2"
5LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
6
7inherit xfce-panel-plugin
8
9DEPENDS += "xfconf xproto libxtst"
10
11SRC_URI[md5sum] = "61f3be97efa379cb358980c94e14692a"
12SRC_URI[sha256sum] = "4424447067cb2c3972c375330d2e1d19f12e59c41bd03e111c2e6e9e174a5067"
13
14PACKAGECONFIG ??= ""
15PACKAGECONFIG[unique] = "--enable-unique,--disable-unique,libunique"
diff --git a/meta-xfce/recipes-panel-plugins/closebutton/xfce4-closebutton-plugin_git.bb b/meta-xfce/recipes-panel-plugins/closebutton/xfce4-closebutton-plugin_git.bb
new file mode 100644
index 000000000..f96009eee
--- /dev/null
+++ b/meta-xfce/recipes-panel-plugins/closebutton/xfce4-closebutton-plugin_git.bb
@@ -0,0 +1,18 @@
1SUMMARY = "Plugin displaying close button for application currently active"
2SECTION = "x11"
3LICENSE = "GPLv2"
4LIC_FILES_CHKSUM = "file://COPYING;md5=b6952d9a47fc2ad0f315510e1290455f"
5
6inherit xfce-panel-plugin xfce-git gtk-icon-cache perlnative
7
8DEPENDS += "exo-native libwnck xfconf"
9
10PV = "0.1.0+gitr${SRCPV}"
11
12SRC_URI = "git://gitorious.org/xfce/xfce4-closebutton-plugin.git;branch=master"
13SRCREV = "bd76154afe26ba8a5251a1887d88f9d855301850"
14S = "${WORKDIR}/git"
15
16EXTRA_OECONF += "--enable-maintainer-mode"
17
18FILES_${PN} += "${datadir}/xfce4/closebutton/themes"
diff --git a/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin_1.1.0.bb b/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin_1.1.0.bb
new file mode 100644
index 000000000..7a99b4f75
--- /dev/null
+++ b/meta-xfce/recipes-panel-plugins/cpufreq/xfce4-cpufreq-plugin_1.1.0.bb
@@ -0,0 +1,15 @@
1SUMMARY = "Panel plugin to display frequency of all cpus"
2HOMEPAGE = "http://goodies.xfce.org/projects/panel-plugins/xfce4-cpufreq-plugin"
3LICENSE = "GPLv2"
4LIC_FILES_CHKSUM = "file://COPYING;md5=1f6f1c0be32491a0c8d2915607a28f36"
5
6inherit xfce-panel-plugin
7
8SRC_URI[md5sum] = "dcc56af0e19266956c297d124ba551f4"
9SRC_URI[sha256sum] = "eafa261bf984231ed8487c08decea6d916339d82b52f4bbe748e5c6a95c7f6b6"
10
11# defaults in xfce4-panel-plugin.bbclass don't match so override here
12FILES_${PN} = "${datadir}/icons ${datadir}/xfce4 ${libdir}/xfce4/panel/plugins/*.so*"
13
14# *.so are required for plugin detection
15INSANE_SKIP_${PN} = "dev-so"
diff --git a/meta-xfce/recipes-panel-plugins/cpugraph/xfce4-cpugraph-plugin_1.0.5.bb b/meta-xfce/recipes-panel-plugins/cpugraph/xfce4-cpugraph-plugin_1.0.5.bb
new file mode 100644
index 000000000..83e2bb5c0
--- /dev/null
+++ b/meta-xfce/recipes-panel-plugins/cpugraph/xfce4-cpugraph-plugin_1.0.5.bb
@@ -0,0 +1,9 @@
1SUMMARY = "Panel plugin with graphical representation of the cpu frequency"
2HOMEPAGE = "http://goodies.xfce.org/projects/panel-plugins/xfce4-cpugraph-plugin"
3LICENSE = "GPLv2"
4LIC_FILES_CHKSUM = "file://COPYING;md5=415654f59d8fa70fe4eac2c3f86c8f5e"
5
6inherit xfce-panel-plugin
7
8SRC_URI[md5sum] = "f0ebfabb273adf69361b37a3fa4b7912"
9SRC_URI[sha256sum] = "85da0ec89aacfd31e0bbafcefea37cdca618d62e681c1c9da8bdd492f028f4c7"
diff --git a/meta-xfce/recipes-panel-plugins/datetime/xfce4-datetime-plugin_0.6.2.bb b/meta-xfce/recipes-panel-plugins/datetime/xfce4-datetime-plugin_0.6.2.bb
new file mode 100644
index 000000000..a97ba6c7d
--- /dev/null
+++ b/meta-xfce/recipes-panel-plugins/datetime/xfce4-datetime-plugin_0.6.2.bb
@@ -0,0 +1,9 @@
1SUMMARY = "Panel plugin displaying date and time and a calendar when left-clicked"
2HOMEPAGE = "http://goodies.xfce.org/projects/panel-plugins/xfce4-datetime-plugin"
3LICENSE = "GPLv2"
4LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
5
6inherit xfce-panel-plugin
7
8SRC_URI[md5sum] = "fe604a251eadbc5b0f2b4737b85d92c8"
9SRC_URI[sha256sum] = "9734da671e8d1d7de5fae92093a05d653c9245b838542fb9aff3e10368cc9e2c"
diff --git a/meta-xfce/recipes-panel-plugins/diskperf/xfce4-diskperf-plugin_2.5.4.bb b/meta-xfce/recipes-panel-plugins/diskperf/xfce4-diskperf-plugin_2.5.4.bb
new file mode 100644
index 000000000..1aadd2c1a
--- /dev/null
+++ b/meta-xfce/recipes-panel-plugins/diskperf/xfce4-diskperf-plugin_2.5.4.bb
@@ -0,0 +1,9 @@
1SUMMARY = "Panel plugin displaying instant disk/partition performance"
2HOMEPAGE = "http://goodies.xfce.org/projects/panel-plugins/xfce4-diskperf-plugin"
3LICENSE = "RogerSeguin"
4LIC_FILES_CHKSUM = "file://COPYING;md5=d3e627798d6a60bece47aa8b3532e1f1"
5
6inherit xfce-panel-plugin
7
8SRC_URI[md5sum] = "2db453fc3ea2e4fe073ec313a25b0961"
9SRC_URI[sha256sum] = "aab6b9c4e2f78620920efac6874c4edf426f05b63b94cfda0da8c99a91110a0b"
diff --git a/meta-xfce/recipes-panel-plugins/embed/xfce4-embed-plugin_1.0.0.bb b/meta-xfce/recipes-panel-plugins/embed/xfce4-embed-plugin_1.0.0.bb
new file mode 100644
index 000000000..32d6edfb4
--- /dev/null
+++ b/meta-xfce/recipes-panel-plugins/embed/xfce4-embed-plugin_1.0.0.bb
@@ -0,0 +1,12 @@
1DESCRIPTION = "A panel plugin that embeds arbitrary windows (or GtkPlug widgets) into the panel."
2HOMEPAGE = "http://goodies.xfce.org/projects/panel-plugins/xfce4-embed-plugin"
3SECTION = "x11/application"
4LICENSE = "GPLv2"
5LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
6
7inherit xfce-panel-plugin
8
9# DEPENDS += "xfconf xproto libxtst"
10
11SRC_URI[md5sum] = "c5b86cbc1c54ee7c1d2e95a4502fed8e"
12SRC_URI[sha256sum] = "35d4c6c56dd6468c0e5afe66f657c1526f2d830a577105a51da43657651832e3"
diff --git a/meta-xfce/recipes-panel-plugins/equake/xfce4-equake-plugin_1.3.3.bb b/meta-xfce/recipes-panel-plugins/equake/xfce4-equake-plugin_1.3.3.bb
new file mode 100644
index 000000000..95d1d66c8
--- /dev/null
+++ b/meta-xfce/recipes-panel-plugins/equake/xfce4-equake-plugin_1.3.3.bb
@@ -0,0 +1,13 @@
1DESCRIPTION = "Equake XFCE is a panel plugin for the XFCE panel which monitors earthquakes and displays an update each time a new earthquake occurs."
2HOMEPAGE = "http://freecode.com/projects/equake-xfce"
3SECTION = "x11/application"
4LICENSE = "GPLv3"
5LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
6
7inherit xfce-panel-plugin
8
9SRC_URI = "http://www.e-quake.org/wp-uploads/2013/09/xfce4-equake-plugin-${PV}.tar.gz"
10SRC_URI[md5sum] = "fa1e934f5b7e522efc4e30a99278f908"
11SRC_URI[sha256sum] = "ea37e691606dbcd705f98cecccabd69b870c7acd008f47faae6d0fee21fe14a2"
12
13FILES_${PN} += "${libdir}/xfce4/panel-plugins/xfce4-equake-plugin"
diff --git a/meta-xfce/recipes-panel-plugins/eyes/xfce4-eyes-plugin_4.4.2.bb b/meta-xfce/recipes-panel-plugins/eyes/xfce4-eyes-plugin_4.4.2.bb
new file mode 100644
index 000000000..f1ed6c7c4
--- /dev/null
+++ b/meta-xfce/recipes-panel-plugins/eyes/xfce4-eyes-plugin_4.4.2.bb
@@ -0,0 +1,11 @@
1SUMMARY = "Panel plugin with graphical representation of the cpu frequency"
2HOMEPAGE = "http://goodies.xfce.org/projects/panel-plugins/xfce4-eyes-plugin"
3LICENSE = "GPLv2"
4LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
5
6inherit xfce-panel-plugin
7
8SRC_URI[md5sum] = "1ef352c68dd8929c9e8743200b758b3c"
9SRC_URI[sha256sum] = "dad102fedd0d9e6df45338a018387b2aacaf24b05eb798275be0dfc05ffa3021"
10
11FILES_${PN} += "${datadir}/xfce4/eyes"
diff --git a/meta-xfce/recipes-panel-plugins/fsguard/xfce4-fsguard-plugin_1.0.1.bb b/meta-xfce/recipes-panel-plugins/fsguard/xfce4-fsguard-plugin_1.0.1.bb
new file mode 100644
index 000000000..144611521
--- /dev/null
+++ b/meta-xfce/recipes-panel-plugins/fsguard/xfce4-fsguard-plugin_1.0.1.bb
@@ -0,0 +1,9 @@
1DESCRIPTION = "The FSGuard panel plugin checks free space on a chosen mount point frequently and displays a message when a limit is reached"
2HOMEPAGE = "http://goodies.xfce.org/projects/panel-plugins/xfce4-fsguard-plugin?&#recet_releases"
3LICENSE = "GPLv2"
4LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
5
6inherit xfce-panel-plugin
7
8SRC_URI[md5sum] = "9c179371475e2837004cc208026e30c1"
9SRC_URI[sha256sum] = "fffb7ee09769ec0b991b8752b848578e6434a675a939c5588f0728c2ef33aab7"
diff --git a/meta-xfce/recipes-panel-plugins/genmon/files/0001-Allow-timer-period-to-be-set-at-250ms-resolution.-Pa.patch b/meta-xfce/recipes-panel-plugins/genmon/files/0001-Allow-timer-period-to-be-set-at-250ms-resolution.-Pa.patch
new file mode 100644
index 000000000..28c0eb144
--- /dev/null
+++ b/meta-xfce/recipes-panel-plugins/genmon/files/0001-Allow-timer-period-to-be-set-at-250ms-resolution.-Pa.patch
@@ -0,0 +1,36 @@
1From 2d5fa307827a7b32af4f7b2ae0604f943e3a6e99 Mon Sep 17 00:00:00 2001
2From: John Lindgren <john.lindgren@aol.com>
3Date: Tue, 21 Aug 2012 19:33:45 -0400
4Subject: [PATCH] Allow timer period to be set at 250ms resolution. Patch
5 from Miguel Guedes. Closes: #9102.
6MIME-Version: 1.0
7Content-Type: text/plain; charset=UTF-8
8Content-Transfer-Encoding: 8bit
9
10Upstream-Status: Applied [1]
11
12[1] http://git.xfce.org/panel-plugins/xfce4-genmon-plugin/commit/?id=2d5fa307827a7b32af4f7b2ae0604f943e3a6e99
13
14Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
15---
16 panel-plugin/config_gui.c | 4 ++--
17 1 files changed, 2 insertions(+), 2 deletions(-)
18
19diff --git a/panel-plugin/config_gui.c b/panel-plugin/config_gui.c
20index a4c891d..90e55c1 100644
21--- a/panel-plugin/config_gui.c
22+++ b/panel-plugin/config_gui.c
23@@ -106,8 +106,8 @@ int genmon_CreateConfigGUI (GtkWidget *vbox1,
24 gtk_widget_show (alignment1);
25 gtk_container_add (GTK_CONTAINER (eventbox1), alignment1);
26
27- wSc_Period_adj = gtk_adjustment_new (15, 1, 60*60*24, 1, 1, 0);
28- wSc_Period = gtk_spin_button_new (GTK_ADJUSTMENT (wSc_Period_adj), 1, 0);
29+ wSc_Period_adj = gtk_adjustment_new (15, .25, 60*60*24, .25, 1, 0);
30+ wSc_Period = gtk_spin_button_new (GTK_ADJUSTMENT (wSc_Period_adj), .25, 2);
31 gtk_widget_show (wSc_Period);
32 gtk_container_add (GTK_CONTAINER (alignment1), wSc_Period);
33 gtk_tooltips_set_tip (tooltips, wSc_Period,
34--
351.7.6.5
36
diff --git a/meta-xfce/recipes-panel-plugins/genmon/xfce4-genmon-plugin_3.4.0.bb b/meta-xfce/recipes-panel-plugins/genmon/xfce4-genmon-plugin_3.4.0.bb
new file mode 100644
index 000000000..a13db62a3
--- /dev/null
+++ b/meta-xfce/recipes-panel-plugins/genmon/xfce4-genmon-plugin_3.4.0.bb
@@ -0,0 +1,13 @@
1DESCRIPTION = "This plugin cyclically spawns the indicated script/program, captures its output (stdout) and displays the resulting string into the panel."
2HOMEPAGE = "http://goodies.xfce.org/projects/panel-plugins/xfce4-genmon-plugin"
3LICENSE = "LGPLv2.1"
4LIC_FILES_CHKSUM = "file://COPYING;md5=68ad62c64cc6c620126241fd429e68fe"
5
6inherit xfce-panel-plugin
7
8SRC_URI += "file://0001-Allow-timer-period-to-be-set-at-250ms-resolution.-Pa.patch"
9
10SRC_URI[md5sum] = "24108b339bb040ed360266f53a245224"
11SRC_URI[sha256sum] = "b0a5337b49c85623dc89f3c9e47c7374b1d466af2418033d2d6dfc57a9790387"
12
13S = "${WORKDIR}/xfce4-genmon-plugin-3.4"
diff --git a/meta-xfce/recipes-panel-plugins/mount/xfce4-mount-plugin_0.6.4.bb b/meta-xfce/recipes-panel-plugins/mount/xfce4-mount-plugin_0.6.4.bb
new file mode 100644
index 000000000..6dc2c1721
--- /dev/null
+++ b/meta-xfce/recipes-panel-plugins/mount/xfce4-mount-plugin_0.6.4.bb
@@ -0,0 +1,10 @@
1SUMMARY = "Mount/umount utility for the xfce panel"
2HOMEPAGE = "http://goodies.xfce.org/projects/panel-plugins/xfce4-mount-plugin"
3SECTION = "x11/application"
4LICENSE = "GPLv2"
5LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
6
7inherit xfce-panel-plugin
8
9SRC_URI[md5sum] = "f5917e9aa2a06bc6a872cc10d2ee4f6f"
10SRC_URI[sha256sum] = "541d7af84d7d0b00ae547aa1f438e2fac51ee4195c4d0a17173c4f72accb227d"
diff --git a/meta-xfce/recipes-panel-plugins/netload/xfce4-netload-plugin_1.2.0.bb b/meta-xfce/recipes-panel-plugins/netload/xfce4-netload-plugin_1.2.0.bb
new file mode 100644
index 000000000..ef1039b79
--- /dev/null
+++ b/meta-xfce/recipes-panel-plugins/netload/xfce4-netload-plugin_1.2.0.bb
@@ -0,0 +1,9 @@
1SUMMARY = "Panel plugin displaying current load of the network interfaces"
2HOMEPAGE = "http://goodies.xfce.org/projects/panel-plugins/xfce4-netload-plugin"
3LICENSE = "GPLv2"
4LIC_FILES_CHKSUM = "file://COPYING;md5=35a7203c41b86d15546dddc05995f97f"
5
6inherit xfce-panel-plugin
7
8SRC_URI[md5sum] = "05180d60ed347029dc125368c1d4406e"
9SRC_URI[sha256sum] = "c824f09e2d3860011b44d8272d661c458237786828027f3d9ad6a1d4f0096845"
diff --git a/meta-xfce/recipes-panel-plugins/notes/files/0001-Bump-dependency-to-Xfce-4.10.patch b/meta-xfce/recipes-panel-plugins/notes/files/0001-Bump-dependency-to-Xfce-4.10.patch
new file mode 100644
index 000000000..4a3b1ce58
--- /dev/null
+++ b/meta-xfce/recipes-panel-plugins/notes/files/0001-Bump-dependency-to-Xfce-4.10.patch
@@ -0,0 +1,128 @@
1From 26c4ad1765d0d59b3918363d38174c5f5bfe0dcd Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
3Date: Fri, 20 Sep 2013 22:49:47 +0200
4Subject: [PATCH] Bump dependency to Xfce 4.10
5MIME-Version: 1.0
6Content-Type: text/plain; charset=UTF-8
7Content-Transfer-Encoding: 8bit
8
9Drop support for Xfce <= 4.6.
10Replace libxfcegui4 dependency against libxfce4ui.
11Update to new libtool syntax (use LT_PREREQ.)
12
13Upstream-status: Backport [1]
14
15[1] http://git.xfce.org/panel-plugins/xfce4-notes-plugin/commit/?id=d11fe51fae95b5b4963847be76ae4a07409a6076
16
17Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
18---
19 configure.ac | 23 ++++++++++-------------
20 src/Makefile.am | 4 ++--
21 src/xfce4-notes-settings.c | 6 +++---
22 3 files changed, 15 insertions(+), 18 deletions(-)
23
24diff --git a/configure.ac b/configure.ac
25index 20d27e5..8d4113f 100644
26--- a/configure.ac
27+++ b/configure.ac
28@@ -24,21 +24,17 @@ AC_INIT([Notes], [xfce4_notes_plugin_version], [http://bugzilla.xfce.org/], [xfc
29 AC_REVISION([xfce4_notes_plugin_version_build])
30 AC_CANONICAL_TARGET()
31
32+LT_PREREQ([2.2.6])
33+LT_INIT([disable-static])
34+
35 AM_INIT_AUTOMAKE([1.11 dist-bzip2])
36 AM_CONFIG_HEADER([config.h])
37 AM_MAINTAINER_MODE()
38 AM_SILENT_RULES([yes])
39
40-dnl Avoid g77 and g++ checks
41-m4_undefine([AC_PROG_CXX])
42-m4_defun([AC_PROG_CXX],[])
43-m4_undefine([AC_PROG_F77])
44-m4_defun([AC_PROG_F77],[])
45-
46 dnl Check for basic programs
47 AM_PROG_CC_C_O()
48 AC_PROG_LD()
49-AC_PROG_LIBTOOL()
50 AC_PROG_INSTALL()
51 AC_PROG_INTLTOOL()
52
53@@ -51,12 +47,13 @@ AC_SUBST([MATH_LIBS], [" -lm"])
54
55 dnl Check for required packages
56 XDT_CHECK_LIBX11_REQUIRE()
57-XDT_CHECK_PACKAGE([GLIB], [glib-2.0], [2.16.0])
58-XDT_CHECK_PACKAGE([GTK], [gtk+-2.0], [2.14.0])
59-XDT_CHECK_PACKAGE([LIBXFCEGUI4], [libxfcegui4-1.0], [4.4.0])
60-XDT_CHECK_PACKAGE([LIBXFCE4UTIL], [libxfce4util-1.0], [4.4.0])
61-XDT_CHECK_PACKAGE([LIBXFCE4PANEL], [libxfce4panel-1.0], [4.4.0])
62-XDT_CHECK_PACKAGE([XFCONF], [libxfconf-0], [4.6.0])
63+XDT_CHECK_PACKAGE([GLIB], [glib-2.0], [2.24.0])
64+XDT_CHECK_PACKAGE([GIO], [gio-2.0], [2.24.0])
65+XDT_CHECK_PACKAGE([GTK], [gtk+-2.0], [2.20.0])
66+XDT_CHECK_PACKAGE([LIBXFCE4UI], [libxfce4ui-1], [4.10.0])
67+XDT_CHECK_PACKAGE([LIBXFCE4UTIL], [libxfce4util-1.0], [4.10.0])
68+XDT_CHECK_PACKAGE([LIBXFCE4PANEL], [libxfce4panel-1.0], [4.10.0])
69+XDT_CHECK_PACKAGE([XFCONF], [libxfconf-0], [4.10.0])
70 XDT_CHECK_PACKAGE([UNIQUE], [unique-1.0], [1.0.0])
71
72 dnl Check for libxfce4panel >= 4.7
73diff --git a/src/Makefile.am b/src/Makefile.am
74index f69ab0f..2d97b63 100644
75--- a/src/Makefile.am
76+++ b/src/Makefile.am
77@@ -36,7 +36,7 @@ xfce4_notes_settings_SOURCES = \
78 xfce4_notes_settings_CFLAGS = \
79 @LIBX11_CFLAGS@ \
80 @GTK_CFLAGS@ \
81- @LIBXFCEGUI4_CFLAGS@ \
82+ @LIBXFCE4UI_CFLAGS@ \
83 @XFCONF_CFLAGS@ \
84 @UNIQUE_CFLAGS@
85
86@@ -44,7 +44,7 @@ xfce4_notes_settings_LDADD = \
87 $(top_builddir)/lib/libnotes.la \
88 @LIBX11_LIBS@ \
89 @GTK_LIBS@ \
90- @LIBXFCEGUI4_LIBS@ \
91+ @LIBXFCE4UI_LIBS@ \
92 @XFCONF_LIBS@ \
93 @UNIQUE_LIBS@
94
95diff --git a/src/xfce4-notes-settings.c b/src/xfce4-notes-settings.c
96index f66bb13..1d7cc70 100644
97--- a/src/xfce4-notes-settings.c
98+++ b/src/xfce4-notes-settings.c
99@@ -25,7 +25,7 @@
100 #include <xfconf/xfconf.h>
101 #include <gtk/gtk.h>
102 #include <libxfce4util/libxfce4util.h>
103-#include <libxfcegui4/libxfcegui4.h>
104+#include <libxfce4ui/libxfce4ui.h>
105
106 #include "defines.h"
107 #include "color.h"
108@@ -115,7 +115,7 @@ prop_dialog_new (void)
109
110 /* === Global settings === */
111 box = gtk_vbox_new (FALSE, BORDER);
112- frame = xfce_create_framebox_with_content (_("Global settings"), box);
113+ frame = xfce_gtk_frame_box_new_with_content (_("Global settings"), box);
114 gtk_container_set_border_width (GTK_CONTAINER (frame), BORDER);
115 gtk_container_add (GTK_CONTAINER (vbox), frame);
116
117@@ -163,7 +163,7 @@ prop_dialog_new (void)
118
119 /* === New window settings === */
120 box = gtk_vbox_new (FALSE, BORDER);
121- frame = xfce_create_framebox_with_content (_("New group settings"), box);
122+ frame = xfce_gtk_frame_box_new_with_content (_("New group settings"), box);
123 gtk_container_set_border_width (GTK_CONTAINER (frame), BORDER);
124 gtk_container_add (GTK_CONTAINER (vbox), frame);
125
126--
1271.8.3.1
128
diff --git a/meta-xfce/recipes-panel-plugins/notes/files/0002-main-status-icon.c-remove-deprecated-g_type_init.patch b/meta-xfce/recipes-panel-plugins/notes/files/0002-main-status-icon.c-remove-deprecated-g_type_init.patch
new file mode 100644
index 000000000..e1ede27c4
--- /dev/null
+++ b/meta-xfce/recipes-panel-plugins/notes/files/0002-main-status-icon.c-remove-deprecated-g_type_init.patch
@@ -0,0 +1,32 @@
1From 0218e5ebf38f94d58b908fca451ba3789efa8899 Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
3Date: Fri, 20 Sep 2013 23:09:25 +0200
4Subject: [PATCH] main-status-icon.c remove deprecated g_type_init
5MIME-Version: 1.0
6Content-Type: text/plain; charset=UTF-8
7Content-Transfer-Encoding: 8bit
8
9this file was auto created by valac and xfce-vala when creating tarball. So
10
11Upstream-Status: Inappropriate [other]
12
13Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
14---
15 src/main-status-icon.c | 1 -
16 1 file changed, 1 deletion(-)
17
18diff --git a/src/main-status-icon.c b/src/main-status-icon.c
19index c6d73f8..f7db773 100644
20--- a/src/main-status-icon.c
21+++ b/src/main-status-icon.c
22@@ -290,7 +290,6 @@ gint _vala_main (char** args, int args_length1) {
23
24
25 int main (int argc, char ** argv) {
26- g_type_init ();
27 return _vala_main (argv, argc);
28 }
29
30--
311.8.3.1
32
diff --git a/meta-xfce/recipes-panel-plugins/notes/xfce4-notes-plugin_1.7.7.bb b/meta-xfce/recipes-panel-plugins/notes/xfce4-notes-plugin_1.7.7.bb
new file mode 100644
index 000000000..fee5a4d9c
--- /dev/null
+++ b/meta-xfce/recipes-panel-plugins/notes/xfce4-notes-plugin_1.7.7.bb
@@ -0,0 +1,20 @@
1SUMMARY = "Notes plugin for the Xfce Panel"
2HOMEPAGE = "http://goodies.xfce.org/projects/panel-plugins/xfce4-notes-plugin"
3LICENSE = "GPLv2"
4LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
5
6inherit xfce-panel-plugin
7
8DEPENDS = "gtk+ libxfce4ui xfce4-panel xfconf libunique"
9
10SRC_URI += " \
11 file://0001-Bump-dependency-to-Xfce-4.10.patch \
12 file://0002-main-status-icon.c-remove-deprecated-g_type_init.patch \
13"
14SRC_URI[md5sum] = "42b924b23f2fec6a1099e9b7a87db4a3"
15SRC_URI[sha256sum] = "a7baa105b37ad05dea4d6b55d98fd3214c77ad5c7a0e91471d4906c81e5f5217"
16
17FILES_${PN} += "${libdir}/xfce4/panel-plugins/*.so.*"
18
19# *.so are required for plugin detection
20INSANE_SKIP_${PN} = "dev-so"
diff --git a/meta-xfce/recipes-panel-plugins/places/xfce4-places-plugin_1.5.0.bb b/meta-xfce/recipes-panel-plugins/places/xfce4-places-plugin_1.5.0.bb
new file mode 100644
index 000000000..f68365c6e
--- /dev/null
+++ b/meta-xfce/recipes-panel-plugins/places/xfce4-places-plugin_1.5.0.bb
@@ -0,0 +1,12 @@
1DESCRIPTION = "Panel plugin displaying menu with quick access to folders, documents, and removable media"
2HOMEPAGE = "http://goodies.xfce.org/projects/panel-plugins/xfce4-places-plugin"
3LICENSE = "GPLv2"
4LIC_FILES_CHKSUM = "file://COPYING;md5=b6952d9a47fc2ad0f315510e1290455f"
5
6inherit xfce-panel-plugin
7
8SRC_URI[md5sum] = "84c39fb123e07e1c7caaf006d9383656"
9SRC_URI[sha256sum] = "6996051669a13d4791a5a453747801dc2f7f6fa5546785622d80b34966283d44"
10
11PACKAGECONFIG ??= ""
12PACKAGECONFIG[notify] = "--enable-notifications,--disable-notifications,libnotify"
diff --git a/meta-xfce/recipes-panel-plugins/systemload/xfce4-systemload-plugin_1.1.1.bb b/meta-xfce/recipes-panel-plugins/systemload/xfce4-systemload-plugin_1.1.1.bb
new file mode 100644
index 000000000..53f6c4a3c
--- /dev/null
+++ b/meta-xfce/recipes-panel-plugins/systemload/xfce4-systemload-plugin_1.1.1.bb
@@ -0,0 +1,11 @@
1DESCRIPTION = "Panel plugin displaying current CPU load, the memory in use, the swap space and the system uptime"
2HOMEPAGE = "http://goodies.xfce.org/projects/panel-plugins/xfce4-systemload-plugin"
3LICENSE = "BSD-2-Clause"
4LIC_FILES_CHKSUM = "file://COPYING;md5=9acb172a93ff6c43cce2aff790a8aef8"
5
6inherit xfce-panel-plugin
7
8DEPENDS += "upower"
9
10SRC_URI[md5sum] = "22d48c0883f9d598bce24e81d93e692e"
11SRC_URI[sha256sum] = "1ac13efbe9e576c9effd5e0675574a57c8fd44cfee60d6e319eb4d03c1c8d9ae"
diff --git a/meta-xfce/recipes-panel-plugins/time-out/xfce4-time-out-plugin_1.0.1.bb b/meta-xfce/recipes-panel-plugins/time-out/xfce4-time-out-plugin_1.0.1.bb
new file mode 100644
index 000000000..1f6ea046e
--- /dev/null
+++ b/meta-xfce/recipes-panel-plugins/time-out/xfce4-time-out-plugin_1.0.1.bb
@@ -0,0 +1,10 @@
1SUMMARY = "This plugin makes it possible to take periodical breaks"
2HOMEPAGE = "http://goodies.xfce.org/projects/panel-plugins/xfce4-time-out-plugin"
3SECTION = "x11/application"
4LICENSE = "GPLv2"
5LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
6
7inherit xfce-panel-plugin
8
9SRC_URI[md5sum] = "b6e4a3145d31c341e2506fb17b014587"
10SRC_URI[sha256sum] = "e342f73315fa8176ac4fc321680a3959aa2e06fafed1ac78031fae64713a3db8"
diff --git a/meta-xfce/recipes-panel-plugins/wavelan/xfce4-wavelan-plugin_0.5.11.bb b/meta-xfce/recipes-panel-plugins/wavelan/xfce4-wavelan-plugin_0.5.11.bb
new file mode 100644
index 000000000..1883a0c7d
--- /dev/null
+++ b/meta-xfce/recipes-panel-plugins/wavelan/xfce4-wavelan-plugin_0.5.11.bb
@@ -0,0 +1,9 @@
1SUMMARY = "Panel plugin displaying stats from a wireless lan interface"
2HOMEPAGE = "http://goodies.xfce.org/projects/panel-plugins/xfce4-wavelan-plugin"
3LICENSE = "BenediktMeurer FlorianRivoal"
4LIC_FILES_CHKSUM = "file://COPYING;md5=e1e5872df9c5cf1a23f16493d9104920"
5
6inherit xfce-panel-plugin
7
8SRC_URI[md5sum] = "50514bb286f1ed6761a1b36832bb7fe3"
9SRC_URI[sha256sum] = "fe06c7ffc29c2d4ca7bc452b3356825354e276565de9b0a2d087ab55471755ae"
diff --git a/meta-xfce/recipes-panel-plugins/weather/xfce4-weather-plugin_0.8.3.bb b/meta-xfce/recipes-panel-plugins/weather/xfce4-weather-plugin_0.8.3.bb
new file mode 100644
index 000000000..b57f91ce1
--- /dev/null
+++ b/meta-xfce/recipes-panel-plugins/weather/xfce4-weather-plugin_0.8.3.bb
@@ -0,0 +1,13 @@
1SUMMARY = "Panel plugin to display current temperature and weather condition"
2HOMEPAGE = "http://goodies.xfce.org/projects/panel-plugins/xfce4-weather-plugin"
3LICENSE = "GPLv2"
4LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
5
6inherit xfce-panel-plugin
7
8DEPENDS += "libsoup-2.4"
9
10SRC_URI[md5sum] = "755b33089c02afe88abb39253003a7f3"
11SRC_URI[sha256sum] = "40a6a22be7653b15a47174a430da89040f178695b48e5e01e77990050f715ce4"
12
13FILES_${PN} += "${datadir}/xfce4/weather"
diff --git a/meta-xfce/recipes-panel-plugins/xkb/xfce4-xkb-plugin_0.7.0.bb b/meta-xfce/recipes-panel-plugins/xkb/xfce4-xkb-plugin_0.7.0.bb
new file mode 100644
index 000000000..1109f3194
--- /dev/null
+++ b/meta-xfce/recipes-panel-plugins/xkb/xfce4-xkb-plugin_0.7.0.bb
@@ -0,0 +1,16 @@
1SUMMARY = "XKB layout switching panel plug-in for the Xfce desktop environment"
2HOMEPAGE = "http://goodies.xfce.org/projects/panel-plugins/xfce4-xkb-plugin"
3SECTION = "x11/application"
4LICENSE = "Alexander_Iliev"
5LIC_FILES_CHKSUM = "file://COPYING;md5=496f09f084b0f7e6f02f769a84490c6b"
6
7inherit xfce-panel-plugin
8
9SRC_URI[md5sum] = "7fbc3d8c84d6662d819dd1803f0fee34"
10SRC_URI[sha256sum] = "28367c309863581ae4de529b35bdedf5a1c918096a9a2e6e771554cba7bf5a6a"
11
12DEPENDS += "libxklavier libwnck librsvg garcon"
13
14FILES_${PN} += "${datadir}/xfce4/xkb"
15
16RDEPENDS_${PN} = "xfce4-settings"
diff --git a/meta-xfce/recipes-thunar-plugins/archive/thunar-archive-plugin_0.3.1.bb b/meta-xfce/recipes-thunar-plugins/archive/thunar-archive-plugin_0.3.1.bb
new file mode 100644
index 000000000..90ab6af19
--- /dev/null
+++ b/meta-xfce/recipes-thunar-plugins/archive/thunar-archive-plugin_0.3.1.bb
@@ -0,0 +1,12 @@
1DESCRIPTION = "Thunar Archive Plugin allows you to create and extract archive files using file context menus in Thunar"
2HOMEPAGE = "http://goodies.xfce.org/projects/thunar-plugins/thunar-archive-plugin"
3LICENSE = "GPLv2"
4LIC_FILES_CHKSUM = "file://COPYING;md5=252890d9eee26aab7b432e8b8a616475"
5
6inherit thunar-plugin
7
8SRC_URI[md5sum] = "425f4faaace6dc7a4716a35b7795463a"
9SRC_URI[sha256sum] = "9ad559b0c11308f6897ad56604e5a06dc8f369f649eb20120b2d3018ef5da54c"
10
11# install tap files in ${libdir}/thunar-archive-plugin
12EXTRA_OECONF += "--libexecdir=${libdir}"
diff --git a/meta-xfce/recipes-thunar-plugins/media-tags/thunar-media-tags-plugin_0.2.1.bb b/meta-xfce/recipes-thunar-plugins/media-tags/thunar-media-tags-plugin_0.2.1.bb
new file mode 100644
index 000000000..90f150b6e
--- /dev/null
+++ b/meta-xfce/recipes-thunar-plugins/media-tags/thunar-media-tags-plugin_0.2.1.bb
@@ -0,0 +1,11 @@
1SUMMARY = "Adds ID3/OGG tag support to the Thunar bulk rename dialog"
2HOMEPAGE = "http://thunar.xfce.org"
3LICENSE = "GPLv2"
4LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
5
6inherit thunar-plugin
7
8DEPENDS += "taglib"
9
10SRC_URI[md5sum] = "0106e900714f86ccbafdc72238d3cf8d"
11SRC_URI[sha256sum] = "056d012a10403ee3e2e55b6ff2faecb796821de9ebee000315589b95d95ed253"
diff --git a/meta-xfce/recipes-xfce/exo/exo/configure.patch b/meta-xfce/recipes-xfce/exo/exo/configure.patch
new file mode 100644
index 000000000..ef27e423b
--- /dev/null
+++ b/meta-xfce/recipes-xfce/exo/exo/configure.patch
@@ -0,0 +1,43 @@
1--- a/configure.ac 2007-12-02 10:37:06.000000000 -0200
2+++ b/configure.ac 2008-06-05 17:21:42.000000000 -0300
3@@ -127,22 +127,24 @@
4 dnl ***************************************
5 dnl *** Check for strftime() extensions ***
6 dnl ***************************************
7-AC_TRY_RUN([
8- #include <string.h>
9- #include <time.h>
10- int
11- main (int argc, char **argv)
12- {
13- struct tm tm;
14- char buffer[16];
15- tm.tm_year = 81;
16- if (strftime (buffer, 16, "%EY", &tm) == 4 && strcmp (buffer, "1981") == 0)
17- return 0;
18- return 1;
19- }
20-], [
21- AC_DEFINE([HAVE_STRFTIME_EXTENSION], 1, [Define if strftime supports %E and %O modifiers.])
22-])
23+dnl grrrr... this doesn't work for cross compiling, define it for OE
24+AC_DEFINE([HAVE_STRFTIME_EXTENSION], 1, [Define if strftime supports %E and %O modifiers.])
25+dnl AC_TRY_RUN([
26+dnl #include <string.h>
27+dnl #include <time.h>
28+dnl int
29+dnl main (int argc, char **argv)
30+dnl {
31+dnl struct tm tm;
32+dnl char buffer[16];
33+dnl tm.tm_year = 81;
34+dnl if (strftime (buffer, 16, "%EY", &tm) == 4 && strcmp (buffer, "1981") == 0)
35+dnl return 0;
36+dnl return 1;
37+dnl }
38+dnl ], [
39+dnl AC_DEFINE([HAVE_STRFTIME_EXTENSION], 1, [Define if strftime supports %E and %O modifiers.])
40+dnl ])
41
42 dnl ******************************
43 dnl *** Check for i18n support ***
diff --git a/meta-xfce/recipes-xfce/exo/exo/exo-no-tests-0.8.patch b/meta-xfce/recipes-xfce/exo/exo/exo-no-tests-0.8.patch
new file mode 100644
index 000000000..ac8bca5f3
--- /dev/null
+++ b/meta-xfce/recipes-xfce/exo/exo/exo-no-tests-0.8.patch
@@ -0,0 +1,31 @@
1From 5f1e19860d89647488bdd32a02fb332f69434405 Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
3Date: Fri, 18 May 2012 21:13:00 +0200
4Subject: [PATCH] Do not run tests at build time
5MIME-Version: 1.0
6Content-Type: text/plain; charset=UTF-8
7Content-Transfer-Encoding: 8bit
8Upstream-Status: Not-Applicable
9
10Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
11---
12 Makefile.am | 3 +--
13 1 files changed, 1 insertions(+), 2 deletions(-)
14
15diff --git a/Makefile.am b/Makefile.am
16index 0ab3853..3e72391 100644
17--- a/Makefile.am
18+++ b/Makefile.am
19@@ -8,8 +8,7 @@ SUBDIRS = \
20 docs \
21 icons \
22 pixmaps \
23- po \
24- tests
25+ po
26
27 AUTOMAKE_OPTIONS = \
28 1.9 \
29--
301.7.4.4
31
diff --git a/meta-xfce/recipes-xfce/exo/exo/reduce-build-to-exo-csource-only.patch b/meta-xfce/recipes-xfce/exo/exo/reduce-build-to-exo-csource-only.patch
new file mode 100644
index 000000000..84b237096
--- /dev/null
+++ b/meta-xfce/recipes-xfce/exo/exo/reduce-build-to-exo-csource-only.patch
@@ -0,0 +1,80 @@
1From e710d8d4a3e3480416826c70d56ea3d2598a77e4 Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
3Date: Thu, 28 Mar 2013 23:41:03 +0100
4Subject: [PATCH] reduce build to exo-csource only
5MIME-Version: 1.0
6Content-Type: text/plain; charset=UTF-8
7Content-Transfer-Encoding: 8bit
8
9exo-csource creates c-header files from glade resource output files. When
10building xfce-packages from git instead of tarball this exo-csource-native is
11required.
12
13Upstream-Status: Inappropriate [configuration]
14
15Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
16---
17 Makefile.am | 10 +---------
18 configure.ac | 20 --------------------
19 2 files changed, 1 insertions(+), 29 deletions(-)
20
21diff --git a/Makefile.am b/Makefile.am
22index c2e3fff..79b0931 100644
23--- a/Makefile.am
24+++ b/Makefile.am
25@@ -1,13 +1,5 @@
26 SUBDIRS = \
27- exo \
28- exo-csource \
29- exo-desktop-item-edit \
30- exo-helper \
31- exo-open \
32- docs \
33- icons \
34- pixmaps \
35- po
36+ exo-csource
37
38 AUTOMAKE_OPTIONS = \
39 1.9 \
40diff --git a/configure.ac b/configure.ac
41index efcd62e..aac2495 100644
42--- a/configure.ac
43+++ b/configure.ac
44@@ -110,15 +110,6 @@ AC_PROG_CC()
45 AM_PROG_CC_C_O()
46 AC_PROG_INSTALL()
47 AC_PROG_INTLTOOL([0.31], [no-xml])
48-AC_CHECK_PROGS([PERL], [perl5 perl])
49-
50-dnl ***************************************
51-dnl *** Check for required Perl modules ***
52-dnl ***************************************
53-AC_PROG_PERL_MODULES([URI::Escape URI::file URI::URL], [],
54-[
55- AC_MSG_ERROR([Atleast one of the required Perl modules (URI::Escape, URI::file and URI::URL) was not found on your system])
56-])
57
58 dnl ***************************************
59 dnl *** Check for standard header files ***
60@@ -165,17 +156,6 @@ dnl ***********************************
61 dnl *** Check for required packages ***
62 dnl ***********************************
63 XDT_CHECK_PACKAGE([GLIB], [glib-2.0], [2.30.0])
64-XDT_CHECK_PACKAGE([GIO], [gio-2.0], [2.30.0])
65-XDT_CHECK_PACKAGE([GTK], [gtk+-2.0], [2.24.0])
66-XDT_CHECK_PACKAGE([GTHREAD], [gthread-2.0], [2.30.0])
67-XDT_CHECK_PACKAGE([LIBXFCE4UTIL], [libxfce4util-1.0], [4.10.0])
68-XDT_CHECK_PACKAGE([LIBXFCE4UI], [libxfce4ui-1], [4.10.0])
69-XDT_CHECK_OPTIONAL_PACKAGE([GIO_UNIX], [gio-unix-2.0], [2.30.0], [gio-unix], [GIO-Unix features])
70-
71-dnl *********************
72-dnl *** Check for X11 ***
73-dnl *********************
74-XDT_CHECK_LIBX11_REQUIRE()
75
76 dnl *************************
77 dnl *** Check for gtk-doc ***
78--
791.7.4.4
80
diff --git a/meta-xfce/recipes-xfce/exo/exo_0.10.2.bb b/meta-xfce/recipes-xfce/exo/exo_0.10.2.bb
new file mode 100644
index 000000000..88fb74c28
--- /dev/null
+++ b/meta-xfce/recipes-xfce/exo/exo_0.10.2.bb
@@ -0,0 +1,37 @@
1DESCRIPTION="Application library for the Xfce desktop environment"
2SECTION = "x11"
3LICENSE = "GPLv2"
4LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
5DEPENDS = "gtk+ libxfce4util libxfce4ui virtual/libx11 liburi-perl-native cairo"
6DEPENDS_class-native = "glib-2.0-native xfce4-dev-tools-native intltool-native"
7PR = "r4"
8
9inherit xfce pythonnative perlnative
10
11# SRC_URI must follow inherited one
12SRC_URI += " \
13 file://exo-no-tests-0.8.patch \
14 file://configure.patch \
15"
16
17SRC_URI_append_class-native = " \
18 file://reduce-build-to-exo-csource-only.patch \
19"
20
21SRC_URI[md5sum] = "c70f2a217811bfba2e62f938d4b8f748"
22SRC_URI[sha256sum] = "b385828bf8a38204da3254b57fdfa25a72694495aa189fabd5040f707eec76ce"
23
24PACKAGES =+ "exo-csource"
25
26# Note: python bindings did not work in oe-dev and are about to be moved to
27# pyxfce see http://comments.gmane.org/gmane.comp.desktop.xfce.devel.version4/19560
28FILES_${PN} += "${datadir}/xfce4/ \
29 ${libdir}/xfce4/exo-1 \
30"
31
32FILES_${PN}-dbg += "${libdir}/gio/modules/.debug \
33"
34
35FILES_exo-csource += "${bindir}/exo-csource"
36
37BBCLASSEXTEND = "native"
diff --git a/meta-xfce/recipes-xfce/garcon/files/0001-xfce-applications.menu-don-t-bloat-settings-menu-by-.patch b/meta-xfce/recipes-xfce/garcon/files/0001-xfce-applications.menu-don-t-bloat-settings-menu-by-.patch
new file mode 100644
index 000000000..e5ad4e1a1
--- /dev/null
+++ b/meta-xfce/recipes-xfce/garcon/files/0001-xfce-applications.menu-don-t-bloat-settings-menu-by-.patch
@@ -0,0 +1,35 @@
1From f5398b49cc6fd7a53562aae2abbac0d9c656559c Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
3Date: Wed, 15 May 2013 14:17:49 +0200
4Subject: [garcon] xfce-applications.menu: don't bloat settings menu by
5 entries found in settings manager
6MIME-Version: 1.0
7Content-Type: text/plain; charset=UTF-8
8Content-Transfer-Encoding: 8bit
9
10Upstream-Status: Submitted [1]
11
12[1] https://bugzilla.xfce.org/show_bug.cgi?id=10092
13
14Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
15---
16 data/xfce/xfce-applications.menu | 3 +++
17 1 files changed, 3 insertions(+), 0 deletions(-)
18
19diff --git a/data/xfce/xfce-applications.menu b/data/xfce/xfce-applications.menu
20index dc3056b..c2aa0bb 100644
21--- a/data/xfce/xfce-applications.menu
22+++ b/data/xfce/xfce-applications.menu
23@@ -34,6 +34,9 @@
24 <Include>
25 <Category>Settings</Category>
26 </Include>
27+ <Exclude>
28+ <Category>X-XFCE-SettingsDialog</Category>
29+ </Exclude>
30
31 <Layout>
32 <Filename>xfce-settings-manager.desktop</Filename>
33--
341.7.6.5
35
diff --git a/meta-xfce/recipes-xfce/garcon/garcon_0.2.1.bb b/meta-xfce/recipes-xfce/garcon/garcon_0.2.1.bb
new file mode 100644
index 000000000..cfc113178
--- /dev/null
+++ b/meta-xfce/recipes-xfce/garcon/garcon_0.2.1.bb
@@ -0,0 +1,14 @@
1DESCRIPTION="Xfce Menu Library"
2SECTION = "x11/libs"
3LICENSE = "LGPLv2"
4LIC_FILES_CHKSUM = "file://COPYING;md5=04a01abcbdabffae1ca26335a293276b"
5DEPENDS = "glib-2.0 xfce4-dev-tools-native libxfce4util"
6PR = "r1"
7
8inherit xfce
9
10SRC_URI += "file://0001-xfce-applications.menu-don-t-bloat-settings-menu-by-.patch"
11SRC_URI[md5sum] = "c3cf89c836be0ddb281c81e4808fb68b"
12SRC_URI[sha256sum] = "48b644b8b2ffe597974e2526ca1a5d2d7da6a09c2d434f008dec80e9152701f7"
13
14FILES_${PN} += "${datadir}/desktop-directories"
diff --git a/meta-xfce/recipes-xfce/gtk-xfce-engine/gtk-xfce-engine_3.0.1.bb b/meta-xfce/recipes-xfce/gtk-xfce-engine/gtk-xfce-engine_3.0.1.bb
new file mode 100644
index 000000000..d62208fb4
--- /dev/null
+++ b/meta-xfce/recipes-xfce/gtk-xfce-engine/gtk-xfce-engine_3.0.1.bb
@@ -0,0 +1,23 @@
1SUMMARY = "XFCE theme for GTK"
2SECTION = "x11/libs"
3LICENSE = "GPLv2"
4LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
5DEPENDS = "gtk+ gtk+3 xfce4-dev-tools-native"
6
7inherit xfce
8
9SRC_URI[md5sum] = "174e774d0debb052ec457640275f065d"
10SRC_URI[sha256sum] = "eb03cf81da1a91e426a2141c092ed7a1634cab29ea2f3546480e901290a7a06d"
11
12PACKAGES += "${PN}-themes gtk3-xfce-engine"
13FILES_${PN} += "${libdir}/gtk-2.0/*/engines/*.so"
14FILES_gtk3-xfce-engine += "${libdir}/gtk-3.0/*/theming-engines/*.so"
15FILES_${PN}-themes += "${datadir}/themes"
16
17FILES_${PN}-dbg += "${libdir}/gtk-3.0/*/theming-engines/.debug \
18 ${libdir}/gtk-2.0/*/engines/.debug"
19FILES_${PN}-dev += "${libdir}/gtk-2.0/*/engines/*.la \
20 ${libdir}/gtk-3.0/*/theming-engines/*.la"
21
22RDEPENDS_${PN} += "${PN}-themes"
23RDEPENDS_gtk3-xfce-engine += "${PN}-themes"
diff --git a/meta-xfce/recipes-xfce/libxfce4ui/files/0001-libxfce4kbd-private-xfce4-keyboard-shortcuts.xml-fix.patch b/meta-xfce/recipes-xfce/libxfce4ui/files/0001-libxfce4kbd-private-xfce4-keyboard-shortcuts.xml-fix.patch
new file mode 100644
index 000000000..b8c917883
--- /dev/null
+++ b/meta-xfce/recipes-xfce/libxfce4ui/files/0001-libxfce4kbd-private-xfce4-keyboard-shortcuts.xml-fix.patch
@@ -0,0 +1,31 @@
1From 708e59caaf1c0c271a96a4d1fe46b122aff45e34 Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
3Date: Mon, 27 Aug 2012 09:16:29 +0200
4Subject: [PATCH] libxfce4kbd-private/xfce4-keyboard-shortcuts.xml: fix xfwm4
5 crash on first start
6MIME-Version: 1.0
7Content-Type: text/plain; charset=UTF-8
8Content-Transfer-Encoding: 8bit
9
10Upstream-Status: Pending
11Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
12---
13 libxfce4kbd-private/xfce4-keyboard-shortcuts.xml | 4 ++++
14 1 files changed, 4 insertions(+), 0 deletions(-)
15
16diff --git a/libxfce4kbd-private/xfce4-keyboard-shortcuts.xml b/libxfce4kbd-private/xfce4-keyboard-shortcuts.xml
17index 723a10d..e6502f3 100644
18--- a/libxfce4kbd-private/xfce4-keyboard-shortcuts.xml
19+++ b/libxfce4kbd-private/xfce4-keyboard-shortcuts.xml
20@@ -66,4 +66,8 @@
21 <property name="&lt;Control&gt;F12" type="string" value="workspace_12_key"/>
22 </property>
23 </property>
24+ <property name="providers" type="array">
25+ <value type="string" value="commands"/>
26+ <value type="string" value="xfwm4"/>
27+ </property>
28 </channel>
29--
301.7.6.5
31
diff --git a/meta-xfce/recipes-xfce/libxfce4ui/files/0002-configure.ac.in-remove-optional-gtk3-support.patch b/meta-xfce/recipes-xfce/libxfce4ui/files/0002-configure.ac.in-remove-optional-gtk3-support.patch
new file mode 100644
index 000000000..a93fabfac
--- /dev/null
+++ b/meta-xfce/recipes-xfce/libxfce4ui/files/0002-configure.ac.in-remove-optional-gtk3-support.patch
@@ -0,0 +1,37 @@
1From d61dc6718a2abaf70d19f17d34128cb7e161e057 Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
3Date: Wed, 18 Sep 2013 20:50:11 +0200
4Subject: [PATCH] configure.ac.in: remove optional gtk3 support
5MIME-Version: 1.0
6Content-Type: text/plain; charset=UTF-8
7Content-Transfer-Encoding: 8bit
8
9it drags in gtk3 if that was build before. This is not yet wanted
10
11Upstream-Status: Inappropriate [configuration]
12
13Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
14---
15 configure.ac.in | 6 ------
16 1 file changed, 6 deletions(-)
17
18diff --git a/configure.ac.in b/configure.ac.in
19index e47df04..b6edab1 100644
20--- a/configure.ac.in
21+++ b/configure.ac.in
22@@ -129,12 +129,6 @@ XDT_CHECK_PACKAGE([GOBJECT], [gobject-2.0], [2.28.0])
23 XDT_CHECK_PACKAGE([GTK2], [gtk+-2.0], [2.24.0])
24 XDT_CHECK_PACKAGE([LIBXFCE4UTIL], [libxfce4util-1.0], [4.10.0])
25
26-dnl ***********************************************************
27-dnl *** Optional support for a GTK+3 version of the library ***
28-dnl ***********************************************************
29-XDT_CHECK_OPTIONAL_PACKAGE([GTK3],
30- [gtk+-3.0], [3.2.0], [gtk3],
31- [GTK+ 3 support])
32 AM_CONDITIONAL([ENABLE_GTK3_LIBRARY], [test "x$GTK3_FOUND" = "xyes"])
33
34 dnl *************************************************
35--
361.8.3.1
37
diff --git a/meta-xfce/recipes-xfce/libxfce4ui/libxfce4ui_4.10.0.bb b/meta-xfce/recipes-xfce/libxfce4ui/libxfce4ui_4.10.0.bb
new file mode 100644
index 000000000..52792f585
--- /dev/null
+++ b/meta-xfce/recipes-xfce/libxfce4ui/libxfce4ui_4.10.0.bb
@@ -0,0 +1,29 @@
1SUMMARY = "Xfce4 Widget library and X Window System interaction"
2SECTION = "x11/libs"
3LICENSE = "GPLv2"
4LIC_FILES_CHKSUM = "file://COPYING;md5=252890d9eee26aab7b432e8b8a616475"
5DEPENDS = "perl-native glib-2.0 gtk+ intltool libxfce4util xfconf xfce4-dev-tools virtual/libx11 libsm libice"
6
7inherit autotools gettext xfce xfce-git
8
9SRC_URI = " \
10 git://git.xfce.org/xfce/libxfce4ui;protocol=git \
11 file://0001-libxfce4kbd-private-xfce4-keyboard-shortcuts.xml-fix.patch \
12 file://0002-configure.ac.in-remove-optional-gtk3-support.patch \
13"
14SRCREV = "530b72f50fcbd8cb4b970fcc97be0321bf78183e"
15PV = "4.10.0+git${SRCPV}"
16S = "${WORKDIR}/git"
17
18EXTRA_OECONF += "--enable-maintainer-mode --disable-debug --with-vendor-info=${DISTRO}"
19
20PACKAGECONFIG ??= ""
21PACKAGECONFIG[gladeui] = "--enable-gladeui,--disable-gladeui,glade3"
22PACKAGECONFIG[startup-notification] = "--enable-startup-notification,--disable-startup-notification,startup-notification"
23
24FILES_${PN}-dbg += "${libdir}/glade3/modules/.debug"
25FILES_${PN}-dev += "${libdir}/glade3/modules/*.la \
26 ${datadir}/glade3/catalogs/*.in"
27PACKAGES += "${PN}-glade"
28FILES_${PN}-glade = "${libdir}/glade3 \
29 ${datadir}/glade3"
diff --git a/meta-xfce/recipes-xfce/libxfce4util/libxfce4util_4.10.1.bb b/meta-xfce/recipes-xfce/libxfce4util/libxfce4util_4.10.1.bb
new file mode 100644
index 000000000..b4e15e84a
--- /dev/null
+++ b/meta-xfce/recipes-xfce/libxfce4util/libxfce4util_4.10.1.bb
@@ -0,0 +1,10 @@
1SUMMARY = "Basic utility library for Xfce4"
2SECTION = "x11/libs"
3LICENSE = "GPLv2"
4LIC_FILES_CHKSUM = "file://COPYING;md5=252890d9eee26aab7b432e8b8a616475"
5DEPENDS = "intltool-native xfce4-dev-tools-native glib-2.0"
6
7inherit xfce
8
9SRC_URI[md5sum] = "11eec87e8eda2bc62512c2416cb807a1"
10SRC_URI[sha256sum] = "e82cd1ad715c02a385b3cf6646cb89aa3c4724446dac1d7e424971df12f6cfbb"
diff --git a/meta-xfce/recipes-xfce/packagegroups/packagegroup-xfce-base.bb b/meta-xfce/recipes-xfce/packagegroups/packagegroup-xfce-base.bb
new file mode 100644
index 000000000..7fcb3880e
--- /dev/null
+++ b/meta-xfce/recipes-xfce/packagegroups/packagegroup-xfce-base.bb
@@ -0,0 +1,39 @@
1SUMMARY = "All packages required for a base installation of XFCE"
2SECTION = "x11/wm"
3LICENSE = "MIT"
4LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=4d92cd373abda3937c2bc47fbc49d690"
5PR = "r5"
6
7inherit packagegroup
8
9RPROVIDES_${PN} += "task-xfce-base"
10RREPLACES_${PN} += "task-xfce-base"
11RCONFLICTS_${PN} += "task-xfce-base"
12
13RDEPENDS_${PN} = " \
14 xfwm4 \
15 xfce4-session \
16 xfconf \
17 xfdesktop \
18 xfce4-panel \
19 \
20 gtk-xfce-engine \
21 \
22 xfce4-panel-plugin-actions \
23 xfce4-panel-plugin-applicationsmenu \
24 xfce4-panel-plugin-clock \
25 xfce4-panel-plugin-directorymenu \
26 xfce4-panel-plugin-launcher \
27 xfce4-panel-plugin-pager \
28 xfce4-panel-plugin-separator \
29 xfce4-panel-plugin-showdesktop \
30 xfce4-panel-plugin-systray \
31 xfce4-panel-plugin-tasklist \
32 xfce4-panel-plugin-windowmenu \
33 xfce4-settings \
34 \
35 xfce4-notifyd \
36 xfce4-terminal \
37 thunar \
38 thunar-volman \
39"
diff --git a/meta-xfce/recipes-xfce/packagegroups/packagegroup-xfce-extended.bb b/meta-xfce/recipes-xfce/packagegroups/packagegroup-xfce-extended.bb
new file mode 100644
index 000000000..aef2f706b
--- /dev/null
+++ b/meta-xfce/recipes-xfce/packagegroups/packagegroup-xfce-extended.bb
@@ -0,0 +1,57 @@
1SUMMARY = "All packages for full XFCE installation"
2SECTION = "x11/wm"
3LICENSE = "MIT"
4LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=4d92cd373abda3937c2bc47fbc49d690"
5
6PR = "r10"
7
8inherit packagegroup
9
10RPROVIDES_${PN} += "task-xfce-extended"
11RREPLACES_${PN} += "task-xfce-extended"
12RCONFLICTS_${PN} += "task-xfce-extended"
13
14# mandatory
15RDEPENDS_${PN} = " \
16 packagegroup-xfce-base \
17"
18
19# nice to have
20RRECOMMENDS_${PN} = " \
21 xfwm4-theme-daloa \
22 xfwm4-theme-kokodi \
23 xfwm4-theme-moheli \
24 \
25 xfce4-cpufreq-plugin \
26 xfce4-cpugraph-plugin \
27 xfce4-datetime-plugin \
28 xfce4-eyes-plugin \
29 xfce4-clipman-plugin \
30 xfce4-diskperf-plugin \
31 xfce4-netload-plugin \
32 xfce4-genmon-plugin \
33 xfce4-xkb-plugin \
34 xfce4-wavelan-plugin \
35 xfce4-places-plugin \
36 xfce4-systemload-plugin \
37 xfce4-time-out-plugin \
38 xfce4-embed-plugin \
39 xfce4-weather-plugin \
40 xfce4-fsguard-plugin \
41 xfce4-battery-plugin \
42 xfce4-mount-plugin \
43 xfce4-brightness-plugin \
44 xfce4-closebutton-plugin \
45 xfce4-equake-plugin \
46 xfce4-notes-plugin \
47 \
48 thunar-media-tags-plugin \
49 thunar-archive-plugin \
50 \
51 xfce4-appfinder \
52 xfce4-screenshooter \
53 xfce4-power-manager \
54 xfce4-mixer \
55 ristretto \
56 xfce4-taskmanager \
57"
diff --git a/meta-xfce/recipes-xfce/thunar-volman/thunar-volman_0.8.0.bb b/meta-xfce/recipes-xfce/thunar-volman/thunar-volman_0.8.0.bb
new file mode 100644
index 000000000..909ae85dd
--- /dev/null
+++ b/meta-xfce/recipes-xfce/thunar-volman/thunar-volman_0.8.0.bb
@@ -0,0 +1,15 @@
1SUMMARY = "Automatic management of removable drives and media for thunar"
2SECTION = "x11"
3LICENSE = "GPLv2"
4LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
5DEPENDS = "exo glib-2.0 gtk+ libxfce4ui libxfce4util xfconf libnotify udev"
6
7inherit xfce
8
9SRC_URI[md5sum] = "250af757ea629c7c27f554d17119080c"
10SRC_URI[sha256sum] = "ff0887c862b578580d05f4cd7db66081382ff143f9cc7ea3c9ba58cf5d02bceb"
11
12PACKAGECONFIG ??= ""
13PACKAGECONFIG[notify] = "--enable-notifications,--disable-notifications,libnotify"
14
15RDEPENDS_${PN} = "eject"
diff --git a/meta-xfce/recipes-xfce/thunar/thunar_1.6.3.bb b/meta-xfce/recipes-xfce/thunar/thunar_1.6.3.bb
new file mode 100644
index 000000000..aa67fdfa0
--- /dev/null
+++ b/meta-xfce/recipes-xfce/thunar/thunar_1.6.3.bb
@@ -0,0 +1,29 @@
1SUMMARY = "File manager for the Xfce Desktop Environment"
2SECTION = "x11"
3LICENSE = "GPLv2"
4LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
5DEPENDS = "exo glib-2.0 gtk+ gdk-pixbuf libxfce4util libxfce4ui libsm dbus-glib startup-notification libnotify xfce4-panel"
6
7inherit xfce
8
9SRC_URI[md5sum] = "4f10d5d5576ce5127308d6badbac3afa"
10SRC_URI[sha256sum] = "9a2706f6881ac29cda9f0b0325d179153bc09e37bcbafcab9823c1c1ec89579d"
11SRC_URI = "http://archive.xfce.org/src/xfce/${PN}/${@'${PV}'[0:3]}/Thunar-${PV}.tar.bz2"
12
13S = "${WORKDIR}/Thunar-${PV}/"
14
15PACKAGECONFIG ??= ""
16PACKAGECONFIG[pcre] = "--enable-pcre,--disable-pcre,libpcre"
17
18FILES_${PN} += "${libdir}/thunarx-2/* \
19 ${libdir}/xfce4/panel/plugins/* \
20 ${libdir}/Thunar/[Tt]hunar* \
21 ${datadir}/dbus-1 \
22 ${datadir}/Thunar \
23 ${datadir}/xfce4/panel-plugins/*"
24
25FILES_${PN}-dbg += "${libdir}/thunarx-2/.debug/ \
26 ${libdir}/xfce4/panel/plugins/.debug/ \
27 ${libdir}/Thunar/.debug/"
28
29RRECOMMENDS_${PN} = "gvfs gvfsd-trash udisks"
diff --git a/meta-xfce/recipes-xfce/tumbler/tumbler_0.1.29.bb b/meta-xfce/recipes-xfce/tumbler/tumbler_0.1.29.bb
new file mode 100644
index 000000000..3860716ab
--- /dev/null
+++ b/meta-xfce/recipes-xfce/tumbler/tumbler_0.1.29.bb
@@ -0,0 +1,32 @@
1DESCRIPTION="Thumbnail service implementing the thumbnail management D-Bus specification"
2SECTION = "x11/libs"
3LICENSE = "GPLv2"
4LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
5DEPENDS = "dbus-glib freetype gdk-pixbuf poppler curl xfce4-dev-tools-native"
6
7inherit xfce
8
9SRC_URI[md5sum] = "f844215c5e3918eae58abdd85f146780"
10SRC_URI[sha256sum] = "c3bac4ee609e22be6c7f01a4fdf6086bc6b57940d82f99570a2d9d547a32fc93"
11
12INSANE_SKIP_${PN} = "dev-so"
13
14do_install_append() {
15 # correct tumbler-cache-plugin.so link (see plugins/xdg-cache/Makefile.am)
16 ln -sf ${libdir}/tumbler-1/plugins/cache/tumbler-xdg-cache.so ${D}${libdir}/tumbler-1/plugins/cache/tumbler-cache-plugin.so
17}
18
19FILES_${PN} += "${datadir}/dbus-1/services \
20 ${libdir}/tumbler-1/tumblerd \
21 ${libdir}/tumbler-1/plugins/*.so \
22 ${libdir}/tumbler-1/plugins/cache/*.so \
23"
24
25FILES_${PN}-dev += "${libdir}/tumbler-1/plugins/*.la \
26 ${libdir}/tumbler-1/plugins/cache/*.la"
27FILES_${PN}-staticdev += "${libdir}/tumbler-1/plugins/*.a \
28 ${libdir}/tumbler-1/plugins/cache/*.a"
29FILES_${PN}-dbg += "${libdir}/tumbler-1/.debug \
30 ${libdir}/tumbler-1/plugins/.debug \
31 ${libdir}/tumbler-1/plugins/cache/.debug \
32"
diff --git a/meta-xfce/recipes-xfce/xfce4-appfinder/xfce4-appfinder_4.10.1.bb b/meta-xfce/recipes-xfce/xfce4-appfinder/xfce4-appfinder_4.10.1.bb
new file mode 100644
index 000000000..f2d688f2d
--- /dev/null
+++ b/meta-xfce/recipes-xfce/xfce4-appfinder/xfce4-appfinder_4.10.1.bb
@@ -0,0 +1,10 @@
1DESCRIPTION="Xfce4 Application Finder"
2SECTION = "x11"
3LICENSE = "GPLv2"
4LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
5DEPENDS="glib-2.0 gtk+ libxfce4util libxfce4ui garcon dbus-glib xfconf"
6
7inherit xfce
8
9SRC_URI[md5sum] = "bea253956638e2df2dd950343b3b1b7b"
10SRC_URI[sha256sum] = "65ee74ffa76334d273e4c9ae501ec7f81f7de028813849f7d1441cbf7788eb77"
diff --git a/meta-xfce/recipes-xfce/xfce4-dev-tools/xfce4-dev-tools_4.11.0.bb b/meta-xfce/recipes-xfce/xfce4-dev-tools/xfce4-dev-tools_4.11.0.bb
new file mode 100644
index 000000000..3312fbdfe
--- /dev/null
+++ b/meta-xfce/recipes-xfce/xfce4-dev-tools/xfce4-dev-tools_4.11.0.bb
@@ -0,0 +1,21 @@
1SUMMARY = "Xfce4 development tools"
2HOMEPAGE = "http://www.xfce.org"
3SECTION = "x11/libs"
4LICENSE = "GPLv2"
5LIC_FILES_CHKSUM = "file://COPYING;md5=9ac2e7cff1ddaf48b6eab6028f23ef88"
6DEPENDS = "glib-2.0"
7
8inherit autotools
9
10BBCLASSEXTEND = "native"
11
12SRC_URI = "http://archive.xfce.org/src/xfce/${BPN}/${@'${PV}'[0:4]}/${BPN}-${PV}.tar.bz2"
13SRC_URI[md5sum] = "36112d0256092c30bd1b47105c547edf"
14SRC_URI[sha256sum] = "2dccdd4935716a97db28464ba2403572ce03134fd7adf294e1a59eaf297e6555"
15
16do_install_append() {
17 install -d ${D}${datadir}/aclocal
18 install -m 644 m4macros/*.m4 ${D}${datadir}/aclocal/
19}
20
21FILES_${PN} += "${datadir}/xfce4/dev-tools/m4macros/*.m4"
diff --git a/meta-xfce/recipes-xfce/xfce4-panel/xfce4-panel_4.10.1.bb b/meta-xfce/recipes-xfce/xfce4-panel/xfce4-panel_4.10.1.bb
new file mode 100644
index 000000000..08703e788
--- /dev/null
+++ b/meta-xfce/recipes-xfce/xfce4-panel/xfce4-panel_4.10.1.bb
@@ -0,0 +1,29 @@
1SUMMARY = "Xfce4 Panel"
2SECTION = "x11"
3LICENSE = "GPLv2"
4LIC_FILES_CHKSUM = "file://COPYING;md5=26a8bd75d8f8498bdbbe64a27791d4ee"
5DEPENDS = "libxfce4util garcon libxfce4ui xfconf exo gtk+ dbus cairo virtual/libx11 libxml2 libwnck"
6
7inherit xfce
8
9SRC_URI[md5sum] = "8a1f8371fc725ba00f4594c5c0f81c59"
10SRC_URI[sha256sum] = "573052ed1b65e247415f92df120c8a78f9e4152c2636d38c923f82e32b8475d6"
11
12python populate_packages_prepend() {
13 plugin_dir = d.expand('${libdir}/xfce4/panel/plugins/')
14 plugin_name = d.expand('${PN}-plugin-%s')
15 do_split_packages(d, plugin_dir, '^lib(.*).so$', plugin_name,
16 '${PN} plugin for %s', extra_depends='', prepend=True,
17 aux_files_pattern=['${datadir}/xfce4/panel/plugins/%s.desktop',
18 '${sysconfdir}/xdg/xfce/panel/%s-*',
19 '${datadir}/icons/hicolor/48x48/apps/*-%s.png',
20 '${bindir}/*%s*'])
21}
22
23PACKAGES_DYNAMIC += "^${PN}-plugin-.*"
24
25FILES_${PN} += "${libdir}/xfce4/panel/migrate \
26 ${libdir}/xfce4/panel/wrapper"
27
28FILES_${PN}-dbg += "${libdir}/xfce4/panel/plugins/.debug \
29"
diff --git a/meta-xfce/recipes-xfce/xfce4-power-manager/files/0001-Add-shutdown-reboot-functionality-for-systemd.patch b/meta-xfce/recipes-xfce/xfce4-power-manager/files/0001-Add-shutdown-reboot-functionality-for-systemd.patch
new file mode 100644
index 000000000..d5c5487b8
--- /dev/null
+++ b/meta-xfce/recipes-xfce/xfce4-power-manager/files/0001-Add-shutdown-reboot-functionality-for-systemd.patch
@@ -0,0 +1,677 @@
1From 023333688f73ed26097c693d43f76e4b7d5698e2 Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
3Date: Fri, 7 Jun 2013 18:38:42 +0200
4Subject: [PATCH] Add shutdown/reboot functionality for systemd
5MIME-Version: 1.0
6Content-Type: text/plain; charset=UTF-8
7Content-Transfer-Encoding: 8bit
8
9Upstream-Status: Submitted [2]
10
11[1] http://git.xfce.org/xfce/xfce4-session/commit/?id=ae28aef315a7a6b90f1649ce6d1f30b842791cbf
12[2] https://bugzilla.xfce.org/show_bug.cgi?id=10167
13
14Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
15---
16 configure.ac | 2 +
17 src/Makefile.am | 14 +++-
18 src/xfpm-manager.c | 29 ++++++-
19 src/xfpm-power.c | 66 ++++++++++++++-
20 src/xfpm-systemd.c | 245 ++++++++++++++++++++++++++++++++++++++++++++++++++++
21 src/xfpm-systemd.h | 60 +++++++++++++
22 6 files changed, 411 insertions(+), 5 deletions(-)
23 create mode 100644 src/xfpm-systemd.c
24 create mode 100644 src/xfpm-systemd.h
25
26diff --git a/configure.ac b/configure.ac
27index 633b340..1db2036 100644
28--- a/configure.ac
29+++ b/configure.ac
30@@ -95,6 +95,8 @@ if test "x$ac_cv_enable_polkit" = "xno"; then
31 polkit="no"
32 else
33 AC_MSG_RESULT([yes])
34+ m4_define([polkit_minimum_version], [0.100])
35+ XDT_CHECK_PACKAGE([SYSTEMD], [polkit-gobject-1], [polkit_minimum_version])
36 AC_DEFINE(ENABLE_POLKIT, 1 , [PolicyKit support])
37 polkit="yes"
38 fi
39diff --git a/src/Makefile.am b/src/Makefile.am
40index 0435bed..9b7fdd0 100644
41--- a/src/Makefile.am
42+++ b/src/Makefile.am
43@@ -18,8 +18,6 @@ xfce4_power_manager_SOURCES = \
44 xfpm-xfconf.h \
45 xfpm-disks.c \
46 xfpm-disks.h \
47- xfpm-console-kit.c \
48- xfpm-console-kit.h \
49 egg-idletime.c \
50 egg-idletime.h \
51 xfpm-backlight.c \
52@@ -39,6 +37,16 @@ xfce4_power_manager_SOURCES = \
53 xfpm-errors.c \
54 xfpm-errors.h
55
56+if ENABLE_POLKIT
57+xfce4_power_manager_SOURCES += \
58+ xfpm-systemd.c \
59+ xfpm-systemd.h
60+else
61+xfce4_power_manager_SOURCES += \
62+ xfpm-console-kit.c \
63+ xfpm-console-kit.h
64+endif
65+
66 xfce4_power_manager_CFLAGS = \
67 -I$(top_srcdir) \
68 -I$(top_srcdir)/common \
69@@ -52,6 +60,7 @@ xfce4_power_manager_CFLAGS = \
70 $(LIBXFCE4UI_CFLAGS) \
71 $(XFCONF_CFLAGS) \
72 $(LIBNOTIFY_CFLAGS) \
73+ $(SYSTEMD_CFLAGS) \
74 $(XRANDR_CFLAGS) \
75 $(DPMS_CFLAGS) \
76 $(PLATFORM_CPPFLAGS) \
77@@ -70,6 +79,7 @@ xfce4_power_manager_LDADD = \
78 $(LIBXFCE4UI_LIBS) \
79 $(XFCONF_LIBS) \
80 $(LIBNOTIFY_LIBS) \
81+ $(SYSTEMD_LIBS) \
82 $(XRANDR_LIBS) \
83 $(DPMS_LIBS)
84
85diff --git a/src/xfpm-manager.c b/src/xfpm-manager.c
86index 472ee3e..9bfb53c 100644
87--- a/src/xfpm-manager.c
88+++ b/src/xfpm-manager.c
89@@ -43,7 +43,6 @@
90 #include "xfpm-disks.h"
91 #include "xfpm-dpms.h"
92 #include "xfpm-manager.h"
93-#include "xfpm-console-kit.h"
94 #include "xfpm-button.h"
95 #include "xfpm-backlight.h"
96 #include "xfpm-inhibit.h"
97@@ -58,6 +57,12 @@
98 #include "xfpm-enum-types.h"
99 #include "xfpm-dbus-monitor.h"
100
101+#ifdef ENABLE_POLKIT
102+#include "xfpm-systemd.h"
103+#else
104+#include "xfpm-console-kit.h"
105+#endif
106+
107 static void xfpm_manager_finalize (GObject *object);
108
109 static void xfpm_manager_dbus_class_init (XfpmManagerClass *klass);
110@@ -80,7 +85,11 @@ struct XfpmManagerPrivate
111 XfpmButton *button;
112 XfpmXfconf *conf;
113 XfpmBacklight *backlight;
114+#ifdef ENABLE_POLKIT
115+ XfpmSystemd *systemd;
116+#else
117 XfpmConsoleKit *console;
118+#endif
119 XfpmDBusMonitor *monitor;
120 XfpmDisks *disks;
121 XfpmInhibit *inhibit;
122@@ -131,7 +140,11 @@ xfpm_manager_finalize (GObject *object)
123 g_object_unref (manager->priv->button);
124 g_object_unref (manager->priv->conf);
125 g_object_unref (manager->priv->client);
126+#ifdef ENABLE_POLKIT
127+ g_object_unref (manager->priv->systemd);
128+#else
129 g_object_unref (manager->priv->console);
130+#endif
131 g_object_unref (manager->priv->monitor);
132 g_object_unref (manager->priv->disks);
133 g_object_unref (manager->priv->inhibit);
134@@ -201,7 +214,11 @@ static void
135 xfpm_manager_shutdown (XfpmManager *manager)
136 {
137 GError *error = NULL;
138+#ifdef ENABLE_POLKIT
139+ xfpm_systemd_shutdown (manager->priv->systemd, &error );
140+#else
141 xfpm_console_kit_shutdown (manager->priv->console, &error );
142+#endif
143
144 if ( error )
145 {
146@@ -521,7 +538,11 @@ void xfpm_manager_start (XfpmManager *manager)
147 manager->priv->power = xfpm_power_get ();
148 manager->priv->button = xfpm_button_new ();
149 manager->priv->conf = xfpm_xfconf_new ();
150+#ifdef ENABLE_POLKIT
151+ manager->priv->systemd = xfpm_systemd_new ();
152+#else
153 manager->priv->console = xfpm_console_kit_new ();
154+#endif
155 manager->priv->monitor = xfpm_dbus_monitor_new ();
156 manager->priv->disks = xfpm_disks_new ();
157 manager->priv->inhibit = xfpm_inhibit_new ();
158@@ -603,9 +624,15 @@ GHashTable *xfpm_manager_get_config (XfpmManager *manager)
159
160 hash = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_free);
161
162+#ifdef ENABLE_POLKIT
163+ g_object_get (G_OBJECT (manager->priv->systemd),
164+ "can-shutdown", &can_shutdown,
165+ NULL);
166+#else
167 g_object_get (G_OBJECT (manager->priv->console),
168 "can-shutdown", &can_shutdown,
169 NULL);
170+#endif
171
172 g_object_get (G_OBJECT (manager->priv->power),
173 "auth-suspend", &auth_suspend,
174diff --git a/src/xfpm-power.c b/src/xfpm-power.c
175index 796bef8..391c7fc 100644
176--- a/src/xfpm-power.c
177+++ b/src/xfpm-power.c
178@@ -39,7 +39,6 @@
179 #include "xfpm-xfconf.h"
180 #include "xfpm-notify.h"
181 #include "xfpm-errors.h"
182-#include "xfpm-console-kit.h"
183 #include "xfpm-inhibit.h"
184 #include "xfpm-polkit.h"
185 #include "xfpm-network-manager.h"
186@@ -51,6 +50,12 @@
187 #include "xfpm-enum-types.h"
188 #include "egg-idletime.h"
189
190+#ifdef ENABLE_POLKIT
191+#include "xfpm-systemd.h"
192+#else
193+#include "xfpm-console-kit.h"
194+#endif
195+
196 static void xfpm_power_finalize (GObject *object);
197
198 static void xfpm_power_get_property (GObject *object,
199@@ -75,7 +80,11 @@ struct XfpmPowerPrivate
200
201 GHashTable *hash;
202
203+#ifdef ENABLE_POLKIT
204+ XfpmSystemd *systemd;
205+#else
206 XfpmConsoleKit *console;
207+#endif
208 XfpmInhibit *inhibit;
209 XfpmXfconf *conf;
210 GtkStatusIcon *adapter_icon;
211@@ -680,9 +689,15 @@ xfpm_power_add_actions_to_notification (XfpmPower *power, NotifyNotification *n)
212 {
213 gboolean can_shutdown;
214
215+#ifdef ENABLE_POLKIT
216+ g_object_get (G_OBJECT (power->priv->systemd),
217+ "can-shutdown", &can_shutdown,
218+ NULL);
219+#else
220 g_object_get (G_OBJECT (power->priv->console),
221 "can-shutdown", &can_shutdown,
222 NULL);
223+#endif
224
225 if ( power->priv->can_hibernate && power->priv->auth_hibernate )
226 {
227@@ -756,9 +771,15 @@ xfpm_power_show_critical_action_gtk (XfpmPower *power)
228 const gchar *message;
229 gboolean can_shutdown;
230
231+#ifdef ENABLE_POLKIT
232+ g_object_get (G_OBJECT (power->priv->systemd),
233+ "can-shutdown", &can_shutdown,
234+ NULL);
235+#else
236 g_object_get (G_OBJECT (power->priv->console),
237 "can-shutdown", &can_shutdown,
238 NULL);
239+#endif
240
241 message = _("System is running on low power. "\
242 "Save your work to avoid losing data");
243@@ -1327,7 +1348,11 @@ xfpm_power_init (XfpmPower *power)
244 power->priv->inhibit = xfpm_inhibit_new ();
245 power->priv->notify = xfpm_notify_new ();
246 power->priv->conf = xfpm_xfconf_new ();
247+#ifdef ENABLE_POLKIT
248+ power->priv->systemd = xfpm_systemd_new ();
249+#else
250 power->priv->console = xfpm_console_kit_new ();
251+#endif
252
253 g_signal_connect_swapped (power->priv->conf, "notify::" SHOW_TRAY_ICON_CFG,
254 G_CALLBACK (xfpm_power_refresh_adaptor_visible), power);
255@@ -1445,7 +1470,11 @@ xfpm_power_finalize (GObject *object)
256 g_object_unref (power->priv->inhibit);
257 g_object_unref (power->priv->notify);
258 g_object_unref (power->priv->conf);
259+#ifdef ENABLE_POLKIT
260+ g_object_unref (power->priv->systemd);
261+#else
262 g_object_unref (power->priv->console);
263+#endif
264
265 xfpm_power_hide_adapter_icon (power);
266
267@@ -1607,9 +1636,15 @@ static gboolean xfpm_power_dbus_shutdown (XfpmPower *power,
268 {
269 gboolean can_reboot;
270
271+#ifdef ENABLE_POLKIT
272+ g_object_get (G_OBJECT (power->priv->systemd),
273+ "can-shutdown", &can_reboot,
274+ NULL);
275+#else
276 g_object_get (G_OBJECT (power->priv->console),
277 "can-shutdown", &can_reboot,
278 NULL);
279+#endif
280
281 if ( !can_reboot)
282 {
283@@ -1618,7 +1653,11 @@ static gboolean xfpm_power_dbus_shutdown (XfpmPower *power,
284 return FALSE;
285 }
286
287+#ifdef ENABLE_POLKIT
288+ xfpm_systemd_shutdown (power->priv->systemd, error);
289+#else
290 xfpm_console_kit_shutdown (power->priv->console, error);
291+#endif
292
293 return TRUE;
294 }
295@@ -1628,9 +1667,15 @@ static gboolean xfpm_power_dbus_reboot (XfpmPower *power,
296 {
297 gboolean can_reboot;
298
299+#ifdef ENABLE_POLKIT
300+ g_object_get (G_OBJECT (power->priv->systemd),
301+ "can-restart", &can_reboot,
302+ NULL);
303+#else
304 g_object_get (G_OBJECT (power->priv->console),
305 "can-restart", &can_reboot,
306 NULL);
307+#endif
308
309 if ( !can_reboot)
310 {
311@@ -1639,7 +1684,11 @@ static gboolean xfpm_power_dbus_reboot (XfpmPower *power,
312 return FALSE;
313 }
314
315+#ifdef ENABLE_POLKIT
316+ xfpm_systemd_reboot (power->priv->systemd, error);
317+#else
318 xfpm_console_kit_reboot (power->priv->console, error);
319+#endif
320
321 return TRUE;
322 }
323@@ -1694,10 +1743,16 @@ static gboolean xfpm_power_dbus_can_reboot (XfpmPower * power,
324 gboolean * OUT_can_reboot,
325 GError ** error)
326 {
327+#ifdef ENABLE_POLKIT
328+ g_object_get (G_OBJECT (power->priv->systemd),
329+ "can-reboot", OUT_can_reboot,
330+ NULL);
331+#else
332 g_object_get (G_OBJECT (power->priv->console),
333 "can-reboot", OUT_can_reboot,
334 NULL);
335-
336+#endif
337+
338 return TRUE;
339 }
340
341@@ -1705,9 +1760,16 @@ static gboolean xfpm_power_dbus_can_shutdown (XfpmPower * power,
342 gboolean * OUT_can_shutdown,
343 GError ** error)
344 {
345+#ifdef ENABLE_POLKIT
346+ g_object_get (G_OBJECT (power->priv->systemd),
347+ "can-shutdown", OUT_can_shutdown,
348+ NULL);
349+#else
350 g_object_get (G_OBJECT (power->priv->console),
351 "can-shutdown", OUT_can_shutdown,
352 NULL);
353+#endif
354+
355 return TRUE;
356 }
357
358diff --git a/src/xfpm-systemd.c b/src/xfpm-systemd.c
359new file mode 100644
360index 0000000..cc1cba1
361--- /dev/null
362+++ b/src/xfpm-systemd.c
363@@ -0,0 +1,245 @@
364+/*
365+ * * Copyright (C) 2009-2011 Ali <aliov@xfce.org>
366+ * * Copyright (C) 2013 Andreas Müller <schnitzeltony@googlemail.com>
367+ *
368+ * Licensed under the GNU General Public License Version 2
369+ *
370+ * This program is free software; you can redistribute it and/or modify
371+ * it under the terms of the GNU General Public License as published by
372+ * the Free Software Foundation; either version 2 of the License, or
373+ * (at your option) any later version.
374+ *
375+ * This program is distributed in the hope that it will be useful,
376+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
377+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
378+ * GNU General Public License for more details.
379+ *
380+ * You should have received a copy of the GNU General Public License
381+ * along with this program; if not, write to the Free Software
382+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
383+ */
384+
385+#ifdef HAVE_CONFIG_H
386+#include <config.h>
387+#endif
388+
389+#include <stdio.h>
390+#include <stdlib.h>
391+#include <string.h>
392+
393+#include <dbus/dbus-glib.h>
394+#include <polkit/polkit.h>
395+
396+#include "xfpm-systemd.h"
397+
398+
399+static void xfpm_systemd_finalize (GObject *object);
400+
401+static void xfpm_systemd_get_property (GObject *object,
402+ guint prop_id,
403+ GValue *value,
404+ GParamSpec *pspec);
405+
406+#define XFPM_SYSTEMD_GET_PRIVATE(o) \
407+(G_TYPE_INSTANCE_GET_PRIVATE ((o), XFPM_TYPE_SYSTEMD, XfpmSystemdPrivate))
408+
409+struct XfpmSystemdPrivate
410+{
411+ gboolean can_shutdown;
412+ gboolean can_restart;
413+
414+ PolkitAuthority *authority;
415+ PolkitSubject *subject;
416+};
417+
418+enum
419+{
420+ PROP_0,
421+ PROP_CAN_RESTART,
422+ PROP_CAN_SHUTDOWN
423+};
424+
425+G_DEFINE_TYPE (XfpmSystemd, xfpm_systemd, G_TYPE_OBJECT)
426+
427+#define SYSTEMD_DBUS_NAME "org.freedesktop.login1"
428+#define SYSTEMD_DBUS_PATH "/org/freedesktop/login1"
429+#define SYSTEMD_DBUS_INTERFACE "org.freedesktop.login1.Manager"
430+#define SYSTEMD_REBOOT_ACTION "Reboot"
431+#define SYSTEMD_POWEROFF_ACTION "PowerOff"
432+#define SYSTEMD_REBOOT_TEST "org.freedesktop.login1.reboot"
433+#define SYSTEMD_POWEROFF_TEST "org.freedesktop.login1.power-off"
434+
435+static void
436+xfpm_systemd_class_init (XfpmSystemdClass *klass)
437+{
438+ GObjectClass *object_class = G_OBJECT_CLASS (klass);
439+
440+ object_class->finalize = xfpm_systemd_finalize;
441+
442+ object_class->get_property = xfpm_systemd_get_property;
443+
444+ g_object_class_install_property (object_class,
445+ PROP_CAN_RESTART,
446+ g_param_spec_boolean ("can-restart",
447+ NULL, NULL,
448+ FALSE,
449+ G_PARAM_READABLE));
450+
451+ g_object_class_install_property (object_class,
452+ PROP_CAN_SHUTDOWN,
453+ g_param_spec_boolean ("can-shutdown",
454+ NULL, NULL,
455+ FALSE,
456+ G_PARAM_READABLE));
457+
458+ g_type_class_add_private (klass, sizeof (XfpmSystemdPrivate));
459+}
460+
461+static gboolean
462+xfpm_systemd_can_method (XfpmSystemd *systemd,
463+ gboolean *can_method,
464+ const gchar *method)
465+{
466+ PolkitAuthorizationResult *res;
467+ GError *local_error = NULL;
468+
469+ *can_method = FALSE;
470+ res = polkit_authority_check_authorization_sync (systemd->priv->authority,
471+ systemd->priv->subject,
472+ method,
473+ NULL,
474+ POLKIT_CHECK_AUTHORIZATION_FLAGS_NONE,
475+ NULL,
476+ &local_error);
477+ if ( local_error )
478+ {
479+ g_critical ("Unable to get %s : %s", method, local_error->message);
480+ g_error_free (local_error);
481+ }
482+
483+ if(res)
484+ {
485+ *can_method = polkit_authorization_result_get_is_authorized (res) ||
486+ polkit_authorization_result_get_is_challenge (res);
487+ g_object_unref (G_OBJECT (res));
488+ }
489+}
490+
491+static void
492+xfpm_systemd_init (XfpmSystemd *systemd)
493+{
494+ PolkitAuthorizationResult *res;
495+
496+ systemd->priv = XFPM_SYSTEMD_GET_PRIVATE (systemd);
497+ systemd->priv->authority = polkit_authority_get_sync (NULL, NULL);
498+ systemd->priv->subject = polkit_unix_process_new (getpid());
499+ systemd->priv->can_shutdown = FALSE;
500+ systemd->priv->can_restart = FALSE;
501+
502+ if(systemd->priv->authority && systemd->priv->subject)
503+ {
504+ xfpm_systemd_can_method (systemd,
505+ &systemd->priv->can_shutdown,
506+ SYSTEMD_POWEROFF_TEST);
507+ xfpm_systemd_can_method (systemd,
508+ &systemd->priv->can_restart,
509+ SYSTEMD_REBOOT_TEST);
510+ }
511+}
512+
513+static void xfpm_systemd_get_property (GObject *object,
514+ guint prop_id,
515+ GValue *value,
516+ GParamSpec *pspec)
517+{
518+ XfpmSystemd *systemd;
519+ systemd = XFPM_SYSTEMD (object);
520+
521+ switch (prop_id)
522+ {
523+ case PROP_CAN_SHUTDOWN:
524+ g_value_set_boolean (value, systemd->priv->can_shutdown);
525+ break;
526+ case PROP_CAN_RESTART:
527+ g_value_set_boolean (value, systemd->priv->can_restart);
528+ break;
529+ default:
530+ G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
531+ break;
532+ }
533+}
534+
535+static void
536+xfpm_systemd_finalize (GObject *object)
537+{
538+ XfpmSystemd *systemd;
539+
540+ systemd = XFPM_SYSTEMD (object);
541+
542+ if(systemd->priv->authority)
543+ g_object_unref (G_OBJECT (systemd->priv->authority));
544+ if(systemd->priv->subject)
545+ g_object_unref (G_OBJECT (systemd->priv->subject));
546+
547+ G_OBJECT_CLASS (xfpm_systemd_parent_class)->finalize (object);
548+}
549+
550+XfpmSystemd *
551+xfpm_systemd_new (void)
552+{
553+ static gpointer systemd_obj = NULL;
554+
555+ if ( G_LIKELY (systemd_obj != NULL ) )
556+ {
557+ g_object_ref (systemd_obj);
558+ }
559+ else
560+ {
561+ systemd_obj = g_object_new (XFPM_TYPE_SYSTEMD, NULL);
562+ g_object_add_weak_pointer (systemd_obj, &systemd_obj);
563+ }
564+
565+ return XFPM_SYSTEMD (systemd_obj);
566+}
567+
568+static void
569+xfpm_systemd_try_method (XfpmSystemd *systemd,
570+ const gchar *method,
571+ GError **error)
572+{
573+ GDBusConnection *bus;
574+ GError *local_error = NULL;
575+
576+ bus = g_bus_get_sync (G_BUS_TYPE_SYSTEM, NULL, error);
577+ if (G_LIKELY (bus != NULL))
578+ {
579+ g_dbus_connection_call_sync (bus,
580+ SYSTEMD_DBUS_NAME,
581+ SYSTEMD_DBUS_PATH,
582+ SYSTEMD_DBUS_INTERFACE,
583+ method,
584+ g_variant_new ("(b)", TRUE),
585+ NULL, 0, G_MAXINT, NULL,
586+ &local_error);
587+ g_object_unref (G_OBJECT (bus));
588+
589+ if (local_error != NULL)
590+ {
591+ g_propagate_error (error, local_error);
592+ }
593+ }
594+}
595+
596+void xfpm_systemd_shutdown (XfpmSystemd *systemd, GError **error)
597+{
598+ xfpm_systemd_try_method (systemd,
599+ SYSTEMD_POWEROFF_ACTION,
600+ error);
601+}
602+
603+void xfpm_systemd_reboot (XfpmSystemd *systemd, GError **error)
604+{
605+ xfpm_systemd_try_method (systemd,
606+ SYSTEMD_REBOOT_ACTION,
607+ error);
608+}
609diff --git a/src/xfpm-systemd.h b/src/xfpm-systemd.h
610new file mode 100644
611index 0000000..2890e08
612--- /dev/null
613+++ b/src/xfpm-systemd.h
614@@ -0,0 +1,60 @@
615+/*
616+ * * Copyright (C) 2009-2011 Ali <aliov@xfce.org>
617+ * * Copyright (C) 2013 Andreas Müller <schnitzeltony@googlemail.com>
618+ *
619+ * Licensed under the GNU General Public License Version 2
620+ *
621+ * This program is free software; you can redistribute it and/or modify
622+ * it under the terms of the GNU General Public License as published by
623+ * the Free Software Foundation; either version 2 of the License, or
624+ * (at your option) any later version.
625+ *
626+ * This program is distributed in the hope that it will be useful,
627+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
628+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
629+ * GNU General Public License for more details.
630+ *
631+ * You should have received a copy of the GNU General Public License
632+ * along with this program; if not, write to the Free Software
633+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
634+ */
635+
636+#ifndef __XFPM_SYSTEMD_H
637+#define __XFPM_SYSTEMD_H
638+
639+#include <glib-object.h>
640+
641+G_BEGIN_DECLS
642+
643+#define XFPM_TYPE_SYSTEMD (xfpm_systemd_get_type () )
644+#define XFPM_SYSTEMD(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), XFPM_TYPE_SYSTEMD, XfpmSystemd))
645+#define XFPM_IS_SYSTEMD(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), XFPM_TYPE_SYSTEMD))
646+
647+typedef struct XfpmSystemdPrivate XfpmSystemdPrivate;
648+
649+typedef struct
650+{
651+ GObject parent;
652+ XfpmSystemdPrivate *priv;
653+
654+} XfpmSystemd;
655+
656+typedef struct
657+{
658+ GObjectClass parent_class;
659+
660+} XfpmSystemdClass;
661+
662+GType XFPM_SYSTEMD_get_type (void) G_GNUC_CONST;
663+
664+XfpmSystemd *XFPM_SYSTEMD_new (void);
665+
666+void XFPM_SYSTEMD_shutdown (XfpmSystemd *systemd,
667+ GError **error);
668+
669+void XFPM_SYSTEMD_reboot (XfpmSystemd *systemd,
670+ GError **error);
671+
672+G_END_DECLS
673+
674+#endif /* __XFPM_SYSTEMD_H */
675--
6761.7.6.5
677
diff --git a/meta-xfce/recipes-xfce/xfce4-power-manager/xfce4-power-manager_1.2.0.bb b/meta-xfce/recipes-xfce/xfce4-power-manager/xfce4-power-manager_1.2.0.bb
new file mode 100644
index 000000000..6e92186ab
--- /dev/null
+++ b/meta-xfce/recipes-xfce/xfce4-power-manager/xfce4-power-manager_1.2.0.bb
@@ -0,0 +1,33 @@
1SUMMARY = "Power manager for the Xfce desktop environment"
2HOMEPAGE = "http://goodies.xfce.org/projects/applications/xfce4-power-manager"
3SECTION = "x11"
4
5LICENSE = "GPLv2+"
6LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
7
8inherit xfce
9
10DEPENDS = "gtk+ glib-2.0 dbus-glib xfconf libxfce4ui libxfce4util libnotify \
11 libxrandr virtual/libx11 libxext xfce4-panel"
12
13SRC_URI += "file://0001-Add-shutdown-reboot-functionality-for-systemd.patch"
14
15RDEPENDS_${PN} = "networkmanager udisks upower ${@base_contains('DISTRO_FEATURES','systemd','','consolekit',d)}"
16
17EXTRA_OECONF = " \
18 --enable-network-manager \
19 --enable-panel-plugins \
20"
21
22PACKAGECONFIG ??= "${@base_contains('DISTRO_FEATURES','systemd','systemd','',d)}"
23PACKAGECONFIG[systemd] = "--enable-polkit, --disable-polkit, polkit"
24
25PACKAGES += "xfce4-brightness-plugin"
26FILES_${PN} += "${datadir}/polkit-1"
27FILES_xfce4-brightness-plugin = " \
28 ${libdir}/xfce4/panel-plugins/xfce4-brightness-plugin \
29 ${datadir}/xfce4/panel-plugins/xfce4-brightness-plugin.desktop \
30"
31
32SRC_URI[md5sum] = "935599b7114b0a4b0e2c9a5d6c72524c"
33SRC_URI[sha256sum] = "d7fb98a540284b62f4201527de17d4b24123f9d26c9f49131dd497c8387184e9"
diff --git a/meta-xfce/recipes-xfce/xfce4-session/xfce4-session/0001-configure.in-hard-code-path-to-iceauth.patch b/meta-xfce/recipes-xfce/xfce4-session/xfce4-session/0001-configure.in-hard-code-path-to-iceauth.patch
new file mode 100644
index 000000000..d619cde6c
--- /dev/null
+++ b/meta-xfce/recipes-xfce/xfce4-session/xfce4-session/0001-configure.in-hard-code-path-to-iceauth.patch
@@ -0,0 +1,40 @@
1From a629b051f4e5462150c77b95574bbc7a33bc9666 Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
3Date: Mon, 31 Dec 2012 16:35:29 +0100
4Subject: [PATCH] configure.ac: hard code path to iceauth
5MIME-Version: 1.0
6Content-Type: text/plain; charset=UTF-8
7Content-Transfer-Encoding: 8bit
8
9workaround AC_PATH_PROG which was meant to find programs required at build-time
10not at run-time.
11
12Upstream-Status: Inappropriate [config]
13
14Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
15---
16 configure.ac | 8 +-------
17 1 files changed, 1 insertions(+), 7 deletions(-)
18
19diff --git a/configure.ac b/configure.ac
20index 3cf3510..505e744 100644
21--- a/configure.ac
22+++ b/configure.ac
23@@ -111,13 +111,7 @@ XDT_FEATURE_DEBUG([xfsm_debug_default])
24 dnl Check for linker optimizations
25 XDT_FEATURE_LINKER_OPTS()
26
27-dnl Check for iceauth
28-AC_PATH_PROG([ICEAUTH], [iceauth])
29-if test x"$ICEAUTH" != x""; then
30- AC_DEFINE_UNQUOTED([ICEAUTH_CMD], ["$ICEAUTH"], [path to iceauth])
31-else
32- AC_MSG_ERROR([iceauth missing, please check your X11 installation])
33-fi
34+AC_DEFINE_UNQUOTED([ICEAUTH_CMD], ["$bindir/iceauth"], [path to iceauth])
35
36 dnl Find a location for the session desktop file
37 AC_MSG_CHECKING([what xsession-prefix to use])
38--
391.7.4.4
40
diff --git a/meta-xfce/recipes-xfce/xfce4-session/xfce4-session_4.10.1.bb b/meta-xfce/recipes-xfce/xfce4-session/xfce4-session_4.10.1.bb
new file mode 100644
index 000000000..74289fb35
--- /dev/null
+++ b/meta-xfce/recipes-xfce/xfce4-session/xfce4-session_4.10.1.bb
@@ -0,0 +1,36 @@
1SUMMARY = "xfce4-session is a session manager for Xfce 4 Desktop Environment"
2SECTION = "x11"
3LICENSE = "GPLv2"
4LIC_FILES_CHKSUM = "file://COPYING;md5=9ac2e7cff1ddaf48b6eab6028f23ef88"
5DEPENDS = "virtual/libx11 libsm libxfce4util libxfce4ui gtk+ libwnck dbus dbus-glib xfconf"
6RDEPENDS_${PN} = "netbase xinit dbus-x11 iceauth upower"
7
8inherit xfce update-alternatives
9
10SRC_URI[md5sum] = "1757657c1d590aa6274b7b7cbba33352"
11SRC_URI[sha256sum] = "0154fabdc398798c3445374ccc52a2f5bcb2d867fc94bc54114395b24f9cfc83"
12SRC_URI += " \
13 file://0001-configure.in-hard-code-path-to-iceauth.patch \
14"
15
16ALTERNATIVE_${PN} = "x-session-manager"
17ALTERNATIVE_TARGET[x-session-manager] = "${bindir}/xfce4-session"
18ALTERNATIVE_PRIORITY_${PN} = "100"
19
20# protect from frightening message that xfce might not work correctly
21pkg_postinst_${PN} () {
22 echo 127.0.0.1 ${MACHINE} >> /etc/hosts
23}
24
25PACKAGECONFIG ??= "${@base_contains('DISTRO_FEATURES','systemd','systemd','consolekit',d)}"
26PACKAGECONFIG[systemd] = "--enable-systemd, --disable-systemd, polkit, systemd"
27PACKAGECONFIG[consolekit] = ",,,consolekit"
28
29FILES_${PN} += "${libdir}/xfce4/*/*/*.so \
30 ${libdir}/xfce4/session/*-*-* \
31 ${datadir}/xsessions \
32 ${datadir}/themes/Default/balou/*"
33
34FILES_${PN}-dbg += "${libdir}/xfce4/*/*/.debug"
35
36FILES_${PN}-staticdev += "${libdir}/xfce4/*/*/*.*a"
diff --git a/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/0001-xsettings.xml-remove-trouble-causing-comment.patch b/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/0001-xsettings.xml-remove-trouble-causing-comment.patch
new file mode 100644
index 000000000..f926a93d4
--- /dev/null
+++ b/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/0001-xsettings.xml-remove-trouble-causing-comment.patch
@@ -0,0 +1,31 @@
1From a84a7a6537544cdf56e1d4cad47a4cf002964039 Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
3Date: Sun, 20 May 2012 15:20:08 +0200
4Subject: [PATCH 1/2] xsettings.xml: remove trouble causing comment
5MIME-Version: 1.0
6Content-Type: text/plain; charset=UTF-8
7Content-Transfer-Encoding: 8bit
8Upstream-Status: Pending
9
10
11Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
12---
13 xfsettingsd/xsettings.xml | 5 -----
14 1 files changed, 0 insertions(+), 5 deletions(-)
15
16diff --git a/xfsettingsd/xsettings.xml b/xfsettingsd/xsettings.xml
17index 8f9e2eb..49a4c1e 100644
18--- a/xfsettingsd/xsettings.xml
19+++ b/xfsettingsd/xsettings.xml
20@@ -1,8 +1,3 @@
21-<!--
22- Default values for the X settings registry as described in
23- http://www.freedesktop.org/wiki/Specifications/XSettingsRegistry
24--->
25-
26 <?xml version="1.0" encoding="UTF-8"?>
27 <channel name="xsettings" version="1.0">
28 <property name="Net" type="empty">
29--
301.7.4.4
31
diff --git a/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/0002-xsettings.xml-Set-default-themes.patch b/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/0002-xsettings.xml-Set-default-themes.patch
new file mode 100644
index 000000000..498f8d00d
--- /dev/null
+++ b/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/0002-xsettings.xml-Set-default-themes.patch
@@ -0,0 +1,32 @@
1From 071a390ba09a8a412f73d295be81a805804a1f24 Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
3Date: Sun, 20 May 2012 15:22:09 +0200
4Subject: [PATCH 2/2] xsettings.xml: Set default themes
5MIME-Version: 1.0
6Content-Type: text/plain; charset=UTF-8
7Content-Transfer-Encoding: 8bit
8Upstram status: Inappropriate [configuration]
9
10Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
11---
12 xfsettingsd/xsettings.xml | 4 ++--
13 1 files changed, 2 insertions(+), 2 deletions(-)
14
15diff --git a/xfsettingsd/xsettings.xml b/xfsettingsd/xsettings.xml
16index 49a4c1e..5ec94e9 100644
17--- a/xfsettingsd/xsettings.xml
18+++ b/xfsettingsd/xsettings.xml
19@@ -1,8 +1,8 @@
20 <?xml version="1.0" encoding="UTF-8"?>
21 <channel name="xsettings" version="1.0">
22 <property name="Net" type="empty">
23- <property name="ThemeName" type="empty"/>
24- <property name="IconThemeName" type="empty"/>
25+ <property name="ThemeName" type="string" value="Xfce"/>
26+ <property name="IconThemeName" type="string" value="gnome"/>
27 <property name="DoubleClickTime" type="int" value="250"/>
28 <property name="DoubleClickDistance" type="int" value="5"/>
29 <property name="DndDragThreshold" type="int" value="8"/>
30--
311.7.4.4
32
diff --git a/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/touchscreen/0001-add-cursor-theme-xfce-invisible.patch b/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/touchscreen/0001-add-cursor-theme-xfce-invisible.patch
new file mode 100644
index 000000000..4d8e01d59
--- /dev/null
+++ b/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/touchscreen/0001-add-cursor-theme-xfce-invisible.patch
@@ -0,0 +1,248 @@
1From 4be18d7c8f2ac72b402dcbe8385922638fcd0a89 Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
3Date: Tue, 30 Oct 2012 13:14:11 +0100
4Subject: [PATCH 1/5] add cursor-theme "xfce-invisible"
5MIME-Version: 1.0
6Content-Type: text/plain; charset=UTF-8
7Content-Transfer-Encoding: 8bit
8
9Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
10Upstream-Status: Submitted [1]
11[1] https://bugzilla.xfce.org/show_bug.cgi?id=9474
12---
13 Makefile.am | 1 +
14 configure.ac.in | 2 +
15 cursors/Makefile.am | 178 +++++++++++++++++++++++++++++++++++++++++++++++++++
16 cursors/index.theme | 3 +
17 6 files changed, 184 insertions(+), 0 deletions(-)
18 create mode 100644 cursors/Makefile.am
19 create mode 100644 cursors/index.theme
20
21diff --git a/Makefile.am b/Makefile.am
22index 3060bac..3f0dd1d 100644
23--- a/Makefile.am
24+++ b/Makefile.am
25@@ -1,6 +1,7 @@
26 # $Id$
27
28 SUBDIRS = \
29+ cursors \
30 dialogs \
31 xfce4-settings-manager \
32 xfce4-settings-editor \
33diff --git a/configure.ac.in b/configure.ac.in
34index 0e7907d..1378049 100644
35--- a/configure.ac.in
36+++ b/configure.ac.in
37@@ -157,6 +157,7 @@ dnl *** Optional support for Xcursor ***
38 dnl ************************************
39 XDT_CHECK_OPTIONAL_PACKAGE([XCURSOR], [xcursor], [1.1.0],
40 [xcursor], [Cursor themes support])
41+AC_SUBST(cursordir, "\${datadir}/icons/xfce-invisible/cursors")
42
43 dnl ****************************************
44 dnl *** Optional support for Libxklavier ***
45@@ -232,6 +233,7 @@ AC_SUBST([PLATFORM_LDFLAGS])
46 AC_OUTPUT([
47 Makefile
48 po/Makefile.in
49+cursors/Makefile
50 dialogs/Makefile
51 dialogs/appearance-settings/Makefile
52 dialogs/accessibility-settings/Makefile
53diff --git a/cursors/Makefile.am b/cursors/Makefile.am
54new file mode 100644
55index 0000000..c9e5a9f
56--- /dev/null
57+++ b/cursors/Makefile.am
58@@ -0,0 +1,178 @@
59+CURSOR_NAMES_INVISIBLE = \
60+ 00008160000006810000408080010102 \
61+ 028006030e0e7ebffc7f7070c0600140 \
62+ 2870a09082c103050810ffdffffe0204 \
63+ 03b6e0fcb3499374a867c041f52298f0 \
64+ 0876e1c15ff2fc01f906f1c363074c0f \
65+ 08ffe1cb5fe6fc01f906f1c063814ccf \
66+ 08ffe1e65f80fcfdf9fff11263e74c48 \
67+ 1001208387f90000800003000700f6ff \
68+ 1081e37283d90000800003c07f3ef6bf \
69+ 14fef782d02440884392942c11205230 \
70+ 208530c400c041818281048008011002 \
71+ 3085a0e285430894940527032f8b26df \
72+ 4498f0e0c1937ffe01fd06f973665830 \
73+ 5aca4d189052212118709018842178c0 \
74+ 5c6cd98b3f3ebcb1f9c7f1c204630408 \
75+ 6407b0e94181790501fd1e167b474872 \
76+ 640fb0e74195791501fd1ed57b41487f \
77+ 9081237383d90e509aa00f00170e968f \
78+ 9d800788f1b08800ae810202380a0822 \
79+ a2a266d0498c3104214a47bd64ab0fc8 \
80+ b66166c04f8c3109214a4fbd64a50fc8 \
81+ c7088f0f3e6c8088236ef8e1e3e70000 \
82+ d9ce0ab605698f320427677b458ad60b \
83+ e29285e634086352946a0e7090d73106 \
84+ f41c0e382c94c0958e07017e42b00462 \
85+ f41c0e382c97c0938e07017e42800402 \
86+ fcf1c3c7cd4491d801f1e1c78f100000 \
87+ fcf21c00b30f7e3f83fe0dfd12e71cff \
88+ alias \
89+ all-scroll \
90+ arrow \
91+ base_arrow_down \
92+ base_arrow_up \
93+ based_arrow_down \
94+ based_arrow_up \
95+ bd_double_arrow \
96+ boat \
97+ bottom_left_corner \
98+ bottom_right_corner \
99+ bottom_side \
100+ bottom_tee \
101+ cell \
102+ center_ptr \
103+ circle \
104+ closedhand \
105+ color-picker \
106+ col-resize \
107+ copy \
108+ cross \
109+ cross_reverse \
110+ crossed_circle \
111+ crosshair \
112+ default \
113+ diamond_cross \
114+ dnd-ask \
115+ dnd-copy \
116+ dnd-link \
117+ dnd-move \
118+ dnd-no-drop \
119+ dnd-none \
120+ dot \
121+ dot_box_mask \
122+ dotbox \
123+ double_arrow \
124+ down_arrow \
125+ draft_large \
126+ draft_small \
127+ draped_box \
128+ e-resize \
129+ ew-resize \
130+ exchange \
131+ fd_double_arrow \
132+ fleur \
133+ forbidden \
134+ grab \
135+ grabbing \
136+ gumby \
137+ h_double_arrow \
138+ hand \
139+ hand1 \
140+ hand2 \
141+ help \
142+ ibeam \
143+ icon \
144+ left_arrow \
145+ left_ptr \
146+ left_side \
147+ left_tee \
148+ link \
149+ ll_angle \
150+ lr_angle \
151+ move \
152+ ne-resize \
153+ nesw-resize \
154+ no-drop \
155+ not-allowed \
156+ n-resize \
157+ ns-resize \
158+ nw-resize \
159+ nwse-resize \
160+ openhand \
161+ pencil \
162+ pirate \
163+ plus \
164+ pointer \
165+ pointing_hand \
166+ question_arrow \
167+ right_arrow \
168+ right_ptr \
169+ right_side \
170+ right_tee \
171+ row-resize \
172+ sailboat \
173+ sb_down_arrow \
174+ sb_h_double_arrow \
175+ sb_left_arrow \
176+ sb_right_arrow \
177+ sb_up_arrow \
178+ sb_v_double_arrow \
179+ se-resize \
180+ size_all \
181+ size_bdiag \
182+ size_fdiag \
183+ size_hor \
184+ size_ver \
185+ sizing \
186+ shuttle \
187+ split_h \
188+ split_v \
189+ s-resize \
190+ sw-resize \
191+ target \
192+ tcross \
193+ text \
194+ top_left_arrow \
195+ top_left_corner \
196+ top_right_corner \
197+ top_side \
198+ top_tee \
199+ trek \
200+ ul_angle \
201+ up_arrow \
202+ ur_angle \
203+ vertical-text \
204+ v_double_arrow \
205+ whats_this \
206+ w-resize \
207+ X_cursor \
208+ xterm \
209+ zoom-in \
210+ zoom-out
211+
212+CURSOR_NAMES = \
213+ 3ecb610c1bf2410f44200f48c40d3599 \
214+ 08e8e1c95fe2fc01f976f1e063a24ccd \
215+ 00000000000000020006000e7e9ffc3f \
216+ half-busy \
217+ left_ptr_watch \
218+ progress \
219+ watch
220+
221+
222+EXTRA_DIST = invisible wait index.theme
223+
224+install-data-local:
225+ $(mkinstalldirs) $(DESTDIR)@cursordir@;
226+ $(INSTALL_DATA) index.theme $(DESTDIR)/@cursordir@/..
227+ $(INSTALL_DATA) invisible wait $(DESTDIR)@cursordir@/
228+ for CURSOR in $(CURSOR_NAMES_INVISIBLE); do \
229+ echo '-- Installing invisible cursor '$$CURSOR; \
230+ ln -s invisible $(DESTDIR)@cursordir@/$$CURSOR; \
231+ done
232+ for CURSOR in $(CURSOR_NAMES); do \
233+ echo '-- Installing visible cursor '$$CURSOR; \
234+ ln -s wait $(DESTDIR)@cursordir@/$$CURSOR; \
235+ done
236+
237diff --git a/cursors/index.theme b/cursors/index.theme
238new file mode 100644
239index 0000000..0c48458
240--- /dev/null
241+++ b/cursors/index.theme
242@@ -0,0 +1,3 @@
243+[Icon Theme]
244+Name=xfce-invisible
245+Example=invisible
246--
2471.7.6.5
248
diff --git a/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/touchscreen/0002-mouse-settings-dialog-add-touchscreen-pointer-option.patch b/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/touchscreen/0002-mouse-settings-dialog-add-touchscreen-pointer-option.patch
new file mode 100644
index 000000000..cf58f73d8
--- /dev/null
+++ b/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/touchscreen/0002-mouse-settings-dialog-add-touchscreen-pointer-option.patch
@@ -0,0 +1,152 @@
1From 7c87f8f202a7743a18b8d7fdab5c66a3d54badd5 Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
3Date: Thu, 1 Nov 2012 21:01:59 +0100
4Subject: [PATCH 2/5] mouse settings dialog: add touchscreen-pointer option
5MIME-Version: 1.0
6Content-Type: text/plain; charset=UTF-8
7Content-Transfer-Encoding: 8bit
8
9
10Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
11Upstream-Status: Submitted [1]
12[1] https://bugzilla.xfce.org/show_bug.cgi?id=9474
13---
14 dialogs/mouse-settings/main.c | 56 +++++++++++++++++++++++++++++
15 dialogs/mouse-settings/mouse-dialog.glade | 28 ++++++++++++++-
16 3 files changed, 422 insertions(+), 329 deletions(-)
17
18diff --git a/dialogs/mouse-settings/main.c b/dialogs/mouse-settings/main.c
19index f4b475b..ff08219 100644
20--- a/dialogs/mouse-settings/main.c
21+++ b/dialogs/mouse-settings/main.c
22@@ -956,6 +956,50 @@ mouse_settings_device_set_enabled (GtkToggleButton *button,
23
24
25
26+#ifdef HAVE_XCURSOR
27+static void
28+mouse_settings_on_touchscreen_pointer (GtkToggleButton *button,
29+ GtkBuilder *builder)
30+{
31+ gchar *name = NULL;
32+ gchar *prop;
33+ gboolean enabled;
34+
35+ if (locked > 0)
36+ return;
37+
38+ if (mouse_settings_device_get_selected (builder, NULL, &name))
39+ {
40+ enabled = gtk_toggle_button_get_active (button);
41+ prop = g_strconcat ("/", name, "/TouchscreenPointer", NULL);
42+ xfconf_channel_set_bool (pointers_channel, prop, enabled);
43+ g_free (prop);
44+ }
45+ g_free (name);
46+}
47+
48+static void
49+mouse_settings_set_touchscreen_pointer (GtkBuilder *builder)
50+{
51+ gchar *name = NULL;
52+ gchar *prop;
53+ gboolean enabled;
54+ GtkToggleButton *button;
55+
56+ if (mouse_settings_device_get_selected (builder, NULL, &name))
57+ {
58+ button = GTK_TOGGLE_BUTTON (gtk_builder_get_object (builder, "touchscreen-pointer"));
59+ prop = g_strconcat ("/", name, "/TouchscreenPointer", NULL);
60+ enabled = xfconf_channel_get_bool (pointers_channel, prop, FALSE);
61+ gtk_toggle_button_set_active (button, enabled);
62+ g_free (prop);
63+ }
64+ g_free (name);
65+}
66+#endif
67+
68+
69+
70 static void
71 mouse_settings_device_selection_changed (GtkBuilder *builder)
72 {
73@@ -1007,6 +1051,9 @@ mouse_settings_device_selection_changed (GtkBuilder *builder)
74 /* get the selected item */
75 if (mouse_settings_device_get_selected (builder, &device, NULL))
76 {
77+#ifdef HAVE_XCURSOR
78+ mouse_settings_set_touchscreen_pointer (builder);
79+#endif
80 gdk_error_trap_push ();
81 device_info = XListInputDevices (xdisplay, &ndevices);
82 if (gdk_error_trap_pop () == 0 && device_info != NULL)
83@@ -1735,11 +1782,20 @@ main (gint argc, gchar **argv)
84 /* populate the themes treeview */
85 mouse_settings_themes_populate_store (builder);
86
87+ /* connect & fill touchscreen-pointer */
88+ object = gtk_builder_get_object (builder, "touchscreen-pointer");
89+ g_signal_connect (G_OBJECT (object), "toggled",
90+ G_CALLBACK (mouse_settings_on_touchscreen_pointer), builder);
91+ mouse_settings_set_touchscreen_pointer (builder);
92+
93 /* connect the cursor size in the cursor tab */
94 object = gtk_builder_get_object (builder, "theme-cursor-size");
95 xfconf_g_property_bind (xsettings_channel, "/Gtk/CursorThemeSize",
96 G_TYPE_INT, G_OBJECT (object), "value");
97 #else
98+ /* hide touchscreen-pointer */
99+ object = gtk_builder_get_object (builder, "touchscreen-pointer");
100+ gtk_widget_hide (GTK_WIDGET (object));
101 /* hide the themes tab */
102 object = gtk_builder_get_object (builder, "themes-hbox");
103 gtk_widget_hide (GTK_WIDGET (object));
104diff --git a/dialogs/mouse-settings/mouse-dialog.glade b/dialogs/mouse-settings/mouse-dialog.glade
105index d3aab0d..573c551 100644
106--- a/dialogs/mouse-settings/mouse-dialog.glade
107+++ b/dialogs/mouse-settings/mouse-dialog.glade
108@@ -323,7 +323,7 @@
109 <property name="visible">True</property>
110 <property name="can_focus">False</property>
111 <property name="border_width">6</property>
112- <property name="n_rows">3</property>
113+ <property name="n_rows">4</property>
114 <property name="n_columns">2</property>
115 <property name="column_spacing">12</property>
116 <property name="row_spacing">6</property>
117@@ -415,6 +415,32 @@
118 <property name="bottom_attach">3</property>
119 </packing>
120 </child>
121+ <child>
122+ <object class="GtkAlignment" id="alignment9">
123+ <property name="visible">True</property>
124+ <property name="can_focus">False</property>
125+ <property name="xalign">0</property>
126+ <property name="xscale">0</property>
127+ <property name="yscale">0</property>
128+ <child>
129+ <object class="GtkCheckButton" id="touchscreen-pointer">
130+ <property name="label" translatable="yes">_Touchscreen pointer</property>
131+ <property name="use_action_appearance">False</property>
132+ <property name="visible">True</property>
133+ <property name="can_focus">True</property>
134+ <property name="receives_default">False</property>
135+ <property name="tooltip_text" translatable="yes">When selected, no mouse pointer is displayed for this device and gtk TouchscreenMode is activated</property>
136+ <property name="use_underline">True</property>
137+ <property name="draw_indicator">True</property>
138+ </object>
139+ </child>
140+ </object>
141+ <packing>
142+ <property name="right_attach">2</property>
143+ <property name="top_attach">3</property>
144+ <property name="bottom_attach">4</property>
145+ </packing>
146+ </child>
147 </object>
148 </child>
149 </object>
150--
1511.7.6.5
152
diff --git a/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/touchscreen/0003-XfcePointersHelper-gets-a-pointer-to-XfceXSettingsHe.patch b/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/touchscreen/0003-XfcePointersHelper-gets-a-pointer-to-XfceXSettingsHe.patch
new file mode 100644
index 000000000..eff052b68
--- /dev/null
+++ b/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/touchscreen/0003-XfcePointersHelper-gets-a-pointer-to-XfceXSettingsHe.patch
@@ -0,0 +1,137 @@
1From a3b0218137c8796fbb7bd6d852dc8ab5895a65cb Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
3Date: Sat, 3 Nov 2012 18:32:01 +0100
4Subject: [PATCH 3/5] XfcePointersHelper gets a pointer to XfceXSettingsHelper
5MIME-Version: 1.0
6Content-Type: text/plain; charset=UTF-8
7Content-Transfer-Encoding: 8bit
8
9
10Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
11Upstream-Status: Submitted [1]
12[1] https://bugzilla.xfce.org/show_bug.cgi?id=9474
13---
14 xfsettingsd/main.c | 2 +-
15 xfsettingsd/pointers.c | 55 ++++++++++++++++++++++++++++++++++++++++++++++++
16 2 files changed, 56 insertions(+), 1 deletions(-)
17
18diff --git a/xfsettingsd/main.c b/xfsettingsd/main.c
19index 55c4183..99982f7 100644
20--- a/xfsettingsd/main.c
21+++ b/xfsettingsd/main.c
22@@ -273,7 +273,7 @@ main (gint argc, gchar **argv)
23 #ifdef HAVE_XRANDR
24 displays_helper = g_object_new (XFCE_TYPE_DISPLAYS_HELPER, NULL);
25 #endif
26- pointer_helper = g_object_new (XFCE_TYPE_POINTERS_HELPER, NULL);
27+ pointer_helper = g_object_new (XFCE_TYPE_POINTERS_HELPER, "xsettings-helper", xsettings_helper, NULL);
28 keyboards_helper = g_object_new (XFCE_TYPE_KEYBOARDS_HELPER, NULL);
29 accessibility_helper = g_object_new (XFCE_TYPE_ACCESSIBILITY_HELPER, NULL);
30 shortcuts_helper = g_object_new (XFCE_TYPE_KEYBOARD_SHORTCUTS_HELPER, NULL);
31diff --git a/xfsettingsd/pointers.c b/xfsettingsd/pointers.c
32index e7192e7..62ebc60 100644
33--- a/xfsettingsd/pointers.c
34+++ b/xfsettingsd/pointers.c
35@@ -47,8 +47,16 @@
36
37 #define XFCONF_TYPE_G_VALUE_ARRAY (dbus_g_type_get_collection ("GPtrArray", G_TYPE_VALUE))
38
39+/* Property identifiers */
40+enum
41+{
42+ PROP_0,
43+ PROP_XSETTINGS_HELPER,
44+};
45+
46
47
48+static void xfce_pointers_helper_constructed (GObject *object);
49 static void xfce_pointers_helper_finalize (GObject *object);
50 static void xfce_pointers_helper_syndaemon_stop (XfcePointersHelper *helper);
51 static void xfce_pointers_helper_syndaemon_check (XfcePointersHelper *helper);
52@@ -63,6 +71,10 @@ static GdkFilterReturn xfce_pointers_helper_event_filter (GdkXEvent
53 GdkEvent *gdk_event,
54 gpointer user_data);
55 #endif
56+static void xfce_pointers_helper_set_property (GObject *object,
57+ guint prop_id,
58+ const GValue *value,
59+ GParamSpec *pspec);
60
61
62
63@@ -75,6 +87,8 @@ struct _XfcePointersHelper
64 {
65 GObject __parent__;
66
67+ GObject *xsettings_helper;
68+
69 /* xfconf channel */
70 XfconfChannel *channel;
71
72@@ -108,7 +122,18 @@ xfce_pointers_helper_class_init (XfcePointersHelperClass *klass)
73 {
74 GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
75
76+ gobject_class->constructed = xfce_pointers_helper_constructed;
77 gobject_class->finalize = xfce_pointers_helper_finalize;
78+ gobject_class->set_property = xfce_pointers_helper_set_property;
79+
80+ g_object_class_install_property (gobject_class,
81+ PROP_XSETTINGS_HELPER,
82+ g_param_spec_object ("xsettings-helper",
83+ "xsettings-helper",
84+ "xsettings-helper",
85+ G_TYPE_OBJECT,
86+ G_PARAM_CONSTRUCT_ONLY |
87+ G_PARAM_WRITABLE));
88 }
89
90
91@@ -116,6 +141,15 @@ xfce_pointers_helper_class_init (XfcePointersHelperClass *klass)
92 static void
93 xfce_pointers_helper_init (XfcePointersHelper *helper)
94 {
95+ /* All initialisation is done at xfce_pointers_helper_constructed */
96+}
97+
98+
99+
100+static void
101+xfce_pointers_helper_constructed (GObject *object)
102+{
103+ XfcePointersHelper *helper = XFCE_POINTERS_HELPER (object);
104 XExtensionVersion *version = NULL;
105 Display *xdisplay;
106 #ifdef DEVICE_HOTPLUGGING
107@@ -181,6 +215,27 @@ xfce_pointers_helper_init (XfcePointersHelper *helper)
108
109
110 static void
111+xfce_pointers_helper_set_property (GObject *object,
112+ guint prop_id,
113+ const GValue *value,
114+ GParamSpec *pspec)
115+{
116+ XfcePointersHelper *helper = XFCE_POINTERS_HELPER (object);
117+
118+ switch (prop_id)
119+ {
120+ case PROP_XSETTINGS_HELPER:
121+ helper->xsettings_helper = g_value_get_object (value);
122+ break;
123+ default:
124+ G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
125+ break;
126+ }
127+}
128+
129+
130+
131+static void
132 xfce_pointers_helper_finalize (GObject *object)
133 {
134 xfce_pointers_helper_syndaemon_stop (XFCE_POINTERS_HELPER (object));
135--
1361.7.6.5
137
diff --git a/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/touchscreen/0004-XfceXSettingsHelper-gets-a-property-touchscreen-poin.patch b/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/touchscreen/0004-XfceXSettingsHelper-gets-a-property-touchscreen-poin.patch
new file mode 100644
index 000000000..cacb5c3a1
--- /dev/null
+++ b/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/touchscreen/0004-XfceXSettingsHelper-gets-a-property-touchscreen-poin.patch
@@ -0,0 +1,249 @@
1From 878fe1287a4c73f67dd2b51d1d7c450097aeffa7 Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
3Date: Thu, 20 Dec 2012 16:49:18 +0100
4Subject: [PATCH 4/5] XfceXSettingsHelper gets a property
5 "touchscreen-pointer"
6MIME-Version: 1.0
7Content-Type: text/plain; charset=UTF-8
8Content-Transfer-Encoding: 8bit
9
10When this property is set, it overrides overrides cursor theme to
11"xfce-invisible" and sets /Gtk/TouchscreenMode.
12
13Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
14Upstream-Status: Submitted [1]
15[1] https://bugzilla.xfce.org/show_bug.cgi?id=9474
16---
17 xfsettingsd/xsettings.c | 122 ++++++++++++++++++++++++++++++++++++++++++++-
18 xfsettingsd/xsettings.xml | 1 +
19 2 files changed, 122 insertions(+), 1 deletions(-)
20
21diff --git a/xfsettingsd/xsettings.c b/xfsettingsd/xsettings.c
22index 7657465..76bcea1 100644
23--- a/xfsettingsd/xsettings.c
24+++ b/xfsettingsd/xsettings.c
25@@ -73,6 +73,15 @@ typedef struct _XfceXSettingsNotify XfceXSettingsNotify;
26
27
28
29+/* Property identifiers */
30+enum
31+{
32+ PROP_0,
33+ PROP_TOUCHSCREEN_POINTER,
34+};
35+
36+
37+
38 static void xfce_xsettings_helper_finalize (GObject *object);
39 static void xfce_xsettings_helper_fc_free (XfceXSettingsHelper *helper);
40 static gboolean xfce_xsettings_helper_fc_init (gpointer data);
41@@ -86,6 +95,10 @@ static void xfce_xsettings_helper_load (XfceXSettingsHelper *helper)
42 static void xfce_xsettings_helper_screen_free (XfceXSettingsScreen *screen);
43 static void xfce_xsettings_helper_notify_xft (XfceXSettingsHelper *helper);
44 static void xfce_xsettings_helper_notify (XfceXSettingsHelper *helper);
45+static void xfce_xsettings_helper_set_property (GObject *object,
46+ guint prop_id,
47+ const GValue *value,
48+ GParamSpec *pspec);
49
50
51
52@@ -120,6 +133,13 @@ struct _XfceXSettingsHelper
53 GPtrArray *fc_monitors;
54 guint fc_notify_timeout_id;
55 guint fc_init_id;
56+
57+ /* keeper for touchscreen cursor theme / last set */
58+ GValue *touchscreen_cursor_value;
59+ GValue *lastset_cursor_value;
60+
61+ /* properties */
62+ gboolean touchscreen_pointer;
63 };
64
65 struct _XfceXSetting
66@@ -157,6 +177,16 @@ xfce_xsettings_helper_class_init (XfceXSettingsHelperClass *klass)
67
68 gobject_class = G_OBJECT_CLASS (klass);
69 gobject_class->finalize = xfce_xsettings_helper_finalize;
70+ gobject_class->set_property = xfce_xsettings_helper_set_property;
71+
72+ g_object_class_install_property (gobject_class,
73+ PROP_TOUCHSCREEN_POINTER,
74+ g_param_spec_boolean ("touchscreen-pointer",
75+ "touchscreen-pointer",
76+ "touchscreen-pointer",
77+ FALSE,
78+ G_PARAM_WRITABLE |
79+ G_PARAM_STATIC_STRINGS));
80 }
81
82
83@@ -169,6 +199,13 @@ xfce_xsettings_helper_init (XfceXSettingsHelper *helper)
84 helper->settings = g_hash_table_new_full (g_str_hash, g_str_equal,
85 g_free, xfce_xsettings_helper_setting_free);
86
87+ helper->lastset_cursor_value = g_new0 (GValue, 1);
88+ g_value_init(helper->lastset_cursor_value, G_TYPE_STRING);
89+ g_value_set_string (helper->lastset_cursor_value, "default");
90+ helper->touchscreen_cursor_value = g_new0 (GValue, 1);
91+ g_value_init(helper->touchscreen_cursor_value, G_TYPE_STRING);
92+ g_value_set_string (helper->touchscreen_cursor_value, "xfce-invisible");
93+
94 xfce_xsettings_helper_load (helper);
95
96 g_signal_connect (G_OBJECT (helper->channel), "property-changed",
97@@ -202,6 +239,9 @@ xfce_xsettings_helper_finalize (GObject *object)
98
99 g_hash_table_destroy (helper->settings);
100
101+ g_free (helper->lastset_cursor_value);
102+ g_free (helper->touchscreen_cursor_value);
103+
104 (*G_OBJECT_CLASS (xfce_xsettings_helper_parent_class)->finalize) (object);
105 }
106
107@@ -387,6 +427,61 @@ xfce_xsettings_helper_notify_xft_idle (gpointer data)
108
109
110
111+static void
112+xfce_xsettings_helper_set_property (GObject *object,
113+ guint prop_id,
114+ const GValue *value,
115+ GParamSpec *pspec)
116+{
117+ gboolean touchscreen_pointer;
118+ XfceXSetting *setting_theme, *setting_touchscreen;
119+ XfceXSettingsHelper *helper = XFCE_XSETTINGS_HELPER (object);
120+ GtkSettings *gtk_settings;
121+ GValue bool_val = { 0, };
122+
123+ switch (prop_id)
124+ {
125+ case PROP_TOUCHSCREEN_POINTER:
126+ touchscreen_pointer = g_value_get_boolean (value);
127+ if (helper->touchscreen_pointer != touchscreen_pointer)
128+ {
129+ helper->touchscreen_pointer = touchscreen_pointer;
130+ /* Update touchscreen-mode */
131+ xfconf_channel_set_bool (helper->channel, "/Gtk/TouchscreenMode", touchscreen_pointer);
132+ /* Update cursor */
133+ setting_theme = g_hash_table_lookup (helper->settings, "/Gtk/CursorThemeName");
134+ if (G_LIKELY (setting_theme != NULL))
135+ {
136+ /* update the serial */
137+ setting_theme->last_change_serial = helper->serial;
138+ /* update value */
139+ g_value_reset (setting_theme->value);
140+ g_value_copy (touchscreen_pointer ?
141+ helper->touchscreen_cursor_value :
142+ helper->lastset_cursor_value,
143+ setting_theme->value);
144+ }
145+ else
146+ g_critical("Setting not found for /Gtk/CursorThemeName");
147+
148+ if (G_LIKELY (setting_touchscreen != NULL || setting_theme != NULL))
149+ {
150+ /* schedule xsettings update */
151+ if (helper->notify_idle_id == 0)
152+ helper->notify_idle_id = g_idle_add (xfce_xsettings_helper_notify_idle, helper);
153+ if (helper->notify_xft_idle_id == 0)
154+ helper->notify_xft_idle_id = g_idle_add (xfce_xsettings_helper_notify_xft_idle, helper);
155+ }
156+ }
157+ break;
158+ default:
159+ G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
160+ break;
161+ }
162+}
163+
164+
165+
166 static gboolean
167 xfce_xsettings_helper_prop_valid (const gchar *prop_name,
168 const GValue *value)
169@@ -413,6 +508,28 @@ xfce_xsettings_helper_prop_valid (const gchar *prop_name,
170
171
172
173+static void
174+xfce_xsettings_helper_check_cursor (const gchar *prop_name,
175+ GValue *value,
176+ XfceXSettingsHelper *helper)
177+{
178+ if (g_strcmp0 (prop_name, "/Gtk/CursorThemeName") == 0)
179+ {
180+ /* Keep last cursor theme set */
181+ g_value_reset (helper->lastset_cursor_value);
182+ g_value_copy (value, helper->lastset_cursor_value);
183+
184+ /* invisible replacement required ? */
185+ if (helper->touchscreen_pointer)
186+ {
187+ g_value_reset (value);
188+ g_value_copy (helper->touchscreen_cursor_value, value);
189+ }
190+ }
191+}
192+
193+
194+
195 static gboolean
196 xfce_xsettings_helper_prop_load (gchar *prop_name,
197 GValue *value,
198@@ -426,6 +543,7 @@ xfce_xsettings_helper_prop_load (gchar *prop_name,
199
200 setting = g_slice_new0 (XfceXSetting);
201 setting->value = value;
202+ xfce_xsettings_helper_check_cursor (prop_name, setting->value, helper);
203 setting->last_change_serial = helper->serial;
204
205 xfsettings_dbg_filtered (XFSD_DEBUG_XSETTINGS, "prop \"%s\" loaded (type=%s)",
206@@ -462,6 +580,7 @@ xfce_xsettings_helper_prop_changed (XfconfChannel *channel,
207 * it first */
208 g_value_reset (setting->value);
209 g_value_copy (value, setting->value);
210+ xfce_xsettings_helper_check_cursor (prop_name, setting->value, helper);
211
212 /* update the serial */
213 setting->last_change_serial = helper->serial;
214@@ -475,6 +594,7 @@ xfce_xsettings_helper_prop_changed (XfconfChannel *channel,
215
216 g_value_init (setting->value, G_VALUE_TYPE (value));
217 g_value_copy (value, setting->value);
218+ xfce_xsettings_helper_check_cursor (prop_name, setting->value, helper);
219
220 g_hash_table_insert (helper->settings, g_strdup (prop_name), setting);
221 }
222@@ -649,6 +769,7 @@ xfce_xsettings_helper_notify_xft (XfceXSettingsHelper *helper)
223 XfceXSetting *setting;
224 guint i;
225 GValue bool_val = { 0, };
226+
227 const gchar *props[][2] =
228 {
229 /* { xfconf name}, { xft name } */
230@@ -700,7 +821,6 @@ xfce_xsettings_helper_notify_xft (XfceXSettingsHelper *helper)
231 PropModeReplace,
232 (guchar *) resource->str,
233 resource->len);
234-
235 XCloseDisplay (xdisplay);
236
237 if (gdk_error_trap_pop () != 0)
238--- a/xfsettingsd/xsettings.xml
239+++ b/xfsettingsd/xsettings.xml
240@@ -36,5 +36,6 @@
241 <property name="MenuBarAccel" type="string" value="F10"/>
242 <property name="CursorThemeName" type="string" value=""/>
243 <property name="CursorThemeSize" type="int" value="0"/>
244+ <property name="TouchscreenMode" type="bool" value="false"/>
245 </property>
246 </channel>
247--
2481.7.6.5
249
diff --git a/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/touchscreen/0005-pointers-detect-a-change-of-pointer-device-used-and-.patch b/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/touchscreen/0005-pointers-detect-a-change-of-pointer-device-used-and-.patch
new file mode 100644
index 000000000..f4c28397d
--- /dev/null
+++ b/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/touchscreen/0005-pointers-detect-a-change-of-pointer-device-used-and-.patch
@@ -0,0 +1,586 @@
1From 37f5e33511499d320c3035c5377425004657faa5 Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
3Date: Thu, 20 Dec 2012 16:58:19 +0100
4Subject: [PATCH 5/5] pointers: detect a change of pointer-device used and set
5 "touchscreen-pointer" as found in xfconf
6MIME-Version: 1.0
7Content-Type: text/plain; charset=UTF-8
8Content-Transfer-Encoding: 8bit
9
10To detect pointer device in use the DevicePresence-, DeviceMotionNotify- and
11DeviceButtonPress-events are handled. Tests showed that by repopenning and
12closing the pointer devices (e.g when another setting was modified), the events
13stopped working. Therefore all pointer devices are opened only once and managed
14in a hash table.
15
16Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
17Upstream-Status: Submitted [1]
18[1] https://bugzilla.xfce.org/show_bug.cgi?id=9474
19---
20 xfsettingsd/pointers.c | 337 +++++++++++++++++++++++++++++++----------------
21 1 files changed, 222 insertions(+), 115 deletions(-)
22
23diff --git a/xfsettingsd/pointers.c b/xfsettingsd/pointers.c
24index 62ebc60..32662cc 100644
25--- a/xfsettingsd/pointers.c
26+++ b/xfsettingsd/pointers.c
27@@ -66,11 +66,9 @@ static void xfce_pointers_helper_channel_property_changed (XfconfCha
28 const gchar *property_name,
29 const GValue *value,
30 XfcePointersHelper *helper);
31-#ifdef DEVICE_HOTPLUGGING
32 static GdkFilterReturn xfce_pointers_helper_event_filter (GdkXEvent *xevent,
33 GdkEvent *gdk_event,
34 gpointer user_data);
35-#endif
36 static void xfce_pointers_helper_set_property (GObject *object,
37 guint prop_id,
38 const GValue *value,
39@@ -96,8 +94,11 @@ struct _XfcePointersHelper
40 GPid syndaemon_pid;
41 #endif
42
43+ GHashTable *pointer_devices;
44+ XID last_pointer_active;
45+ gint device_motion_event_type;
46+ gint device_button_press_event_type;
47 #ifdef DEVICE_HOTPLUGGING
48- /* device presence event type */
49 gint device_presence_event_type;
50 #endif
51 };
52@@ -117,6 +118,15 @@ G_DEFINE_TYPE (XfcePointersHelper, xfce_pointers_helper, G_TYPE_OBJECT);
53
54
55
56+typedef struct
57+{
58+ XDevice *device;
59+ gchar* name;
60+}
61+XfcePointerDeviceData;
62+
63+
64+
65 static void
66 xfce_pointers_helper_class_init (XfcePointersHelperClass *klass)
67 {
68@@ -147,6 +157,18 @@ xfce_pointers_helper_init (XfcePointersHelper *helper)
69
70
71 static void
72+xfce_pointers_device_close (gpointer data)
73+{
74+ XfcePointerDeviceData *device_data = data;
75+
76+ XCloseDevice (GDK_DISPLAY (), device_data->device);
77+ g_free (device_data->name);
78+ g_free (device_data);
79+}
80+
81+
82+
83+static void
84 xfce_pointers_helper_constructed (GObject *object)
85 {
86 XfcePointersHelper *helper = XFCE_POINTERS_HELPER (object);
87@@ -185,6 +207,10 @@ xfce_pointers_helper_constructed (GObject *object)
88 helper->channel = xfconf_channel_get ("pointers");
89
90 /* restore the pointer devices */
91+ helper->pointer_devices = g_hash_table_new_full (g_int_hash,
92+ g_int_equal,
93+ g_free,
94+ xfce_pointers_device_close);
95 xfce_pointers_helper_restore_devices (helper, NULL);
96
97 /* monitor the channel */
98@@ -194,21 +220,20 @@ xfce_pointers_helper_constructed (GObject *object)
99 /* launch syndaemon if required */
100 xfce_pointers_helper_syndaemon_check (helper);
101
102-#ifdef DEVICE_HOTPLUGGING
103 if (G_LIKELY (xdisplay != NULL))
104 {
105+#ifdef DEVICE_HOTPLUGGING
106 /* monitor device changes */
107 gdk_error_trap_push ();
108 DevicePresence (xdisplay, helper->device_presence_event_type, event_class);
109 XSelectExtensionEvent (xdisplay, RootWindow (xdisplay, DefaultScreen (xdisplay)), &event_class, 1);
110
111 /* add an event filter */
112- if (gdk_error_trap_pop () == 0)
113- gdk_window_add_filter (NULL, xfce_pointers_helper_event_filter, helper);
114- else
115+ if (gdk_error_trap_pop () != 0)
116 g_warning ("Failed to create device filter");
117- }
118 #endif
119+ gdk_window_add_filter (NULL, xfce_pointers_helper_event_filter, helper);
120+ }
121 }
122 }
123
124@@ -238,7 +263,10 @@ xfce_pointers_helper_set_property (GObject *object,
125 static void
126 xfce_pointers_helper_finalize (GObject *object)
127 {
128- xfce_pointers_helper_syndaemon_stop (XFCE_POINTERS_HELPER (object));
129+ XfcePointersHelper* helper = XFCE_POINTERS_HELPER (object);
130+
131+ xfce_pointers_helper_syndaemon_stop (helper);
132+ g_hash_table_destroy (helper->pointer_devices);
133
134 (*G_OBJECT_CLASS (xfce_pointers_helper_parent_class)->finalize) (object);
135 }
136@@ -267,19 +295,19 @@ static void
137 xfce_pointers_helper_syndaemon_check (XfcePointersHelper *helper)
138 {
139 #ifdef DEVICE_PROPERTIES
140- Display *xdisplay = GDK_DISPLAY ();
141- XDeviceInfo *device_list;
142- XDevice *device;
143- gint n, ndevices;
144- Atom touchpad_type;
145- Atom touchpad_off_prop;
146- Atom *props;
147- gint i, nprops;
148- gboolean have_synaptics = FALSE;
149- gdouble disable_duration;
150- gchar disable_duration_string[64];
151- gchar *args[] = { "syndaemon", "-i", disable_duration_string, "-K", "-R", NULL };
152- GError *error = NULL;
153+ Display *xdisplay = GDK_DISPLAY ();
154+ XDeviceInfo *device_list;
155+ XfcePointerDeviceData *device_data;
156+ gint n, ndevices;
157+ Atom touchpad_type;
158+ Atom touchpad_off_prop;
159+ Atom *props;
160+ gint i, nprops;
161+ gboolean have_synaptics = FALSE;
162+ gdouble disable_duration;
163+ gchar disable_duration_string[64];
164+ gchar *args[] = { "syndaemon", "-i", disable_duration_string, "-K", "-R", NULL };
165+ GError *error = NULL;
166
167 /* only stop a running daemon */
168 if (!xfconf_channel_get_bool (helper->channel, "/DisableTouchpadWhileTyping", FALSE))
169@@ -297,17 +325,16 @@ xfce_pointers_helper_syndaemon_check (XfcePointersHelper *helper)
170 if (device_list[n].type != touchpad_type)
171 continue;
172
173- gdk_error_trap_push ();
174- device = XOpenDevice (xdisplay, device_list[n].id);
175- if (gdk_error_trap_pop () != 0 || device == NULL)
176+ device_data = g_hash_table_lookup (helper->pointer_devices, &device_list[n].id);
177+ if (device_data == NULL)
178 {
179- g_critical ("Unable to open device %s", device_list[n].name);
180+ g_critical ("xfce_pointers_helper_syndaemon_check: Unable to find device %s / ID %i in hash table", device_list[n].name, device_list[n].id);
181 break;
182 }
183
184 /* look for the Synaptics Off property */
185 gdk_error_trap_push ();
186- props = XListDeviceProperties (xdisplay, device, &nprops);
187+ props = XListDeviceProperties (xdisplay, device_data->device, &nprops);
188 if (gdk_error_trap_pop () == 0
189 && props != NULL)
190 {
191@@ -317,8 +344,6 @@ xfce_pointers_helper_syndaemon_check (XfcePointersHelper *helper)
192 XFree (props);
193 }
194
195- XCloseDevice (xdisplay, device);
196-
197 if (have_synaptics)
198 break;
199 }
200@@ -844,24 +869,56 @@ xfce_pointers_helper_change_properties (gpointer key,
201
202
203 static void
204+xfce_pointers_helper_change_current_device (XfcePointersHelper *helper,
205+ XID *xid)
206+{
207+ XfcePointerDeviceData *device_data;
208+ gchar* prop;
209+ GValue bool_val = { 0, };
210+
211+ helper->last_pointer_active = *xid;
212+ device_data = g_hash_table_lookup (helper->pointer_devices, xid);
213+ if (device_data == NULL)
214+ {
215+ g_critical ("Unable to find device ID %i in hash table", *xid);
216+ return;
217+ }
218+ if (G_LIKELY (G_IS_OBJECT (helper->xsettings_helper)))
219+ {
220+ prop = g_strconcat ("/", device_data->name, "/TouchscreenPointer", NULL);
221+ g_value_init (&bool_val, G_TYPE_BOOLEAN);
222+ g_value_set_boolean (&bool_val,
223+ xfconf_channel_get_bool (helper->channel, prop, FALSE));
224+ g_object_set_property (helper->xsettings_helper, "touchscreen-pointer", &bool_val);
225+ g_value_unset (&bool_val);
226+ g_free (prop);
227+ }
228+ else
229+ g_critical ("xsettings_helper was not properly set");
230+}
231+
232+
233+static void
234 xfce_pointers_helper_restore_devices (XfcePointersHelper *helper,
235 XID *xid)
236 {
237- Display *xdisplay = GDK_DISPLAY ();
238- XDeviceInfo *device_list, *device_info;
239- gint n, ndevices;
240- XDevice *device;
241- gchar *device_name;
242- gchar prop[256];
243- gboolean right_handed;
244- gboolean reverse_scrolling;
245- gint threshold;
246- gdouble acceleration;
247+ Display *xdisplay = GDK_DISPLAY ();
248+ XDeviceInfo *device_list, *device_info;
249+ gint n, ndevices;
250+ XDevice *device;
251+ XfcePointerDeviceData *device_data;
252+ gchar *device_name;
253+ gchar prop[256];
254+ gboolean right_handed;
255+ gboolean reverse_scrolling;
256+ gint threshold;
257+ gdouble acceleration;
258+ XEventClass event_classes[2];
259 #ifdef DEVICE_PROPERTIES
260- GHashTable *props;
261- XfcePointerData pointer_data;
262+ GHashTable *props;
263+ XfcePointerData pointer_data;
264 #endif
265- const gchar *mode;
266+ const gchar *mode;
267
268 gdk_error_trap_push ();
269 device_list = XListInputDevices (xdisplay, &ndevices);
270@@ -873,84 +930,107 @@ xfce_pointers_helper_restore_devices (XfcePointersHelper *helper,
271
272 for (n = 0; n < ndevices; n++)
273 {
274- /* filter the pointer devices */
275+ /* filter the physical pointer devices */
276 device_info = &device_list[n];
277 if (device_info->use != IsXExtensionPointer
278- || device_info->name == NULL)
279+ || device_info->name == NULL
280+ || g_str_has_prefix (device_info->name, "Virtual core XTEST"))
281 continue;
282
283 /* filter out the device if one is set */
284 if (xid != NULL && device_info->id != *xid)
285 continue;
286
287- /* open the device */
288- gdk_error_trap_push ();
289- device = XOpenDevice (xdisplay, device_info->id);
290- if (gdk_error_trap_pop () != 0 || device == NULL)
291+ device_data = g_hash_table_lookup (helper->pointer_devices, &device_info->id);
292+ if (device_data == NULL)
293 {
294- g_critical ("Unable to open device %s", device_info->name);
295- continue;
296- }
297+ /* open the device and insert to hash */
298+ gdk_error_trap_push ();
299+ device = XOpenDevice (xdisplay, device_info->id);
300+ if (G_UNLIKELY(gdk_error_trap_pop () != 0 || device == NULL))
301+ {
302+ g_critical ("Unable to open device %s / ID: %i", device_info->name, device_info->id);
303+ continue;
304+ }
305
306- /* create a valid xfconf property name for the device */
307- device_name = xfce_pointers_helper_device_xfconf_name (device_info->name);
308+ /* create a valid xfconf property name for the device */
309+ device_name = xfce_pointers_helper_device_xfconf_name (device_info->name);
310
311- /* read buttonmap properties */
312- g_snprintf (prop, sizeof (prop), "/%s/RightHanded", device_name);
313- right_handed = xfconf_channel_get_bool (helper->channel, prop, -1);
314+ /* add device to our list */
315+ device_data = g_new (XfcePointerDeviceData, 1);
316+ device_data->device = device;
317+ device_data->name = device_name;
318+ g_hash_table_insert (helper->pointer_devices, g_memdup (&device_info->id, sizeof(device_info->id)), device_data);
319
320- g_snprintf (prop, sizeof (prop), "/%s/ReverseScrolling", device_name);
321- reverse_scrolling = xfconf_channel_get_bool (helper->channel, prop, -1);
322+ /* catch motion event / button-press for new device */
323+ gdk_error_trap_push ();
324+ DeviceMotionNotify (device, helper->device_motion_event_type, event_classes[0]);
325+ DeviceButtonPress (device, helper->device_button_press_event_type, event_classes[1]);
326+ XSelectExtensionEvent (xdisplay, RootWindow (xdisplay, DefaultScreen (xdisplay)), event_classes, 2);
327+ if (G_UNLIKELY (gdk_error_trap_pop () != 0))
328+ g_critical ("Unable to register DeviceButtonPress/DeviceMotionNotify for %i", device_info->id);
329
330- if (right_handed != -1 || reverse_scrolling != -1)
331- {
332- xfce_pointers_helper_change_button_mapping (device_info, device, xdisplay,
333+
334+ /* read buttonmap properties */
335+ g_snprintf (prop, sizeof (prop), "/%s/RightHanded", device_name);
336+ right_handed = xfconf_channel_get_bool (helper->channel, prop, -1);
337+
338+ g_snprintf (prop, sizeof (prop), "/%s/ReverseScrolling", device_name);
339+ reverse_scrolling = xfconf_channel_get_bool (helper->channel, prop, -1);
340+
341+ if (right_handed != -1 || reverse_scrolling != -1)
342+ {
343+ xfce_pointers_helper_change_button_mapping (device_info, device, xdisplay,
344 right_handed, reverse_scrolling);
345- }
346+ }
347
348- /* read feedback settings */
349- g_snprintf (prop, sizeof (prop), "/%s/Threshold", device_name);
350- threshold = xfconf_channel_get_int (helper->channel, prop, -1);
351+ /* read feedback settings */
352+ g_snprintf (prop, sizeof (prop), "/%s/Threshold", device_name);
353+ threshold = xfconf_channel_get_int (helper->channel, prop, -1);
354
355- g_snprintf (prop, sizeof (prop), "/%s/Acceleration", device_name);
356- acceleration = xfconf_channel_get_double (helper->channel, prop, -1.00);
357+ g_snprintf (prop, sizeof (prop), "/%s/Acceleration", device_name);
358+ acceleration = xfconf_channel_get_double (helper->channel, prop, -1.00);
359
360- if (threshold != -1 || acceleration != -1.00)
361- {
362- xfce_pointers_helper_change_feedback (device_info, device, xdisplay,
363- threshold, acceleration);
364- }
365+ if (threshold != -1 || acceleration != -1.00)
366+ {
367+ xfce_pointers_helper_change_feedback (device_info, device, xdisplay,
368+ threshold, acceleration);
369+ }
370
371- /* read mode settings */
372- g_snprintf (prop, sizeof (prop), "/%s/Mode", device_name);
373- mode = xfconf_channel_get_string (helper->channel, prop, NULL);
374+ /* read mode settings */
375+ g_snprintf (prop, sizeof (prop), "/%s/Mode", device_name);
376+ mode = xfconf_channel_get_string (helper->channel, prop, NULL);
377
378- if (mode != NULL)
379- xfce_pointers_helper_change_mode (device_info, device, xdisplay, mode);
380+ if (mode != NULL)
381+ xfce_pointers_helper_change_mode (device_info, device, xdisplay, mode);
382
383 #ifdef DEVICE_PROPERTIES
384- /* set device properties */
385- g_snprintf (prop, sizeof (prop), "/%s/Properties", device_name);
386- props = xfconf_channel_get_properties (helper->channel, prop);
387+ /* set device properties */
388+ g_snprintf (prop, sizeof (prop), "/%s/Properties", device_name);
389+ props = xfconf_channel_get_properties (helper->channel, prop);
390
391- if (props != NULL)
392- {
393- pointer_data.xdisplay = xdisplay;
394- pointer_data.device = device;
395- pointer_data.device_info = device_info;
396- pointer_data.prop_name_len = strlen (prop) + 1;
397+ if (props != NULL)
398+ {
399+ pointer_data.xdisplay = xdisplay;
400+ pointer_data.device = device;
401+ pointer_data.device_info = device_info;
402+ pointer_data.prop_name_len = strlen (prop) + 1;
403
404- g_hash_table_foreach (props, xfce_pointers_helper_change_properties, &pointer_data);
405+ g_hash_table_foreach (props, xfce_pointers_helper_change_properties, &pointer_data);
406
407- g_hash_table_destroy (props);
408- }
409+ g_hash_table_destroy (props);
410+ }
411 #endif
412-
413- g_free (device_name);
414- XCloseDevice (xdisplay, device);
415+ }
416 }
417-
418 XFreeDeviceList (device_list);
419+ if (G_LIKELY (device_data != NULL))
420+ {
421+ if (helper->last_pointer_active != device_data->device->device_id)
422+ xfce_pointers_helper_change_current_device (helper, &device_data->device->device_id);
423+ }
424+ else
425+ g_critical("no device selected in xfce_pointers_helper_restore_devices");
426 }
427
428
429@@ -961,12 +1041,12 @@ xfce_pointers_helper_channel_property_changed (XfconfChannel *channel,
430 const GValue *value,
431 XfcePointersHelper *helper)
432 {
433- Display *xdisplay = GDK_DISPLAY ();
434- XDeviceInfo *device_list, *device_info;
435- XDevice *device;
436- gint n, ndevices;
437- gchar **names;
438- gchar *device_name;
439+ Display *xdisplay = GDK_DISPLAY ();
440+ XDeviceInfo *device_list, *device_info;
441+ XfcePointerDeviceData *device_data;
442+ gint n, ndevices;
443+ gchar **names;
444+ gchar *device_name;
445
446 if (G_UNLIKELY (property_name == NULL))
447 return;
448@@ -996,63 +1076,72 @@ xfce_pointers_helper_channel_property_changed (XfconfChannel *channel,
449 /* filter the pointer devices */
450 device_info = &device_list[n];
451 if (device_info->use != IsXExtensionPointer
452- || device_info->name == NULL)
453+ || device_info->name == NULL
454+ || g_str_has_prefix (device_info->name, "Virtual core XTEST"))
455 continue;
456
457 /* search the device name */
458 device_name = xfce_pointers_helper_device_xfconf_name (device_info->name);
459 if (strcmp (names[0], device_name) == 0)
460 {
461- /* open the device */
462- gdk_error_trap_push ();
463- device = XOpenDevice (xdisplay, device_info->id);
464- if (gdk_error_trap_pop () != 0 || device == NULL)
465+ /* find the device */
466+ device_data = g_hash_table_lookup (helper->pointer_devices, &device_info->id);
467+ if (device_data == NULL)
468 {
469- g_critical ("Unable to open device %s", device_info->name);
470+ g_critical ("xfce_pointers_helper_channel_property_changed: Unable to find device %s / ID %i in hash table", device_info->name, device_info->id);
471 continue;
472 }
473
474 /* check the property that requires updating */
475 if (strcmp (names[1], "RightHanded") == 0)
476 {
477- xfce_pointers_helper_change_button_mapping (device_info, device, xdisplay,
478+ xfce_pointers_helper_change_button_mapping (device_info, device_data->device, xdisplay,
479 g_value_get_boolean (value), -1);
480 }
481 else if (strcmp (names[1], "ReverseScrolling") == 0)
482 {
483- xfce_pointers_helper_change_button_mapping (device_info, device, xdisplay,
484+ xfce_pointers_helper_change_button_mapping (device_info, device_data->device, xdisplay,
485 -1, g_value_get_boolean (value));
486 }
487 else if (strcmp (names[1], "Threshold") == 0)
488 {
489- xfce_pointers_helper_change_feedback (device_info, device, xdisplay,
490+ xfce_pointers_helper_change_feedback (device_info, device_data->device, xdisplay,
491 g_value_get_int (value), -2.00);
492 }
493 else if (strcmp (names[1], "Acceleration") == 0)
494 {
495- xfce_pointers_helper_change_feedback (device_info, device, xdisplay,
496+ xfce_pointers_helper_change_feedback (device_info, device_data->device, xdisplay,
497 -2, g_value_get_double (value));
498 }
499 #ifdef DEVICE_PROPERTIES
500 else if (strcmp (names[1], "Properties") == 0)
501 {
502- xfce_pointers_helper_change_property (device_info, device, xdisplay,
503+ xfce_pointers_helper_change_property (device_info, device_data->device, xdisplay,
504 names[2], value);
505 }
506 #endif
507 else if (strcmp (names[1], "Mode") == 0)
508 {
509- xfce_pointers_helper_change_mode (device_info, device, xdisplay,
510+ xfce_pointers_helper_change_mode (device_info, device_data->device, xdisplay,
511 g_value_get_string (value));
512 }
513+ else if (strcmp (names[1], "TouchscreenPointer") == 0)
514+ {
515+ /* only hide if the current device's property was changed */
516+ if (device_info->id == helper->last_pointer_active)
517+ {
518+ if (G_LIKELY (G_IS_OBJECT (helper->xsettings_helper)))
519+ g_object_set_property (helper->xsettings_helper, "touchscreen-pointer", value);
520+ else
521+ g_critical ("xsettings_helper was not properly set");
522+ }
523+ }
524 else
525 {
526 g_warning ("Unknown property %s set for device %s",
527 property_name, device_info->name);
528 }
529
530- XCloseDevice (xdisplay, device);
531-
532 /* stop searching */
533 n = ndevices;
534 }
535@@ -1068,26 +1157,44 @@ xfce_pointers_helper_channel_property_changed (XfconfChannel *channel,
536
537
538
539-#ifdef DEVICE_HOTPLUGGING
540 static GdkFilterReturn
541 xfce_pointers_helper_event_filter (GdkXEvent *xevent,
542 GdkEvent *gdk_event,
543 gpointer user_data)
544 {
545+ XDevicePresenceNotifyEvent *dpn_event;
546 XEvent *event = xevent;
547- XDevicePresenceNotifyEvent *dpn_event = xevent;
548 XfcePointersHelper *helper = XFCE_POINTERS_HELPER (user_data);
549
550- if (event->type == helper->device_presence_event_type)
551+ /* Comparison for device changed is done here redundantly to prevent call
552+ * on every mouse move.
553+ */
554+ if (event->type == helper->device_motion_event_type
555+ && helper->last_pointer_active != ((XDeviceMotionEvent*)xevent)->deviceid)
556+ xfce_pointers_helper_change_current_device (helper, &((XDeviceMotionEvent*)xevent)->deviceid);
557+ else if (event->type == helper->device_button_press_event_type
558+ && helper->last_pointer_active != ((XDeviceButtonEvent*)xevent)->deviceid)
559+ xfce_pointers_helper_change_current_device (helper, &((XDeviceButtonEvent*)xevent)->deviceid);
560+
561+#ifdef DEVICE_HOTPLUGGING
562+ /* handle device add/remove */
563+ else if (event->type == helper->device_presence_event_type)
564 {
565+ dpn_event = xevent;
566 /* restore device settings */
567 if (dpn_event->devchange == DeviceAdded)
568 xfce_pointers_helper_restore_devices (helper, &dpn_event->deviceid);
569+ else if(dpn_event->devchange == DeviceRemoved)
570+ /* we could try to find a remaining pointer to set that as active
571+ * one but that might not fit and as soon as the user works with
572+ * another pointer we are changing to correct one.
573+ */
574+ g_hash_table_remove (helper->pointer_devices, &dpn_event->deviceid);
575
576 /* check if we need to launch syndaemon */
577 xfce_pointers_helper_syndaemon_check (helper);
578 }
579+#endif
580
581 return GDK_FILTER_CONTINUE;
582 }
583-#endif
584--
5851.7.6.5
586
diff --git a/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/touchscreen/invisible b/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/touchscreen/invisible
new file mode 100644
index 000000000..ef4d9aadb
--- /dev/null
+++ b/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/touchscreen/invisible
Binary files differ
diff --git a/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/touchscreen/wait b/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/touchscreen/wait
new file mode 100644
index 000000000..8b9ac7e20
--- /dev/null
+++ b/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings/touchscreen/wait
Binary files differ
diff --git a/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings_git.bb b/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings_git.bb
new file mode 100644
index 000000000..b34bb7a38
--- /dev/null
+++ b/meta-xfce/recipes-xfce/xfce4-settings/xfce4-settings_git.bb
@@ -0,0 +1,47 @@
1SUMMARY = "Xfce4 settings"
2SECTION = "x11/wm"
3LICENSE = "GPLv2"
4LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
5DEPENDS = "exo exo-native garcon gtk+ libxfce4util libxfce4ui xfconf dbus-glib libxi virtual/libx11 xrandr libnotify libxcursor libxklavier"
6
7inherit xfce xfce-git
8
9SRC_URI = " git://gitorious.org/xfce/xfce4-settings.git;protocol=git;branch=for-oe \
10 file://0001-xsettings.xml-remove-trouble-causing-comment.patch \
11 file://0002-xsettings.xml-Set-default-themes.patch \
12 file://touchscreen/invisible \
13 file://touchscreen/wait \
14 file://touchscreen/0001-add-cursor-theme-xfce-invisible.patch \
15 file://touchscreen/0002-mouse-settings-dialog-add-touchscreen-pointer-option.patch \
16 file://touchscreen/0003-XfcePointersHelper-gets-a-pointer-to-XfceXSettingsHe.patch \
17 file://touchscreen/0004-XfceXSettingsHelper-gets-a-property-touchscreen-poin.patch \
18 file://touchscreen/0005-pointers-detect-a-change-of-pointer-device-used-and-.patch \
19"
20SRCREV = "b7a0e1fd77f5bb5c372223ff62aec7acf252f061"
21S = "${WORKDIR}/git"
22PV = "4.11.0+git${SRCPV}"
23
24EXTRA_OECONF += "--enable-maintainer-mode --disable-debug"
25
26PACKAGECONFIG ??= " \
27 ${@base_contains('DISTRO_FEATURES','systemd','datetime-setter','',d)} \
28 ${@base_contains('DISTRO_FEATURES','alsa','sound-setter', base_contains('DISTRO_FEATURES','pulseaudio','sound-setter','',d),d)} \
29"
30PACKAGECONFIG[datetime-setter] = "--enable-datetime-settings, --disable-datetime-settings,, tzdata"
31PACKAGECONFIG[notify] = "--enable-libnotify,--disable-libnotify,libnotify"
32PACKAGECONFIG[sound-setter] = "--enable-sound-settings, --disable-sound-settings, libcanberra, libcanberra-gtk2 sound-theme-freedesktop"
33
34FILES_${PN} += " \
35 ${libdir}/xfce4 \
36 ${datadir}/xfce4 \
37"
38
39do_install_prepend() {
40 # somehow binary files are not patched correctly by oe-patch - so copy them
41 cp ${WORKDIR}/touchscreen/invisible ${S}/cursors
42 cp ${WORKDIR}/touchscreen/wait ${S}/cursors
43}
44
45RRECOMMENDS_${PN} += "gnome-icon-theme"
46RRECOMMENDS_${PN} += "${@base_contains('DISTRO_FEATURES','alsa','libcanberra-alsa','',d)}"
47RRECOMMENDS_${PN} += "${@base_contains('DISTRO_FEATURES','pulseaudio','libcanberra-pulse','',d)}"
diff --git a/meta-xfce/recipes-xfce/xfconf/files/0001-Simplify-checks.patch b/meta-xfce/recipes-xfce/xfconf/files/0001-Simplify-checks.patch
new file mode 100644
index 000000000..ef68f7acd
--- /dev/null
+++ b/meta-xfce/recipes-xfce/xfconf/files/0001-Simplify-checks.patch
@@ -0,0 +1,112 @@
1From 233f7d3a9b0f98b794548433cead77633aab5f7d Mon Sep 17 00:00:00 2001
2From: Nick Schermer <nick@xfce.org>
3Date: Sun, 6 Jan 2013 12:46:47 +0100
4Subject: [PATCH] Simplify checks.
5MIME-Version: 1.0
6Content-Type: text/plain; charset=UTF-8
7Content-Transfer-Encoding: 8bit
8
9Upstream-Status: backport [1]
10
11[1] http://git.xfce.org/xfce/xfconf/commit/?id=233f7d3a9b0f98b794548433cead77633aab5f7d
12
13Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
14---
15 tests/Makefile.am | 1 -
16 tests/Makefile.inc | 9 +--------
17 tests/test-template.sh.in | 49 -----------------------------------------------
18 3 files changed, 1 insertion(+), 58 deletions(-)
19 delete mode 100644 tests/test-template.sh.in
20
21diff --git a/tests/Makefile.am b/tests/Makefile.am
22index 57165d9..57ba7e8 100644
23--- a/tests/Makefile.am
24+++ b/tests/Makefile.am
25@@ -13,5 +13,4 @@ clean-local:
26
27 EXTRA_DIST = \
28 $(test_scripts) \
29- test-template.sh.in \
30 tests-common.h
31diff --git a/tests/Makefile.inc b/tests/Makefile.inc
32index 2ed3431..7a5a715 100644
33--- a/tests/Makefile.inc
34+++ b/tests/Makefile.inc
35@@ -13,9 +13,7 @@
36 # along with this program; if not, write to the Free Software
37 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
38
39-check_SCRIPTS = $(addsuffix .sh,$(check_PROGRAMS))
40-
41-TESTS = $(check_SCRIPTS)
42+TESTS = $(check_PROGRAMS)
43 TESTS_ENVIRONMENT = XDG_CONFIG_HOME="$(top_builddir)/tests/test-xdg_config_home" XFCONFD="$(top_builddir)/xfconfd/xfconfd"
44
45 AM_CFLAGS = \
46@@ -27,8 +25,3 @@ AM_CFLAGS = \
47 LIBS = \
48 $(top_builddir)/xfconf/libxfconf-$(LIBXFCONF_VERSION_API).la
49
50-%.sh: $(top_srcdir)/tests/test-template.sh.in Makefile
51- sed -e 's/@TEST_NAME@/$@/; s/\.sh//;' <$(top_srcdir)/tests/test-template.sh.in >$@
52- chmod 755 $@
53-
54-CLEANFILES = $(check_SCRIPTS)
55diff --git a/tests/test-template.sh.in b/tests/test-template.sh.in
56deleted file mode 100644
57index 2e638a8..0000000
58--- a/tests/test-template.sh.in
59+++ /dev/null
60@@ -1,49 +0,0 @@
61-#!/bin/sh
62-
63-cleanup() {
64- if [ "$XFCONFD_PID" ]; then
65- kill -TERM $XFCONFD_PID 2>/dev/null
66- sleep 1
67- kill -KILL $XFCONFD_PID 2>/dev/null
68- fi
69-
70- kill -TERM $DBUS_SESSION_BUS_PID 2>/dev/null
71- sleep 1
72- kill -KILL $DBUS_SESSION_BUS_PID 2>/dev/null
73-}
74-
75-die() {
76- [ "$1" ] && echo "$1" >&2
77- cleanup
78- exit 1
79-}
80-
81-# some buildbots have problems with the tests (dbus not
82-# working properly without an X11 server).
83-if [ -n "$XFCONF_SKIP_TESTS" ]; then
84- echo "Warning: Tests disabled, skipping @TEST_NAME@" >&2
85- exit 0
86-fi
87-
88-unset DBUS_SESSION_BUS_ADDRESS
89-unset DBUS_SESSION_BUS_PID
90-unset XFCONFD_PID
91-
92-eval `dbus-launch --sh-syntax`
93-export DBUS_SESSION_BUS_ADDRESS
94-export DBUS_SESSION_BUS_PID
95-
96-[ "$DBUS_SESSION_BUS_PID" ] || die "DBus failed to start"
97-
98-trap "die Interrupted" INT
99-
100-eval `$XFCONFD --daemon 2>/dev/null` || die "Failed to start xfconfd"
101-
102-export XDG_CONFIG_HOME # make sure it's exported from the makefile
103-export XDG_CONFIG_DIRS=""
104-
105-./@TEST_NAME@ || die "Test Failed"
106-
107-cleanup
108-
109-exit 0
110--
1111.8.3.1
112
diff --git a/meta-xfce/recipes-xfce/xfconf/xfconf_4.10.0.bb b/meta-xfce/recipes-xfce/xfconf/xfconf_4.10.0.bb
new file mode 100644
index 000000000..bb8c33709
--- /dev/null
+++ b/meta-xfce/recipes-xfce/xfconf/xfconf_4.10.0.bb
@@ -0,0 +1,16 @@
1SUMMARY = "Xfce configuration daemon and utilities"
2SECTION = "x11/wm"
3LICENSE = "GPLv2"
4LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
5DEPENDS = "dbus-glib libxfce4util perl"
6
7inherit xfce
8
9EXTRA_OECONF += "PERL=${STAGING_DIR_TARGET}/usr/bin/perl"
10
11SRC_URI += "file://0001-Simplify-checks.patch"
12SRC_URI[md5sum] = "4ed48150a03fb5f42b455494307b7f28"
13SRC_URI[sha256sum] = "175219a441cc7d0f210bbd1a3b0abba41598627cd9db27235811400c3e100576"
14
15FILES_${PN} += "${libdir}/xfce4/xfconf/xfconfd \
16 ${datadir}/dbus-1/services/org.xfce.Xfconf.service"
diff --git a/meta-xfce/recipes-xfce/xfdesktop/xfdesktop_4.10.2.bb b/meta-xfce/recipes-xfce/xfdesktop/xfdesktop_4.10.2.bb
new file mode 100644
index 000000000..93b08545c
--- /dev/null
+++ b/meta-xfce/recipes-xfce/xfdesktop/xfdesktop_4.10.2.bb
@@ -0,0 +1,15 @@
1SUMMARY = "Xfce4 Desktop Manager"
2SECTION = "x11/base"
3LICENSE = "GPLv2"
4LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
5DEPENDS = "glib-2.0 gtk+ libxfce4util libxfce4ui libwnck xfconf dbus-glib thunar garcon exo"
6
7inherit xfce
8
9SRC_URI[md5sum] = "54a84ce63046c279fc3ec3f436d2f1b0"
10SRC_URI[sha256sum] = "49a6e0be513e307e896f7e5929825babec9bbcd4b2e73552f9d27647a4db797d"
11
12PACKAGECONFIG ??= ""
13PACKAGECONFIG[notify] = "--enable-notifications,--disable-notifications,libnotify"
14
15FILES_${PN} += "${datadir}/backgrounds"
diff --git a/meta-xfce/recipes-xfce/xfwm4/files/0001-don-t-block-display-events-when-time-is-set-backward.patch b/meta-xfce/recipes-xfce/xfwm4/files/0001-don-t-block-display-events-when-time-is-set-backward.patch
new file mode 100644
index 000000000..08fd76bb2
--- /dev/null
+++ b/meta-xfce/recipes-xfce/xfwm4/files/0001-don-t-block-display-events-when-time-is-set-backward.patch
@@ -0,0 +1,33 @@
1From e87977696f03b0c9f72884f8e3e3ec3248dfd80a Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
3Date: Tue, 18 Jun 2013 12:46:42 +0200
4Subject: [PATCH] don't block display events when time is set backwards
5MIME-Version: 1.0
6Content-Type: text/plain; charset=UTF-8
7Content-Transfer-Encoding: 8bit
8
9Upstream-Status: Submitted [1]
10
11[1] https://bugzilla.xfce.org/show_bug.cgi?id=10184
12
13Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
14---
15 src/display.c | 2 +-
16 1 files changed, 1 insertions(+), 1 deletions(-)
17
18diff --git a/src/display.c b/src/display.c
19index 00318d5..651bc7a 100644
20--- a/src/display.c
21+++ b/src/display.c
22@@ -733,7 +733,7 @@ myDisplayUpdateCurrentTime (DisplayInfo *display, XEvent *ev)
23 break;
24 }
25
26- if ((timestamp != (guint32) CurrentTime) && TIMESTAMP_IS_BEFORE(display->current_time, timestamp))
27+ if ((timestamp != (guint32) CurrentTime) /*&& TIMESTAMP_IS_BEFORE(display->current_time, timestamp)*/)
28 {
29 display->current_time = timestamp;
30 }
31--
321.7.6.5
33
diff --git a/meta-xfce/recipes-xfce/xfwm4/xfwm4_git.bb b/meta-xfce/recipes-xfce/xfwm4/xfwm4_git.bb
new file mode 100644
index 000000000..f8cd4b24f
--- /dev/null
+++ b/meta-xfce/recipes-xfce/xfwm4/xfwm4_git.bb
@@ -0,0 +1,36 @@
1DESCRIPTION="Xfce4 Window Manager"
2SECTION = "x11/wm"
3LICENSE = "GPLv2"
4LIC_FILES_CHKSUM = "file://COPYING;md5=d791728a073bc009b4ffaf00b7599855"
5DEPENDS = "virtual/libx11 libxpm gtk+ libxfce4util libxfce4ui xfconf libwnck dbus-glib startup-notification exo-native"
6
7inherit xfce xfce-git update-alternatives
8
9SRC_URI = " \
10 git://git.xfce.org/xfce/xfwm4;protocol=git \
11 file://0001-don-t-block-display-events-when-time-is-set-backward.patch \
12"
13
14SRCREV = "bce3062d0879ab8504c446f99ad57c9fd76c5097"
15S = "${WORKDIR}/git"
16PV = "4.10.1+git${SRCPV}"
17
18EXTRA_OECONF += "--enable-maintainer-mode"
19
20python populate_packages_prepend () {
21 themedir = d.expand('${datadir}/themes')
22 do_split_packages(d, themedir, '^(.*)', 'xfwm4-theme-%s', 'XFWM4 theme %s', allow_dirs=True)
23}
24
25PACKAGES_DYNAMIC += "^xfwm4-theme-.*"
26
27ALTERNATIVE_${PN} = "x-window-manager"
28ALTERNATIVE_TARGET[x-window-manager] = "${bindir}/xfwm4"
29ALTERNATIVE_PRIORITY[x-window-manager] = "30"
30
31RDEPENDS_${PN} = "xfwm4-theme-default"
32FILES_${PN} += "${libdir}/xfce4/xfwm4/helper-dialog \
33 ${datadir}/xfwm4/defaults \
34"
35FILES_${PN}-dbg += "${libexecdir}/xfce4/xfwm4/.debug/*"
36