├── .gitignore ├── .gitlab-ci.yml ├── AUTHORS ├── COPYING ├── Makefile.am ├── NEWS ├── README.md ├── autogen.sh ├── common ├── Makefile.am ├── xfconf-settings.c └── xfconf-settings.h ├── configure.ac.in ├── data ├── Makefile.am ├── data │ ├── Makefile.am │ ├── bindings.xml │ └── preferences.ui ├── icons │ ├── 128x128 │ │ ├── Makefile.am │ │ └── org.xfce.xfdashboard.png │ ├── 16x16 │ │ ├── Makefile.am │ │ ├── org.xfce.xfdashboard.png │ │ └── org.xfce.xfdashboard.svg │ ├── 24x24 │ │ ├── Makefile.am │ │ ├── org.xfce.xfdashboard.png │ │ └── org.xfce.xfdashboard.svg │ ├── 32x32 │ │ ├── Makefile.am │ │ ├── org.xfce.xfdashboard.png │ │ └── org.xfce.xfdashboard.svg │ ├── 48x48 │ │ ├── Makefile.am │ │ ├── org.xfce.xfdashboard.png │ │ └── org.xfce.xfdashboard.svg │ ├── Makefile.am │ └── scalable │ │ ├── Makefile.am │ │ └── org.xfce.xfdashboard.svg ├── metainfo │ ├── Makefile.am │ └── org.xfce.xfdashboard.metainfo.xml.in ├── org.xfce.xfdashboard-autostart.desktop.in.in ├── org.xfce.xfdashboard-settings.desktop.in.in ├── org.xfce.xfdashboard.desktop.in.in └── themes │ ├── Makefile.am │ ├── xfdashboard-auber │ ├── Makefile.am │ ├── animations.xml │ ├── effects.xml │ ├── screenshot-xfdashboard-auber.png │ ├── xfdashboard-auber.css │ ├── xfdashboard-secondary.xml │ ├── xfdashboard.css │ ├── xfdashboard.theme.in.in │ └── xfdashboard.xml │ ├── xfdashboard-blue │ ├── Makefile.am │ ├── animations.xml │ ├── effects.xml │ ├── screenshot-xfdashboard-blue.png │ ├── xfdashboard-blue.css │ ├── xfdashboard-secondary.xml │ ├── xfdashboard.css │ ├── xfdashboard.theme.in.in │ └── xfdashboard.xml │ ├── xfdashboard-dark │ ├── Makefile.am │ ├── animations.xml │ ├── effects.xml │ ├── screenshot-xfdashboard-dark.png │ ├── xfdashboard-dark.css │ ├── xfdashboard-secondary.xml │ ├── xfdashboard.css │ ├── xfdashboard.theme.in.in │ └── xfdashboard.xml │ ├── xfdashboard-mint │ ├── Makefile.am │ ├── animations.xml │ ├── effects.xml │ ├── screenshot-xfdashboard-mint.png │ ├── xfdashboard-mint.css │ ├── xfdashboard-secondary.xml │ ├── xfdashboard.css │ ├── xfdashboard.theme.in.in │ └── xfdashboard.xml │ ├── xfdashboard-moranga │ ├── Makefile.am │ ├── animations.xml │ ├── effects.xml │ ├── screenshot-xfdashboard-moranga.png │ ├── xfdashboard-moranga.css │ ├── xfdashboard-secondary.xml │ ├── xfdashboard.css │ ├── xfdashboard.theme.in.in │ └── xfdashboard.xml │ ├── xfdashboard-wine │ ├── Makefile.am │ ├── animations.xml │ ├── effects.xml │ ├── screenshot-xfdashboard-wine.png │ ├── xfdashboard-secondary.xml │ ├── xfdashboard-wine.css │ ├── xfdashboard.css │ ├── xfdashboard.theme.in.in │ └── xfdashboard.xml │ └── xfdashboard │ ├── Makefile.am │ ├── animations.xml │ ├── effects.xml │ ├── screenshot-xfdashboard.png │ ├── windows-view.png │ ├── xfdashboard-secondary.xml │ ├── xfdashboard.css │ ├── xfdashboard.theme.in.in │ └── xfdashboard.xml ├── libxfdashboard ├── Makefile.am ├── action-button.c ├── action-button.h ├── actor.c ├── actor.h ├── animation.c ├── animation.h ├── application-button.c ├── application-button.h ├── application-database.c ├── application-database.h ├── application-tracker.c ├── application-tracker.h ├── applications-menu-model.c ├── applications-menu-model.h ├── applications-search-provider.c ├── applications-search-provider.h ├── applications-view.c ├── applications-view.h ├── background.c ├── background.h ├── binding.c ├── binding.h ├── bindings-pool.c ├── bindings-pool.h ├── box-layout.c ├── box-layout.h ├── button.c ├── button.h ├── click-action.c ├── click-action.h ├── collapse-box.c ├── collapse-box.h ├── compat.h ├── core.c ├── core.h ├── css-selector.c ├── css-selector.h ├── debug.c ├── debug.h ├── desktop-app-info-action.c ├── desktop-app-info-action.h ├── desktop-app-info.c ├── desktop-app-info.h ├── drag-action.c ├── drag-action.h ├── drop-action.c ├── drop-action.h ├── dynamic-table-layout.c ├── dynamic-table-layout.h ├── emblem-effect.c ├── emblem-effect.h ├── enums.c.template ├── enums.h.template ├── fill-box-layout.c ├── fill-box-layout.h ├── focus-manager.c ├── focus-manager.h ├── focusable.c ├── focusable.h ├── gdk │ ├── window-tracker-backend-gdk.c │ └── window-tracker-backend-gdk.h ├── gradient-color.c ├── gradient-color.h ├── image-content.c ├── image-content.h ├── label.c ├── label.h ├── libxfdashboard.h ├── libxfdashboard.pc.in ├── live-window-simple.c ├── live-window-simple.h ├── live-window.c ├── live-window.h ├── live-workspace.c ├── live-workspace.h ├── marshal.list ├── model.c ├── model.h ├── outline-effect.c ├── outline-effect.h ├── plugin-settings.c ├── plugin-settings.h ├── plugin.c ├── plugin.h ├── plugins-manager.c ├── plugins-manager.h ├── popup-menu-item-button.c ├── popup-menu-item-button.h ├── popup-menu-item-separator.c ├── popup-menu-item-separator.h ├── popup-menu-item.c ├── popup-menu-item.h ├── popup-menu.c ├── popup-menu.h ├── quicklaunch.c ├── quicklaunch.h ├── scaled-table-layout.c ├── scaled-table-layout.h ├── scrollbar.c ├── scrollbar.h ├── search-manager.c ├── search-manager.h ├── search-provider.c ├── search-provider.h ├── search-result-container.c ├── search-result-container.h ├── search-result-set.c ├── search-result-set.h ├── search-view.c ├── search-view.h ├── settings.c ├── settings.h ├── stage-interface.c ├── stage-interface.h ├── stage.c ├── stage.h ├── stylable.c ├── stylable.h ├── text-box.c ├── text-box.h ├── theme-animation.c ├── theme-animation.h ├── theme-css.c ├── theme-css.h ├── theme-effects.c ├── theme-effects.h ├── theme-layout.c ├── theme-layout.h ├── theme.c ├── theme.h ├── toggle-button.c ├── toggle-button.h ├── tooltip-action.c ├── tooltip-action.h ├── transition-group.c ├── transition-group.h ├── types.h ├── utils.c ├── utils.h ├── version.h.in ├── view-manager.c ├── view-manager.h ├── view-selector.c ├── view-selector.h ├── view.c ├── view.h ├── viewpad.c ├── viewpad.h ├── window-content.c ├── window-content.h ├── window-tracker-backend.c ├── window-tracker-backend.h ├── window-tracker-monitor.c ├── window-tracker-monitor.h ├── window-tracker-window.c ├── window-tracker-window.h ├── window-tracker-workspace.c ├── window-tracker-workspace.h ├── window-tracker.c ├── window-tracker.h ├── windows-view.c ├── windows-view.h ├── workspace-selector.c ├── workspace-selector.h └── x11 │ ├── window-content-x11.c │ ├── window-content-x11.h │ ├── window-tracker-backend-x11.c │ ├── window-tracker-backend-x11.h │ ├── window-tracker-monitor-x11.c │ ├── window-tracker-monitor-x11.h │ ├── window-tracker-window-x11.c │ ├── window-tracker-window-x11.h │ ├── window-tracker-workspace-x11.c │ ├── window-tracker-workspace-x11.h │ ├── window-tracker-x11.c │ └── window-tracker-x11.h ├── plugins ├── Makefile.am ├── autopin-windows │ ├── Makefile.am │ ├── autopin-windows.c │ ├── autopin-windows.h │ └── plugin.c ├── clock-view │ ├── Makefile.am │ ├── clock-view-settings.c │ ├── clock-view-settings.h │ ├── clock-view.c │ ├── clock-view.h │ └── plugin.c ├── example-search-provider │ ├── Makefile.am │ ├── Makefile.am.example │ ├── example-search-provider.c │ ├── example-search-provider.h │ └── plugin.c ├── gnome-shell-search-provider │ ├── Makefile.am │ ├── gnome-shell-search-provider.c │ ├── gnome-shell-search-provider.h │ └── plugin.c ├── hot-corner │ ├── Makefile.am │ ├── hot-corner-settings.c │ ├── hot-corner-settings.h │ ├── hot-corner.c │ ├── hot-corner.h │ └── plugin.c ├── middle-click-window-close │ ├── Makefile.am │ ├── middle-click-window-close.c │ ├── middle-click-window-close.h │ └── plugin.c └── recently-used-search-provider │ ├── Makefile.am │ ├── plugin.c │ ├── recently-used-search-provider.c │ └── recently-used-search-provider.h ├── po ├── POTFILES.in ├── POTFILES.skip ├── be.po ├── bg.po ├── ca.po ├── da.po ├── de.po ├── el.po ├── es.po ├── et.po ├── eu.po ├── fr.po ├── gl.po ├── he.po ├── id.po ├── ie.po ├── it.po ├── it_IT.po ├── ja.po ├── kk.po ├── ko.po ├── lt.po ├── nb.po ├── nl.po ├── pl.po ├── pt.po ├── pt_BR.po ├── ru.po ├── ru_RU.po ├── sl.po ├── sq.po ├── sr.po ├── sv.po ├── sv_SE.po ├── tr.po └── zh_CN.po ├── settings ├── Makefile.am ├── general.c ├── general.h ├── main.c ├── plugins.c ├── plugins.h ├── settings.c ├── settings.h ├── themes.c └── themes.h └── xfdashboard ├── Makefile.am ├── application.c ├── application.h └── main.c /.gitignore: -------------------------------------------------------------------------------- 1 | # Ignore object files, temporary compiler files, 2 | # auto-generated files and the executable itself 3 | *.o 4 | *.lo 5 | *.la 6 | .deps 7 | .libs 8 | *.geany 9 | *~ 10 | ChangeLog 11 | data/metainfo/org.xfce.xfdashboard.metainfo.xml 12 | data/themes/xfdashboard/xfdashboard.theme 13 | data/themes/xfdashboard/xfdashboard.theme.in 14 | data/themes/xfdashboard-auber/xfdashboard.theme 15 | data/themes/xfdashboard-auber/xfdashboard.theme.in 16 | data/themes/xfdashboard-blue/xfdashboard.theme 17 | data/themes/xfdashboard-blue/xfdashboard.theme.in 18 | data/themes/xfdashboard-dark/xfdashboard.theme 19 | data/themes/xfdashboard-dark/xfdashboard.theme.in 20 | data/themes/xfdashboard-mint/xfdashboard.theme 21 | data/themes/xfdashboard-mint/xfdashboard.theme.in 22 | data/themes/xfdashboard-moranga/xfdashboard.theme 23 | data/themes/xfdashboard-moranga/xfdashboard.theme.in 24 | data/themes/xfdashboard-wine/xfdashboard.theme 25 | data/themes/xfdashboard-wine/xfdashboard.theme.in 26 | data/org.xfce.xfdashboard.desktop 27 | data/org.xfce.xfdashboard.desktop.in 28 | data/org.xfce.xfdashboard-autostart.desktop 29 | data/org.xfce.xfdashboard-autostart.desktop.in 30 | data/org.xfce.xfdashboard-settings.desktop 31 | data/org.xfce.xfdashboard-settings.desktop.in 32 | ChangeLog 33 | libxfdashboard/enums.[ch] 34 | libxfdashboard/marshal.[ch] 35 | libxfdashboard/stamp-marshal.h 36 | libxfdashboard/libxfdashboard.pc 37 | libxfdashboard/version.h 38 | settings/xfdashboard-settings 39 | xfdashboard/xfdashboard 40 | 41 | # Ignore autotools files 42 | COPYING 43 | INSTALL 44 | Makefile 45 | Makefile.in 46 | aclocal.m4 47 | autom4te.cache 48 | compile 49 | config.* 50 | configure 51 | depcomp 52 | install-sh 53 | intltool-extract.in 54 | intltool-merge.in 55 | intltool-update.in 56 | libtool 57 | ltmain.sh 58 | missing 59 | mkinstalldirs 60 | stamp-h1 61 | configure.ac 62 | m4/* 63 | .dirstamp 64 | 65 | # Ignore language files 66 | .tx 67 | po/POTFILES 68 | po/*.gmo 69 | po/Makefile.in.in 70 | po/stamp-it 71 | po/.intltool-merge-cache 72 | po/xfdashboard.pot 73 | -------------------------------------------------------------------------------- /.gitlab-ci.yml: -------------------------------------------------------------------------------- 1 | include: 2 | - project: 'xfce/xfce4-dev-tools' 3 | file: '/ci/build_project.yml' 4 | 5 | -------------------------------------------------------------------------------- /AUTHORS: -------------------------------------------------------------------------------- 1 | Stephan Haller 2 | -------------------------------------------------------------------------------- /Makefile.am: -------------------------------------------------------------------------------- 1 | @SET_MAKE@ 2 | 3 | ACLOCAL_AMFLAGS=-I m4 4 | 5 | EXTRA_DIST = \ 6 | intltool-extract.in \ 7 | intltool-merge.in \ 8 | intltool-update.in \ 9 | README.md 10 | 11 | DISTCLEANFILES = \ 12 | intltool-extract \ 13 | intltool-merge \ 14 | intltool-update \ 15 | po/.intltool-merge-cache.lock 16 | 17 | SUBDIRS = \ 18 | common \ 19 | data \ 20 | po \ 21 | libxfdashboard \ 22 | plugins \ 23 | settings \ 24 | xfdashboard 25 | 26 | distuninstallcheck_listfiles = \ 27 | find . -type f -print | grep -v ./share/icons/hicolor/icon-theme.cache 28 | 29 | distclean-local: 30 | rm -rf *.cache 31 | 32 | html: Makefile 33 | make -C doc html 34 | 35 | dist-bz2: dist-gzip 36 | zcat $(PACKAGE)-$(VERSION).tar.gz | \ 37 | bzip2 --best -c > $(PACKAGE)-$(VERSION).tar.bz2 38 | 39 | distcheck-bz2: distcheck 40 | zcat $(PACKAGE)-$(VERSION).tar.gz | \ 41 | bzip2 --best -c > $(PACKAGE)-$(VERSION).tar.bz2 42 | 43 | snapshot: dist 44 | mv $(PACKAGE)-$(VERSION).tar.gz \ 45 | $(PACKAGE)-$(VERSION)-r@REVISION@.tar.gz 46 | 47 | snapshot-bz2: dist-bz2 48 | mv $(PACKAGE)-$(VERSION).tar.bz2 \ 49 | $(PACKAGE)-$(VERSION)-r@REVISION@.tar.bz2 50 | 51 | .PHONY: ChangeLog 52 | 53 | ChangeLog: Makefile 54 | (GIT_DIR=$(top_srcdir)/.git git log > .changelog.tmp \ 55 | && mv .changelog.tmp ChangeLog; rm -f .changelog.tmp) \ 56 | || (touch ChangeLog; echo 'Git directory not found: installing possibly empty changelog.' >&2) 57 | 58 | dist-hook: ChangeLog 59 | -------------------------------------------------------------------------------- /NEWS: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gmc-holle/xfdashboard/6e243c783b20b318db80b5473b548ec58004c820/NEWS -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | [![License](https://img.shields.io/badge/License-GPL%20v2-blue.svg)](https://gitlab.xfce.org/apps/xfdashboard/-/blob/master/COPYING) 2 | 3 | # xfdashboard 4 | 5 | Xfdashboard is maybe a Gnome shell and macOS Expose like dashboard for Xfce. 6 | 7 | **Xfdashboard** provides a GNOME shell dashboard and macOS Mission Control 8 | (e.g. Exposé and Spaces) like interface for use with the Xfce desktop. It can 9 | be configured to run with any keyboard shortcut and when executed provides an 10 | overview of applications currently open enabling the user to switch between 11 | different applications. The search feature works like Xfce's app finder which 12 | makes it convenient to search for and start applications. 13 | 14 | ---- 15 | 16 | ### Homepage 17 | 18 | [Xfdashboard documentation](https://docs.xfce.org/apps/xfdashboard/start) 19 | 20 | ### Changelog 21 | 22 | See [NEWS](https://gitlab.xfce.org/apps/xfdashboard/-/blob/master/NEWS) for details on changes and fixes made in the current release. 23 | 24 | ### Source Code Repository 25 | 26 | [xfdashboard source code](https://gitlab.xfce.org/apps/xfdashboard) 27 | 28 | ### Download a Release Tarball 29 | 30 | [Xfdashboard archive](https://archive.xfce.org/src/apps/xfdashboard) 31 | or 32 | [Xfdashboard tags](https://gitlab.xfce.org/apps/xfdashboard/-/tags) 33 | 34 | ### Installation 35 | 36 | From source code repository: 37 | 38 | % cd xfdashboard 39 | % ./autogen.sh 40 | % make 41 | % make install 42 | 43 | From release tarball: 44 | 45 | % tar xf xfdashboard-.tar.bz2 46 | % cd xfdashboard- 47 | % ./configure 48 | % make 49 | % make install 50 | 51 | ### Reporting Bugs 52 | 53 | Visit the [reporting bugs](https://docs.xfce.org/apps/xfdashboard/bugs) page to view currently open bug reports and instructions on reporting new bugs or submitting bugfixes. 54 | 55 | -------------------------------------------------------------------------------- /autogen.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # 3 | # Copyright (c) 2002-2009 The Xfce development team. All rights reserved. 4 | # 5 | # This library is free software; you can redistribute it and/or modify it 6 | # under the terms of the GNU General Public License as published by the Free 7 | # Software Foundation; either version 2 of the License, or (at your option) 8 | # any later version. 9 | # 10 | # This library is distributed in the hope that it will be useful, but WITHOUT 11 | # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 12 | # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 13 | # more details. 14 | # 15 | # You should have received a copy of the GNU Lesser General Public 16 | # License along with this library; if not, write to the Free Software 17 | # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 | # 19 | # Written for Xfce by Benedikt Meurer . 20 | # 21 | 22 | (type xdt-autogen) >/dev/null 2>&1 || { 23 | cat >&2 < 5 | * 6 | * This program is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation; either version 2 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program; if not, write to the Free Software 18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 19 | * MA 02110-1301, USA. 20 | * 21 | * 22 | */ 23 | 24 | #ifndef __XFDASHBOARD_XFCONF_XFCONF_SETTINGS__ 25 | #define __XFDASHBOARD_XFCONF_XFCONF_SETTINGS__ 26 | 27 | #if !defined(__LIBXFDASHBOARD_H_INSIDE__) && !defined(LIBXFDASHBOARD_COMPILATION) 28 | #error "Only can be included directly." 29 | #endif 30 | 31 | #include 32 | 33 | #include 34 | 35 | G_BEGIN_DECLS 36 | 37 | #define XFDASHBOARD_TYPE_XFCONF_SETTINGS (xfdashboard_xfconf_settings_get_type()) 38 | #define XFDASHBOARD_XFCONF_SETTINGS(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), XFDASHBOARD_TYPE_XFCONF_SETTINGS, XfdashboardXfconfSettings)) 39 | #define XFDASHBOARD_IS_XFCONF_SETTINGS(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), XFDASHBOARD_TYPE_XFCONF_SETTINGS)) 40 | #define XFDASHBOARD_XFCONF_SETTINGS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), XFDASHBOARD_TYPE_XFCONF_SETTINGS, XfdashboardXfconfSettingsClass)) 41 | #define XFDASHBOARD_IS_XFCONF_SETTINGS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), XFDASHBOARD_TYPE_XFCONF_SETTINGS)) 42 | #define XFDASHBOARD_XFCONF_SETTINGS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), XFDASHBOARD_TYPE_XFCONF_SETTINGS, XfdashboardXfconfSettingsClass)) 43 | 44 | typedef struct _XfdashboardXfconfSettings XfdashboardXfconfSettings; 45 | typedef struct _XfdashboardXfconfSettingsClass XfdashboardXfconfSettingsClass; 46 | typedef struct _XfdashboardXfconfSettingsPrivate XfdashboardXfconfSettingsPrivate; 47 | 48 | /** 49 | * XfdashboardXfconfSettings: 50 | * 51 | * The #XfdashboardXfconfSettings structure contains only private data and 52 | * should be accessed using the provided API 53 | */ 54 | struct _XfdashboardXfconfSettings 55 | { 56 | /*< private >*/ 57 | /* Parent instance */ 58 | XfdashboardSettings parent_instance; 59 | 60 | /* Private structure */ 61 | XfdashboardXfconfSettingsPrivate *priv; 62 | }; 63 | 64 | /** 65 | * XfdashboardXfconfSettingsClass: 66 | * 67 | * The #XfdashboardXfconfSettingsClass class structure contains only private data 68 | */ 69 | struct _XfdashboardXfconfSettingsClass 70 | { 71 | /*< private >*/ 72 | /* Parent class */ 73 | XfdashboardSettingsClass parent_class; 74 | 75 | /*< public >*/ 76 | /* Virtual functions */ 77 | }; 78 | 79 | /* Public API */ 80 | GType xfdashboard_xfconf_settings_get_type(void) G_GNUC_CONST; 81 | 82 | G_END_DECLS 83 | 84 | #endif /* __LIBXFDASHBOARD_XFCONF_SETTINGS__ */ 85 | -------------------------------------------------------------------------------- /data/Makefile.am: -------------------------------------------------------------------------------- 1 | SUBDIRS = \ 2 | metainfo \ 3 | data \ 4 | icons \ 5 | themes 6 | 7 | desktopdir = $(datadir)/applications 8 | desktop_in_files = org.xfce.xfdashboard.desktop.in 9 | desktop_DATA = $(desktop_in_files:.desktop.in=.desktop) 10 | 11 | autostartdir = $(sysconfdir)/xdg/autostart 12 | autostart_in_files = org.xfce.xfdashboard-autostart.desktop.in 13 | autostart_DATA = $(autostart_in_files:.desktop.in=.desktop) 14 | 15 | settingsdir = $(datadir)/applications 16 | settings_in_files = org.xfce.xfdashboard-settings.desktop.in 17 | settings_DATA = $(settings_in_files:.desktop.in=.desktop) 18 | 19 | # Substitute bindir so it works when built in a non-system prefix 20 | org.xfce.xfdashboard.desktop.in:org.xfce.xfdashboard.desktop.in.in 21 | $(AM_V_GEN) sed -e "s|@bindir[@]|$(bindir)|" \ 22 | -e "s|@VERSION[@]|$(VERSION)|" \ 23 | $< > $@ || rm $@ 24 | 25 | org.xfce.xfdashboard-autostart.desktop.in:org.xfce.xfdashboard-autostart.desktop.in.in 26 | $(AM_V_GEN) sed -e "s|@bindir[@]|$(bindir)|" \ 27 | -e "s|@VERSION[@]|$(VERSION)|" \ 28 | $< > $@ || rm $@ 29 | 30 | org.xfce.xfdashboard-settings.desktop.in:org.xfce.xfdashboard-settings.desktop.in.in 31 | $(AM_V_GEN) sed -e "s|@bindir[@]|$(bindir)|" \ 32 | -e "s|@VERSION[@]|$(VERSION)|" \ 33 | $< > $@ || rm $@ 34 | 35 | @INTLTOOL_DESKTOP_RULE@ 36 | 37 | EXTRA_DIST = \ 38 | $(desktop_in_files:.desktop.in=.desktop.in.in) \ 39 | $(autostart_in_files:.desktop.in=.desktop.in.in) \ 40 | $(settings_in_files:.desktop.in=.desktop.in.in) 41 | 42 | CLEANFILES = \ 43 | $(desktop_in_files) \ 44 | $(desktop_DATA) \ 45 | $(autostart_in_files) \ 46 | $(autostart_DATA) \ 47 | $(settings_in_files) \ 48 | $(settings_DATA) 49 | -------------------------------------------------------------------------------- /data/data/Makefile.am: -------------------------------------------------------------------------------- 1 | EXTRA_DIST = \ 2 | $(Data_DATA) 3 | 4 | Datadir = $(datadir)/xfdashboard 5 | 6 | Data_DATA = \ 7 | bindings.xml \ 8 | preferences.ui 9 | -------------------------------------------------------------------------------- /data/icons/128x128/Makefile.am: -------------------------------------------------------------------------------- 1 | EXTRA_DIST = \ 2 | $(Data_DATA) 3 | 4 | Datadir = $(datadir)/icons/hicolor/128x128/apps 5 | 6 | Data_DATA = \ 7 | org.xfce.xfdashboard.png 8 | -------------------------------------------------------------------------------- /data/icons/128x128/org.xfce.xfdashboard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gmc-holle/xfdashboard/6e243c783b20b318db80b5473b548ec58004c820/data/icons/128x128/org.xfce.xfdashboard.png -------------------------------------------------------------------------------- /data/icons/16x16/Makefile.am: -------------------------------------------------------------------------------- 1 | EXTRA_DIST = \ 2 | $(Data_DATA) 3 | 4 | Datadir = $(datadir)/icons/hicolor/16x16/apps 5 | 6 | Data_DATA = \ 7 | org.xfce.xfdashboard.png 8 | -------------------------------------------------------------------------------- /data/icons/16x16/org.xfce.xfdashboard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gmc-holle/xfdashboard/6e243c783b20b318db80b5473b548ec58004c820/data/icons/16x16/org.xfce.xfdashboard.png -------------------------------------------------------------------------------- /data/icons/24x24/Makefile.am: -------------------------------------------------------------------------------- 1 | EXTRA_DIST = \ 2 | $(Data_DATA) 3 | 4 | Datadir = $(datadir)/icons/hicolor/24x24/apps 5 | 6 | Data_DATA = \ 7 | org.xfce.xfdashboard.png 8 | -------------------------------------------------------------------------------- /data/icons/24x24/org.xfce.xfdashboard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gmc-holle/xfdashboard/6e243c783b20b318db80b5473b548ec58004c820/data/icons/24x24/org.xfce.xfdashboard.png -------------------------------------------------------------------------------- /data/icons/32x32/Makefile.am: -------------------------------------------------------------------------------- 1 | EXTRA_DIST = \ 2 | $(Data_DATA) 3 | 4 | Datadir = $(datadir)/icons/hicolor/32x32/apps 5 | 6 | Data_DATA = \ 7 | org.xfce.xfdashboard.png 8 | -------------------------------------------------------------------------------- /data/icons/32x32/org.xfce.xfdashboard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gmc-holle/xfdashboard/6e243c783b20b318db80b5473b548ec58004c820/data/icons/32x32/org.xfce.xfdashboard.png -------------------------------------------------------------------------------- /data/icons/48x48/Makefile.am: -------------------------------------------------------------------------------- 1 | EXTRA_DIST = \ 2 | $(Data_DATA) 3 | 4 | Datadir = $(datadir)/icons/hicolor/48x48/apps 5 | 6 | Data_DATA = \ 7 | org.xfce.xfdashboard.png 8 | -------------------------------------------------------------------------------- /data/icons/48x48/org.xfce.xfdashboard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gmc-holle/xfdashboard/6e243c783b20b318db80b5473b548ec58004c820/data/icons/48x48/org.xfce.xfdashboard.png -------------------------------------------------------------------------------- /data/icons/Makefile.am: -------------------------------------------------------------------------------- 1 | SUBDIRS = \ 2 | 16x16 \ 3 | 24x24 \ 4 | 32x32 \ 5 | 48x48 \ 6 | 128x128 \ 7 | scalable 8 | 9 | gtk_update_icon_cache = gtk-update-icon-cache -f -t $(datadir)/icons/hicolor 10 | 11 | install-data-hook: 12 | @-if test -z "$(DESTDIR)"; then \ 13 | echo "Updating Gtk icon cache."; \ 14 | $(gtk_update_icon_cache); \ 15 | else \ 16 | echo "*** Icon cache not updated. Remember to run:"; \ 17 | echo "***"; \ 18 | echo "*** $(gtk_update_icon_cache)"; \ 19 | echo "***"; \ 20 | fi 21 | -------------------------------------------------------------------------------- /data/icons/scalable/Makefile.am: -------------------------------------------------------------------------------- 1 | EXTRA_DIST = \ 2 | $(Data_DATA) 3 | 4 | Datadir = $(datadir)/icons/hicolor/scalable/apps 5 | 6 | Data_DATA = \ 7 | org.xfce.xfdashboard.svg 8 | -------------------------------------------------------------------------------- /data/metainfo/Makefile.am: -------------------------------------------------------------------------------- 1 | metainfodir = $(datadir)/metainfo 2 | metainfo_DATA = $(metainfo_in_files:.xml.in=.xml) 3 | metainfo_in_files = org.xfce.xfdashboard.metainfo.xml.in 4 | 5 | @INTLTOOL_XML_RULE@ 6 | 7 | EXTRA_DIST = \ 8 | $(metainfo_DATA) \ 9 | org.xfce.xfdashboard.metainfo.xml.in 10 | 11 | DISTCLEANFILES = \ 12 | $(metainfo_in_files:.xml.in=.xml) 13 | -------------------------------------------------------------------------------- /data/org.xfce.xfdashboard-autostart.desktop.in.in: -------------------------------------------------------------------------------- 1 | [Desktop Entry] 2 | Type=Application 3 | _Name=Xfdashboard 4 | _Comment=Start xfdashboard as daemon in background 5 | TryExec=@bindir@/xfdashboard 6 | Exec=@bindir@/xfdashboard -d 7 | Icon=org.xfce.xfdashboard 8 | NotShowIn=GNOME;KDE;Unity; 9 | Terminal=false 10 | Hidden=true 11 | -------------------------------------------------------------------------------- /data/org.xfce.xfdashboard-settings.desktop.in.in: -------------------------------------------------------------------------------- 1 | [Desktop Entry] 2 | Version=1.0 3 | Type=Application 4 | _Name=Xfdashboard settings 5 | _Comment=Configure xfdashboard 6 | GenericName=Xfdashboard settings 7 | TryExec=@bindir@/xfdashboard-settings 8 | Exec=@bindir@/xfdashboard-settings 9 | Icon=org.xfce.xfdashboard 10 | Categories=XFCE;GTK;Settings;DesktopSettings;X-XFCE-SettingsDialog;X-XFCE-PersonalSettings; 11 | NotShowIn=GNOME;KDE;Unity; 12 | Terminal=false 13 | StartupNotify=true 14 | X-XfcePluggable=true 15 | X-XfceHelpComponent=xfdashboard 16 | X-XfceHelpPage=start 17 | -------------------------------------------------------------------------------- /data/org.xfce.xfdashboard.desktop.in.in: -------------------------------------------------------------------------------- 1 | [Desktop Entry] 2 | Type=Application 3 | _Name=Xfdashboard 4 | _Comment=Maybe a Gnome shell like dashboard for Xfce 5 | GenericName=Xfdashboard 6 | TryExec=@bindir@/xfdashboard 7 | Exec=@bindir@/xfdashboard 8 | Icon=org.xfce.xfdashboard 9 | Categories=System; 10 | NotShowIn=GNOME;KDE;Unity; 11 | Terminal=false 12 | -------------------------------------------------------------------------------- /data/themes/Makefile.am: -------------------------------------------------------------------------------- 1 | SUBDIRS = \ 2 | xfdashboard \ 3 | xfdashboard-auber \ 4 | xfdashboard-blue \ 5 | xfdashboard-dark \ 6 | xfdashboard-mint \ 7 | xfdashboard-moranga \ 8 | xfdashboard-wine 9 | -------------------------------------------------------------------------------- /data/themes/xfdashboard-auber/Makefile.am: -------------------------------------------------------------------------------- 1 | themedir = $(datadir)/themes/xfdashboard-auber/xfdashboard-1.0 2 | 3 | theme_in_files = \ 4 | xfdashboard.theme.in 5 | 6 | theme_DATA = \ 7 | $(theme_in_files:.theme.in=.theme) \ 8 | xfdashboard-auber.css \ 9 | xfdashboard.css \ 10 | xfdashboard.xml \ 11 | xfdashboard-secondary.xml \ 12 | animations.xml \ 13 | effects.xml \ 14 | screenshot-xfdashboard-auber.png 15 | 16 | # Substitute bindir so it works when built in a non-system prefix 17 | xfdashboard.theme.in:xfdashboard.theme.in.in 18 | $(AM_V_GEN) sed -e "s|@PACKAGE_VERSION[@]|$(PACKAGE_VERSION)|" \ 19 | $< > $@ || rm $@ 20 | 21 | @INTLTOOL_THEME_RULE@ 22 | 23 | CLEANFILES = \ 24 | $(theme_in_files) \ 25 | $(theme_in_files:.theme.in=.theme) 26 | 27 | EXTRA_DIST = \ 28 | $(theme_in_files:.theme.in=.theme.in.in) \ 29 | $(theme_DATA) 30 | 31 | DISTCLEANFILES = \ 32 | $(theme_in_files) \ 33 | $(theme_in_files:.theme.in=.theme) 34 | -------------------------------------------------------------------------------- /data/themes/xfdashboard-auber/animations.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | -------------------------------------------------------------------------------- /data/themes/xfdashboard-auber/effects.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 1.0 4 | 5 | 6 | 7 | emblem-important 8 | 32 9 | 10 | 11 | 12 | emblem-default 13 | 32 14 | south-east 15 | 1.0 16 | 1.0 17 | 18 | 19 | -------------------------------------------------------------------------------- /data/themes/xfdashboard-auber/screenshot-xfdashboard-auber.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gmc-holle/xfdashboard/6e243c783b20b318db80b5473b548ec58004c820/data/themes/xfdashboard-auber/screenshot-xfdashboard-auber.png -------------------------------------------------------------------------------- /data/themes/xfdashboard-auber/xfdashboard-auber.css: -------------------------------------------------------------------------------- 1 | @import(xfdashboard.css) 2 | /* Small icons for minimized windows */ 3 | 4 | XfdashboardWindowContent 5 | { 6 | include-window-frame: true; 7 | unmapped-window-icon-x-fill: false; 8 | unmapped-window-icon-y-fill: false; 9 | unmapped-window-icon-x-align: 0.5; 10 | unmapped-window-icon-y-align: 0.5; 11 | unmapped-window-icon-x-scale: 2.0; 12 | unmapped-window-icon-y-scale: 2.0; 13 | unmapped-window-icon-anchor-point: center; 14 | } 15 | 16 | /* icons */ 17 | 18 | XfdashboardQuicklaunch #applications-button 19 | { 20 | icon-name: "view-list-symbolic"; 21 | } 22 | 23 | XfdashboardQuicklaunch #applications-button:toggled 24 | { 25 | icon-name: "view-paged-symbolic"; 26 | } 27 | 28 | XfdashboardWindowsView 29 | { 30 | view-icon: "view-paged-symbolic"; 31 | } 32 | 33 | XfdashboardApplicationsView 34 | { 35 | view-icon: "view-list-symbolic"; 36 | } 37 | 38 | XfdashboardSearchView 39 | { 40 | view-icon: "folder-saved-search-symbolic"; 41 | } 42 | 43 | /* colors */ 44 | 45 | #notification, #tooltip 46 | { 47 | background-fill-color: #1a1a1a; 48 | outline-color: #1a1a1a; 49 | } 50 | 51 | #quicklaunch, #quicklaunch:drop-target 52 | { 53 | background-fill-color: #202020; 54 | outline-color: #202020; 55 | } 56 | 57 | #quicklaunch XfdashboardButton:hover 58 | { 59 | background-fill-color: #5E2750; 60 | } 61 | 62 | XfdashboardQuicklaunch #applications-button 63 | { 64 | background-fill-color: #202020; 65 | } 66 | 67 | XfdashboardQuicklaunch #trash-button:drop-target 68 | { 69 | background-fill-color: #5E2750; 70 | } 71 | 72 | .drag-actor-XfdashboardLiveWindow:drag-handle 73 | { 74 | background-fill-color: #5E2750a0; 75 | outline-color: #5E2750ff; 76 | } 77 | 78 | XfdashboardWorkspaceSelector 79 | { 80 | background-fill-color: #202020; 81 | outline-color: #202020; 82 | } 83 | 84 | XfdashboardLiveWorkspace 85 | { 86 | outline-color: #1a1a1aff; 87 | } 88 | 89 | XfdashboardLiveWorkspace:active 90 | { 91 | outline-color: #5E2750; 92 | } 93 | 94 | XfdashboardScrollbar 95 | { 96 | slider-color: #66666660; 97 | } 98 | 99 | XfdashboardScrollbar:hover 100 | { 101 | slider-color: #5E2750a0; 102 | } 103 | 104 | XfdashboardScrollbar:pressed 105 | { 106 | slider-color: #5E2750ff; 107 | } 108 | 109 | XfdashboardSearchView XfdashboardSearchResultContainer XfdashboardButton.result-item:hover, 110 | XfdashboardApplicationsView XfdashboardButton:hover 111 | { 112 | background-fill-color: #202020a0; 113 | } 114 | 115 | XfdashboardSearchView XfdashboardSearchResultContainer XfdashboardButton:selected, 116 | XfdashboardApplicationsView XfdashboardButton:selected 117 | { 118 | background-fill-color: #202020; 119 | outline-color: #202020; 120 | } 121 | 122 | #view-selector XfdashboardToggleButton:toggled 123 | { 124 | background-fill-color: #5E2750; 125 | } 126 | 127 | #searchbox.focus 128 | { 129 | outline-color: #202020; 130 | background-fill-color: #202020; 131 | } 132 | 133 | XfdashboardLiveWindow 134 | { 135 | background-type: outline; 136 | outline-width: 2.0; 137 | outline-color: #404040; 138 | } 139 | 140 | XfdashboardWindowsView XfdashboardLiveWindow:selected, 141 | XfdashboardWindowsView XfdashboardLiveWindow:hover 142 | { 143 | outline-color: #5E2750ff; 144 | } 145 | 146 | XfdashboardLiveWindow:selected XfdashboardButton.title 147 | { 148 | background-fill-color: #5E2750f0; 149 | outline-color: #5E2750ff; 150 | } 151 | 152 | XfdashboardLiveWindow:hover XfdashboardButton.title 153 | { 154 | background-fill-color: #5E2750f0; 155 | outline-color: #5E2750ff; 156 | } 157 | 158 | /* effects */ 159 | 160 | #quicklaunch XfdashboardButton 161 | { 162 | effects: ; 163 | } 164 | -------------------------------------------------------------------------------- /data/themes/xfdashboard-auber/xfdashboard-secondary.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | true 6 | true 7 | 0 8 | 8 9 | 10 | 11 | 12 | width 13 | 0 14 | 15 | 16 | 17 | 18 | 19 | 20 | height 21 | -16 22 | 23 | 24 | 25 | 26 | 27 | 28 | horizontal 29 | 8.0 30 | false 31 | 32 | 33 | 34 | 35 | 36 | true 37 | true 38 | top right bottom 39 | right 40 | true 41 | 42 | 43 | 44 | 45 | 46 | windows 47 | true 48 | true 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | -------------------------------------------------------------------------------- /data/themes/xfdashboard-auber/xfdashboard.theme.in.in: -------------------------------------------------------------------------------- 1 | [Xfdashboard Theme] 2 | _Name=xfdashboard-auber 3 | _Comment=Aubergine theme for xfdashboard 4 | Style=xfdashboard-auber.css 5 | Layout=xfdashboard.xml;xfdashboard-secondary.xml 6 | Effects=effects.xml 7 | Animations=animations.xml 8 | Author=lacios 9 | Version=@PACKAGE_VERSION@ 10 | Screenshot=screenshot-xfdashboard-auber.png 11 | -------------------------------------------------------------------------------- /data/themes/xfdashboard-blue/Makefile.am: -------------------------------------------------------------------------------- 1 | themedir = $(datadir)/themes/xfdashboard-blue/xfdashboard-1.0 2 | 3 | theme_in_files = \ 4 | xfdashboard.theme.in 5 | 6 | theme_DATA = \ 7 | $(theme_in_files:.theme.in=.theme) \ 8 | xfdashboard-blue.css \ 9 | xfdashboard.css \ 10 | xfdashboard.xml \ 11 | xfdashboard-secondary.xml \ 12 | animations.xml \ 13 | effects.xml \ 14 | screenshot-xfdashboard-blue.png 15 | 16 | # Substitute bindir so it works when built in a non-system prefix 17 | xfdashboard.theme.in:xfdashboard.theme.in.in 18 | $(AM_V_GEN) sed -e "s|@PACKAGE_VERSION[@]|$(PACKAGE_VERSION)|" \ 19 | $< > $@ || rm $@ 20 | 21 | @INTLTOOL_THEME_RULE@ 22 | 23 | CLEANFILES = \ 24 | $(theme_in_files) \ 25 | $(theme_in_files:.theme.in=.theme) 26 | 27 | EXTRA_DIST = \ 28 | $(theme_in_files:.theme.in=.theme.in.in) \ 29 | $(theme_DATA) 30 | 31 | DISTCLEANFILES = \ 32 | $(theme_in_files) \ 33 | $(theme_in_files:.theme.in=.theme) 34 | -------------------------------------------------------------------------------- /data/themes/xfdashboard-blue/animations.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | -------------------------------------------------------------------------------- /data/themes/xfdashboard-blue/effects.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 1.0 4 | 5 | 6 | 7 | emblem-important 8 | 32 9 | 10 | 11 | 12 | emblem-default 13 | 32 14 | south-east 15 | 1.0 16 | 1.0 17 | 18 | 19 | -------------------------------------------------------------------------------- /data/themes/xfdashboard-blue/screenshot-xfdashboard-blue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gmc-holle/xfdashboard/6e243c783b20b318db80b5473b548ec58004c820/data/themes/xfdashboard-blue/screenshot-xfdashboard-blue.png -------------------------------------------------------------------------------- /data/themes/xfdashboard-blue/xfdashboard-blue.css: -------------------------------------------------------------------------------- 1 | @import(xfdashboard.css) 2 | /* Small icons for minimized windows */ 3 | 4 | XfdashboardWindowContent 5 | { 6 | include-window-frame: true; 7 | unmapped-window-icon-x-fill: false; 8 | unmapped-window-icon-y-fill: false; 9 | unmapped-window-icon-x-align: 0.5; 10 | unmapped-window-icon-y-align: 0.5; 11 | unmapped-window-icon-x-scale: 2.0; 12 | unmapped-window-icon-y-scale: 2.0; 13 | unmapped-window-icon-anchor-point: center; 14 | } 15 | 16 | /* icons */ 17 | 18 | XfdashboardQuicklaunch #applications-button 19 | { 20 | icon-name: "view-list-symbolic"; 21 | } 22 | 23 | XfdashboardQuicklaunch #applications-button:toggled 24 | { 25 | icon-name: "view-paged-symbolic"; 26 | } 27 | 28 | XfdashboardWindowsView 29 | { 30 | view-icon: "view-paged-symbolic"; 31 | } 32 | 33 | XfdashboardApplicationsView 34 | { 35 | view-icon: "view-list-symbolic"; 36 | } 37 | 38 | XfdashboardSearchView 39 | { 40 | view-icon: "folder-saved-search-symbolic"; 41 | } 42 | 43 | /* colors */ 44 | 45 | #notification, #tooltip 46 | { 47 | background-fill-color: #1a1a1a; 48 | outline-color: #1a1a1a; 49 | } 50 | 51 | #quicklaunch, #quicklaunch:drop-target 52 | { 53 | background-fill-color: #202020; 54 | outline-color: #202020; 55 | } 56 | 57 | #quicklaunch XfdashboardButton:hover 58 | { 59 | background-fill-color: #557AAC; 60 | } 61 | 62 | XfdashboardQuicklaunch #applications-button 63 | { 64 | background-fill-color: #202020; 65 | } 66 | 67 | XfdashboardQuicklaunch #trash-button:drop-target 68 | { 69 | background-fill-color: #557AAC; 70 | } 71 | 72 | .drag-actor-XfdashboardLiveWindow:drag-handle 73 | { 74 | background-fill-color: #557AACa0; 75 | outline-color: #557AACff; 76 | } 77 | 78 | XfdashboardWorkspaceSelector 79 | { 80 | background-fill-color: #202020; 81 | outline-color: #202020; 82 | } 83 | 84 | XfdashboardLiveWorkspace 85 | { 86 | outline-color: #1a1a1aff; 87 | } 88 | 89 | XfdashboardLiveWorkspace:active 90 | { 91 | outline-color: #557AAC; 92 | } 93 | 94 | XfdashboardScrollbar 95 | { 96 | slider-color: #66666660; 97 | } 98 | 99 | XfdashboardScrollbar:hover 100 | { 101 | slider-color: #557AACa0; 102 | } 103 | 104 | XfdashboardScrollbar:pressed 105 | { 106 | slider-color: #557AACff; 107 | } 108 | 109 | XfdashboardSearchView XfdashboardSearchResultContainer XfdashboardButton.result-item:hover, 110 | XfdashboardApplicationsView XfdashboardButton:hover 111 | { 112 | background-fill-color: #202020a0; 113 | } 114 | 115 | XfdashboardSearchView XfdashboardSearchResultContainer XfdashboardButton:selected, 116 | XfdashboardApplicationsView XfdashboardButton:selected 117 | { 118 | background-fill-color: #202020; 119 | outline-color: #202020; 120 | } 121 | 122 | #view-selector XfdashboardToggleButton:toggled 123 | { 124 | background-fill-color: #557AAC; 125 | } 126 | 127 | #searchbox.focus 128 | { 129 | outline-color: #202020; 130 | background-fill-color: #202020; 131 | } 132 | 133 | XfdashboardLiveWindow 134 | { 135 | background-type: outline; 136 | outline-width: 2.0; 137 | outline-color: #404040; 138 | } 139 | 140 | XfdashboardWindowsView XfdashboardLiveWindow:selected, 141 | XfdashboardWindowsView XfdashboardLiveWindow:hover 142 | { 143 | outline-color: #557AACff; 144 | } 145 | 146 | XfdashboardLiveWindow:selected XfdashboardButton.title 147 | { 148 | background-fill-color: #557AACf0; 149 | outline-color: #557AACff; 150 | } 151 | 152 | XfdashboardLiveWindow:hover XfdashboardButton.title 153 | { 154 | background-fill-color: #557AACf0; 155 | outline-color: #557AACff; 156 | } 157 | 158 | /* effects */ 159 | 160 | #quicklaunch XfdashboardButton 161 | { 162 | effects: ; 163 | } 164 | -------------------------------------------------------------------------------- /data/themes/xfdashboard-blue/xfdashboard-secondary.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | true 6 | true 7 | 0 8 | 8 9 | 10 | 11 | 12 | width 13 | 0 14 | 15 | 16 | 17 | 18 | 19 | 20 | height 21 | -16 22 | 23 | 24 | 25 | 26 | 27 | 28 | horizontal 29 | 8.0 30 | false 31 | 32 | 33 | 34 | 35 | 36 | true 37 | true 38 | top right bottom 39 | right 40 | true 41 | 42 | 43 | 44 | 45 | 46 | windows 47 | true 48 | true 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | -------------------------------------------------------------------------------- /data/themes/xfdashboard-blue/xfdashboard.theme.in.in: -------------------------------------------------------------------------------- 1 | [Xfdashboard Theme] 2 | _Name=xfdashboard-blue 3 | _Comment=Blue theme for xfdashboard 4 | Style=xfdashboard-blue.css 5 | Layout=xfdashboard.xml;xfdashboard-secondary.xml 6 | Effects=effects.xml 7 | Animations=animations.xml 8 | Author=lacios 9 | Version=@PACKAGE_VERSION@ 10 | Screenshot=screenshot-xfdashboard-blue.png 11 | -------------------------------------------------------------------------------- /data/themes/xfdashboard-dark/Makefile.am: -------------------------------------------------------------------------------- 1 | themedir = $(datadir)/themes/xfdashboard-dark/xfdashboard-1.0 2 | 3 | theme_in_files = \ 4 | xfdashboard.theme.in 5 | 6 | theme_DATA = \ 7 | $(theme_in_files:.theme.in=.theme) \ 8 | xfdashboard-dark.css \ 9 | xfdashboard.css \ 10 | xfdashboard.xml \ 11 | xfdashboard-secondary.xml \ 12 | animations.xml \ 13 | effects.xml \ 14 | screenshot-xfdashboard-dark.png 15 | 16 | # Substitute bindir so it works when built in a non-system prefix 17 | xfdashboard.theme.in:xfdashboard.theme.in.in 18 | $(AM_V_GEN) sed -e "s|@PACKAGE_VERSION[@]|$(PACKAGE_VERSION)|" \ 19 | $< > $@ || rm $@ 20 | 21 | @INTLTOOL_THEME_RULE@ 22 | 23 | CLEANFILES = \ 24 | $(theme_in_files) \ 25 | $(theme_in_files:.theme.in=.theme) 26 | 27 | EXTRA_DIST = \ 28 | $(theme_in_files:.theme.in=.theme.in.in) \ 29 | $(theme_DATA) 30 | 31 | DISTCLEANFILES = \ 32 | $(theme_in_files) \ 33 | $(theme_in_files:.theme.in=.theme) 34 | -------------------------------------------------------------------------------- /data/themes/xfdashboard-dark/animations.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | -------------------------------------------------------------------------------- /data/themes/xfdashboard-dark/effects.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 1.0 4 | 5 | 6 | 7 | emblem-important 8 | 32 9 | 10 | 11 | 12 | emblem-default 13 | 32 14 | south-east 15 | 1.0 16 | 1.0 17 | 18 | 19 | -------------------------------------------------------------------------------- /data/themes/xfdashboard-dark/screenshot-xfdashboard-dark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gmc-holle/xfdashboard/6e243c783b20b318db80b5473b548ec58004c820/data/themes/xfdashboard-dark/screenshot-xfdashboard-dark.png -------------------------------------------------------------------------------- /data/themes/xfdashboard-dark/xfdashboard-dark.css: -------------------------------------------------------------------------------- 1 | @import(xfdashboard.css) 2 | /* Small icons for minimized windows */ 3 | 4 | XfdashboardWindowContent 5 | { 6 | include-window-frame: true; 7 | unmapped-window-icon-x-fill: false; 8 | unmapped-window-icon-y-fill: false; 9 | unmapped-window-icon-x-align: 0.5; 10 | unmapped-window-icon-y-align: 0.5; 11 | unmapped-window-icon-x-scale: 2.0; 12 | unmapped-window-icon-y-scale: 2.0; 13 | unmapped-window-icon-anchor-point: center; 14 | } 15 | 16 | /* icons */ 17 | 18 | XfdashboardQuicklaunch #applications-button 19 | { 20 | icon-name: "view-list-symbolic"; 21 | } 22 | 23 | XfdashboardQuicklaunch #applications-button:toggled 24 | { 25 | icon-name: "view-paged-symbolic"; 26 | } 27 | 28 | XfdashboardWindowsView 29 | { 30 | view-icon: "view-paged-symbolic"; 31 | } 32 | 33 | XfdashboardApplicationsView 34 | { 35 | view-icon: "view-list-symbolic"; 36 | } 37 | 38 | XfdashboardSearchView 39 | { 40 | view-icon: "folder-saved-search-symbolic"; 41 | } 42 | 43 | /* colors */ 44 | 45 | #notification, #tooltip 46 | { 47 | background-fill-color: #1a1a1a; 48 | outline-color: #1a1a1a; 49 | } 50 | 51 | #quicklaunch, #quicklaunch:drop-target 52 | { 53 | background-fill-color: #202020; 54 | outline-color: #202020; 55 | } 56 | 57 | #quicklaunch XfdashboardButton:hover 58 | { 59 | background-fill-color: #434343; 60 | } 61 | 62 | XfdashboardQuicklaunch #applications-button 63 | { 64 | background-fill-color: #202020; 65 | } 66 | 67 | XfdashboardQuicklaunch #trash-button:drop-target 68 | { 69 | background-fill-color: #434343; 70 | } 71 | 72 | .drag-actor-XfdashboardLiveWindow:drag-handle 73 | { 74 | background-fill-color: #434343a0; 75 | outline-color: #434343ff; 76 | } 77 | 78 | XfdashboardWorkspaceSelector 79 | { 80 | background-fill-color: #202020; 81 | outline-color: #202020; 82 | } 83 | 84 | XfdashboardLiveWorkspace 85 | { 86 | outline-color: #1a1a1aff; 87 | } 88 | 89 | XfdashboardLiveWorkspace:active 90 | { 91 | outline-color: #434343; 92 | } 93 | 94 | XfdashboardScrollbar 95 | { 96 | slider-color: #66666660; 97 | } 98 | 99 | XfdashboardScrollbar:hover 100 | { 101 | slider-color: #434343a0; 102 | } 103 | 104 | XfdashboardScrollbar:pressed 105 | { 106 | slider-color: #434343ff; 107 | } 108 | 109 | XfdashboardSearchView XfdashboardSearchResultContainer XfdashboardButton.result-item:hover, 110 | XfdashboardApplicationsView XfdashboardButton:hover 111 | { 112 | background-fill-color: #202020a0; 113 | } 114 | 115 | XfdashboardSearchView XfdashboardSearchResultContainer XfdashboardButton:selected, 116 | XfdashboardApplicationsView XfdashboardButton:selected 117 | { 118 | background-fill-color: #202020; 119 | outline-color: #202020; 120 | } 121 | 122 | #view-selector XfdashboardToggleButton:toggled 123 | { 124 | background-fill-color: #434343; 125 | } 126 | 127 | #searchbox.focus 128 | { 129 | outline-color: #202020; 130 | background-fill-color: #202020; 131 | } 132 | 133 | XfdashboardLiveWindow 134 | { 135 | background-type: outline; 136 | outline-width: 2.0; 137 | outline-color: #404040; 138 | } 139 | 140 | XfdashboardWindowsView XfdashboardLiveWindow:selected, 141 | XfdashboardWindowsView XfdashboardLiveWindow:hover 142 | { 143 | outline-color: #434343ff; 144 | } 145 | 146 | XfdashboardLiveWindow:selected XfdashboardButton.title 147 | { 148 | background-fill-color: #434343f0; 149 | outline-color: #434343ff; 150 | } 151 | 152 | XfdashboardLiveWindow:hover XfdashboardButton.title 153 | { 154 | background-fill-color: #434343f0; 155 | outline-color: #434343ff; 156 | } 157 | 158 | /* effects */ 159 | 160 | #quicklaunch XfdashboardButton 161 | { 162 | effects: ; 163 | } 164 | -------------------------------------------------------------------------------- /data/themes/xfdashboard-dark/xfdashboard-secondary.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | true 6 | true 7 | 0 8 | 8 9 | 10 | 11 | 12 | width 13 | 0 14 | 15 | 16 | 17 | 18 | 19 | 20 | height 21 | -16 22 | 23 | 24 | 25 | 26 | 27 | 28 | horizontal 29 | 8.0 30 | false 31 | 32 | 33 | 34 | 35 | 36 | true 37 | true 38 | top right bottom 39 | right 40 | true 41 | 42 | 43 | 44 | 45 | 46 | windows 47 | true 48 | true 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | -------------------------------------------------------------------------------- /data/themes/xfdashboard-dark/xfdashboard.theme.in.in: -------------------------------------------------------------------------------- 1 | [Xfdashboard Theme] 2 | _Name=xfdashboard-dark 3 | _Comment=Dark theme for xfdashboard 4 | Style=xfdashboard-dark.css 5 | Layout=xfdashboard.xml;xfdashboard-secondary.xml 6 | Effects=effects.xml 7 | Animations=animations.xml 8 | Author=lacios 9 | Version=@PACKAGE_VERSION@ 10 | Screenshot=screenshot-xfdashboard-dark.png 11 | -------------------------------------------------------------------------------- /data/themes/xfdashboard-mint/Makefile.am: -------------------------------------------------------------------------------- 1 | themedir = $(datadir)/themes/xfdashboard-mint/xfdashboard-1.0 2 | 3 | theme_in_files = \ 4 | xfdashboard.theme.in 5 | 6 | theme_DATA = \ 7 | $(theme_in_files:.theme.in=.theme) \ 8 | xfdashboard-mint.css \ 9 | xfdashboard.css \ 10 | xfdashboard.xml \ 11 | xfdashboard-secondary.xml \ 12 | animations.xml \ 13 | effects.xml \ 14 | screenshot-xfdashboard-mint.png 15 | 16 | # Substitute bindir so it works when built in a non-system prefix 17 | xfdashboard.theme.in:xfdashboard.theme.in.in 18 | $(AM_V_GEN) sed -e "s|@PACKAGE_VERSION[@]|$(PACKAGE_VERSION)|" \ 19 | $< > $@ || rm $@ 20 | 21 | @INTLTOOL_THEME_RULE@ 22 | 23 | CLEANFILES = \ 24 | $(theme_in_files) \ 25 | $(theme_in_files:.theme.in=.theme) 26 | 27 | EXTRA_DIST = \ 28 | $(theme_in_files:.theme.in=.theme.in.in) \ 29 | $(theme_DATA) 30 | 31 | DISTCLEANFILES = \ 32 | $(theme_in_files) \ 33 | $(theme_in_files:.theme.in=.theme) 34 | -------------------------------------------------------------------------------- /data/themes/xfdashboard-mint/animations.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | -------------------------------------------------------------------------------- /data/themes/xfdashboard-mint/effects.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 1.0 4 | 5 | 6 | 7 | emblem-important 8 | 32 9 | 10 | 11 | 12 | emblem-default 13 | 32 14 | south-east 15 | 1.0 16 | 1.0 17 | 18 | 19 | -------------------------------------------------------------------------------- /data/themes/xfdashboard-mint/screenshot-xfdashboard-mint.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gmc-holle/xfdashboard/6e243c783b20b318db80b5473b548ec58004c820/data/themes/xfdashboard-mint/screenshot-xfdashboard-mint.png -------------------------------------------------------------------------------- /data/themes/xfdashboard-mint/xfdashboard-mint.css: -------------------------------------------------------------------------------- 1 | @import(xfdashboard.css) 2 | /* Small icons for minimized windows */ 3 | 4 | XfdashboardWindowContent 5 | { 6 | include-window-frame: true; 7 | unmapped-window-icon-x-fill: false; 8 | unmapped-window-icon-y-fill: false; 9 | unmapped-window-icon-x-align: 0.5; 10 | unmapped-window-icon-y-align: 0.5; 11 | unmapped-window-icon-x-scale: 2.0; 12 | unmapped-window-icon-y-scale: 2.0; 13 | unmapped-window-icon-anchor-point: center; 14 | } 15 | 16 | /* icons */ 17 | 18 | XfdashboardQuicklaunch #applications-button 19 | { 20 | icon-name: "view-list-symbolic"; 21 | } 22 | 23 | XfdashboardQuicklaunch #applications-button:toggled 24 | { 25 | icon-name: "view-paged-symbolic"; 26 | } 27 | 28 | XfdashboardWindowsView 29 | { 30 | view-icon: "view-paged-symbolic"; 31 | } 32 | 33 | XfdashboardApplicationsView 34 | { 35 | view-icon: "view-list-symbolic"; 36 | } 37 | 38 | XfdashboardSearchView 39 | { 40 | view-icon: "folder-saved-search-symbolic"; 41 | } 42 | 43 | /* colors */ 44 | 45 | #notification, #tooltip 46 | { 47 | background-fill-color: #1a1a1a; 48 | outline-color: #1a1a1a; 49 | } 50 | 51 | #quicklaunch, #quicklaunch:drop-target 52 | { 53 | background-fill-color: #202020; 54 | outline-color: #202020; 55 | } 56 | 57 | #quicklaunch XfdashboardButton:hover 58 | { 59 | background-fill-color: #2CC248; 60 | } 61 | 62 | XfdashboardQuicklaunch #applications-button 63 | { 64 | background-fill-color: #202020; 65 | } 66 | 67 | XfdashboardQuicklaunch #trash-button:drop-target 68 | { 69 | background-fill-color: #E13629; 70 | } 71 | 72 | .drag-actor-XfdashboardLiveWindow:drag-handle 73 | { 74 | background-fill-color: #2CC248a0; 75 | outline-color: #2CC248ff; 76 | } 77 | 78 | XfdashboardWorkspaceSelector 79 | { 80 | background-fill-color: #202020; 81 | outline-color: #202020; 82 | } 83 | 84 | XfdashboardLiveWorkspace 85 | { 86 | outline-color: #1a1a1aff; 87 | } 88 | 89 | XfdashboardLiveWorkspace:active 90 | { 91 | outline-color: #2CC248; 92 | } 93 | 94 | XfdashboardScrollbar 95 | { 96 | slider-color: #66666660; 97 | } 98 | 99 | XfdashboardScrollbar:hover 100 | { 101 | slider-color: #2CC248a0; 102 | } 103 | 104 | XfdashboardScrollbar:pressed 105 | { 106 | slider-color: #2CC248ff; 107 | } 108 | 109 | XfdashboardSearchView XfdashboardSearchResultContainer XfdashboardButton.result-item:hover, 110 | XfdashboardApplicationsView XfdashboardButton:hover 111 | { 112 | background-fill-color: #202020a0; 113 | } 114 | 115 | XfdashboardSearchView XfdashboardSearchResultContainer XfdashboardButton:selected, 116 | XfdashboardApplicationsView XfdashboardButton:selected 117 | { 118 | background-fill-color: #202020; 119 | outline-color: #202020; 120 | } 121 | 122 | #view-selector XfdashboardToggleButton:toggled 123 | { 124 | background-fill-color: #2CC248; 125 | } 126 | 127 | #searchbox.focus 128 | { 129 | outline-color: #202020; 130 | background-fill-color: #202020; 131 | } 132 | 133 | XfdashboardLiveWindow 134 | { 135 | background-type: outline; 136 | outline-width: 2.0; 137 | outline-color: #404040; 138 | } 139 | 140 | XfdashboardWindowsView XfdashboardLiveWindow:selected, 141 | XfdashboardWindowsView XfdashboardLiveWindow:hover 142 | { 143 | outline-color: #2CC248ff; 144 | } 145 | 146 | XfdashboardLiveWindow:selected XfdashboardButton.title 147 | { 148 | background-fill-color: #2CC248f0; 149 | outline-color: #2CC248ff; 150 | } 151 | 152 | XfdashboardLiveWindow:hover XfdashboardButton.title 153 | { 154 | background-fill-color: #2CC248f0; 155 | outline-color: #2CC248ff; 156 | } 157 | 158 | /* effects */ 159 | 160 | #quicklaunch XfdashboardButton 161 | { 162 | effects: ; 163 | } 164 | -------------------------------------------------------------------------------- /data/themes/xfdashboard-mint/xfdashboard-secondary.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | true 6 | true 7 | 0 8 | 8 9 | 10 | 11 | 12 | width 13 | 0 14 | 15 | 16 | 17 | 18 | 19 | 20 | height 21 | -16 22 | 23 | 24 | 25 | 26 | 27 | 28 | horizontal 29 | 8.0 30 | false 31 | 32 | 33 | 34 | 35 | 36 | true 37 | true 38 | top right bottom 39 | right 40 | true 41 | 42 | 43 | 44 | 45 | 46 | windows 47 | true 48 | true 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | -------------------------------------------------------------------------------- /data/themes/xfdashboard-mint/xfdashboard.theme.in.in: -------------------------------------------------------------------------------- 1 | [Xfdashboard Theme] 2 | _Name=xfdashboard-mint 3 | _Comment=Fresh-green flavored theme for xfdashboard 4 | Style=xfdashboard-mint.css 5 | Layout=xfdashboard.xml;xfdashboard-secondary.xml 6 | Effects=effects.xml 7 | Animations=animations.xml 8 | Author=lacios 9 | Version=@PACKAGE_VERSION@ 10 | Screenshot=screenshot-xfdashboard-mint.png 11 | -------------------------------------------------------------------------------- /data/themes/xfdashboard-moranga/Makefile.am: -------------------------------------------------------------------------------- 1 | themedir = $(datadir)/themes/xfdashboard-moranga/xfdashboard-1.0 2 | 3 | theme_in_files = \ 4 | xfdashboard.theme.in 5 | 6 | theme_DATA = \ 7 | $(theme_in_files:.theme.in=.theme) \ 8 | xfdashboard-moranga.css \ 9 | xfdashboard.css \ 10 | xfdashboard.xml \ 11 | xfdashboard-secondary.xml \ 12 | animations.xml \ 13 | effects.xml \ 14 | screenshot-xfdashboard-moranga.png 15 | 16 | # Substitute bindir so it works when built in a non-system prefix 17 | xfdashboard.theme.in:xfdashboard.theme.in.in 18 | $(AM_V_GEN) sed -e "s|@PACKAGE_VERSION[@]|$(PACKAGE_VERSION)|" \ 19 | $< > $@ || rm $@ 20 | 21 | @INTLTOOL_THEME_RULE@ 22 | 23 | CLEANFILES = \ 24 | $(theme_in_files) \ 25 | $(theme_in_files:.theme.in=.theme) 26 | 27 | EXTRA_DIST = \ 28 | $(theme_in_files:.theme.in=.theme.in.in) \ 29 | $(theme_DATA) 30 | 31 | DISTCLEANFILES = \ 32 | $(theme_in_files) \ 33 | $(theme_in_files:.theme.in=.theme) 34 | -------------------------------------------------------------------------------- /data/themes/xfdashboard-moranga/animations.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | -------------------------------------------------------------------------------- /data/themes/xfdashboard-moranga/effects.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 1.0 4 | 5 | 6 | 7 | emblem-important 8 | 32 9 | 10 | 11 | 12 | emblem-default 13 | 32 14 | south-east 15 | 1.0 16 | 1.0 17 | 18 | 19 | -------------------------------------------------------------------------------- /data/themes/xfdashboard-moranga/screenshot-xfdashboard-moranga.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gmc-holle/xfdashboard/6e243c783b20b318db80b5473b548ec58004c820/data/themes/xfdashboard-moranga/screenshot-xfdashboard-moranga.png -------------------------------------------------------------------------------- /data/themes/xfdashboard-moranga/xfdashboard-moranga.css: -------------------------------------------------------------------------------- 1 | @import(xfdashboard.css) 2 | /* Small icons for minimized windows */ 3 | 4 | XfdashboardWindowContent 5 | { 6 | include-window-frame: true; 7 | unmapped-window-icon-x-fill: false; 8 | unmapped-window-icon-y-fill: false; 9 | unmapped-window-icon-x-align: 0.5; 10 | unmapped-window-icon-y-align: 0.5; 11 | unmapped-window-icon-x-scale: 2.0; 12 | unmapped-window-icon-y-scale: 2.0; 13 | unmapped-window-icon-anchor-point: center; 14 | } 15 | 16 | /* icons */ 17 | 18 | XfdashboardQuicklaunch #applications-button 19 | { 20 | icon-name: "view-list-symbolic"; 21 | } 22 | 23 | XfdashboardQuicklaunch #applications-button:toggled 24 | { 25 | icon-name: "view-paged-symbolic"; 26 | } 27 | 28 | XfdashboardWindowsView 29 | { 30 | view-icon: "view-paged-symbolic"; 31 | } 32 | 33 | XfdashboardApplicationsView 34 | { 35 | view-icon: "view-list-symbolic"; 36 | } 37 | 38 | XfdashboardSearchView 39 | { 40 | view-icon: "folder-saved-search-symbolic"; 41 | } 42 | 43 | /* colors */ 44 | 45 | #notification, #tooltip 46 | { 47 | background-fill-color: #1a1a1a; 48 | outline-color: #1a1a1a; 49 | } 50 | 51 | #quicklaunch, #quicklaunch:drop-target 52 | { 53 | background-fill-color: #202020; 54 | outline-color: #202020; 55 | } 56 | 57 | #quicklaunch XfdashboardButton:hover 58 | { 59 | background-fill-color: #D64937; 60 | } 61 | 62 | XfdashboardQuicklaunch #applications-button 63 | { 64 | background-fill-color: #202020; 65 | } 66 | 67 | XfdashboardQuicklaunch #trash-button:drop-target 68 | { 69 | background-fill-color: #D64937; 70 | } 71 | 72 | .drag-actor-XfdashboardLiveWindow:drag-handle 73 | { 74 | background-fill-color: #D64937a0; 75 | outline-color: #D64937ff; 76 | } 77 | 78 | XfdashboardWorkspaceSelector 79 | { 80 | background-fill-color: #202020; 81 | outline-color: #202020; 82 | } 83 | 84 | XfdashboardLiveWorkspace 85 | { 86 | outline-color: #1a1a1aff; 87 | } 88 | 89 | XfdashboardLiveWorkspace:active 90 | { 91 | outline-color: #D64937; 92 | } 93 | 94 | XfdashboardScrollbar 95 | { 96 | slider-color: #66666660; 97 | } 98 | 99 | XfdashboardScrollbar:hover 100 | { 101 | slider-color: #D64937a0; 102 | } 103 | 104 | XfdashboardScrollbar:pressed 105 | { 106 | slider-color: #D64937ff; 107 | } 108 | 109 | XfdashboardSearchView XfdashboardSearchResultContainer XfdashboardButton.result-item:hover, 110 | XfdashboardApplicationsView XfdashboardButton:hover 111 | { 112 | background-fill-color: #202020a0; 113 | } 114 | 115 | XfdashboardSearchView XfdashboardSearchResultContainer XfdashboardButton:selected, 116 | XfdashboardApplicationsView XfdashboardButton:selected 117 | { 118 | background-fill-color: #202020; 119 | outline-color: #202020; 120 | } 121 | 122 | #view-selector XfdashboardToggleButton:toggled 123 | { 124 | background-fill-color: #D64937; 125 | } 126 | 127 | #searchbox.focus 128 | { 129 | outline-color: #202020; 130 | background-fill-color: #202020; 131 | } 132 | 133 | XfdashboardLiveWindow 134 | { 135 | background-type: outline; 136 | outline-width: 2.0; 137 | outline-color: #404040; 138 | } 139 | 140 | XfdashboardWindowsView XfdashboardLiveWindow:selected, 141 | XfdashboardWindowsView XfdashboardLiveWindow:hover 142 | { 143 | outline-color: #D64937ff; 144 | } 145 | 146 | XfdashboardLiveWindow:selected XfdashboardButton.title 147 | { 148 | background-fill-color: #D64937f0; 149 | outline-color: #D64937ff; 150 | } 151 | 152 | XfdashboardLiveWindow:hover XfdashboardButton.title 153 | { 154 | background-fill-color: #D64937f0; 155 | outline-color: #D64937ff; 156 | } 157 | 158 | /* effects */ 159 | 160 | #quicklaunch XfdashboardButton 161 | { 162 | effects: ; 163 | } 164 | -------------------------------------------------------------------------------- /data/themes/xfdashboard-moranga/xfdashboard-secondary.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | true 6 | true 7 | 0 8 | 8 9 | 10 | 11 | 12 | width 13 | 0 14 | 15 | 16 | 17 | 18 | 19 | 20 | height 21 | -16 22 | 23 | 24 | 25 | 26 | 27 | 28 | horizontal 29 | 8.0 30 | false 31 | 32 | 33 | 34 | 35 | 36 | true 37 | true 38 | top right bottom 39 | right 40 | true 41 | 42 | 43 | 44 | 45 | 46 | windows 47 | true 48 | true 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | -------------------------------------------------------------------------------- /data/themes/xfdashboard-moranga/xfdashboard.theme.in.in: -------------------------------------------------------------------------------- 1 | [Xfdashboard Theme] 2 | _Name=xfdashboard-moranga 3 | _Comment=Moranga theme for xfdashboard 4 | Style=xfdashboard-moranga.css 5 | Layout=xfdashboard.xml;xfdashboard-secondary.xml 6 | Effects=effects.xml 7 | Animations=animations.xml 8 | Author=lacios 9 | Version=@PACKAGE_VERSION@ 10 | Screenshot=screenshot-xfdashboard-moranga.png 11 | -------------------------------------------------------------------------------- /data/themes/xfdashboard-wine/Makefile.am: -------------------------------------------------------------------------------- 1 | themedir = $(datadir)/themes/xfdashboard-wine/xfdashboard-1.0 2 | 3 | theme_in_files = \ 4 | xfdashboard.theme.in 5 | 6 | theme_DATA = \ 7 | $(theme_in_files:.theme.in=.theme) \ 8 | xfdashboard-wine.css \ 9 | xfdashboard.css \ 10 | xfdashboard.xml \ 11 | xfdashboard-secondary.xml \ 12 | animations.xml \ 13 | effects.xml \ 14 | screenshot-xfdashboard-wine.png 15 | 16 | # Substitute bindir so it works when built in a non-system prefix 17 | xfdashboard.theme.in:xfdashboard.theme.in.in 18 | $(AM_V_GEN) sed -e "s|@PACKAGE_VERSION[@]|$(PACKAGE_VERSION)|" \ 19 | $< > $@ || rm $@ 20 | 21 | @INTLTOOL_THEME_RULE@ 22 | 23 | CLEANFILES = \ 24 | $(theme_in_files) \ 25 | $(theme_in_files:.theme.in=.theme) 26 | 27 | EXTRA_DIST = \ 28 | $(theme_in_files:.theme.in=.theme.in.in) \ 29 | $(theme_DATA) 30 | 31 | DISTCLEANFILES = \ 32 | $(theme_in_files) \ 33 | $(theme_in_files:.theme.in=.theme) 34 | -------------------------------------------------------------------------------- /data/themes/xfdashboard-wine/animations.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | -------------------------------------------------------------------------------- /data/themes/xfdashboard-wine/effects.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 1.0 4 | 5 | 6 | 7 | emblem-important 8 | 32 9 | 10 | 11 | 12 | emblem-default 13 | 32 14 | south-east 15 | 1.0 16 | 1.0 17 | 18 | 19 | -------------------------------------------------------------------------------- /data/themes/xfdashboard-wine/screenshot-xfdashboard-wine.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gmc-holle/xfdashboard/6e243c783b20b318db80b5473b548ec58004c820/data/themes/xfdashboard-wine/screenshot-xfdashboard-wine.png -------------------------------------------------------------------------------- /data/themes/xfdashboard-wine/xfdashboard-secondary.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | true 6 | true 7 | 0 8 | 8 9 | 10 | 11 | 12 | width 13 | 0 14 | 15 | 16 | 17 | 18 | 19 | 20 | height 21 | -16 22 | 23 | 24 | 25 | 26 | 27 | 28 | horizontal 29 | 8.0 30 | false 31 | 32 | 33 | 34 | 35 | 36 | true 37 | true 38 | top right bottom 39 | right 40 | true 41 | 42 | 43 | 44 | 45 | 46 | windows 47 | true 48 | true 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | -------------------------------------------------------------------------------- /data/themes/xfdashboard-wine/xfdashboard-wine.css: -------------------------------------------------------------------------------- 1 | @import(xfdashboard.css) 2 | /* Small icons for minimized windows */ 3 | 4 | XfdashboardWindowContent 5 | { 6 | include-window-frame: true; 7 | unmapped-window-icon-x-fill: false; 8 | unmapped-window-icon-y-fill: false; 9 | unmapped-window-icon-x-align: 0.5; 10 | unmapped-window-icon-y-align: 0.5; 11 | unmapped-window-icon-x-scale: 2.0; 12 | unmapped-window-icon-y-scale: 2.0; 13 | unmapped-window-icon-anchor-point: center; 14 | } 15 | 16 | /* icons */ 17 | 18 | XfdashboardQuicklaunch #applications-button 19 | { 20 | icon-name: "view-list-symbolic"; 21 | } 22 | 23 | XfdashboardQuicklaunch #applications-button:toggled 24 | { 25 | icon-name: "view-paged-symbolic"; 26 | } 27 | 28 | XfdashboardWindowsView 29 | { 30 | view-icon: "view-paged-symbolic"; 31 | } 32 | 33 | XfdashboardApplicationsView 34 | { 35 | view-icon: "view-list-symbolic"; 36 | } 37 | 38 | XfdashboardSearchView 39 | { 40 | view-icon: "folder-saved-search-symbolic"; 41 | } 42 | 43 | /* colors */ 44 | 45 | #notification, #tooltip 46 | { 47 | background-fill-color: #1a1a1a; 48 | outline-color: #1a1a1a; 49 | } 50 | 51 | #quicklaunch, #quicklaunch:drop-target 52 | { 53 | background-fill-color: #202020; 54 | outline-color: #202020; 55 | } 56 | 57 | #quicklaunch XfdashboardButton:hover 58 | { 59 | background-fill-color: #9A111D; 60 | } 61 | 62 | XfdashboardQuicklaunch #applications-button 63 | { 64 | background-fill-color: #202020; 65 | } 66 | 67 | XfdashboardQuicklaunch #trash-button:drop-target 68 | { 69 | background-fill-color: #9A111D; 70 | } 71 | 72 | .drag-actor-XfdashboardLiveWindow:drag-handle 73 | { 74 | background-fill-color: #9A111Da0; 75 | outline-color: #9A111Dff; 76 | } 77 | 78 | XfdashboardWorkspaceSelector 79 | { 80 | background-fill-color: #202020; 81 | outline-color: #202020; 82 | } 83 | 84 | XfdashboardLiveWorkspace 85 | { 86 | outline-color: #1a1a1aff; 87 | } 88 | 89 | XfdashboardLiveWorkspace:active 90 | { 91 | outline-color: #9A111D; 92 | } 93 | 94 | XfdashboardScrollbar 95 | { 96 | slider-color: #66666660; 97 | } 98 | 99 | XfdashboardScrollbar:hover 100 | { 101 | slider-color: #9A111Da0; 102 | } 103 | 104 | XfdashboardScrollbar:pressed 105 | { 106 | slider-color: #9A111Dff; 107 | } 108 | 109 | XfdashboardSearchView XfdashboardSearchResultContainer XfdashboardButton.result-item:hover, 110 | XfdashboardApplicationsView XfdashboardButton:hover 111 | { 112 | background-fill-color: #202020a0; 113 | } 114 | 115 | XfdashboardSearchView XfdashboardSearchResultContainer XfdashboardButton:selected, 116 | XfdashboardApplicationsView XfdashboardButton:selected 117 | { 118 | background-fill-color: #202020; 119 | outline-color: #202020; 120 | } 121 | 122 | #view-selector XfdashboardToggleButton:toggled 123 | { 124 | background-fill-color: #9A111D; 125 | } 126 | 127 | #searchbox.focus 128 | { 129 | outline-color: #202020; 130 | background-fill-color: #202020; 131 | } 132 | 133 | XfdashboardLiveWindow 134 | { 135 | background-type: outline; 136 | outline-width: 2.0; 137 | outline-color: #404040; 138 | } 139 | 140 | XfdashboardWindowsView XfdashboardLiveWindow:selected, 141 | XfdashboardWindowsView XfdashboardLiveWindow:hover 142 | { 143 | outline-color: #9A111Dff; 144 | } 145 | 146 | XfdashboardLiveWindow:selected XfdashboardButton.title 147 | { 148 | background-fill-color: #9A111Df0; 149 | outline-color: #9A111Dff; 150 | } 151 | 152 | XfdashboardLiveWindow:hover XfdashboardButton.title 153 | { 154 | background-fill-color: #9A111Df0; 155 | outline-color: #9A111Dff; 156 | } 157 | 158 | /* effects */ 159 | 160 | #quicklaunch XfdashboardButton 161 | { 162 | effects: ; 163 | } 164 | -------------------------------------------------------------------------------- /data/themes/xfdashboard-wine/xfdashboard.theme.in.in: -------------------------------------------------------------------------------- 1 | [Xfdashboard Theme] 2 | _Name=xfdashboard-wine 3 | _Comment=Red wine theme for xfdashboard 4 | Style=xfdashboard-wine.css 5 | Layout=xfdashboard.xml;xfdashboard-secondary.xml 6 | Effects=effects.xml 7 | Animations=animations.xml 8 | Author=lacios 9 | Version=@PACKAGE_VERSION@ 10 | Screenshot=screenshot-xfdashboard-wine.png 11 | -------------------------------------------------------------------------------- /data/themes/xfdashboard/Makefile.am: -------------------------------------------------------------------------------- 1 | themedir = $(datadir)/themes/xfdashboard/xfdashboard-1.0 2 | 3 | theme_in_files = \ 4 | xfdashboard.theme.in 5 | 6 | theme_DATA = \ 7 | $(theme_in_files:.theme.in=.theme) \ 8 | xfdashboard.css \ 9 | xfdashboard.xml \ 10 | xfdashboard-secondary.xml \ 11 | animations.xml \ 12 | effects.xml \ 13 | windows-view.png \ 14 | screenshot-xfdashboard.png 15 | 16 | # Substitute bindir so it works when built in a non-system prefix 17 | xfdashboard.theme.in:xfdashboard.theme.in.in 18 | $(AM_V_GEN) sed -e "s|@PACKAGE_VERSION[@]|$(PACKAGE_VERSION)|" \ 19 | $< > $@ || rm $@ 20 | 21 | @INTLTOOL_THEME_RULE@ 22 | 23 | CLEANFILES = \ 24 | $(theme_in_files) \ 25 | $(theme_in_files:.theme.in=.theme) 26 | 27 | EXTRA_DIST = \ 28 | $(theme_in_files:.theme.in=.theme.in.in) \ 29 | $(theme_DATA) 30 | 31 | DISTCLEANFILES = \ 32 | $(theme_in_files) \ 33 | $(theme_in_files:.theme.in=.theme) 34 | -------------------------------------------------------------------------------- /data/themes/xfdashboard/animations.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | -------------------------------------------------------------------------------- /data/themes/xfdashboard/effects.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 1.0 4 | 5 | 6 | 7 | emblem-important 8 | 32 9 | 10 | 11 | 12 | media-playback-start 13 | 32 14 | south-east 15 | 1.0 16 | 1.0 17 | 18 | 19 | -------------------------------------------------------------------------------- /data/themes/xfdashboard/screenshot-xfdashboard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gmc-holle/xfdashboard/6e243c783b20b318db80b5473b548ec58004c820/data/themes/xfdashboard/screenshot-xfdashboard.png -------------------------------------------------------------------------------- /data/themes/xfdashboard/windows-view.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gmc-holle/xfdashboard/6e243c783b20b318db80b5473b548ec58004c820/data/themes/xfdashboard/windows-view.png -------------------------------------------------------------------------------- /data/themes/xfdashboard/xfdashboard-secondary.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | true 6 | true 7 | 0 8 | 8 9 | 10 | 11 | 12 | width 13 | 0 14 | 15 | 16 | 17 | 18 | 19 | 20 | height 21 | -16 22 | 23 | 24 | 25 | 26 | 27 | 28 | horizontal 29 | 8.0 30 | false 31 | 32 | 33 | 34 | 35 | 36 | true 37 | 64.0 38 | right 39 | 40 | 41 | 42 | true 43 | true 44 | top right bottom 45 | right 46 | true 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | windows 55 | true 56 | true 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | -------------------------------------------------------------------------------- /data/themes/xfdashboard/xfdashboard.theme.in.in: -------------------------------------------------------------------------------- 1 | [Xfdashboard Theme] 2 | _Name=xfdashboard 3 | _Comment=Default theme for xfdashboard 4 | Style=xfdashboard.css 5 | Layout=xfdashboard.xml;xfdashboard-secondary.xml 6 | Effects=effects.xml 7 | Animations=animations.xml 8 | Author=Stephan Haller 9 | Version=@PACKAGE_VERSION@ 10 | Screenshot=screenshot-xfdashboard.png 11 | -------------------------------------------------------------------------------- /libxfdashboard/action-button.h: -------------------------------------------------------------------------------- 1 | /* 2 | * action-button: A button representing an action to execute when clicked 3 | * 4 | * Copyright 2012-2021 Stephan Haller 5 | * 6 | * This program is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation; either version 2 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program; if not, write to the Free Software 18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 19 | * MA 02110-1301, USA. 20 | * 21 | * 22 | */ 23 | 24 | #ifndef __LIBXFDASHBOARD_ACTION_BUTTON__ 25 | #define __LIBXFDASHBOARD_ACTION_BUTTON__ 26 | 27 | #if !defined(__LIBXFDASHBOARD_H_INSIDE__) && !defined(LIBXFDASHBOARD_COMPILATION) 28 | #error "Only can be included directly." 29 | #endif 30 | 31 | #include 32 | 33 | G_BEGIN_DECLS 34 | 35 | #define XFDASHBOARD_TYPE_ACTION_BUTTON (xfdashboard_action_button_get_type()) 36 | #define XFDASHBOARD_ACTION_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), XFDASHBOARD_TYPE_ACTION_BUTTON, XfdashboardActionButton)) 37 | #define XFDASHBOARD_IS_ACTION_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), XFDASHBOARD_TYPE_ACTION_BUTTON)) 38 | #define XFDASHBOARD_ACTION_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), XFDASHBOARD_TYPE_ACTION_BUTTON, XfdashboardActionButtonClass)) 39 | #define XFDASHBOARD_IS_ACTION_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), XFDASHBOARD_TYPE_ACTION_BUTTON)) 40 | #define XFDASHBOARD_ACTION_BUTTON_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), XFDASHBOARD_TYPE_ACTION_BUTTON, XfdashboardActionButtonClass)) 41 | 42 | typedef struct _XfdashboardActionButton XfdashboardActionButton; 43 | typedef struct _XfdashboardActionButtonClass XfdashboardActionButtonClass; 44 | typedef struct _XfdashboardActionButtonPrivate XfdashboardActionButtonPrivate; 45 | 46 | /** 47 | * XfdashboardActionButton: 48 | * 49 | * The #XfdashboardActionButton structure contains only private data and 50 | * should be accessed using the provided API 51 | */ 52 | struct _XfdashboardActionButton 53 | { 54 | /*< private >*/ 55 | /* Parent instance */ 56 | XfdashboardButton parent_instance; 57 | 58 | /* Private structure */ 59 | XfdashboardActionButtonPrivate *priv; 60 | }; 61 | 62 | /** 63 | * XfdashboardActionButtonClass: 64 | * 65 | * The #XfdashboardActionButtonClass structure contains only private data 66 | */ 67 | struct _XfdashboardActionButtonClass 68 | { 69 | /*< private >*/ 70 | /* Parent class */ 71 | XfdashboardButtonClass parent_class; 72 | 73 | /*< public >*/ 74 | /* Virtual functions */ 75 | }; 76 | 77 | /* Public API */ 78 | GType xfdashboard_action_button_get_type(void) G_GNUC_CONST; 79 | 80 | ClutterActor* xfdashboard_action_button_new(void); 81 | 82 | const gchar* xfdashboard_action_button_get_target(XfdashboardActionButton *self); 83 | void xfdashboard_action_button_set_target(XfdashboardActionButton *self, const gchar *inTarget); 84 | 85 | const gchar* xfdashboard_action_button_get_action(XfdashboardActionButton *self); 86 | void xfdashboard_action_button_set_action(XfdashboardActionButton *self, const gchar *inAction); 87 | 88 | G_END_DECLS 89 | 90 | #endif /* __LIBXFDASHBOARD_ACTION_BUTTON__ */ 91 | -------------------------------------------------------------------------------- /libxfdashboard/bindings-pool.h: -------------------------------------------------------------------------------- 1 | /* 2 | * bindings: Customizable keyboard and pointer bindings for focusable actors 3 | * 4 | * Copyright 2012-2021 Stephan Haller 5 | * 6 | * This program is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation; either version 2 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program; if not, write to the Free Software 18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 19 | * MA 02110-1301, USA. 20 | * 21 | * 22 | */ 23 | 24 | #ifndef __LIBXFDASHBOARD_BINDINGS_POOL__ 25 | #define __LIBXFDASHBOARD_BINDINGS_POOL__ 26 | 27 | #if !defined(__LIBXFDASHBOARD_H_INSIDE__) && !defined(LIBXFDASHBOARD_COMPILATION) 28 | #error "Only can be included directly." 29 | #endif 30 | 31 | #include 32 | 33 | #include 34 | #include 35 | 36 | G_BEGIN_DECLS 37 | 38 | #define XFDASHBOARD_TYPE_BINDINGS_POOL (xfdashboard_bindings_pool_get_type()) 39 | #define XFDASHBOARD_BINDINGS_POOL(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), XFDASHBOARD_TYPE_BINDINGS_POOL, XfdashboardBindingsPool)) 40 | #define XFDASHBOARD_IS_BINDINGS_POOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), XFDASHBOARD_TYPE_BINDINGS_POOL)) 41 | #define XFDASHBOARD_BINDINGS_POOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), XFDASHBOARD_TYPE_BINDINGS_POOL, XfdashboardBindingsPoolClass)) 42 | #define XFDASHBOARD_IS_BINDINGS_POOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), XFDASHBOARD_TYPE_BINDINGS_POOL)) 43 | #define XFDASHBOARD_BINDINGS_POOL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), XFDASHBOARD_TYPE_BINDINGS_POOL, XfdashboardBindingsPoolClass)) 44 | 45 | typedef struct _XfdashboardBindingsPool XfdashboardBindingsPool; 46 | typedef struct _XfdashboardBindingsPoolClass XfdashboardBindingsPoolClass; 47 | typedef struct _XfdashboardBindingsPoolPrivate XfdashboardBindingsPoolPrivate; 48 | 49 | struct _XfdashboardBindingsPool 50 | { 51 | /*< private >*/ 52 | /* Parent instance */ 53 | GObject parent_instance; 54 | 55 | /* Private structure */ 56 | XfdashboardBindingsPoolPrivate *priv; 57 | }; 58 | 59 | struct _XfdashboardBindingsPoolClass 60 | { 61 | /*< private >*/ 62 | /* Parent class */ 63 | GObjectClass parent_class; 64 | }; 65 | 66 | /* Errors */ 67 | #define XFDASHBOARD_BINDINGS_POOL_ERROR (xfdashboard_bindings_pool_error_quark()) 68 | 69 | GQuark xfdashboard_bindings_pool_error_quark(void); 70 | 71 | typedef enum /*< prefix=XFDASHBOARD_BINDINGS_POOL_ERROR >*/ 72 | { 73 | XFDASHBOARD_BINDINGS_POOL_ERROR_FILE_NOT_FOUND, 74 | XFDASHBOARD_BINDINGS_POOL_ERROR_PARSER_INTERNAL_ERROR, 75 | XFDASHBOARD_BINDINGS_POOL_ERROR_MALFORMED, 76 | XFDASHBOARD_BINDINGS_POOL_ERROR_INTERNAL_ERROR 77 | } XfdashboardBindingsPoolErrorEnum; 78 | 79 | /* Public API */ 80 | GType xfdashboard_bindings_pool_get_type(void) G_GNUC_CONST; 81 | 82 | gboolean xfdashboard_bindings_pool_load(XfdashboardBindingsPool *self, GError **outError); 83 | 84 | const XfdashboardBinding* xfdashboard_bindings_pool_find_for_event(XfdashboardBindingsPool *self, ClutterActor *inActor, const ClutterEvent *inEvent); 85 | 86 | G_END_DECLS 87 | 88 | #endif /* __LIBXFDASHBOARD_BINDINGS_POOL__ */ 89 | -------------------------------------------------------------------------------- /libxfdashboard/box-layout.h: -------------------------------------------------------------------------------- 1 | /* 2 | * box-layout: A ClutterBoxLayout derived layout manager disregarding 3 | * text direction and enforcing left-to-right layout in 4 | * horizontal orientation 5 | * 6 | * Copyright 2012-2021 Stephan Haller 7 | * 8 | * This program is free software; you can redistribute it and/or modify 9 | * it under the terms of the GNU General Public License as published by 10 | * the Free Software Foundation; either version 2 of the License, or 11 | * (at your option) any later version. 12 | * 13 | * This program is distributed in the hope that it will be useful, 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 | * GNU General Public License for more details. 17 | * 18 | * You should have received a copy of the GNU General Public License 19 | * along with this program; if not, write to the Free Software 20 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 21 | * MA 02110-1301, USA. 22 | * 23 | * 24 | */ 25 | 26 | #ifndef __LIBXFDASHBOARD_BOX_LAYOUT__ 27 | #define __LIBXFDASHBOARD_BOX_LAYOUT__ 28 | 29 | #if !defined(__LIBXFDASHBOARD_H_INSIDE__) && !defined(LIBXFDASHBOARD_COMPILATION) 30 | #error "Only can be included directly." 31 | #endif 32 | 33 | #include 34 | 35 | G_BEGIN_DECLS 36 | 37 | #define XFDASHBOARD_TYPE_BOX_LAYOUT (xfdashboard_box_layout_get_type()) 38 | #define XFDASHBOARD_BOX_LAYOUT(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), XFDASHBOARD_TYPE_BOX_LAYOUT, XfdashboardBoxLayout)) 39 | #define XFDASHBOARD_IS_BOX_LAYOUT(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), XFDASHBOARD_TYPE_BOX_LAYOUT)) 40 | #define XFDASHBOARD_BOX_LAYOUT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), XFDASHBOARD_TYPE_BOX_LAYOUT, XfdashboardBoxLayoutClass)) 41 | #define XFDASHBOARD_IS_BOX_LAYOUT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), XFDASHBOARD_TYPE_BOX_LAYOUT)) 42 | #define XFDASHBOARD_BOX_LAYOUT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), XFDASHBOARD_TYPE_BOX_LAYOUT, XfdashboardBoxLayoutClass)) 43 | 44 | typedef struct _XfdashboardBoxLayout XfdashboardBoxLayout; 45 | typedef struct _XfdashboardBoxLayoutClass XfdashboardBoxLayoutClass; 46 | 47 | /** 48 | * XfdashboardBoxLayout: 49 | * 50 | * The #XfdashboardBoxLayout structure contains only private data and 51 | * should be accessed using the provided API 52 | */ 53 | struct _XfdashboardBoxLayout 54 | { 55 | /*< private >*/ 56 | /* Parent instance */ 57 | ClutterBoxLayout parent_instance; 58 | }; 59 | 60 | /** 61 | * XfdashboardBoxLayoutClass: 62 | * 63 | * The #XfdashboardBoxLayoutClass structure contains only private data 64 | */ 65 | struct _XfdashboardBoxLayoutClass 66 | { 67 | /*< private >*/ 68 | /* Parent class */ 69 | ClutterBoxLayoutClass parent_class; 70 | }; 71 | 72 | /* Public API */ 73 | GType xfdashboard_box_layout_get_type(void) G_GNUC_CONST; 74 | 75 | ClutterLayoutManager* xfdashboard_box_layout_new(void); 76 | 77 | G_END_DECLS 78 | 79 | #endif /* __LIBXFDASHBOARD_BOX_LAYOUT__ */ 80 | -------------------------------------------------------------------------------- /libxfdashboard/button.h: -------------------------------------------------------------------------------- 1 | /* 2 | * button: A label actor which can react on click actions 3 | * 4 | * Copyright 2012-2021 Stephan Haller 5 | * 6 | * This program is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation; either version 2 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program; if not, write to the Free Software 18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 19 | * MA 02110-1301, USA. 20 | * 21 | * 22 | */ 23 | 24 | #ifndef __LIBXFDASHBOARD_BUTTON__ 25 | #define __LIBXFDASHBOARD_BUTTON__ 26 | 27 | #if !defined(__LIBXFDASHBOARD_H_INSIDE__) && !defined(LIBXFDASHBOARD_COMPILATION) 28 | #error "Only can be included directly." 29 | #endif 30 | 31 | #include 32 | 33 | #include 34 | 35 | G_BEGIN_DECLS 36 | 37 | /* Object declaration */ 38 | #define XFDASHBOARD_TYPE_BUTTON (xfdashboard_button_get_type()) 39 | #define XFDASHBOARD_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), XFDASHBOARD_TYPE_BUTTON, XfdashboardButton)) 40 | #define XFDASHBOARD_IS_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), XFDASHBOARD_TYPE_BUTTON)) 41 | #define XFDASHBOARD_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), XFDASHBOARD_TYPE_BUTTON, XfdashboardButtonClass)) 42 | #define XFDASHBOARD_IS_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), XFDASHBOARD_TYPE_BUTTON)) 43 | #define XFDASHBOARD_BUTTON_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), XFDASHBOARD_TYPE_BUTTON, XfdashboardButtonClass)) 44 | 45 | typedef struct _XfdashboardButton XfdashboardButton; 46 | typedef struct _XfdashboardButtonClass XfdashboardButtonClass; 47 | typedef struct _XfdashboardButtonPrivate XfdashboardButtonPrivate; 48 | 49 | struct _XfdashboardButton 50 | { 51 | /*< private >*/ 52 | /* Parent instance */ 53 | XfdashboardLabel parent_instance; 54 | 55 | /* Private structure */ 56 | XfdashboardButtonPrivate *priv; 57 | }; 58 | 59 | struct _XfdashboardButtonClass 60 | { 61 | /*< private >*/ 62 | /* Parent class */ 63 | XfdashboardLabelClass parent_class; 64 | 65 | /*< public >*/ 66 | /* Virtual functions */ 67 | void (*clicked)(XfdashboardButton *self); 68 | }; 69 | 70 | /* Public API */ 71 | GType xfdashboard_button_get_type(void) G_GNUC_CONST; 72 | 73 | ClutterActor* xfdashboard_button_new(void); 74 | ClutterActor* xfdashboard_button_new_with_text(const gchar *inText); 75 | ClutterActor* xfdashboard_button_new_with_icon_name(const gchar *inIconName); 76 | ClutterActor* xfdashboard_button_new_with_gicon(GIcon *inIcon); 77 | ClutterActor* xfdashboard_button_new_full_with_icon_name(const gchar *inIconName, const gchar *inText); 78 | ClutterActor* xfdashboard_button_new_full_with_gicon(GIcon *inIcon, const gchar *inText); 79 | 80 | G_END_DECLS 81 | 82 | #endif /* __LIBXFDASHBOARD_BUTTON__ */ 83 | -------------------------------------------------------------------------------- /libxfdashboard/compat.h: -------------------------------------------------------------------------------- 1 | /* 2 | * compat: Compatibility layer for various libraries and versions 3 | * 4 | * Copyright 2012-2021 Stephan Haller 5 | * 6 | * This program is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation; either version 2 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program; if not, write to the Free Software 18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 19 | * MA 02110-1301, USA. 20 | * 21 | * 22 | */ 23 | 24 | #ifndef __LIBXFDASHBOARD_COMPAT__ 25 | #define __LIBXFDASHBOARD_COMPAT__ 26 | 27 | #if !defined(__LIBXFDASHBOARD_H_INSIDE__) && !defined(LIBXFDASHBOARD_COMPILATION) 28 | #error "Only can be included directly." 29 | #endif 30 | 31 | #include 32 | 33 | G_BEGIN_DECLS 34 | 35 | #if !CLUTTER_CHECK_VERSION(1, 23, 4) 36 | #define clutter_actor_is_visible(actor) CLUTTER_ACTOR_IS_VISIBLE( (actor) ) 37 | #define clutter_actor_is_mapped(actor) CLUTTER_ACTOR_IS_MAPPED( (actor) ) 38 | #define clutter_actor_is_realized(actor) CLUTTER_ACTOR_IS_REALIZED( (actor) ) 39 | #define clutter_actor_get_reactive(actor) CLUTTER_ACTOR_IS_REACTIVE( (actor) ) 40 | #endif 41 | 42 | #if !GLIB_CHECK_VERSION(2, 44, 0) 43 | inline static gboolean g_strv_contains(const gchar * const *inStringList, const gchar *inString) 44 | { 45 | g_return_val_if_fail(inStringList, FALSE); 46 | g_return_val_if_fail(inString, FALSE); 47 | 48 | for(; *inStringList; inStringList++) 49 | { 50 | if(g_str_equal(inString, *inStringList)) return(TRUE); 51 | } 52 | 53 | return(FALSE); 54 | } 55 | #endif 56 | 57 | G_END_DECLS 58 | 59 | #endif /* __LIBXFDASHBOARD_COMPAT__ */ 60 | -------------------------------------------------------------------------------- /libxfdashboard/debug.c: -------------------------------------------------------------------------------- 1 | /* 2 | * debug: Helpers for debugging 3 | * 4 | * Copyright 2012-2021 Stephan Haller 5 | * 6 | * This program is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation; either version 2 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program; if not, write to the Free Software 18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 19 | * MA 02110-1301, USA. 20 | * 21 | * 22 | */ 23 | 24 | /** 25 | * SECTION:debug 26 | * @short_description: Debug functions and macros 27 | * @include: xfdashboard/debug.h 28 | * 29 | */ 30 | 31 | #ifdef HAVE_CONFIG_H 32 | #include "config.h" 33 | #endif 34 | 35 | #include 36 | 37 | 38 | /* IMPLEMENTATION: Public API */ 39 | guint xfdashboard_debug_flags=0; 40 | gchar **xfdashboard_debug_classes=NULL; 41 | 42 | void xfdashboard_debug_messagev(const char *inFormat, va_list inArgs) 43 | { 44 | static gint64 beginDebugTimestamp=-1; 45 | gchar *timestamp; 46 | gchar *format; 47 | gint64 currentTime; 48 | gfloat debugTimestamp; 49 | 50 | /* Get current time */ 51 | currentTime=g_get_monotonic_time(); 52 | if(beginDebugTimestamp<0) beginDebugTimestamp=currentTime; 53 | debugTimestamp=(((gfloat)currentTime)-((gfloat)beginDebugTimestamp)) / G_USEC_PER_SEC; 54 | timestamp=g_strdup_printf("[%+16.4f]", debugTimestamp); 55 | 56 | /* Create new format used for message containing the timestamp */ 57 | format=g_strconcat(timestamp, ":", inFormat, NULL); 58 | g_logv(G_LOG_DOMAIN, G_LOG_LEVEL_MESSAGE, format, inArgs); 59 | 60 | /* Release allocated ressources */ 61 | g_free(format); 62 | g_free(timestamp); 63 | } 64 | 65 | void xfdashboard_debug_message(const char *inFormat, ...) 66 | { 67 | va_list args; 68 | 69 | va_start(args, inFormat); 70 | xfdashboard_debug_messagev(inFormat, args); 71 | va_end(args); 72 | } 73 | -------------------------------------------------------------------------------- /libxfdashboard/drag-action.h: -------------------------------------------------------------------------------- 1 | /* 2 | * drag-action: Drag action for actors 3 | * 4 | * Copyright 2012-2021 Stephan Haller 5 | * 6 | * This program is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation; either version 2 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program; if not, write to the Free Software 18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 19 | * MA 02110-1301, USA. 20 | * 21 | * 22 | */ 23 | 24 | #ifndef __LIBXFDASHBOARD_DRAG_ACTION__ 25 | #define __LIBXFDASHBOARD_DRAG_ACTION__ 26 | 27 | #if !defined(__LIBXFDASHBOARD_H_INSIDE__) && !defined(LIBXFDASHBOARD_COMPILATION) 28 | #error "Only can be included directly." 29 | #endif 30 | 31 | #include 32 | 33 | G_BEGIN_DECLS 34 | 35 | #define XFDASHBOARD_TYPE_DRAG_ACTION (xfdashboard_drag_action_get_type()) 36 | #define XFDASHBOARD_DRAG_ACTION(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), XFDASHBOARD_TYPE_DRAG_ACTION, XfdashboardDragAction)) 37 | #define XFDASHBOARD_IS_DRAG_ACTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), XFDASHBOARD_TYPE_DRAG_ACTION)) 38 | #define XFDASHBOARD_DRAG_ACTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), XFDASHBOARD_TYPE_DRAG_ACTION, XfdashboardDragActionClass)) 39 | #define XFDASHBOARD_IS_DRAG_ACTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), XFDASHBOARD_TYPE_DRAG_ACTION)) 40 | #define XFDASHBOARD_DRAG_ACTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), XFDASHBOARD_TYPE_DRAG_ACTION, XfdashboardDragActionClass)) 41 | 42 | typedef struct _XfdashboardDragAction XfdashboardDragAction; 43 | typedef struct _XfdashboardDragActionClass XfdashboardDragActionClass; 44 | typedef struct _XfdashboardDragActionPrivate XfdashboardDragActionPrivate; 45 | 46 | struct _XfdashboardDragAction 47 | { 48 | /*< private >*/ 49 | /* Parent instance */ 50 | ClutterDragAction parent_instance; 51 | 52 | /* Private structure */ 53 | XfdashboardDragActionPrivate *priv; 54 | }; 55 | 56 | struct _XfdashboardDragActionClass 57 | { 58 | /*< private >*/ 59 | /* Parent class */ 60 | ClutterDragActionClass parent_class; 61 | 62 | /*< public >*/ 63 | /* Virtual functions */ 64 | void (*drag_cancel)(XfdashboardDragAction *self, ClutterActor *inActor, gfloat inX, gfloat inY); 65 | }; 66 | 67 | /* Public API */ 68 | GType xfdashboard_drag_action_get_type(void) G_GNUC_CONST; 69 | 70 | ClutterAction* xfdashboard_drag_action_new(); 71 | ClutterAction* xfdashboard_drag_action_new_with_source(ClutterActor *inSource); 72 | 73 | ClutterActor* xfdashboard_drag_action_get_source(XfdashboardDragAction *self); 74 | ClutterActor* xfdashboard_drag_action_get_actor(XfdashboardDragAction *self); 75 | 76 | void xfdashboard_drag_action_get_motion_delta(XfdashboardDragAction *self, gfloat *outDeltaX, gfloat *outDeltaY); 77 | 78 | G_END_DECLS 79 | 80 | #endif /* __LIBXFDASHBOARD_DRAG_ACTION__ */ 81 | -------------------------------------------------------------------------------- /libxfdashboard/drop-action.h: -------------------------------------------------------------------------------- 1 | /* 2 | * drop-action: Drop action for drop targets 3 | * 4 | * Copyright 2012-2021 Stephan Haller 5 | * 6 | * This program is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation; either version 2 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program; if not, write to the Free Software 18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 19 | * MA 02110-1301, USA. 20 | * 21 | * 22 | */ 23 | 24 | #ifndef __LIBXFDASHBOARD_DROP_ACTION__ 25 | #define __LIBXFDASHBOARD_DROP_ACTION__ 26 | 27 | #if !defined(__LIBXFDASHBOARD_H_INSIDE__) && !defined(LIBXFDASHBOARD_COMPILATION) 28 | #error "Only can be included directly." 29 | #endif 30 | 31 | #include 32 | 33 | #include 34 | 35 | G_BEGIN_DECLS 36 | 37 | #define XFDASHBOARD_TYPE_DROP_ACTION (xfdashboard_drop_action_get_type()) 38 | #define XFDASHBOARD_DROP_ACTION(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), XFDASHBOARD_TYPE_DROP_ACTION, XfdashboardDropAction)) 39 | #define XFDASHBOARD_IS_DROP_ACTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), XFDASHBOARD_TYPE_DROP_ACTION)) 40 | #define XFDASHBOARD_DROP_ACTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), XFDASHBOARD_TYPE_DROP_ACTION, XfdashboardDropActionClass)) 41 | #define XFDASHBOARD_IS_DROP_ACTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), XFDASHBOARD_TYPE_DROP_ACTION)) 42 | #define XFDASHBOARD_DROP_ACTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), XFDASHBOARD_TYPE_DROP_ACTION, XfdashboardDropActionClass)) 43 | 44 | typedef struct _XfdashboardDropAction XfdashboardDropAction; 45 | typedef struct _XfdashboardDropActionClass XfdashboardDropActionClass; 46 | typedef struct _XfdashboardDropActionPrivate XfdashboardDropActionPrivate; 47 | 48 | struct _XfdashboardDropAction 49 | { 50 | /*< private >*/ 51 | /* Parent instance */ 52 | ClutterAction parent_instance; 53 | 54 | /* Private structure */ 55 | XfdashboardDropActionPrivate *priv; 56 | }; 57 | 58 | struct _XfdashboardDropActionClass 59 | { 60 | /*< private >*/ 61 | /* Parent class */ 62 | ClutterActionClass parent_class; 63 | 64 | /*< public >*/ 65 | /* Virtual functions */ 66 | gboolean (*begin)(XfdashboardDropAction *self, XfdashboardDragAction *inDragAction); 67 | gboolean (*can_drop)(XfdashboardDropAction *self, XfdashboardDragAction *inDragAction, gfloat inX, gfloat inY); 68 | void (*drop)(XfdashboardDropAction *self, XfdashboardDragAction *inDragAction, gfloat inX, gfloat inY); 69 | void (*end)(XfdashboardDropAction *self, XfdashboardDragAction *inDragAction); 70 | 71 | void (*drag_enter)(XfdashboardDropAction *self, XfdashboardDragAction *inDragAction); 72 | void (*drag_motion)(XfdashboardDropAction *self, XfdashboardDragAction *inDragAction, gfloat inX, gfloat inY); 73 | void (*drag_leave)(XfdashboardDropAction *self, XfdashboardDragAction *inDragAction); 74 | }; 75 | 76 | /* Public API */ 77 | GType xfdashboard_drop_action_get_type(void) G_GNUC_CONST; 78 | 79 | ClutterAction* xfdashboard_drop_action_new(); 80 | 81 | GSList* xfdashboard_drop_action_get_targets(void); 82 | 83 | G_END_DECLS 84 | 85 | #endif /* __LIBXFDASHBOARD_DROP_ACTION__ */ 86 | -------------------------------------------------------------------------------- /libxfdashboard/enums.c.template: -------------------------------------------------------------------------------- 1 | /*** BEGIN file-header ***/ 2 | /* 3 | * enums: Definitions of enumerations and flags used in GObject objects 4 | * 5 | * Copyright 2012-2021 Stephan Haller 6 | * 7 | * This program is free software; you can redistribute it and/or modify 8 | * it under the terms of the GNU General Public License as published by 9 | * the Free Software Foundation; either version 2 of the License, or 10 | * (at your option) any later version. 11 | * 12 | * This program is distributed in the hope that it will be useful, 13 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | * GNU General Public License for more details. 16 | * 17 | * You should have received a copy of the GNU General Public License 18 | * along with this program; if not, write to the Free Software 19 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 20 | * MA 02110-1301, USA. 21 | * 22 | * 23 | */ 24 | 25 | #if HAVE_CONFIG_H 26 | # include 27 | #endif /* HAVE_CONFIG_H */ 28 | 29 | #include "enums.h" 30 | 31 | /*** END file-header ***/ 32 | /*** BEGIN file-production ***/ 33 | 34 | /* enumerations from "@filename@" */ 35 | #include "@filename@" 36 | 37 | /*** END file-production ***/ 38 | 39 | /*** BEGIN value-header ***/ 40 | GType @enum_name@_get_type(void) 41 | { 42 | static gsize static_g_define_type_id=0; 43 | 44 | if(g_once_init_enter(&static_g_define_type_id)) 45 | { 46 | static const G@Type@Value values[]= 47 | { 48 | /*** END value-header ***/ 49 | 50 | /*** BEGIN value-production ***/ 51 | { @VALUENAME@, "@VALUENAME@", "@valuenick@" }, 52 | /*** END value-production ***/ 53 | 54 | /*** BEGIN value-tail ***/ 55 | { 0, NULL, NULL } 56 | }; 57 | 58 | GType g_define_type_id=g_@type@_register_static(g_intern_static_string("@EnumName@"), values); 59 | g_once_init_leave(&static_g_define_type_id, g_define_type_id); 60 | } 61 | 62 | return(static_g_define_type_id); 63 | } 64 | 65 | /*** END value-tail ***/ 66 | 67 | /*** BEGIN file-tail ***/ 68 | /*** END file-tail ***/ 69 | -------------------------------------------------------------------------------- /libxfdashboard/enums.h.template: -------------------------------------------------------------------------------- 1 | /*** BEGIN file-header ***/ 2 | /* 3 | * enums: Definitions of enumerations and flags used in GObject objects 4 | * 5 | * Copyright 2012-2021 Stephan Haller 6 | * 7 | * This program is free software; you can redistribute it and/or modify 8 | * it under the terms of the GNU General Public License as published by 9 | * the Free Software Foundation; either version 2 of the License, or 10 | * (at your option) any later version. 11 | * 12 | * This program is distributed in the hope that it will be useful, 13 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | * GNU General Public License for more details. 16 | * 17 | * You should have received a copy of the GNU General Public License 18 | * along with this program; if not, write to the Free Software 19 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 20 | * MA 02110-1301, USA. 21 | * 22 | * 23 | */ 24 | 25 | #ifndef __LIBXFDASHBOARD_ENUMS__ 26 | #define __LIBXFDASHBOARD_ENUMS__ 27 | 28 | #include 29 | 30 | G_BEGIN_DECLS 31 | /*** END file-header ***/ 32 | 33 | /*** BEGIN file-production ***/ 34 | 35 | /* enumerations from "@filename@" */ 36 | /*** END file-production ***/ 37 | /*** BEGIN value-header ***/ 38 | GType @enum_name@_get_type(void) G_GNUC_CONST; 39 | #define @ENUMPREFIX@_TYPE_@ENUMSHORT@ (@enum_name@_get_type()) 40 | /*** END value-header ***/ 41 | 42 | /*** BEGIN file-tail ***/ 43 | G_END_DECLS 44 | 45 | #endif 46 | /*** END file-tail ***/ 47 | -------------------------------------------------------------------------------- /libxfdashboard/gdk/window-tracker-backend-gdk.h: -------------------------------------------------------------------------------- 1 | /* 2 | * window-tracker-backend: Window tracker backend providing special functions 3 | * for different windowing and clutter backends. 4 | * 5 | * Copyright 2012-2021 Stephan Haller 6 | * 7 | * This program is free software; you can redistribute it and/or modify 8 | * it under the terms of the GNU General Public License as published by 9 | * the Free Software Foundation; either version 2 of the License, or 10 | * (at your option) any later version. 11 | * 12 | * This program is distributed in the hope that it will be useful, 13 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | * GNU General Public License for more details. 16 | * 17 | * You should have received a copy of the GNU General Public License 18 | * along with this program; if not, write to the Free Software 19 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 20 | * MA 02110-1301, USA. 21 | * 22 | * 23 | */ 24 | 25 | #ifndef __LIBXFDASHBOARD_WINDOW_TRACKER_BACKEND_GDK__ 26 | #define __LIBXFDASHBOARD_WINDOW_TRACKER_BACKEND_GDK__ 27 | 28 | #if !defined(__LIBXFDASHBOARD_H_INSIDE__) && !defined(LIBXFDASHBOARD_COMPILATION) 29 | #error "Only can be included directly." 30 | #endif 31 | 32 | #include 33 | 34 | #include 35 | 36 | G_BEGIN_DECLS 37 | 38 | #define XFDASHBOARD_TYPE_WINDOW_TRACKER_BACKEND_GDK (xfdashboard_window_tracker_backend_gdk_get_type()) 39 | #define XFDASHBOARD_WINDOW_TRACKER_BACKEND_GDK(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), XFDASHBOARD_TYPE_WINDOW_TRACKER_BACKEND_GDK, XfdashboardWindowTrackerBackendGDK)) 40 | #define XFDASHBOARD_IS_WINDOW_TRACKER_BACKEND_GDK(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), XFDASHBOARD_TYPE_WINDOW_TRACKER_BACKEND_GDK)) 41 | #define XFDASHBOARD_WINDOW_TRACKER_BACKEND_GDK_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), XFDASHBOARD_TYPE_WINDOW_TRACKER_BACKEND_GDK, XfdashboardWindowTrackerBackendGDKClass)) 42 | #define XFDASHBOARD_IS_WINDOW_TRACKER_BACKEND_GDK_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), XFDASHBOARD_TYPE_WINDOW_TRACKER_BACKEND_GDK)) 43 | #define XFDASHBOARD_WINDOW_TRACKER_BACKEND_GDK_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), XFDASHBOARD_TYPE_WINDOW_TRACKER_BACKEND_GDK, XfdashboardWindowTrackerBackendGDKClass)) 44 | 45 | typedef struct _XfdashboardWindowTrackerBackendGDK XfdashboardWindowTrackerBackendGDK; 46 | typedef struct _XfdashboardWindowTrackerBackendGDKClass XfdashboardWindowTrackerBackendGDKClass; 47 | typedef struct _XfdashboardWindowTrackerBackendGDKPrivate XfdashboardWindowTrackerBackendGDKPrivate; 48 | 49 | struct _XfdashboardWindowTrackerBackendGDK 50 | { 51 | /*< private >*/ 52 | /* Parent instance */ 53 | GObject parent_instance; 54 | 55 | /* Private structure */ 56 | XfdashboardWindowTrackerBackendGDKPrivate *priv; 57 | }; 58 | 59 | struct _XfdashboardWindowTrackerBackendGDKClass 60 | { 61 | /*< private >*/ 62 | /* Parent class */ 63 | GObjectClass parent_class; 64 | 65 | /*< public >*/ 66 | /* Virtual functions */ 67 | }; 68 | 69 | /* Public API */ 70 | GType xfdashboard_window_tracker_backend_gdk_get_type(void) G_GNUC_CONST; 71 | 72 | XfdashboardWindowTrackerBackend* xfdashboard_window_tracker_backend_gdk_new(void); 73 | 74 | G_END_DECLS 75 | 76 | #endif /* __LIBXFDASHBOARD_WINDOW_TRACKER_BACKEND_GDK__ */ 77 | -------------------------------------------------------------------------------- /libxfdashboard/libxfdashboard.pc.in: -------------------------------------------------------------------------------- 1 | prefix=@prefix@ 2 | exec_prefix=@exec_prefix@ 3 | libdir=@libdir@ 4 | includedir=@includedir@ 5 | 6 | Name: @PACKAGE_TARNAME@ 7 | Description: Library for xfdashboard 8 | Requires: @XFDASHBOARD_REQUIRES@ 9 | Version: @PACKAGE_VERSION@ 10 | Libs: -L${libdir} -lxfdashboard 11 | Cflags: -I${includedir}/xfdashboard 12 | -------------------------------------------------------------------------------- /libxfdashboard/marshal.list: -------------------------------------------------------------------------------- 1 | VOID:FLAGS,FLAGS 2 | VOID:FLOAT,FLOAT 3 | VOID:INT,INT 4 | VOID:OBJECT,OBJECT 5 | VOID:VARIANT,OBJECT 6 | VOID:OBJECT,FLOAT,FLOAT 7 | VOID:OBJECT,OBJECT,OBJECT 8 | VOID:STRING,BOOLEAN 9 | VOID:STRING,PARAM 10 | BOOLEAN:VOID 11 | BOOLEAN:OBJECT 12 | BOOLEAN:OBJECT,ENUM 13 | BOOLEAN:OBJECT,FLOAT,FLOAT 14 | BOOLEAN:OBJECT,STRING,BOXED 15 | BOOLEAN:OBJECT,STRING,STRING,BOXED 16 | OBJECT:VOID 17 | -------------------------------------------------------------------------------- /libxfdashboard/plugin-settings.h: -------------------------------------------------------------------------------- 1 | /* 2 | * plugin-settings: A generic class containing the settings of a plugin 3 | * 4 | * Copyright 2012-2021 Stephan Haller 5 | * 6 | * This program is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation; either version 2 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program; if not, write to the Free Software 18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 19 | * MA 02110-1301, USA. 20 | * 21 | * 22 | */ 23 | 24 | #ifndef __LIBXFDASHBOARD_PLUGIN_SETTINGS__ 25 | #define __LIBXFDASHBOARD_PLUGIN_SETTINGS__ 26 | 27 | #if !defined(__LIBXFDASHBOARD_H_INSIDE__) && !defined(LIBXFDASHBOARD_COMPILATION) 28 | #error "Only can be included directly." 29 | #endif 30 | 31 | #include 32 | 33 | G_BEGIN_DECLS 34 | 35 | #define XFDASHBOARD_TYPE_PLUGIN_SETTINGS (xfdashboard_plugin_settings_get_type()) 36 | #define XFDASHBOARD_PLUGIN_SETTINGS(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), XFDASHBOARD_TYPE_PLUGIN_SETTINGS, XfdashboardPluginSettings)) 37 | #define XFDASHBOARD_IS_PLUGIN_SETTINGS(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), XFDASHBOARD_TYPE_PLUGIN_SETTINGS)) 38 | #define XFDASHBOARD_PLUGIN_SETTINGS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), XFDASHBOARD_TYPE_PLUGIN_SETTINGS, XfdashboardPluginSettingsClass)) 39 | #define XFDASHBOARD_IS_PLUGIN_SETTINGS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), XFDASHBOARD_TYPE_PLUGIN_SETTINGS)) 40 | #define XFDASHBOARD_PLUGIN_SETTINGS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), XFDASHBOARD_TYPE_PLUGIN_SETTINGS, XfdashboardPluginSettingsClass)) 41 | 42 | typedef struct _XfdashboardPluginSettings XfdashboardPluginSettings; 43 | typedef struct _XfdashboardPluginSettingsClass XfdashboardPluginSettingsClass; 44 | 45 | /** 46 | * XfdashboardPluginSettings: 47 | * 48 | * The #XfdashboardPluginSettings structure contains only private data and 49 | * should be accessed using the provided API 50 | */ 51 | struct _XfdashboardPluginSettings 52 | { 53 | /*< private >*/ 54 | /* Parent instance */ 55 | GInitiallyUnowned parent_instance; 56 | }; 57 | 58 | /** 59 | * XfdashboardPluginSettingsClass: 60 | * @settings_changed: The class closure for changed signal 61 | * 62 | * The #XfdashboardPluginSettingsClass class structure 63 | */ 64 | struct _XfdashboardPluginSettingsClass 65 | { 66 | /*< private >*/ 67 | /* Parent class */ 68 | GInitiallyUnownedClass parent_class; 69 | 70 | /*< public >*/ 71 | /* Virtual functions */ 72 | void (*changed)(XfdashboardPluginSettings *self, GParamSpec *inParamSpec); 73 | }; 74 | 75 | 76 | /* Public API */ 77 | GType xfdashboard_plugin_settings_get_type(void) G_GNUC_CONST; 78 | 79 | G_END_DECLS 80 | 81 | #endif /* __LIBXFDASHBOARD_PLUGIN_SETTINGS__ */ 82 | -------------------------------------------------------------------------------- /libxfdashboard/plugins-manager.h: -------------------------------------------------------------------------------- 1 | /* 2 | * plugins-manager: Single-instance managing plugins 3 | * 4 | * Copyright 2012-2021 Stephan Haller 5 | * 6 | * This program is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation; either version 2 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program; if not, write to the Free Software 18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 19 | * MA 02110-1301, USA. 20 | * 21 | * 22 | */ 23 | 24 | #ifndef __LIBXFDASHBOARD_PLUGINS_MANAGER__ 25 | #define __LIBXFDASHBOARD_PLUGINS_MANAGER__ 26 | 27 | #if !defined(__LIBXFDASHBOARD_H_INSIDE__) && !defined(LIBXFDASHBOARD_COMPILATION) 28 | #error "Only can be included directly." 29 | #endif 30 | 31 | #include 32 | 33 | G_BEGIN_DECLS 34 | 35 | #define XFDASHBOARD_TYPE_PLUGINS_MANAGER (xfdashboard_plugins_manager_get_type()) 36 | #define XFDASHBOARD_PLUGINS_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), XFDASHBOARD_TYPE_PLUGINS_MANAGER, XfdashboardPluginsManager)) 37 | #define XFDASHBOARD_IS_PLUGINS_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), XFDASHBOARD_TYPE_PLUGINS_MANAGER)) 38 | #define XFDASHBOARD_PLUGINS_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), XFDASHBOARD_TYPE_PLUGINS_MANAGER, XfdashboardPluginsManagerClass)) 39 | #define XFDASHBOARD_IS_PLUGINS_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), XFDASHBOARD_TYPE_PLUGINS_MANAGER)) 40 | #define XFDASHBOARD_PLUGINS_MANAGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), XFDASHBOARD_TYPE_PLUGINS_MANAGER, XfdashboardPluginsManagerClass)) 41 | 42 | typedef struct _XfdashboardPluginsManager XfdashboardPluginsManager; 43 | typedef struct _XfdashboardPluginsManagerClass XfdashboardPluginsManagerClass; 44 | typedef struct _XfdashboardPluginsManagerPrivate XfdashboardPluginsManagerPrivate; 45 | 46 | /** 47 | * XfdashboardPluginsManager: 48 | * 49 | * The #XfdashboardPluginsManager structure contains only private data and 50 | * should be accessed using the provided API 51 | */ 52 | struct _XfdashboardPluginsManager 53 | { 54 | /*< private >*/ 55 | /* Parent instance */ 56 | GObject parent_instance; 57 | 58 | /* Private structure */ 59 | XfdashboardPluginsManagerPrivate *priv; 60 | }; 61 | 62 | /** 63 | * XfdashboardPluginsManagerClass: 64 | * 65 | * The #XfdashboardPluginsManagerClass structure contains only private data 66 | */ 67 | struct _XfdashboardPluginsManagerClass 68 | { 69 | /*< private >*/ 70 | /* Parent class */ 71 | GObjectClass parent_class; 72 | }; 73 | 74 | /* Public API */ 75 | GType xfdashboard_plugins_manager_get_type(void) G_GNUC_CONST; 76 | 77 | gboolean xfdashboard_plugins_manager_setup(XfdashboardPluginsManager *self); 78 | 79 | G_END_DECLS 80 | 81 | #endif /* __LIBXFDASHBOARD_PLUGINS_MANAGER__ */ 82 | -------------------------------------------------------------------------------- /libxfdashboard/popup-menu-item-button.h: -------------------------------------------------------------------------------- 1 | /* 2 | * popup-menu-item-button: A button pop-up menu item 3 | * 4 | * Copyright 2012-2021 Stephan Haller 5 | * 6 | * This program is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation; either version 2 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program; if not, write to the Free Software 18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 19 | * MA 02110-1301, USA. 20 | * 21 | * 22 | */ 23 | 24 | #ifndef __LIBXFDASHBOARD_POPUP_MENU_ITEM_BUTTON__ 25 | #define __LIBXFDASHBOARD_POPUP_MENU_ITEM_BUTTON__ 26 | 27 | #if !defined(__LIBXFDASHBOARD_H_INSIDE__) && !defined(LIBXFDASHBOARD_COMPILATION) 28 | #error "Only can be included directly." 29 | #endif 30 | 31 | #include 32 | 33 | G_BEGIN_DECLS 34 | 35 | #define XFDASHBOARD_TYPE_POPUP_MENU_ITEM_BUTTON (xfdashboard_popup_menu_item_button_get_type()) 36 | #define XFDASHBOARD_POPUP_MENU_ITEM_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), XFDASHBOARD_TYPE_POPUP_MENU_ITEM_BUTTON, XfdashboardPopupMenuItemButton)) 37 | #define XFDASHBOARD_IS_POPUP_MENU_ITEM_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), XFDASHBOARD_TYPE_POPUP_MENU_ITEM_BUTTON)) 38 | #define XFDASHBOARD_POPUP_MENU_ITEM_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), XFDASHBOARD_TYPE_POPUP_MENU_ITEM_BUTTON, XfdashboardPopupMenuItemButtonClass)) 39 | #define XFDASHBOARD_IS_POPUP_MENU_ITEM_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), XFDASHBOARD_TYPE_POPUP_MENU_ITEM_BUTTON)) 40 | #define XFDASHBOARD_POPUP_MENU_ITEM_BUTTON_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), XFDASHBOARD_TYPE_POPUP_MENU_ITEM_BUTTON, XfdashboardPopupMenuItemButtonClass)) 41 | 42 | typedef struct _XfdashboardPopupMenuItemButton XfdashboardPopupMenuItemButton; 43 | typedef struct _XfdashboardPopupMenuItemButtonClass XfdashboardPopupMenuItemButtonClass; 44 | typedef struct _XfdashboardPopupMenuItemButtonPrivate XfdashboardPopupMenuItemButtonPrivate; 45 | 46 | /** 47 | * XfdashboardPopupMenuItemButton: 48 | * 49 | * The #XfdashboardPopupMenuItemButton structure contains only private data and 50 | * should be accessed using the provided API 51 | */ 52 | struct _XfdashboardPopupMenuItemButton 53 | { 54 | /*< private >*/ 55 | /* Parent instance */ 56 | XfdashboardLabel parent_instance; 57 | 58 | /* Private structure */ 59 | XfdashboardPopupMenuItemButtonPrivate *priv; 60 | }; 61 | 62 | /** 63 | * XfdashboardPopupMenuItemButtonClass: 64 | * 65 | * The #XfdashboardPopupMenuItemButtonClass structure contains only private data 66 | */ 67 | struct _XfdashboardPopupMenuItemButtonClass 68 | { 69 | /*< private >*/ 70 | /* Parent class */ 71 | XfdashboardLabelClass parent_class; 72 | 73 | /*< public >*/ 74 | /* Virtual functions */ 75 | }; 76 | 77 | /* Public API */ 78 | GType xfdashboard_popup_menu_item_button_get_type(void) G_GNUC_CONST; 79 | 80 | ClutterActor* xfdashboard_popup_menu_item_button_new(void); 81 | ClutterActor* xfdashboard_popup_menu_item_button_new_with_text(const gchar *inText); 82 | 83 | G_END_DECLS 84 | 85 | #endif /* __LIBXFDASHBOARD_POPUP_MENU_ITEM_BUTTON__ */ 86 | -------------------------------------------------------------------------------- /libxfdashboard/popup-menu-item.h: -------------------------------------------------------------------------------- 1 | /* 2 | * popup-menu-item: An interface implemented by actors used as pop-up menu item 3 | * 4 | * Copyright 2012-2021 Stephan Haller 5 | * 6 | * This program is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation; either version 2 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program; if not, write to the Free Software 18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 19 | * MA 02110-1301, USA. 20 | * 21 | * 22 | */ 23 | 24 | #ifndef __LIBXFDASHBOARD_POPUP_MENU_ITEM__ 25 | #define __LIBXFDASHBOARD_POPUP_MENU_ITEM__ 26 | 27 | #if !defined(__LIBXFDASHBOARD_H_INSIDE__) && !defined(LIBXFDASHBOARD_COMPILATION) 28 | #error "Only can be included directly." 29 | #endif 30 | 31 | #include 32 | 33 | G_BEGIN_DECLS 34 | 35 | #define XFDASHBOARD_TYPE_POPUP_MENU_ITEM (xfdashboard_popup_menu_item_get_type()) 36 | #define XFDASHBOARD_POPUP_MENU_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), XFDASHBOARD_TYPE_POPUP_MENU_ITEM, XfdashboardPopupMenuItem)) 37 | #define XFDASHBOARD_IS_POPUP_MENU_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), XFDASHBOARD_TYPE_POPUP_MENU_ITEM)) 38 | #define XFDASHBOARD_POPUP_MENU_ITEM_GET_IFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE((obj), XFDASHBOARD_TYPE_POPUP_MENU_ITEM, XfdashboardPopupMenuItemInterface)) 39 | 40 | typedef struct _XfdashboardPopupMenuItem XfdashboardPopupMenuItem; 41 | typedef struct _XfdashboardPopupMenuItemInterface XfdashboardPopupMenuItemInterface; 42 | 43 | /** 44 | * XfdashboardPopupMenuItemInterface: 45 | * @parent_interface: The parent interface. 46 | * @get_enabled: Retrieve state if pop-up menu item is enabled or disabled 47 | * @set_enabled: Set state if pop-up menu item is enabled or disabled 48 | * 49 | * Provides an interface implemented by actors which will be used as pop-up menu 50 | * items in a #XfdashboardPopupMenu. 51 | */ 52 | struct _XfdashboardPopupMenuItemInterface 53 | { 54 | /*< private >*/ 55 | /* Parent interface */ 56 | GTypeInterface parent_interface; 57 | 58 | /*< public >*/ 59 | /* Virtual functions */ 60 | gboolean (*get_enabled)(XfdashboardPopupMenuItem *self); 61 | void (*set_enabled)(XfdashboardPopupMenuItem *self, gboolean inEnabled); 62 | }; 63 | 64 | /* Public API */ 65 | GType xfdashboard_popup_menu_item_get_type(void) G_GNUC_CONST; 66 | 67 | gboolean xfdashboard_popup_menu_item_get_enabled(XfdashboardPopupMenuItem *self); 68 | void xfdashboard_popup_menu_item_set_enabled(XfdashboardPopupMenuItem *self, gboolean inEnabled); 69 | 70 | void xfdashboard_popup_menu_item_activate(XfdashboardPopupMenuItem *self); 71 | 72 | G_END_DECLS 73 | 74 | #endif /* __LIBXFDASHBOARD_POPUP_MENU_ITEM__ */ 75 | -------------------------------------------------------------------------------- /libxfdashboard/search-view.h: -------------------------------------------------------------------------------- 1 | /* 2 | * search-view: A view showing applications matching search criteria 3 | * 4 | * Copyright 2012-2021 Stephan Haller 5 | * 6 | * This program is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation; either version 2 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program; if not, write to the Free Software 18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 19 | * MA 02110-1301, USA. 20 | * 21 | * 22 | */ 23 | 24 | #ifndef __LIBXFDASHBOARD_SEARCH_VIEW__ 25 | #define __LIBXFDASHBOARD_SEARCH_VIEW__ 26 | 27 | #if !defined(__LIBXFDASHBOARD_H_INSIDE__) && !defined(LIBXFDASHBOARD_COMPILATION) 28 | #error "Only can be included directly." 29 | #endif 30 | 31 | #include 32 | 33 | G_BEGIN_DECLS 34 | 35 | #define XFDASHBOARD_TYPE_SEARCH_VIEW (xfdashboard_search_view_get_type()) 36 | #define XFDASHBOARD_SEARCH_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), XFDASHBOARD_TYPE_SEARCH_VIEW, XfdashboardSearchView)) 37 | #define XFDASHBOARD_IS_SEARCH_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), XFDASHBOARD_TYPE_SEARCH_VIEW)) 38 | #define XFDASHBOARD_SEARCH_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), XFDASHBOARD_TYPE_SEARCH_VIEW, XfdashboardSearchViewClass)) 39 | #define XFDASHBOARD_IS_SEARCH_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), XFDASHBOARD_TYPE_SEARCH_VIEW)) 40 | #define XFDASHBOARD_SEARCH_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), XFDASHBOARD_TYPE_SEARCH_VIEW, XfdashboardSearchViewClass)) 41 | 42 | typedef struct _XfdashboardSearchView XfdashboardSearchView; 43 | typedef struct _XfdashboardSearchViewPrivate XfdashboardSearchViewPrivate; 44 | typedef struct _XfdashboardSearchViewClass XfdashboardSearchViewClass; 45 | 46 | /** 47 | * XfdashboardSearchView: 48 | * 49 | * The #XfdashboardSearchView structure contains only private data and 50 | * should be accessed using the provided API 51 | */ 52 | struct _XfdashboardSearchView 53 | { 54 | /*< private >*/ 55 | /* Parent instance */ 56 | XfdashboardView parent_instance; 57 | 58 | /* Private structure */ 59 | XfdashboardSearchViewPrivate *priv; 60 | }; 61 | 62 | /** 63 | * XfdashboardSearchViewClass: 64 | * @search_reset: Class handler for the #XfdashboardSearchViewClass::search-reset signal 65 | * @search_updated: Class handler for the #XfdashboardSearchViewClass::search-updated signal 66 | * 67 | * The #XfdashboardSearchViewClass structure contains only private data 68 | */ 69 | struct _XfdashboardSearchViewClass 70 | { 71 | /*< private >*/ 72 | /* Parent class */ 73 | XfdashboardViewClass parent_class; 74 | 75 | /*< public >*/ 76 | /* Virtual functions */ 77 | void (*search_reset)(XfdashboardSearchView *self); 78 | void (*search_updated)(XfdashboardSearchView *self); 79 | }; 80 | 81 | /* Public API */ 82 | GType xfdashboard_search_view_get_type(void) G_GNUC_CONST; 83 | 84 | void xfdashboard_search_view_reset_search(XfdashboardSearchView *self); 85 | void xfdashboard_search_view_update_search(XfdashboardSearchView *self, const gchar *inSearchString); 86 | 87 | G_END_DECLS 88 | 89 | #endif /* __LIBXFDASHBOARD_SEARCH_VIEW__ */ 90 | -------------------------------------------------------------------------------- /libxfdashboard/tooltip-action.h: -------------------------------------------------------------------------------- 1 | /* 2 | * tooltip-action: An action to display a tooltip after a short timeout 3 | * without movement at the referred actor 4 | * 5 | * Copyright 2012-2021 Stephan Haller 6 | * 7 | * This program is free software; you can redistribute it and/or modify 8 | * it under the terms of the GNU General Public License as published by 9 | * the Free Software Foundation; either version 2 of the License, or 10 | * (at your option) any later version. 11 | * 12 | * This program is distributed in the hope that it will be useful, 13 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | * GNU General Public License for more details. 16 | * 17 | * You should have received a copy of the GNU General Public License 18 | * along with this program; if not, write to the Free Software 19 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 20 | * MA 02110-1301, USA. 21 | * 22 | * 23 | */ 24 | 25 | #ifndef __LIBXFDASHBOARD_TOOLTIP_ACTION__ 26 | #define __LIBXFDASHBOARD_TOOLTIP_ACTION__ 27 | 28 | #if !defined(__LIBXFDASHBOARD_H_INSIDE__) && !defined(LIBXFDASHBOARD_COMPILATION) 29 | #error "Only can be included directly." 30 | #endif 31 | 32 | #include 33 | 34 | G_BEGIN_DECLS 35 | 36 | #define XFDASHBOARD_TYPE_TOOLTIP_ACTION (xfdashboard_tooltip_action_get_type ()) 37 | #define XFDASHBOARD_TOOLTIP_ACTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), XFDASHBOARD_TYPE_TOOLTIP_ACTION, XfdashboardTooltipAction)) 38 | #define XFDASHBOARD_IS_TOOLTIP_ACTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), XFDASHBOARD_TYPE_TOOLTIP_ACTION)) 39 | #define XFDASHBOARD_TOOLTIP_ACTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), XFDASHBOARD_TYPE_TOOLTIP_ACTION, XfdashboardTooltipActionClass)) 40 | #define XFDASHBOARD_IS_TOOLTIP_ACTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), XFDASHBOARD_TYPE_TOOLTIP_ACTION)) 41 | #define XFDASHBOARD_TOOLTIP_ACTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), XFDASHBOARD_TYPE_TOOLTIP_ACTION, XfdashboardTooltipActionClass)) 42 | 43 | typedef struct _XfdashboardTooltipAction XfdashboardTooltipAction; 44 | typedef struct _XfdashboardTooltipActionPrivate XfdashboardTooltipActionPrivate; 45 | typedef struct _XfdashboardTooltipActionClass XfdashboardTooltipActionClass; 46 | 47 | struct _XfdashboardTooltipAction 48 | { 49 | /*< private >*/ 50 | /* Parent instance */ 51 | ClutterAction parent_instance; 52 | 53 | /* Private structure */ 54 | XfdashboardTooltipActionPrivate *priv; 55 | }; 56 | 57 | struct _XfdashboardTooltipActionClass 58 | { 59 | /*< private >*/ 60 | /* Parent class */ 61 | ClutterActionClass parent_class; 62 | 63 | /*< public >*/ 64 | /* Virtual functions */ 65 | void (*activating)(XfdashboardTooltipAction *self); 66 | }; 67 | 68 | /* Public API */ 69 | GType xfdashboard_tooltip_action_get_type(void) G_GNUC_CONST; 70 | 71 | ClutterAction* xfdashboard_tooltip_action_new(void); 72 | 73 | const gchar* xfdashboard_tooltip_action_get_text(XfdashboardTooltipAction *self); 74 | void xfdashboard_tooltip_action_set_text(XfdashboardTooltipAction *self, const gchar *inTooltipText); 75 | 76 | void xfdashboard_tooltip_action_get_position(XfdashboardTooltipAction *self, gfloat *outX, gfloat *outY); 77 | 78 | G_END_DECLS 79 | 80 | #endif /* __LIBXFDASHBOARD_TOOLTIP_ACTION__ */ 81 | -------------------------------------------------------------------------------- /libxfdashboard/version.h.in: -------------------------------------------------------------------------------- 1 | /* 2 | * version: variables and functions to check the version 3 | * 4 | * Copyright 2012-2021 Stephan Haller 5 | * 6 | * This program is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation; either version 2 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program; if not, write to the Free Software 18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 19 | * MA 02110-1301, USA. 20 | * 21 | * 22 | */ 23 | 24 | /** 25 | * SECTION:version 26 | * @short_description: Variables and functions to check version of libxfdashboard 27 | * 28 | * Provides version information macros, useful for checks in configure scripts 29 | * and to write code against different versions of libxfdashboard that do not 30 | * provide the same API. 31 | */ 32 | 33 | #ifndef __LIBXFDASHBOARD_VERSION__ 34 | #define __LIBXFDASHBOARD_VERSION__ 35 | 36 | #if !defined(__LIBXFDASHBOARD_H_INSIDE__) && !defined(LIBXFDASHBOARD_COMPILATION) 37 | #error "Only can be included directly." 38 | #endif 39 | 40 | /** 41 | * LIBXFDASHBOARD_MAJOR_VERSION: 42 | * 43 | * Return value: the major version number of the libxfdashboard library, from the 44 | * headers used at application compile time, rather than from the library 45 | * linked against at application run time. 46 | * (e.g. in libxfdashboard version 0.7.1 this is 0.) 47 | */ 48 | #define LIBXFDASHBOARD_MAJOR_VERSION (@LIBXFDASHBOARD_MAJOR_VERSION@) 49 | 50 | /** 51 | * LIBXFDASHBOARD_MINOR_VERSION: 52 | * 53 | * Return value: the minor version number of the libxfdashboard library, from the 54 | * headers used at application compile time, rather than from the library 55 | * linked against at application run time. 56 | * (e.g. in libxfdashboard version 0.7.1 this is 7.) 57 | */ 58 | #define LIBXFDASHBOARD_MINOR_VERSION (@LIBXFDASHBOARD_MINOR_VERSION@) 59 | 60 | /** 61 | * LIBXFDASHBOARD_MICRO_VERSION: 62 | * 63 | * Return value: the micro version number of the libxfdashboard library, from the 64 | * headers used at application compile time, rather than from the library 65 | * linked against at application run time. 66 | * (e.g. in libxfdashboard version 0.7.1 this is 1.) 67 | */ 68 | #define LIBXFDASHBOARD_MICRO_VERSION (@LIBXFDASHBOARD_MICRO_VERSION@) 69 | 70 | /** 71 | * LIBXFDASHBOARD_CHECK_VERSION: 72 | * @major: major version (e.g. 0 for version 0.7.1) 73 | * @minor: minor version (e.g. 7 for version 0.7.1) 74 | * @micro: micro version (e.g. 1 for version 0.7.1) 75 | * 76 | * Return value: %TRUE if the version of the libxfdashboard header files 77 | * is the same as or newer than the passed-in version, %FALSE 78 | * otherwise. 79 | */ 80 | #define LIBXFDASHBOARD_CHECK_VERSION(major,minor,micro) \ 81 | (LIBXFDASHBOARD_MAJOR_VERSION>(major) || \ 82 | (LIBXFDASHBOARD_MAJOR_VERSION==(major) && \ 83 | LIBXFDASHBOARD_MINOR_VERSION>(minor)) || \ 84 | (LIBXFDASHBOARD_MAJOR_VERSION==(major) && \ 85 | LIBXFDASHBOARD_MINOR_VERSION==(minor) && \ 86 | LIBXFDASHBOARD_MICRO_VERSION>=(micro))) 87 | 88 | #endif /* __LIBXFDASHBOARD_VERSION__ */ 89 | -------------------------------------------------------------------------------- /libxfdashboard/view-manager.h: -------------------------------------------------------------------------------- 1 | /* 2 | * view-manager: Single-instance managing views 3 | * 4 | * Copyright 2012-2021 Stephan Haller 5 | * 6 | * This program is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation; either version 2 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program; if not, write to the Free Software 18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 19 | * MA 02110-1301, USA. 20 | * 21 | * 22 | */ 23 | 24 | #ifndef __LIBXFDASHBOARD_VIEW_MANAGER__ 25 | #define __LIBXFDASHBOARD_VIEW_MANAGER__ 26 | 27 | #if !defined(__LIBXFDASHBOARD_H_INSIDE__) && !defined(LIBXFDASHBOARD_COMPILATION) 28 | #error "Only can be included directly." 29 | #endif 30 | 31 | #include 32 | 33 | G_BEGIN_DECLS 34 | 35 | #define XFDASHBOARD_TYPE_VIEW_MANAGER (xfdashboard_view_manager_get_type()) 36 | #define XFDASHBOARD_VIEW_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), XFDASHBOARD_TYPE_VIEW_MANAGER, XfdashboardViewManager)) 37 | #define XFDASHBOARD_IS_VIEW_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), XFDASHBOARD_TYPE_VIEW_MANAGER)) 38 | #define XFDASHBOARD_VIEW_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), XFDASHBOARD_TYPE_VIEW_MANAGER, XfdashboardViewManagerClass)) 39 | #define XFDASHBOARD_IS_VIEW_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), XFDASHBOARD_TYPE_VIEW_MANAGER)) 40 | #define XFDASHBOARD_VIEW_MANAGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), XFDASHBOARD_TYPE_VIEW_MANAGER, XfdashboardViewManagerClass)) 41 | 42 | typedef struct _XfdashboardViewManager XfdashboardViewManager; 43 | typedef struct _XfdashboardViewManagerClass XfdashboardViewManagerClass; 44 | typedef struct _XfdashboardViewManagerPrivate XfdashboardViewManagerPrivate; 45 | 46 | struct _XfdashboardViewManager 47 | { 48 | /*< private >*/ 49 | /* Parent instance */ 50 | GObject parent_instance; 51 | 52 | /* Private structure */ 53 | XfdashboardViewManagerPrivate *priv; 54 | }; 55 | 56 | struct _XfdashboardViewManagerClass 57 | { 58 | /*< private >*/ 59 | /* Parent class */ 60 | GObjectClass parent_class; 61 | 62 | /*< public >*/ 63 | /* Virtual functions */ 64 | void (*registered)(XfdashboardViewManager *self, const gchar *inID); 65 | void (*unregistered)(XfdashboardViewManager *self, const gchar *inID); 66 | }; 67 | 68 | /* Public API */ 69 | GType xfdashboard_view_manager_get_type(void) G_GNUC_CONST; 70 | 71 | gboolean xfdashboard_view_manager_register(XfdashboardViewManager *self, const gchar *inID, GType inViewType); 72 | gboolean xfdashboard_view_manager_unregister(XfdashboardViewManager *self, const gchar *inID); 73 | GList* xfdashboard_view_manager_get_registered(XfdashboardViewManager *self); 74 | gboolean xfdashboard_view_manager_has_registered_id(XfdashboardViewManager *self, const gchar *inID); 75 | 76 | GObject* xfdashboard_view_manager_create_view(XfdashboardViewManager *self, const gchar *inID); 77 | 78 | G_END_DECLS 79 | 80 | #endif /* __LIBXFDASHBOARD_VIEW_MANAGER__ */ 81 | -------------------------------------------------------------------------------- /libxfdashboard/window-content.c: -------------------------------------------------------------------------------- 1 | /* 2 | * window: A managed window of window manager 3 | * 4 | * Copyright 2012-2021 Stephan Haller 5 | * 6 | * This program is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation; either version 2 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program; if not, write to the Free Software 18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 19 | * MA 02110-1301, USA. 20 | * 21 | * 22 | */ 23 | 24 | #ifdef HAVE_CONFIG_H 25 | #include "config.h" 26 | #endif 27 | 28 | #include 29 | 30 | #include 31 | 32 | #include 33 | #include 34 | 35 | 36 | /* Define this class in GObject system */ 37 | G_DEFINE_ABSTRACT_TYPE(XfdashboardWindowContent, 38 | xfdashboard_window_content, 39 | G_TYPE_OBJECT); 40 | 41 | /* IMPLEMENTATION: GObject */ 42 | 43 | /* Class initialization 44 | * Override functions in parent classes and define properties 45 | * and signals 46 | */ 47 | void xfdashboard_window_content_class_init(XfdashboardWindowContentClass *klass) 48 | { 49 | } 50 | 51 | /* Object initialization 52 | * Create private structure and set up default values 53 | */ 54 | void xfdashboard_window_content_init(XfdashboardWindowContent *self) 55 | { 56 | } 57 | -------------------------------------------------------------------------------- /libxfdashboard/window-content.h: -------------------------------------------------------------------------------- 1 | /* 2 | * window-content: A content to share texture of a window 3 | * 4 | * Copyright 2012-2021 Stephan Haller 5 | * 6 | * This program is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation; either version 2 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program; if not, write to the Free Software 18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 19 | * MA 02110-1301, USA. 20 | * 21 | * 22 | */ 23 | 24 | #ifndef __LIBXFDASHBOARD_WINDOW_CONTENT__ 25 | #define __LIBXFDASHBOARD_WINDOW_CONTENT__ 26 | 27 | #if !defined(__LIBXFDASHBOARD_H_INSIDE__) && !defined(LIBXFDASHBOARD_COMPILATION) 28 | #error "Only can be included directly." 29 | #endif 30 | 31 | #include 32 | 33 | G_BEGIN_DECLS 34 | 35 | #define XFDASHBOARD_TYPE_WINDOW_CONTENT (xfdashboard_window_content_get_type()) 36 | #define XFDASHBOARD_WINDOW_CONTENT(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), XFDASHBOARD_TYPE_WINDOW_CONTENT, XfdashboardWindowContent)) 37 | #define XFDASHBOARD_IS_WINDOW_CONTENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), XFDASHBOARD_TYPE_WINDOW_CONTENT)) 38 | #define XFDASHBOARD_WINDOW_CONTENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), XFDASHBOARD_TYPE_WINDOW_CONTENT, XfdashboardWindowContentClass)) 39 | #define XFDASHBOARD_IS_WINDOW_CONTENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), XFDASHBOARD_TYPE_WINDOW_CONTENT)) 40 | #define XFDASHBOARD_WINDOW_CONTENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), XFDASHBOARD_TYPE_WINDOW_CONTENT, XfdashboardWindowContentClass)) 41 | 42 | typedef struct _XfdashboardWindowContent XfdashboardWindowContent; 43 | typedef struct _XfdashboardWindowContentClass XfdashboardWindowContentClass; 44 | typedef struct _XfdashboardWindowContentPrivate XfdashboardWindowContentPrivate; 45 | 46 | struct _XfdashboardWindowContent 47 | { 48 | /*< private >*/ 49 | /* Parent instance */ 50 | GObject parent_instance; 51 | 52 | /* Private structure */ 53 | XfdashboardWindowContentPrivate *priv; 54 | }; 55 | 56 | struct _XfdashboardWindowContentClass 57 | { 58 | /*< private >*/ 59 | /* Parent class */ 60 | GObjectClass parent_class; 61 | 62 | /*< public >*/ 63 | /* Virtual functions */ 64 | }; 65 | 66 | /* Public API */ 67 | GType xfdashboard_window_content_get_type(void) G_GNUC_CONST; 68 | 69 | G_END_DECLS 70 | 71 | #endif 72 | -------------------------------------------------------------------------------- /libxfdashboard/x11/window-tracker-backend-x11.h: -------------------------------------------------------------------------------- 1 | /* 2 | * window-tracker-backend: Window tracker backend providing special functions 3 | * for different windowing and clutter backends. 4 | * 5 | * Copyright 2012-2021 Stephan Haller 6 | * 7 | * This program is free software; you can redistribute it and/or modify 8 | * it under the terms of the GNU General Public License as published by 9 | * the Free Software Foundation; either version 2 of the License, or 10 | * (at your option) any later version. 11 | * 12 | * This program is distributed in the hope that it will be useful, 13 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | * GNU General Public License for more details. 16 | * 17 | * You should have received a copy of the GNU General Public License 18 | * along with this program; if not, write to the Free Software 19 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 20 | * MA 02110-1301, USA. 21 | * 22 | * 23 | */ 24 | 25 | #ifndef __LIBXFDASHBOARD_WINDOW_TRACKER_BACKEND_X11__ 26 | #define __LIBXFDASHBOARD_WINDOW_TRACKER_BACKEND_X11__ 27 | 28 | #if !defined(__LIBXFDASHBOARD_H_INSIDE__) && !defined(LIBXFDASHBOARD_COMPILATION) 29 | #error "Only can be included directly." 30 | #endif 31 | 32 | #include 33 | 34 | #include 35 | 36 | G_BEGIN_DECLS 37 | 38 | #define XFDASHBOARD_TYPE_WINDOW_TRACKER_BACKEND_X11 (xfdashboard_window_tracker_backend_x11_get_type()) 39 | #define XFDASHBOARD_WINDOW_TRACKER_BACKEND_X11(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), XFDASHBOARD_TYPE_WINDOW_TRACKER_BACKEND_X11, XfdashboardWindowTrackerBackendX11)) 40 | #define XFDASHBOARD_IS_WINDOW_TRACKER_BACKEND_X11(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), XFDASHBOARD_TYPE_WINDOW_TRACKER_BACKEND_X11)) 41 | #define XFDASHBOARD_WINDOW_TRACKER_BACKEND_X11_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), XFDASHBOARD_TYPE_WINDOW_TRACKER_BACKEND_X11, XfdashboardWindowTrackerBackendX11Class)) 42 | #define XFDASHBOARD_IS_WINDOW_TRACKER_BACKEND_X11_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), XFDASHBOARD_TYPE_WINDOW_TRACKER_BACKEND_X11)) 43 | #define XFDASHBOARD_WINDOW_TRACKER_BACKEND_X11_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), XFDASHBOARD_TYPE_WINDOW_TRACKER_BACKEND_X11, XfdashboardWindowTrackerBackendX11Class)) 44 | 45 | typedef struct _XfdashboardWindowTrackerBackendX11 XfdashboardWindowTrackerBackendX11; 46 | typedef struct _XfdashboardWindowTrackerBackendX11Class XfdashboardWindowTrackerBackendX11Class; 47 | typedef struct _XfdashboardWindowTrackerBackendX11Private XfdashboardWindowTrackerBackendX11Private; 48 | 49 | struct _XfdashboardWindowTrackerBackendX11 50 | { 51 | /*< private >*/ 52 | /* Parent instance */ 53 | GObject parent_instance; 54 | 55 | /* Private structure */ 56 | XfdashboardWindowTrackerBackendX11Private *priv; 57 | }; 58 | 59 | struct _XfdashboardWindowTrackerBackendX11Class 60 | { 61 | /*< private >*/ 62 | /* Parent class */ 63 | GObjectClass parent_class; 64 | 65 | /*< public >*/ 66 | /* Virtual functions */ 67 | }; 68 | 69 | /* Public API */ 70 | GType xfdashboard_window_tracker_backend_x11_get_type(void) G_GNUC_CONST; 71 | 72 | XfdashboardWindowTrackerBackend* xfdashboard_window_tracker_backend_x11_new(void); 73 | 74 | G_END_DECLS 75 | 76 | #endif /* __LIBXFDASHBOARD_WINDOW_TRACKER_BACKEND_X11__ */ 77 | -------------------------------------------------------------------------------- /libxfdashboard/x11/window-tracker-monitor-x11.h: -------------------------------------------------------------------------------- 1 | /* 2 | * window-tracker-monitor: A monitor object tracked by window tracker. 3 | * It provides information about position and 4 | * size of monitor within screen and also a flag 5 | * if this monitor is the primary one. 6 | * 7 | * Copyright 2012-2021 Stephan Haller 8 | * 9 | * This program is free software; you can redistribute it and/or modify 10 | * it under the terms of the GNU General Public License as published by 11 | * the Free Software Foundation; either version 2 of the License, or 12 | * (at your option) any later version. 13 | * 14 | * This program is distributed in the hope that it will be useful, 15 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 16 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 17 | * GNU General Public License for more details. 18 | * 19 | * You should have received a copy of the GNU General Public License 20 | * along with this program; if not, write to the Free Software 21 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 22 | * MA 02110-1301, USA. 23 | * 24 | * 25 | */ 26 | 27 | #ifndef __LIBXFDASHBOARD_WINDOW_TRACKER_MONITOR_X11__ 28 | #define __LIBXFDASHBOARD_WINDOW_TRACKER_MONITOR_X11__ 29 | 30 | #if !defined(__LIBXFDASHBOARD_H_INSIDE__) && !defined(LIBXFDASHBOARD_COMPILATION) 31 | #error "Only can be included directly." 32 | #endif 33 | 34 | #include 35 | 36 | G_BEGIN_DECLS 37 | 38 | #define XFDASHBOARD_TYPE_WINDOW_TRACKER_MONITOR_X11 (xfdashboard_window_tracker_monitor_x11_get_type()) 39 | #define XFDASHBOARD_WINDOW_TRACKER_MONITOR_X11(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), XFDASHBOARD_TYPE_WINDOW_TRACKER_MONITOR_X11, XfdashboardWindowTrackerMonitorX11)) 40 | #define XFDASHBOARD_IS_WINDOW_TRACKER_MONITOR_X11(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), XFDASHBOARD_TYPE_WINDOW_TRACKER_MONITOR_X11)) 41 | #define XFDASHBOARD_WINDOW_TRACKER_MONITOR_X11_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), XFDASHBOARD_TYPE_WINDOW_TRACKER_MONITOR_X11, XfdashboardWindowTrackerMonitorX11Class)) 42 | #define XFDASHBOARD_IS_WINDOW_TRACKER_MONITOR_X11_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), XFDASHBOARD_TYPE_WINDOW_TRACKER_MONITOR_X11)) 43 | #define XFDASHBOARD_WINDOW_TRACKER_MONITOR_X11_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), XFDASHBOARD_TYPE_WINDOW_TRACKER_MONITOR_X11, XfdashboardWindowTrackerMonitorX11Class)) 44 | 45 | typedef struct _XfdashboardWindowTrackerMonitorX11 XfdashboardWindowTrackerMonitorX11; 46 | typedef struct _XfdashboardWindowTrackerMonitorX11Class XfdashboardWindowTrackerMonitorX11Class; 47 | typedef struct _XfdashboardWindowTrackerMonitorX11Private XfdashboardWindowTrackerMonitorX11Private; 48 | 49 | struct _XfdashboardWindowTrackerMonitorX11 50 | { 51 | /*< private >*/ 52 | /* Parent instance */ 53 | GObject parent_instance; 54 | 55 | /* Private structure */ 56 | XfdashboardWindowTrackerMonitorX11Private *priv; 57 | }; 58 | 59 | struct _XfdashboardWindowTrackerMonitorX11Class 60 | { 61 | /*< private >*/ 62 | /* Parent class */ 63 | GObjectClass parent_class; 64 | 65 | /*< public >*/ 66 | /* Virtual functions */ 67 | void (*primary_changed)(XfdashboardWindowTrackerMonitorX11 *self); 68 | void (*geometry_changed)(XfdashboardWindowTrackerMonitorX11 *self); 69 | }; 70 | 71 | /* Public API */ 72 | GType xfdashboard_window_tracker_monitor_x11_get_type(void) G_GNUC_CONST; 73 | 74 | G_END_DECLS 75 | 76 | #endif /* __LIBXFDASHBOARD_WINDOW_TRACKER_MONITOR_X11__ */ 77 | -------------------------------------------------------------------------------- /plugins/Makefile.am: -------------------------------------------------------------------------------- 1 | SUBDIRS = \ 2 | autopin-windows \ 3 | clock-view \ 4 | example-search-provider \ 5 | gnome-shell-search-provider \ 6 | hot-corner \ 7 | middle-click-window-close \ 8 | recently-used-search-provider 9 | -------------------------------------------------------------------------------- /plugins/autopin-windows/Makefile.am: -------------------------------------------------------------------------------- 1 | plugindir = $(libdir)/xfdashboard/plugins 2 | PLUGIN_ID = autopin-windows 3 | 4 | AM_CPPFLAGS = \ 5 | -I$(top_builddir) \ 6 | -I$(top_srcdir) \ 7 | -DG_LOG_DOMAIN=\"xfdashboard-plugin-autopin-windows\" \ 8 | -DLIBEXECDIR=\"$(libexecdir)\" \ 9 | -DPACKAGE_LOCALE_DIR=\"$(localedir)\" \ 10 | -DPLUGIN_ID=\"$(PLUGIN_ID)\" \ 11 | $(XFDASHBOARD_DEBUG_CFLAGS) 12 | 13 | plugin_LTLIBRARIES = \ 14 | autopin-windows.la 15 | 16 | autopin_windows_la_SOURCES = \ 17 | autopin-windows.c \ 18 | autopin-windows.h \ 19 | plugin.c 20 | 21 | autopin_windows_la_CFLAGS = \ 22 | $(LIBXFCE4UTIL_CFLAGS) \ 23 | $(GTK_CFLAGS) \ 24 | $(CLUTTER_CFLAGS) \ 25 | $(LIBXFCONF_CFLAGS) \ 26 | $(GARCON_CFLAGS) \ 27 | $(PLATFORM_CFLAGS) 28 | 29 | autopin_windows_la_LDFLAGS = \ 30 | -avoid-version \ 31 | -export-dynamic \ 32 | -export-symbols-regex '^plugin_init$$' \ 33 | -no-undefined \ 34 | -module \ 35 | -shared \ 36 | $(PLATFORM_LDFLAGS) 37 | 38 | autopin_windows_la_LIBADD = \ 39 | $(LIBXFCE4UTIL_LIBS) \ 40 | $(GTK_LIBS) \ 41 | $(CLUTTER_LIBS) \ 42 | $(LIBXFCONF_LIBS) \ 43 | $(GARCON_CLIBS) \ 44 | $(top_builddir)/libxfdashboard/libxfdashboard.la 45 | 46 | CLEANFILES = \ 47 | $(plugin_DATA) 48 | 49 | EXTRA_DIST = \ 50 | $(plugin_DATA) 51 | 52 | DISTCLEANFILES = \ 53 | $(plugin_DATA) 54 | -------------------------------------------------------------------------------- /plugins/autopin-windows/autopin-windows.h: -------------------------------------------------------------------------------- 1 | /* 2 | * autopin-windows: Pins or unpins windows depending on the monitor 3 | * it is located 4 | * 5 | * Copyright 2012-2021 Stephan Haller 6 | * 7 | * This program is free software; you can redistribute it and/or modify 8 | * it under the terms of the GNU General Public License as published by 9 | * the Free Software Foundation; either version 2 of the License, or 10 | * (at your option) any later version. 11 | * 12 | * This program is distributed in the hope that it will be useful, 13 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | * GNU General Public License for more details. 16 | * 17 | * You should have received a copy of the GNU General Public License 18 | * along with this program; if not, write to the Free Software 19 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 20 | * MA 02110-1301, USA. 21 | * 22 | * 23 | */ 24 | 25 | #ifndef __XFDASHBOARD_AUTOPIN_WINDOWS__ 26 | #define __XFDASHBOARD_AUTOPIN_WINDOWS__ 27 | 28 | #include 29 | 30 | G_BEGIN_DECLS 31 | 32 | #define XFDASHBOARD_TYPE_AUTOPIN_WINDOWS (xfdashboard_autopin_windows_get_type()) 33 | #define XFDASHBOARD_AUTOPIN_WINDOWS(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), XFDASHBOARD_TYPE_AUTOPIN_WINDOWS, XfdashboardAutopinWindows)) 34 | #define XFDASHBOARD_IS_AUTOPIN_WINDOWS(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), XFDASHBOARD_TYPE_AUTOPIN_WINDOWS)) 35 | #define XFDASHBOARD_AUTOPIN_WINDOWS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), XFDASHBOARD_TYPE_AUTOPIN_WINDOWS, XfdashboardAutopinWindowsClass)) 36 | #define XFDASHBOARD_IS_AUTOPIN_WINDOWS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), XFDASHBOARD_TYPE_AUTOPIN_WINDOWS)) 37 | #define XFDASHBOARD_AUTOPIN_WINDOWS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), XFDASHBOARD_TYPE_AUTOPIN_WINDOWS, XfdashboardAutopinWindowsClass)) 38 | 39 | typedef struct _XfdashboardAutopinWindows XfdashboardAutopinWindows; 40 | typedef struct _XfdashboardAutopinWindowsPrivate XfdashboardAutopinWindowsPrivate; 41 | typedef struct _XfdashboardAutopinWindowsClass XfdashboardAutopinWindowsClass; 42 | 43 | struct _XfdashboardAutopinWindows 44 | { 45 | /* Parent instance */ 46 | GObject parent_instance; 47 | 48 | /* Private structure */ 49 | XfdashboardAutopinWindowsPrivate *priv; 50 | }; 51 | 52 | struct _XfdashboardAutopinWindowsClass 53 | { 54 | /*< private >*/ 55 | /* Parent class */ 56 | GObjectClass parent_class; 57 | }; 58 | 59 | /* Public API */ 60 | GType xfdashboard_autopin_windows_get_type(void) G_GNUC_CONST; 61 | 62 | XFDASHBOARD_DECLARE_PLUGIN_TYPE(xfdashboard_autopin_windows); 63 | 64 | XfdashboardAutopinWindows* xfdashboard_autopin_windows_new(void); 65 | 66 | G_END_DECLS 67 | 68 | #endif 69 | -------------------------------------------------------------------------------- /plugins/autopin-windows/plugin.c: -------------------------------------------------------------------------------- 1 | /* 2 | * plugin: Plugin functions for 'autopin-windows' 3 | * 4 | * Copyright 2012-2021 Stephan Haller 5 | * 6 | * This program is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation; either version 2 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program; if not, write to the Free Software 18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 19 | * MA 02110-1301, USA. 20 | * 21 | * 22 | */ 23 | 24 | #ifdef HAVE_CONFIG_H 25 | #include 26 | #endif 27 | 28 | #include 29 | #include 30 | 31 | #include "autopin-windows.h" 32 | 33 | 34 | /* Forward declarations */ 35 | G_MODULE_EXPORT void plugin_init(XfdashboardPlugin *self); 36 | 37 | 38 | /* IMPLEMENTATION: XfdashboardPlugin */ 39 | 40 | static XfdashboardAutopinWindows *autopinWindows=NULL; 41 | 42 | /* Plugin enable function */ 43 | static void plugin_enable(XfdashboardPlugin *self, gpointer inUserData) 44 | { 45 | /* Create instance of hot corner */ 46 | if(G_LIKELY(!autopinWindows)) 47 | { 48 | autopinWindows=xfdashboard_autopin_windows_new(); 49 | } 50 | } 51 | 52 | /* Plugin disable function */ 53 | static void plugin_disable(XfdashboardPlugin *self, gpointer inUserData) 54 | { 55 | /* Destroy instance of hot corner */ 56 | if(G_LIKELY(autopinWindows)) 57 | { 58 | g_object_unref(autopinWindows); 59 | autopinWindows=NULL; 60 | } 61 | } 62 | 63 | /* Plugin initialization function */ 64 | G_MODULE_EXPORT void plugin_init(XfdashboardPlugin *self) 65 | { 66 | /* Set up localization */ 67 | xfce_textdomain(GETTEXT_PACKAGE, PACKAGE_LOCALE_DIR, "UTF-8"); 68 | 69 | /* Set plugin info */ 70 | xfdashboard_plugin_set_info(self, 71 | "name", _("Auto-pin windows"), 72 | "description", _("Pins windows on secondary windows or unpins windows on primary windows automatically"), 73 | "author", "Stephan Haller ", 74 | NULL); 75 | 76 | /* Register GObject types of this plugin */ 77 | XFDASHBOARD_REGISTER_PLUGIN_TYPE(self, xfdashboard_autopin_windows); 78 | 79 | /* Connect plugin action handlers */ 80 | g_signal_connect(self, "enable", G_CALLBACK(plugin_enable), NULL); 81 | g_signal_connect(self, "disable", G_CALLBACK(plugin_disable), NULL); 82 | } 83 | -------------------------------------------------------------------------------- /plugins/clock-view/Makefile.am: -------------------------------------------------------------------------------- 1 | plugindir = $(libdir)/xfdashboard/plugins 2 | PLUGIN_ID = clock-view 3 | 4 | AM_CPPFLAGS = \ 5 | -I$(top_builddir) \ 6 | -I$(top_srcdir) \ 7 | -DG_LOG_DOMAIN=\"xfdashboard-plugin-clock_view\" \ 8 | -DLIBEXECDIR=\"$(libexecdir)\" \ 9 | -DPACKAGE_LOCALE_DIR=\"$(localedir)\" \ 10 | -DPLUGIN_ID=\"$(PLUGIN_ID)\" \ 11 | $(XFDASHBOARD_DEBUG_CFLAGS) 12 | 13 | plugin_LTLIBRARIES = \ 14 | clock-view.la 15 | 16 | clock_view_la_SOURCES = \ 17 | clock-view.c \ 18 | clock-view.h \ 19 | clock-view-settings.c \ 20 | clock-view-settings.h \ 21 | plugin.c 22 | 23 | clock_view_la_CFLAGS = \ 24 | $(LIBXFCE4UTIL_CFLAGS) \ 25 | $(GTK_CFLAGS) \ 26 | $(CLUTTER_CFLAGS) \ 27 | $(GARCON_CFLAGS) \ 28 | $(PLATFORM_CFLAGS) 29 | 30 | clock_view_la_LDFLAGS = \ 31 | -avoid-version \ 32 | -export-dynamic \ 33 | -export-symbols-regex '^plugin_init$$' \ 34 | -no-undefined \ 35 | -module \ 36 | -shared \ 37 | $(PLATFORM_LDFLAGS) 38 | 39 | clock_view_la_LIBADD = \ 40 | $(LIBXFCE4UTIL_LIBS) \ 41 | $(GTK_LIBS) \ 42 | $(CLUTTER_LIBS) \ 43 | $(GARCON_LIBS) \ 44 | $(top_builddir)/libxfdashboard/libxfdashboard.la 45 | 46 | CLEANFILES = \ 47 | $(plugin_DATA) 48 | 49 | EXTRA_DIST = \ 50 | $(plugin_DATA) 51 | 52 | DISTCLEANFILES = \ 53 | $(plugin_DATA) 54 | -------------------------------------------------------------------------------- /plugins/clock-view/clock-view.h: -------------------------------------------------------------------------------- 1 | /* 2 | * clock-view: A view showing a clock 3 | * 4 | * Copyright 2012-2021 Stephan Haller 5 | * 6 | * This program is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation; either version 2 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program; if not, write to the Free Software 18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 19 | * MA 02110-1301, USA. 20 | * 21 | * 22 | */ 23 | 24 | #ifndef __XFDASHBOARD_CLOCK_VIEW__ 25 | #define __XFDASHBOARD_CLOCK_VIEW__ 26 | 27 | #include 28 | 29 | G_BEGIN_DECLS 30 | 31 | #define XFDASHBOARD_TYPE_CLOCK_VIEW (xfdashboard_clock_view_get_type()) 32 | #define XFDASHBOARD_CLOCK_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), XFDASHBOARD_TYPE_CLOCK_VIEW, XfdashboardClockView)) 33 | #define XFDASHBOARD_IS_CLOCK_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), XFDASHBOARD_TYPE_CLOCK_VIEW)) 34 | #define XFDASHBOARD_CLOCK_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), XFDASHBOARD_TYPE_CLOCK_VIEW, XfdashboardClockViewClass)) 35 | #define XFDASHBOARD_IS_CLOCK_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), XFDASHBOARD_TYPE_CLOCK_VIEW)) 36 | #define XFDASHBOARD_CLOCK_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), XFDASHBOARD_TYPE_CLOCK_VIEW, XfdashboardClockViewClass)) 37 | 38 | typedef struct _XfdashboardClockView XfdashboardClockView; 39 | typedef struct _XfdashboardClockViewPrivate XfdashboardClockViewPrivate; 40 | typedef struct _XfdashboardClockViewClass XfdashboardClockViewClass; 41 | 42 | struct _XfdashboardClockView 43 | { 44 | /* Parent instance */ 45 | XfdashboardView parent_instance; 46 | 47 | /* Private structure */ 48 | XfdashboardClockViewPrivate *priv; 49 | }; 50 | 51 | struct _XfdashboardClockViewClass 52 | { 53 | /*< private >*/ 54 | /* Parent class */ 55 | XfdashboardViewClass parent_class; 56 | }; 57 | 58 | /* Public API */ 59 | GType xfdashboard_clock_view_get_type(void) G_GNUC_CONST; 60 | 61 | XFDASHBOARD_DECLARE_PLUGIN_TYPE(xfdashboard_clock_view); 62 | 63 | G_END_DECLS 64 | 65 | #endif 66 | -------------------------------------------------------------------------------- /plugins/example-search-provider/Makefile.am: -------------------------------------------------------------------------------- 1 | CLEANFILES = \ 2 | $(plugin_DATA) 3 | 4 | EXTRA_DIST = \ 5 | Makefile.am.example \ 6 | example-search-provider.c \ 7 | example-search-provider.h \ 8 | plugin.c \ 9 | $(plugin_DATA) 10 | 11 | DISTCLEANFILES = \ 12 | $(plugin_DATA) 13 | -------------------------------------------------------------------------------- /plugins/example-search-provider/Makefile.am.example: -------------------------------------------------------------------------------- 1 | plugindir = $(libdir)/xfdashboard/plugins 2 | PLUGIN_ID = example-search-provider 3 | 4 | AM_CPPFLAGS = \ 5 | -I$(top_builddir) \ 6 | -I$(top_srcdir) \ 7 | -DG_LOG_DOMAIN=\"xfdashboard-plugin-example_search_provider\" \ 8 | -DLIBEXECDIR=\"$(libexecdir)\" \ 9 | -DPACKAGE_LOCALE_DIR=\"$(localedir)\" \ 10 | -DPLUGIN_ID=\"$(PLUGIN_ID)\" \ 11 | $(XFDASHBOARD_DEBUG_CFLAGS) 12 | 13 | plugin_LTLIBRARIES = \ 14 | example-search-provider.la 15 | 16 | example_search_provider_la_SOURCES = \ 17 | example-search-provider.c \ 18 | example-search-provider.h \ 19 | plugin.c 20 | 21 | example_search_provider_la_CFLAGS = \ 22 | $(LIBXFCE4UTIL_CFLAGS) \ 23 | $(GTK_CFLAGS) \ 24 | $(CLUTTER_CFLAGS) \ 25 | $(LIBXFCONF_CFLAGS) \ 26 | $(GARCON_CFLAGS) \ 27 | $(PLATFORM_CFLAGS) 28 | 29 | example_search_provider_la_LDFLAGS = \ 30 | -avoid-version \ 31 | -export-dynamic \ 32 | -export-symbols-regex '^plugin_init$$' \ 33 | -no-undefined \ 34 | -module \ 35 | -shared \ 36 | $(PLATFORM_LDFLAGS) 37 | 38 | example_search_provider_la_LIBADD = \ 39 | $(LIBXFCE4UTIL_LIBS) \ 40 | $(GTK_LIBS) \ 41 | $(CLUTTER_LIBS) \ 42 | $(LIBXFCONF_LIBS) \ 43 | $(GARCON_LIBS) \ 44 | $(top_builddir)/libxfdashboard/libxfdashboard.la 45 | 46 | CLEANFILES = \ 47 | $(plugin_DATA) 48 | 49 | EXTRA_DIST = \ 50 | $(plugin_DATA) 51 | 52 | DISTCLEANFILES = \ 53 | $(plugin_DATA) 54 | -------------------------------------------------------------------------------- /plugins/example-search-provider/example-search-provider.h: -------------------------------------------------------------------------------- 1 | /* 2 | * example-search-provider: An example search provider 3 | * 4 | * Copyright 2012-2021 Stephan Haller 5 | * 6 | * This program is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation; either version 2 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program; if not, write to the Free Software 18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 19 | * MA 02110-1301, USA. 20 | * 21 | * 22 | */ 23 | 24 | #ifndef __XFDASHBOARD_EXAMPLE_SEARCH_PROVIDER__ 25 | #define __XFDASHBOARD_EXAMPLE_SEARCH_PROVIDER__ 26 | 27 | #include 28 | 29 | G_BEGIN_DECLS 30 | 31 | #define XFDASHBOARD_TYPE_EXAMPLE_SEARCH_PROVIDER (xfdashboard_example_search_provider_get_type()) 32 | #define XFDASHBOARD_EXAMPLE_SEARCH_PROVIDER(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), XFDASHBOARD_TYPE_EXAMPLE_SEARCH_PROVIDER, XfdashboardExampleSearchProvider)) 33 | #define XFDASHBOARD_IS_EXAMPLE_SEARCH_PROVIDER(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), XFDASHBOARD_TYPE_EXAMPLE_SEARCH_PROVIDER)) 34 | #define XFDASHBOARD_EXAMPLE_SEARCH_PROVIDER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), XFDASHBOARD_TYPE_EXAMPLE_SEARCH_PROVIDER, XfdashboardExampleSearchProviderClass)) 35 | #define XFDASHBOARD_IS_EXAMPLE_SEARCH_PROVIDER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), XFDASHBOARD_TYPE_EXAMPLE_SEARCH_PROVIDER)) 36 | #define XFDASHBOARD_EXAMPLE_SEARCH_PROVIDER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), XFDASHBOARD_TYPE_EXAMPLE_SEARCH_PROVIDER, XfdashboardExampleSearchProviderClass)) 37 | 38 | typedef struct _XfdashboardExampleSearchProvider XfdashboardExampleSearchProvider; 39 | typedef struct _XfdashboardExampleSearchProviderPrivate XfdashboardExampleSearchProviderPrivate; 40 | typedef struct _XfdashboardExampleSearchProviderClass XfdashboardExampleSearchProviderClass; 41 | 42 | struct _XfdashboardExampleSearchProvider 43 | { 44 | /* Parent instance */ 45 | XfdashboardSearchProvider parent_instance; 46 | 47 | /* Private structure */ 48 | XfdashboardExampleSearchProviderPrivate *priv; 49 | }; 50 | 51 | struct _XfdashboardExampleSearchProviderClass 52 | { 53 | /*< private >*/ 54 | /* Parent class */ 55 | XfdashboardSearchProviderClass parent_class; 56 | }; 57 | 58 | /* Public API */ 59 | GType xfdashboard_example_search_provider_get_type(void) G_GNUC_CONST; 60 | void xfdashboard_example_search_provider_type_register(GTypeModule *inModule); 61 | 62 | XFDASHBOARD_DECLARE_PLUGIN_TYPE(xfdashboard_example_search_provider); 63 | 64 | G_END_DECLS 65 | 66 | #endif 67 | -------------------------------------------------------------------------------- /plugins/example-search-provider/plugin.c: -------------------------------------------------------------------------------- 1 | /* 2 | * plugin: Plugin functions for 'example-search-provider' 3 | * 4 | * Copyright 2012-2021 Stephan Haller 5 | * 6 | * This program is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation; either version 2 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program; if not, write to the Free Software 18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 19 | * MA 02110-1301, USA. 20 | * 21 | * 22 | */ 23 | 24 | #ifdef HAVE_CONFIG_H 25 | #include 26 | #endif 27 | 28 | #include 29 | #include 30 | 31 | #include "example-search-provider.h" 32 | 33 | 34 | /* Forward declarations */ 35 | G_MODULE_EXPORT void plugin_init(XfdashboardPlugin *self); 36 | 37 | 38 | /* IMPLEMENTATION: XfdashboardPlugin */ 39 | 40 | /* Plugin enable function */ 41 | static void plugin_enable(XfdashboardPlugin *self, gpointer inUserData) 42 | { 43 | XfdashboardSearchManager *searchManager; 44 | 45 | /* Register search provider */ 46 | searchManager=xfdashboard_search_manager_get_default(); 47 | 48 | xfdashboard_search_manager_register(searchManager, PLUGIN_ID, XFDASHBOARD_TYPE_EXAMPLE_SEARCH_PROVIDER); 49 | 50 | g_object_unref(searchManager); 51 | } 52 | 53 | /* Plugin disable function */ 54 | static void plugin_disable(XfdashboardPlugin *self, gpointer inUserData) 55 | { 56 | XfdashboardSearchManager *searchManager; 57 | 58 | /* Register search provider */ 59 | searchManager=xfdashboard_search_manager_get_default(); 60 | 61 | xfdashboard_search_manager_unregister(searchManager, PLUGIN_ID); 62 | 63 | g_object_unref(searchManager); 64 | } 65 | 66 | /* Plugin initialization function */ 67 | G_MODULE_EXPORT void plugin_init(XfdashboardPlugin *self) 68 | { 69 | /* Set up localization */ 70 | xfce_textdomain(GETTEXT_PACKAGE, PACKAGE_LOCALE_DIR, "UTF-8"); 71 | 72 | /* Set plugin info */ 73 | xfdashboard_plugin_set_info(self, 74 | "flags", XFDASHBOARD_PLUGIN_FLAG_EARLY_INITIALIZATION, 75 | "name", _("Example search provider"), 76 | "description", _("This is just a useless example search provider plugin"), 77 | "author", "Stephan Haller ", 78 | NULL); 79 | 80 | /* Register GObject types of this plugin */ 81 | XFDASHBOARD_REGISTER_PLUGIN_TYPE(self, xfdashboard_example_search_provider); 82 | 83 | /* Connect plugin action handlers */ 84 | g_signal_connect(self, "enable", G_CALLBACK(plugin_enable), NULL); 85 | g_signal_connect(self, "disable", G_CALLBACK(plugin_disable), NULL); 86 | } 87 | -------------------------------------------------------------------------------- /plugins/gnome-shell-search-provider/Makefile.am: -------------------------------------------------------------------------------- 1 | plugindir = $(libdir)/xfdashboard/plugins 2 | PLUGIN_ID = gnome-shell-search-provider 3 | 4 | AM_CPPFLAGS = \ 5 | -I$(top_builddir) \ 6 | -I$(top_srcdir) \ 7 | -DG_LOG_DOMAIN=\"xfdashboard-plugin-gnome_shell_search_provider\" \ 8 | -DLIBEXECDIR=\"$(libexecdir)\" \ 9 | -DPACKAGE_LOCALE_DIR=\"$(localedir)\" \ 10 | -DPLUGIN_ID=\"$(PLUGIN_ID)\" \ 11 | -DGNOME_SHELL_PROVIDERS_PATH=\"$(prefix)/share/gnome-shell/search-providers\" \ 12 | $(XFDASHBOARD_DEBUG_CFLAGS) 13 | 14 | plugin_LTLIBRARIES = \ 15 | gnome-shell-search-provider.la 16 | 17 | gnome_shell_search_provider_la_SOURCES = \ 18 | gnome-shell-search-provider.c \ 19 | gnome-shell-search-provider.h \ 20 | plugin.c 21 | 22 | gnome_shell_search_provider_la_CFLAGS = \ 23 | $(LIBXFCE4UTIL_CFLAGS) \ 24 | $(GTK_CFLAGS) \ 25 | $(CLUTTER_CFLAGS) \ 26 | $(LIBXFCONF_CFLAGS) \ 27 | $(GARCON_CFLAGS) \ 28 | $(PLATFORM_CFLAGS) 29 | 30 | gnome_shell_search_provider_la_LDFLAGS = \ 31 | -avoid-version \ 32 | -export-dynamic \ 33 | -export-symbols-regex '^plugin_init$$' \ 34 | -no-undefined \ 35 | -module \ 36 | -shared \ 37 | $(PLATFORM_LDFLAGS) 38 | 39 | gnome_shell_search_provider_la_LIBADD = \ 40 | $(LIBXFCE4UTIL_LIBS) \ 41 | $(GTK_LIBS) \ 42 | $(CLUTTER_LIBS) \ 43 | $(LIBXFCONF_LIBS) \ 44 | $(GARCON_LIBS) \ 45 | $(top_builddir)/libxfdashboard/libxfdashboard.la 46 | 47 | CLEANFILES = \ 48 | $(plugin_DATA) 49 | 50 | EXTRA_DIST = \ 51 | $(plugin_DATA) 52 | 53 | DISTCLEANFILES = \ 54 | $(plugin_DATA) 55 | -------------------------------------------------------------------------------- /plugins/gnome-shell-search-provider/gnome-shell-search-provider.h: -------------------------------------------------------------------------------- 1 | /* 2 | * gnome-shell-search-provider: A search provider using GnomeShell 3 | * search providers 4 | * 5 | * Copyright 2012-2021 Stephan Haller 6 | * 7 | * This program is free software; you can redistribute it and/or modify 8 | * it under the terms of the GNU General Public License as published by 9 | * the Free Software Foundation; either version 2 of the License, or 10 | * (at your option) any later version. 11 | * 12 | * This program is distributed in the hope that it will be useful, 13 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | * GNU General Public License for more details. 16 | * 17 | * You should have received a copy of the GNU General Public License 18 | * along with this program; if not, write to the Free Software 19 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 20 | * MA 02110-1301, USA. 21 | * 22 | * 23 | */ 24 | 25 | #ifndef __XFDASHBOARD_GNOME_SHELL_SEARCH_PROVIDER__ 26 | #define __XFDASHBOARD_GNOME_SHELL_SEARCH_PROVIDER__ 27 | 28 | #include 29 | 30 | G_BEGIN_DECLS 31 | 32 | #define XFDASHBOARD_TYPE_GNOME_SHELL_SEARCH_PROVIDER (xfdashboard_gnome_shell_search_provider_get_type()) 33 | #define XFDASHBOARD_GNOME_SHELL_SEARCH_PROVIDER(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), XFDASHBOARD_TYPE_GNOME_SHELL_SEARCH_PROVIDER, XfdashboardGnomeShellSearchProvider)) 34 | #define XFDASHBOARD_IS_GNOME_SHELL_SEARCH_PROVIDER(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), XFDASHBOARD_TYPE_GNOME_SHELL_SEARCH_PROVIDER)) 35 | #define XFDASHBOARD_GNOME_SHELL_SEARCH_PROVIDER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), XFDASHBOARD_TYPE_GNOME_SHELL_SEARCH_PROVIDER, XfdashboardGnomeShellSearchProviderClass)) 36 | #define XFDASHBOARD_IS_GNOME_SHELL_SEARCH_PROVIDER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), XFDASHBOARD_TYPE_GNOME_SHELL_SEARCH_PROVIDER)) 37 | #define XFDASHBOARD_GNOME_SHELL_SEARCH_PROVIDER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), XFDASHBOARD_TYPE_GNOME_SHELL_SEARCH_PROVIDER, XfdashboardGnomeShellSearchProviderClass)) 38 | 39 | typedef struct _XfdashboardGnomeShellSearchProvider XfdashboardGnomeShellSearchProvider; 40 | typedef struct _XfdashboardGnomeShellSearchProviderPrivate XfdashboardGnomeShellSearchProviderPrivate; 41 | typedef struct _XfdashboardGnomeShellSearchProviderClass XfdashboardGnomeShellSearchProviderClass; 42 | 43 | struct _XfdashboardGnomeShellSearchProvider 44 | { 45 | /* Parent instance */ 46 | XfdashboardSearchProvider parent_instance; 47 | 48 | /* Private structure */ 49 | XfdashboardGnomeShellSearchProviderPrivate *priv; 50 | }; 51 | 52 | struct _XfdashboardGnomeShellSearchProviderClass 53 | { 54 | /*< private >*/ 55 | /* Parent class */ 56 | XfdashboardSearchProviderClass parent_class; 57 | }; 58 | 59 | /* Public API */ 60 | GType xfdashboard_gnome_shell_search_provider_get_type(void) G_GNUC_CONST; 61 | void xfdashboard_gnome_shell_search_provider_type_register(GTypeModule *inModule); 62 | 63 | XFDASHBOARD_DECLARE_PLUGIN_TYPE(xfdashboard_gnome_shell_search_provider); 64 | 65 | G_END_DECLS 66 | 67 | #endif 68 | -------------------------------------------------------------------------------- /plugins/hot-corner/Makefile.am: -------------------------------------------------------------------------------- 1 | plugindir = $(libdir)/xfdashboard/plugins 2 | PLUGIN_ID = hot-corner 3 | 4 | AM_CPPFLAGS = \ 5 | -I$(top_builddir) \ 6 | -I$(top_srcdir) \ 7 | -DG_LOG_DOMAIN=\"xfdashboard-plugin-hot_corner\" \ 8 | -DLIBEXECDIR=\"$(libexecdir)\" \ 9 | -DPACKAGE_LOCALE_DIR=\"$(localedir)\" \ 10 | -DPLUGIN_ID=\"$(PLUGIN_ID)\" \ 11 | $(XFDASHBOARD_DEBUG_CFLAGS) 12 | 13 | plugin_LTLIBRARIES = \ 14 | hot-corner.la 15 | 16 | hot_corner_la_SOURCES = \ 17 | hot-corner.c \ 18 | hot-corner.h \ 19 | hot-corner-settings.c \ 20 | hot-corner-settings.h \ 21 | plugin.c 22 | 23 | hot_corner_la_CFLAGS = \ 24 | $(LIBXFCE4UTIL_CFLAGS) \ 25 | $(GTK_CFLAGS) \ 26 | $(CLUTTER_CFLAGS) \ 27 | $(GARCON_CFLAGS) \ 28 | $(PLATFORM_CFLAGS) 29 | 30 | hot_corner_la_LDFLAGS = \ 31 | -avoid-version \ 32 | -export-dynamic \ 33 | -export-symbols-regex '^plugin_init$$' \ 34 | -no-undefined \ 35 | -module \ 36 | -shared \ 37 | $(PLATFORM_LDFLAGS) 38 | 39 | hot_corner_la_LIBADD = \ 40 | $(LIBXFCE4UTIL_LIBS) \ 41 | $(GTK_LIBS) \ 42 | $(CLUTTER_LIBS) \ 43 | $(GARCON_CLIBS) \ 44 | $(top_builddir)/libxfdashboard/libxfdashboard.la 45 | 46 | CLEANFILES = \ 47 | $(plugin_DATA) 48 | 49 | EXTRA_DIST = \ 50 | $(plugin_DATA) 51 | 52 | DISTCLEANFILES = \ 53 | $(plugin_DATA) 54 | -------------------------------------------------------------------------------- /plugins/hot-corner/hot-corner.h: -------------------------------------------------------------------------------- 1 | /* 2 | * hot-corner: Activates application when pointer is move to a corner 3 | * 4 | * Copyright 2012-2021 Stephan Haller 5 | * 6 | * This program is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation; either version 2 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program; if not, write to the Free Software 18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 19 | * MA 02110-1301, USA. 20 | * 21 | * 22 | */ 23 | 24 | #ifndef __XFDASHBOARD_HOT_CORNER__ 25 | #define __XFDASHBOARD_HOT_CORNER__ 26 | 27 | #include 28 | 29 | G_BEGIN_DECLS 30 | 31 | /* Public definitions */ 32 | typedef enum /*< prefix=XFDASHBOARD_HOT_CORNER_ACTIVATION_CORNER >*/ 33 | { 34 | XFDASHBOARD_HOT_CORNER_ACTIVATION_CORNER_TOP_LEFT=0, 35 | XFDASHBOARD_HOT_CORNER_ACTIVATION_CORNER_TOP_RIGHT, 36 | XFDASHBOARD_HOT_CORNER_ACTIVATION_CORNER_BOTTOM_LEFT, 37 | XFDASHBOARD_HOT_CORNER_ACTIVATION_CORNER_BOTTOM_RIGHT, 38 | } XfdashboardHotCornerActivationCorner; 39 | 40 | GType xfdashboard_hot_corner_activation_corner_get_type(void) G_GNUC_CONST; 41 | #define XFDASHBOARD_TYPE_HOT_CORNER_ACTIVATION_CORNER (xfdashboard_hot_corner_activation_corner_get_type()) 42 | 43 | 44 | /* Object declaration */ 45 | #define XFDASHBOARD_TYPE_HOT_CORNER (xfdashboard_hot_corner_get_type()) 46 | #define XFDASHBOARD_HOT_CORNER(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), XFDASHBOARD_TYPE_HOT_CORNER, XfdashboardHotCorner)) 47 | #define XFDASHBOARD_IS_HOT_CORNER(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), XFDASHBOARD_TYPE_HOT_CORNER)) 48 | #define XFDASHBOARD_HOT_CORNER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), XFDASHBOARD_TYPE_HOT_CORNER, XfdashboardHotCornerClass)) 49 | #define XFDASHBOARD_IS_HOT_CORNER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), XFDASHBOARD_TYPE_HOT_CORNER)) 50 | #define XFDASHBOARD_HOT_CORNER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), XFDASHBOARD_TYPE_HOT_CORNER, XfdashboardHotCornerClass)) 51 | 52 | typedef struct _XfdashboardHotCorner XfdashboardHotCorner; 53 | typedef struct _XfdashboardHotCornerPrivate XfdashboardHotCornerPrivate; 54 | typedef struct _XfdashboardHotCornerClass XfdashboardHotCornerClass; 55 | 56 | struct _XfdashboardHotCorner 57 | { 58 | /* Parent instance */ 59 | GObject parent_instance; 60 | 61 | /* Private structure */ 62 | XfdashboardHotCornerPrivate *priv; 63 | }; 64 | 65 | struct _XfdashboardHotCornerClass 66 | { 67 | /*< private >*/ 68 | /* Parent class */ 69 | GObjectClass parent_class; 70 | }; 71 | 72 | /* Public API */ 73 | GType xfdashboard_hot_corner_get_type(void) G_GNUC_CONST; 74 | 75 | XFDASHBOARD_DECLARE_PLUGIN_TYPE(xfdashboard_hot_corner); 76 | 77 | XfdashboardHotCorner* xfdashboard_hot_corner_new(void); 78 | 79 | G_END_DECLS 80 | 81 | #endif 82 | -------------------------------------------------------------------------------- /plugins/middle-click-window-close/Makefile.am: -------------------------------------------------------------------------------- 1 | plugindir = $(libdir)/xfdashboard/plugins 2 | PLUGIN_ID = middle-click-window-close 3 | 4 | AM_CPPFLAGS = \ 5 | -I$(top_builddir) \ 6 | -I$(top_srcdir) \ 7 | -DG_LOG_DOMAIN=\"xfdashboard-plugin-middle_click_window_close\" \ 8 | -DLIBEXECDIR=\"$(libexecdir)\" \ 9 | -DPACKAGE_LOCALE_DIR=\"$(localedir)\" \ 10 | -DPLUGIN_ID=\"$(PLUGIN_ID)\" \ 11 | $(XFDASHBOARD_DEBUG_CFLAGS) 12 | 13 | plugin_LTLIBRARIES = \ 14 | middle-click-window-close.la 15 | 16 | middle_click_window_close_la_SOURCES = \ 17 | middle-click-window-close.c \ 18 | middle-click-window-close.h \ 19 | plugin.c 20 | 21 | middle_click_window_close_la_CFLAGS = \ 22 | $(LIBXFCE4UTIL_CFLAGS) \ 23 | $(GTK_CFLAGS) \ 24 | $(CLUTTER_CFLAGS) \ 25 | $(LIBXFCONF_CFLAGS) \ 26 | $(GARCON_CFLAGS) \ 27 | $(PLATFORM_CFLAGS) 28 | 29 | middle_click_window_close_la_LDFLAGS = \ 30 | -avoid-version \ 31 | -export-dynamic \ 32 | -export-symbols-regex '^plugin_init$$' \ 33 | -no-undefined \ 34 | -module \ 35 | -shared \ 36 | $(PLATFORM_LDFLAGS) 37 | 38 | middle_click_window_close_la_LIBADD = \ 39 | $(LIBXFCE4UTIL_LIBS) \ 40 | $(GTK_LIBS) \ 41 | $(CLUTTER_LIBS) \ 42 | $(LIBXFCONF_LIBS) \ 43 | $(GARCON_CLIBS) \ 44 | $(top_builddir)/libxfdashboard/libxfdashboard.la 45 | 46 | CLEANFILES = \ 47 | $(plugin_DATA) 48 | 49 | EXTRA_DIST = \ 50 | $(plugin_DATA) 51 | 52 | DISTCLEANFILES = \ 53 | $(plugin_DATA) 54 | -------------------------------------------------------------------------------- /plugins/middle-click-window-close/middle-click-window-close.h: -------------------------------------------------------------------------------- 1 | /* 2 | * middle-click-window-close: Closes windows in window by middle-click 3 | * 4 | * Copyright 2012-2021 Stephan Haller 5 | * 6 | * This program is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation; either version 2 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program; if not, write to the Free Software 18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 19 | * MA 02110-1301, USA. 20 | * 21 | * 22 | */ 23 | 24 | #ifndef __XFDASHBOARD_MIDDLE_CLICK_WINDOW_CLOSE__ 25 | #define __XFDASHBOARD_MIDDLE_CLICK_WINDOW_CLOSE__ 26 | 27 | #include 28 | 29 | G_BEGIN_DECLS 30 | 31 | #define XFDASHBOARD_TYPE_MIDDLE_CLICK_WINDOW_CLOSE (xfdashboard_middle_click_window_close_get_type()) 32 | #define XFDASHBOARD_MIDDLE_CLICK_WINDOW_CLOSE(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), XFDASHBOARD_TYPE_MIDDLE_CLICK_WINDOW_CLOSE, XfdashboardMiddleClickWindowClose)) 33 | #define XFDASHBOARD_IS_MIDDLE_CLICK_WINDOW_CLOSE(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), XFDASHBOARD_TYPE_MIDDLE_CLICK_WINDOW_CLOSE)) 34 | #define XFDASHBOARD_MIDDLE_CLICK_WINDOW_CLOSE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), XFDASHBOARD_TYPE_MIDDLE_CLICK_WINDOW_CLOSE, XfdashboardMiddleClickWindowCloseClass)) 35 | #define XFDASHBOARD_IS_MIDDLE_CLICK_WINDOW_CLOSE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), XFDASHBOARD_TYPE_MIDDLE_CLICK_WINDOW_CLOSE)) 36 | #define XFDASHBOARD_MIDDLE_CLICK_WINDOW_CLOSE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), XFDASHBOARD_TYPE_MIDDLE_CLICK_WINDOW_CLOSE, XfdashboardMiddleClickWindowCloseClass)) 37 | 38 | typedef struct _XfdashboardMiddleClickWindowClose XfdashboardMiddleClickWindowClose; 39 | typedef struct _XfdashboardMiddleClickWindowClosePrivate XfdashboardMiddleClickWindowClosePrivate; 40 | typedef struct _XfdashboardMiddleClickWindowCloseClass XfdashboardMiddleClickWindowCloseClass; 41 | 42 | struct _XfdashboardMiddleClickWindowClose 43 | { 44 | /* Parent instance */ 45 | GObject parent_instance; 46 | 47 | /* Private structure */ 48 | XfdashboardMiddleClickWindowClosePrivate *priv; 49 | }; 50 | 51 | struct _XfdashboardMiddleClickWindowCloseClass 52 | { 53 | /*< private >*/ 54 | /* Parent class */ 55 | GObjectClass parent_class; 56 | }; 57 | 58 | /* Public API */ 59 | GType xfdashboard_middle_click_window_close_get_type(void) G_GNUC_CONST; 60 | 61 | XFDASHBOARD_DECLARE_PLUGIN_TYPE(xfdashboard_middle_click_window_close); 62 | 63 | XfdashboardMiddleClickWindowClose* xfdashboard_middle_click_window_close_new(void); 64 | 65 | G_END_DECLS 66 | 67 | #endif 68 | -------------------------------------------------------------------------------- /plugins/middle-click-window-close/plugin.c: -------------------------------------------------------------------------------- 1 | /* 2 | * plugin: Plugin functions for 'middle-click-window-close' 3 | * 4 | * Copyright 2012-2021 Stephan Haller 5 | * 6 | * This program is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation; either version 2 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program; if not, write to the Free Software 18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 19 | * MA 02110-1301, USA. 20 | * 21 | * 22 | */ 23 | 24 | #ifdef HAVE_CONFIG_H 25 | #include 26 | #endif 27 | 28 | #include 29 | #include 30 | 31 | #include "middle-click-window-close.h" 32 | 33 | 34 | /* Forward declarations */ 35 | G_MODULE_EXPORT void plugin_init(XfdashboardPlugin *self); 36 | 37 | 38 | /* IMPLEMENTATION: XfdashboardPlugin */ 39 | 40 | static XfdashboardMiddleClickWindowClose *middleClickWindowClose=NULL; 41 | 42 | /* Plugin enable function */ 43 | static void plugin_enable(XfdashboardPlugin *self, gpointer inUserData) 44 | { 45 | /* Create instance of hot corner */ 46 | if(!middleClickWindowClose) 47 | { 48 | middleClickWindowClose=xfdashboard_middle_click_window_close_new(); 49 | } 50 | } 51 | 52 | /* Plugin disable function */ 53 | static void plugin_disable(XfdashboardPlugin *self, gpointer inUserData) 54 | { 55 | /* Destroy instance of hot corner */ 56 | if(middleClickWindowClose) 57 | { 58 | g_object_unref(middleClickWindowClose); 59 | middleClickWindowClose=NULL; 60 | } 61 | } 62 | 63 | /* Plugin initialization function */ 64 | G_MODULE_EXPORT void plugin_init(XfdashboardPlugin *self) 65 | { 66 | /* Set up localization */ 67 | xfce_textdomain(GETTEXT_PACKAGE, PACKAGE_LOCALE_DIR, "UTF-8"); 68 | 69 | /* Set plugin info */ 70 | xfdashboard_plugin_set_info(self, 71 | "name", _("Middle-click window close"), 72 | "description", _("Closes windows in windows view by middle-click"), 73 | "author", "Stephan Haller ", 74 | NULL); 75 | 76 | /* Register GObject types of this plugin */ 77 | XFDASHBOARD_REGISTER_PLUGIN_TYPE(self, xfdashboard_middle_click_window_close); 78 | 79 | /* Connect plugin action handlers */ 80 | g_signal_connect(self, "enable", G_CALLBACK(plugin_enable), NULL); 81 | g_signal_connect(self, "disable", G_CALLBACK(plugin_disable), NULL); 82 | } 83 | -------------------------------------------------------------------------------- /plugins/recently-used-search-provider/Makefile.am: -------------------------------------------------------------------------------- 1 | plugindir = $(libdir)/xfdashboard/plugins 2 | PLUGIN_ID = recently-used-search-provider 3 | 4 | AM_CPPFLAGS = \ 5 | -I$(top_builddir) \ 6 | -I$(top_srcdir) \ 7 | -DG_LOG_DOMAIN=\"xfdashboard-plugin-recently_used_search_provider\" \ 8 | -DLIBEXECDIR=\"$(libexecdir)\" \ 9 | -DPACKAGE_LOCALE_DIR=\"$(localedir)\" \ 10 | -DPLUGIN_ID=\"$(PLUGIN_ID)\" \ 11 | $(XFDASHBOARD_DEBUG_CFLAGS) 12 | 13 | plugin_LTLIBRARIES = \ 14 | recently-used-search-provider.la 15 | 16 | recently_used_search_provider_la_SOURCES = \ 17 | recently-used-search-provider.c \ 18 | recently-used-search-provider.h \ 19 | plugin.c 20 | 21 | recently_used_search_provider_la_CFLAGS = \ 22 | $(LIBXFCE4UTIL_CFLAGS) \ 23 | $(GTK_CFLAGS) \ 24 | $(CLUTTER_CFLAGS) \ 25 | $(GARCON_CFLAGS) \ 26 | $(PLATFORM_CFLAGS) 27 | 28 | recently_used_search_provider_la_LDFLAGS = \ 29 | -avoid-version \ 30 | -export-dynamic \ 31 | -export-symbols-regex '^plugin_init$$' \ 32 | -no-undefined \ 33 | -module \ 34 | -shared \ 35 | $(PLATFORM_LDFLAGS) 36 | 37 | recently_used_search_provider_la_LIBADD = \ 38 | $(LIBXFCE4UTIL_LIBS) \ 39 | $(GTK_LIBS) \ 40 | $(CLUTTER_LIBS) \ 41 | $(GARCON_LIBS) \ 42 | $(top_builddir)/libxfdashboard/libxfdashboard.la 43 | 44 | CLEANFILES = \ 45 | $(plugin_DATA) 46 | 47 | EXTRA_DIST = \ 48 | $(plugin_DATA) 49 | 50 | DISTCLEANFILES = \ 51 | $(plugin_DATA) 52 | -------------------------------------------------------------------------------- /plugins/recently-used-search-provider/plugin.c: -------------------------------------------------------------------------------- 1 | /* 2 | * plugin: Plugin functions for 'example-search-provider' 3 | * 4 | * Copyright 2012-2021 Stephan Haller 5 | * 6 | * This program is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation; either version 2 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program; if not, write to the Free Software 18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 19 | * MA 02110-1301, USA. 20 | * 21 | * 22 | */ 23 | 24 | #ifdef HAVE_CONFIG_H 25 | #include 26 | #endif 27 | 28 | #include 29 | #include 30 | 31 | #include "recently-used-search-provider.h" 32 | 33 | 34 | /* Forward declarations */ 35 | G_MODULE_EXPORT void plugin_init(XfdashboardPlugin *self); 36 | 37 | 38 | /* IMPLEMENTATION: XfdashboardPlugin */ 39 | 40 | /* Plugin enable function */ 41 | static void plugin_enable(XfdashboardPlugin *self, gpointer inUserData) 42 | { 43 | XfdashboardSearchManager *searchManager; 44 | 45 | /* Register search provider */ 46 | searchManager=xfdashboard_core_get_search_manager(NULL); 47 | 48 | xfdashboard_search_manager_register(searchManager, PLUGIN_ID, XFDASHBOARD_TYPE_RECENTLY_USED_SEARCH_PROVIDER); 49 | 50 | g_object_unref(searchManager); 51 | } 52 | 53 | /* Plugin disable function */ 54 | static void plugin_disable(XfdashboardPlugin *self, gpointer inUserData) 55 | { 56 | XfdashboardSearchManager *searchManager; 57 | 58 | /* Register search provider */ 59 | searchManager=xfdashboard_core_get_search_manager(NULL); 60 | 61 | xfdashboard_search_manager_unregister(searchManager, PLUGIN_ID); 62 | 63 | g_object_unref(searchManager); 64 | } 65 | 66 | /* Plugin initialization function */ 67 | G_MODULE_EXPORT void plugin_init(XfdashboardPlugin *self) 68 | { 69 | /* Set up localization */ 70 | xfce_textdomain(GETTEXT_PACKAGE, PACKAGE_LOCALE_DIR, "UTF-8"); 71 | 72 | /* Set plugin info */ 73 | xfdashboard_plugin_set_info(self, 74 | "flags", XFDASHBOARD_PLUGIN_FLAG_EARLY_INITIALIZATION, 75 | "name", _("Recently used search provider"), 76 | "description", _("A search provider using recently used files as source"), 77 | "author", "Stephan Haller ", 78 | NULL); 79 | 80 | /* Register GObject types of this plugin */ 81 | XFDASHBOARD_REGISTER_PLUGIN_TYPE(self, xfdashboard_recently_used_search_provider); 82 | 83 | /* Connect plugin action handlers */ 84 | g_signal_connect(self, "enable", G_CALLBACK(plugin_enable), NULL); 85 | g_signal_connect(self, "disable", G_CALLBACK(plugin_disable), NULL); 86 | } 87 | -------------------------------------------------------------------------------- /plugins/recently-used-search-provider/recently-used-search-provider.h: -------------------------------------------------------------------------------- 1 | /* 2 | * recently-used-search-provider: A search provider using GTK+ recent 3 | * manager as search source 4 | * 5 | * Copyright 2012-2021 Stephan Haller 6 | * 7 | * This program is free software; you can redistribute it and/or modify 8 | * it under the terms of the GNU General Public License as published by 9 | * the Free Software Foundation; either version 2 of the License, or 10 | * (at your option) any later version. 11 | * 12 | * This program is distributed in the hope that it will be useful, 13 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | * GNU General Public License for more details. 16 | * 17 | * You should have received a copy of the GNU General Public License 18 | * along with this program; if not, write to the Free Software 19 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 20 | * MA 02110-1301, USA. 21 | * 22 | * 23 | */ 24 | 25 | #ifndef __XFDASHBOARD_RECENTLY_USED_SEARCH_PROVIDER__ 26 | #define __XFDASHBOARD_RECENTLY_USED_SEARCH_PROVIDER__ 27 | 28 | #include 29 | 30 | G_BEGIN_DECLS 31 | 32 | #define XFDASHBOARD_TYPE_RECENTLY_USED_SEARCH_PROVIDER (xfdashboard_recently_used_search_provider_get_type()) 33 | #define XFDASHBOARD_RECENTLY_USED_SEARCH_PROVIDER(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), XFDASHBOARD_TYPE_RECENTLY_USED_SEARCH_PROVIDER, XfdashboardRecentlyUsedSearchProvider)) 34 | #define XFDASHBOARD_IS_RECENTLY_USED_SEARCH_PROVIDER(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), XFDASHBOARD_TYPE_RECENTLY_USED_SEARCH_PROVIDER)) 35 | #define XFDASHBOARD_RECENTLY_USED_SEARCH_PROVIDER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), XFDASHBOARD_TYPE_RECENTLY_USED_SEARCH_PROVIDER, XfdashboardRecentlyUsedSearchProviderClass)) 36 | #define XFDASHBOARD_IS_RECENTLY_USED_SEARCH_PROVIDER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), XFDASHBOARD_TYPE_RECENTLY_USED_SEARCH_PROVIDER)) 37 | #define XFDASHBOARD_RECENTLY_USED_SEARCH_PROVIDER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), XFDASHBOARD_TYPE_RECENTLY_USED_SEARCH_PROVIDER, XfdashboardRecentlyUsedSearchProviderClass)) 38 | 39 | typedef struct _XfdashboardRecentlyUsedSearchProvider XfdashboardRecentlyUsedSearchProvider; 40 | typedef struct _XfdashboardRecentlyUsedSearchProviderPrivate XfdashboardRecentlyUsedSearchProviderPrivate; 41 | typedef struct _XfdashboardRecentlyUsedSearchProviderClass XfdashboardRecentlyUsedSearchProviderClass; 42 | 43 | struct _XfdashboardRecentlyUsedSearchProvider 44 | { 45 | /* Parent instance */ 46 | XfdashboardSearchProvider parent_instance; 47 | 48 | /* Private structure */ 49 | XfdashboardRecentlyUsedSearchProviderPrivate *priv; 50 | }; 51 | 52 | struct _XfdashboardRecentlyUsedSearchProviderClass 53 | { 54 | /*< private >*/ 55 | /* Parent class */ 56 | XfdashboardSearchProviderClass parent_class; 57 | }; 58 | 59 | /* Public API */ 60 | GType xfdashboard_recently_used_search_provider_get_type(void) G_GNUC_CONST; 61 | void xfdashboard_recently_used_search_provider_type_register(GTypeModule *inModule); 62 | 63 | XFDASHBOARD_DECLARE_PLUGIN_TYPE(xfdashboard_recently_used_search_provider); 64 | 65 | G_END_DECLS 66 | 67 | #endif 68 | -------------------------------------------------------------------------------- /po/POTFILES.skip: -------------------------------------------------------------------------------- 1 | data/org.xfce.xfdashboard-autostart.desktop.in 2 | data/org.xfce.xfdashboard.desktop.in 3 | data/org.xfce.xfdashboard-settings.desktop.in 4 | data/themes/xfdashboard-auber/xfdashboard.theme.in 5 | data/themes/xfdashboard-blue/xfdashboard.theme.in 6 | data/themes/xfdashboard-dark/xfdashboard.theme.in 7 | data/themes/xfdashboard-mint/xfdashboard.theme.in 8 | data/themes/xfdashboard-moranga/xfdashboard.theme.in 9 | data/themes/xfdashboard-wine/xfdashboard.theme.in 10 | data/themes/xfdashboard/xfdashboard.theme.in 11 | libxfdashboard/enums.c 12 | # https://bugs.launchpad.net/intltool/+bug/1117944 13 | sub/data/themes/xfdashboard-auber/xfdashboard.theme.in 14 | sub/data/themes/xfdashboard-blue/xfdashboard.theme.in 15 | sub/data/themes/xfdashboard-dark/xfdashboard.theme.in 16 | sub/data/themes/xfdashboard-mint/xfdashboard.theme.in 17 | sub/data/themes/xfdashboard-moranga/xfdashboard.theme.in 18 | sub/data/themes/xfdashboard-wine/xfdashboard.theme.in 19 | sub/data/themes/xfdashboard/xfdashboard.theme.in 20 | sub/data/org.xfce.xfdashboard-autostart.desktop.in 21 | sub/data/org.xfce.xfdashboard-settings.desktop.in 22 | sub/data/org.xfce.xfdashboard.desktop.in 23 | -------------------------------------------------------------------------------- /settings/Makefile.am: -------------------------------------------------------------------------------- 1 | AM_CPPFLAGS = \ 2 | -I$(top_srcdir) \ 3 | -DLIBXFDASHBOARD_COMPILATION=1 \ 4 | -DG_LOG_DOMAIN=\"xfdashboard-settings\" \ 5 | -DPACKAGE_DATADIR=\"$(datadir)\" \ 6 | -DPACKAGE_LOCALE_DIR=\"$(localedir)\" \ 7 | -DPACKAGE_LIBDIR=\"$(libdir)\" \ 8 | $(XFDASHBOARD_DEBUG_CFLAGS) \ 9 | $(PLATFORM_CPPFLAGS) 10 | 11 | bin_PROGRAMS = \ 12 | xfdashboard-settings 13 | 14 | xfdashboard_settings_headers = \ 15 | general.h \ 16 | plugins.h \ 17 | settings.h \ 18 | themes.h 19 | 20 | xfdashboard_settings_SOURCES = \ 21 | $(xfdashboard_settings_headers) \ 22 | general.c \ 23 | main.c \ 24 | plugins.c \ 25 | settings.c \ 26 | themes.c 27 | 28 | xfdashboard_settings_CFLAGS = \ 29 | $(GTK_CFLAGS) \ 30 | $(CLUTTER_CFLAGS) \ 31 | $(LIBXFCONF_CFLAGS) \ 32 | $(LIBXFCE4UTIL_CFLAGS) \ 33 | $(LIBXFCE4UI_CFLAGS) \ 34 | $(PLATFORM_CFLAGS) 35 | 36 | xfdashboard_settings_LDADD = \ 37 | $(GTK_LIBS) \ 38 | $(CLUTTER_LIBS) \ 39 | $(LIBXFCONF_LIBS) \ 40 | $(LIBXFCE4UTIL_LIBS) \ 41 | $(LIBXFCE4UI_LIBS) \ 42 | $(LIBM) \ 43 | $(top_builddir)/common/libxfconf-settings.la \ 44 | $(top_builddir)/libxfdashboard/libxfdashboard.la 45 | 46 | xfdashboard_settings_LDFLAGS = \ 47 | -export-dynamic \ 48 | -no-undefined \ 49 | $(PLATFORM_LDFLAGS) 50 | -------------------------------------------------------------------------------- /settings/general.h: -------------------------------------------------------------------------------- 1 | /* 2 | * general: General settings of application 3 | * 4 | * Copyright 2012-2021 Stephan Haller 5 | * 6 | * This program is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation; either version 2 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program; if not, write to the Free Software 18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 19 | * MA 02110-1301, USA. 20 | * 21 | * 22 | */ 23 | 24 | #ifndef __XFDASHBOARD_SETTINGS_GENERAL__ 25 | #define __XFDASHBOARD_SETTINGS_GENERAL__ 26 | 27 | #include 28 | 29 | #include "settings.h" 30 | 31 | G_BEGIN_DECLS 32 | 33 | #define XFDASHBOARD_TYPE_SETTINGS_GENERAL (xfdashboard_settings_general_get_type()) 34 | #define XFDASHBOARD_SETTINGS_GENERAL(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), XFDASHBOARD_TYPE_SETTINGS_GENERAL, XfdashboardSettingsGeneral)) 35 | #define XFDASHBOARD_IS_SETTINGS_GENERAL(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), XFDASHBOARD_TYPE_SETTINGS_GENERAL)) 36 | #define XFDASHBOARD_SETTINGS_GENERAL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), XFDASHBOARD_TYPE_SETTINGS_GENERAL, XfdashboardSettingsGeneralClass)) 37 | #define XFDASHBOARD_IS_SETTINGS_GENERAL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), XFDASHBOARD_TYPE_SETTINGS_GENERAL)) 38 | #define XFDASHBOARD_SETTINGS_GENERAL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), XFDASHBOARD_TYPE_SETTINGS_GENERAL, XfdashboardSettingsGeneralClass)) 39 | 40 | typedef struct _XfdashboardSettingsGeneral XfdashboardSettingsGeneral; 41 | typedef struct _XfdashboardSettingsGeneralClass XfdashboardSettingsGeneralClass; 42 | typedef struct _XfdashboardSettingsGeneralPrivate XfdashboardSettingsGeneralPrivate; 43 | 44 | struct _XfdashboardSettingsGeneral 45 | { 46 | /* Parent instance */ 47 | GObject parent_instance; 48 | 49 | /* Private structure */ 50 | XfdashboardSettingsGeneralPrivate *priv; 51 | }; 52 | 53 | struct _XfdashboardSettingsGeneralClass 54 | { 55 | /*< private >*/ 56 | /* Parent class */ 57 | GObjectClass parent_class; 58 | 59 | /*< public >*/ 60 | /* Virtual functions */ 61 | }; 62 | 63 | /* Public API */ 64 | GType xfdashboard_settings_general_get_type(void) G_GNUC_CONST; 65 | 66 | XfdashboardSettingsGeneral* xfdashboard_settings_general_new(XfdashboardSettingsApp *inApp); 67 | 68 | G_END_DECLS 69 | 70 | #endif /* __XFDASHBOARD_SETTINGS_GENERAL__ */ 71 | -------------------------------------------------------------------------------- /settings/plugins.h: -------------------------------------------------------------------------------- 1 | /* 2 | * plugins: Plugin settings of application 3 | * 4 | * Copyright 2012-2021 Stephan Haller 5 | * 6 | * This program is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation; either version 2 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program; if not, write to the Free Software 18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 19 | * MA 02110-1301, USA. 20 | * 21 | * 22 | */ 23 | 24 | #ifndef __XFDASHBOARD_SETTINGS_PLUGINS__ 25 | #define __XFDASHBOARD_SETTINGS_PLUGINS__ 26 | 27 | #include 28 | 29 | #include "settings.h" 30 | 31 | G_BEGIN_DECLS 32 | 33 | #define XFDASHBOARD_TYPE_SETTINGS_PLUGINS (xfdashboard_settings_plugins_get_type()) 34 | #define XFDASHBOARD_SETTINGS_PLUGINS(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), XFDASHBOARD_TYPE_SETTINGS_PLUGINS, XfdashboardSettingsPlugins)) 35 | #define XFDASHBOARD_IS_SETTINGS_PLUGINS(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), XFDASHBOARD_TYPE_SETTINGS_PLUGINS)) 36 | #define XFDASHBOARD_SETTINGS_PLUGINS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), XFDASHBOARD_TYPE_SETTINGS_PLUGINS, XfdashboardSettingsPluginsClass)) 37 | #define XFDASHBOARD_IS_SETTINGS_PLUGINS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), XFDASHBOARD_TYPE_SETTINGS_PLUGINS)) 38 | #define XFDASHBOARD_SETTINGS_PLUGINS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), XFDASHBOARD_TYPE_SETTINGS_PLUGINS, XfdashboardSettingsPluginsClass)) 39 | 40 | typedef struct _XfdashboardSettingsPlugins XfdashboardSettingsPlugins; 41 | typedef struct _XfdashboardSettingsPluginsClass XfdashboardSettingsPluginsClass; 42 | typedef struct _XfdashboardSettingsPluginsPrivate XfdashboardSettingsPluginsPrivate; 43 | 44 | struct _XfdashboardSettingsPlugins 45 | { 46 | /* Parent instance */ 47 | GObject parent_instance; 48 | 49 | /* Private structure */ 50 | XfdashboardSettingsPluginsPrivate *priv; 51 | }; 52 | 53 | struct _XfdashboardSettingsPluginsClass 54 | { 55 | /*< private >*/ 56 | /* Parent class */ 57 | GObjectClass parent_class; 58 | 59 | /*< public >*/ 60 | /* Virtual functions */ 61 | }; 62 | 63 | /* Public API */ 64 | GType xfdashboard_settings_plugins_get_type(void) G_GNUC_CONST; 65 | 66 | XfdashboardSettingsPlugins* xfdashboard_settings_plugins_new(XfdashboardSettingsApp *inApp); 67 | 68 | G_END_DECLS 69 | 70 | #endif /* __XFDASHBOARD_SETTINGS_PLUGINS__ */ 71 | -------------------------------------------------------------------------------- /settings/settings.h: -------------------------------------------------------------------------------- 1 | /* 2 | * settings: Settings of application 3 | * 4 | * Copyright 2012-2021 Stephan Haller 5 | * 6 | * This program is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation; either version 2 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program; if not, write to the Free Software 18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 19 | * MA 02110-1301, USA. 20 | * 21 | * 22 | */ 23 | 24 | #ifndef __XFDASHBOARD_SETTINGS_APP__ 25 | #define __XFDASHBOARD_SETTINGS_APP__ 26 | 27 | #include 28 | #include 29 | 30 | G_BEGIN_DECLS 31 | 32 | #define XFDASHBOARD_TYPE_SETTINGS_APP (xfdashboard_settings_app_get_type()) 33 | #define XFDASHBOARD_SETTINGS_APP(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), XFDASHBOARD_TYPE_SETTINGS_APP, XfdashboardSettingsApp)) 34 | #define XFDASHBOARD_IS_SETTINGS_APP(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), XFDASHBOARD_TYPE_SETTINGS_APP)) 35 | #define XFDASHBOARD_SETTINGS_APP_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), XFDASHBOARD_TYPE_SETTINGS_APP, XfdashboardSettingsAppClass)) 36 | #define XFDASHBOARD_IS_SETTINGS_APP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), XFDASHBOARD_TYPE_SETTINGS_APP)) 37 | #define XFDASHBOARD_SETTINGS_APP_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), XFDASHBOARD_TYPE_SETTINGS_APP, XfdashboardSettingsAppClass)) 38 | 39 | typedef struct _XfdashboardSettingsApp XfdashboardSettingsApp; 40 | typedef struct _XfdashboardSettingsAppClass XfdashboardSettingsAppClass; 41 | typedef struct _XfdashboardSettingsAppPrivate XfdashboardSettingsAppPrivate; 42 | 43 | struct _XfdashboardSettingsApp 44 | { 45 | /* Parent instance */ 46 | GObject parent_instance; 47 | 48 | /* Private structure */ 49 | XfdashboardSettingsAppPrivate *priv; 50 | }; 51 | 52 | struct _XfdashboardSettingsAppClass 53 | { 54 | /*< private >*/ 55 | /* Parent class */ 56 | GObjectClass parent_class; 57 | 58 | /*< public >*/ 59 | /* Virtual functions */ 60 | }; 61 | 62 | /* Public API */ 63 | GType xfdashboard_settings_app_get_type(void) G_GNUC_CONST; 64 | 65 | XfdashboardSettingsApp* xfdashboard_settings_app_new(void); 66 | 67 | GtkWidget* xfdashboard_settings_app_create_dialog(XfdashboardSettingsApp *self); 68 | GtkWidget* xfdashboard_settings_app_create_plug(XfdashboardSettingsApp *self, Window inSocketID); 69 | 70 | GtkBuilder* xfdashboard_settings_app_get_builder(XfdashboardSettingsApp *self); 71 | XfdashboardSettings* xfdashboard_settings_app_get_settings(XfdashboardSettingsApp *self); 72 | 73 | G_END_DECLS 74 | 75 | #endif /* __XFDASHBOARD_SETTINGS_APP__ */ 76 | -------------------------------------------------------------------------------- /settings/themes.h: -------------------------------------------------------------------------------- 1 | /* 2 | * themes: Theme settings of application 3 | * 4 | * Copyright 2012-2021 Stephan Haller 5 | * 6 | * This program is free software; you can redistribute it and/or modify 7 | * it under the terms of the GNU General Public License as published by 8 | * the Free Software Foundation; either version 2 of the License, or 9 | * (at your option) any later version. 10 | * 11 | * This program is distributed in the hope that it will be useful, 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 | * GNU General Public License for more details. 15 | * 16 | * You should have received a copy of the GNU General Public License 17 | * along with this program; if not, write to the Free Software 18 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 19 | * MA 02110-1301, USA. 20 | * 21 | * 22 | */ 23 | 24 | #ifndef __XFDASHBOARD_SETTINGS_THEMES__ 25 | #define __XFDASHBOARD_SETTINGS_THEMES__ 26 | 27 | #include 28 | 29 | #include "settings.h" 30 | 31 | G_BEGIN_DECLS 32 | 33 | #define XFDASHBOARD_TYPE_SETTINGS_THEMES (xfdashboard_settings_themes_get_type()) 34 | #define XFDASHBOARD_SETTINGS_THEMES(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), XFDASHBOARD_TYPE_SETTINGS_THEMES, XfdashboardSettingsThemes)) 35 | #define XFDASHBOARD_IS_SETTINGS_THEMES(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), XFDASHBOARD_TYPE_SETTINGS_THEMES)) 36 | #define XFDASHBOARD_SETTINGS_THEMES_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), XFDASHBOARD_TYPE_SETTINGS_THEMES, XfdashboardSettingsThemesClass)) 37 | #define XFDASHBOARD_IS_SETTINGS_THEMES_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), XFDASHBOARD_TYPE_SETTINGS_THEMES)) 38 | #define XFDASHBOARD_SETTINGS_THEMES_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), XFDASHBOARD_TYPE_SETTINGS_THEMES, XfdashboardSettingsThemesClass)) 39 | 40 | typedef struct _XfdashboardSettingsThemes XfdashboardSettingsThemes; 41 | typedef struct _XfdashboardSettingsThemesClass XfdashboardSettingsThemesClass; 42 | typedef struct _XfdashboardSettingsThemesPrivate XfdashboardSettingsThemesPrivate; 43 | 44 | struct _XfdashboardSettingsThemes 45 | { 46 | /* Parent instance */ 47 | GObject parent_instance; 48 | 49 | /* Private structure */ 50 | XfdashboardSettingsThemesPrivate *priv; 51 | }; 52 | 53 | struct _XfdashboardSettingsThemesClass 54 | { 55 | /*< private >*/ 56 | /* Parent class */ 57 | GObjectClass parent_class; 58 | 59 | /*< public >*/ 60 | /* Virtual functions */ 61 | }; 62 | 63 | /* Public API */ 64 | GType xfdashboard_settings_themes_get_type(void) G_GNUC_CONST; 65 | 66 | XfdashboardSettingsThemes* xfdashboard_settings_themes_new(XfdashboardSettingsApp *inApp); 67 | 68 | G_END_DECLS 69 | 70 | #endif /* __XFDASHBOARD_SETTINGS_THEMES__ */ 71 | -------------------------------------------------------------------------------- /xfdashboard/Makefile.am: -------------------------------------------------------------------------------- 1 | AM_CPPFLAGS = \ 2 | -I$(top_srcdir) \ 3 | -DLIBXFDASHBOARD_COMPILATION=1 \ 4 | -DG_LOG_DOMAIN=\"xfdashboard\" \ 5 | -DPACKAGE_DATADIR=\"$(datadir)\" \ 6 | -DPACKAGE_LOCALE_DIR=\"$(localedir)\" \ 7 | -DPACKAGE_LIBDIR=\"$(libdir)\" \ 8 | $(XFDASHBOARD_DEBUG_CFLAGS) \ 9 | $(PLATFORM_CPPFLAGS) 10 | 11 | bin_PROGRAMS = \ 12 | xfdashboard 13 | 14 | xfdashboard_headers = \ 15 | application.h 16 | 17 | xfdashboard_SOURCES = \ 18 | $(xfdashboard_headers) \ 19 | application.c \ 20 | main.c 21 | 22 | xfdashboard_CFLAGS = \ 23 | $(CLUTTER_CFLAGS) \ 24 | $(GLIB_CFLAGS) \ 25 | $(LIBXFCONF_CFLAGS) \ 26 | $(GARCON_CFLAGS) \ 27 | $(LIBXFCE4UTIL_CFLAGS) \ 28 | $(LIBXFCE4UI_CFLAGS) \ 29 | $(GTK_CFLAGS) \ 30 | $(PLATFORM_CFLAGS) 31 | 32 | xfdashboard_LDADD = \ 33 | $(CLUTTER_LIBS) \ 34 | $(GLIB_LIBS) \ 35 | $(LIBXFCONF_LIBS) \ 36 | $(GARCON_LIBS) \ 37 | $(LIBXFCE4UTIL_LIBS) \ 38 | $(LIBXFCE4UI_LIBS) \ 39 | $(GTK_LIBS) \ 40 | $(top_builddir)/common/libxfconf-settings.la \ 41 | $(top_builddir)/libxfdashboard/libxfdashboard.la 42 | 43 | xfdashboard_LDFLAGS = \ 44 | $(PLATFORM_LDFLAGS) \ 45 | -export-dynamic \ 46 | -no-undefined 47 | --------------------------------------------------------------------------------