50 Commits
1.8.3 ... 2.2.0

Author SHA1 Message Date
Clement Lefebvre
cd94beb376 2.2.0 2019-06-29 17:24:07 +02:00
Clement Lefebvre
350e3ffc29 l10n: Update POT 2019-06-23 14:24:25 +02:00
Stephen Collins
52ee1591f7 Prevent a warning when closing the window while print preview is open (#315)
The warning was caused by the preview trying to save print settings
after the settings object was cleared. Clearing the settings object
in *_finalize instead of *_dispose fixes the issue.
2019-06-23 14:23:08 +02:00
Leigh Scott
db60af5efb Add minimum required version for xapp (#313)
closes #312
2019-06-23 14:22:46 +02:00
Stephen Collins
dde92eecbf Simplify an if statement. The logic is identical, but easier to read (#314) 2019-06-20 09:29:36 -07:00
Stephen Collins
7bdc217e8c Tab width popup: only select a menu item when the menu is open (#311)
This fixes a gdk window assertion error that occurs every time xed
is opened, as well as causes the correct menu item to actually be
selected as expected (it currently isn't).
2019-06-15 01:21:57 -07:00
Stephen Collins
2520d1c087 Remove deprecated call to gtk_widget_override_background_color (#299)
This was an override that no longer seems necessary and is causing
deprecation warnings.
2019-05-13 00:32:52 -07:00
Stephen Collins
116bfc2ac1 Remove references to deprecated GTK_STOCK_* (#298) 2019-05-13 00:32:34 -07:00
Stephen Collins
1820d0db69 Switch deprecated gtk_icon_info_free to g_object_unref (#301) 2019-05-13 00:23:40 -07:00
Stephen Collins
17062aaa18 Fix stuttering and disappearing of the toolbar when fullscreen (#300)
This fixes an issue where moving the mouse along the top edge of the
screen while fullscreened will cause a leave event to be triggered,
even though the mouse pointer is still inside the event box. This
caused the toolbar to disappear and/or stutter while moving the mouse
along the top edge.
2019-05-13 00:23:03 -07:00
Stephen Collins
aa7dabad39 Search: replace a few functions that were deprecated in Gtk 3.22 (#297)
gtk_source_search_context_forward_finish,
gtk_source_search_context_backward_finish, and
gtk_source_search_context_replace
were replaced with
gtk_source_search_context_forward_finish2,
gtk_source_search_context_backward_finish2, and
gtk_source_search_context_replace2
respectively.
2019-05-08 02:34:06 -07:00
Stephen Collins
15ec9b4e65 Print preview: remove a couple calls to gtk_adjustment_value_changed (#296)
This function is no longer needed as the "value-changed" signal is
automatically emitted whenever the value changes (since Gtk 3.18).
2019-05-08 02:29:29 -07:00
Stephen Collins
612f36cea9 Replace deprecated gdk_cursor_new with gdk_cursor_new_for_display (#295)
Also fix a potential memory leak/segfault in the filebrowser plugin.
2019-05-08 02:17:45 -07:00
Stephen Collins
e7328ad12e print job: replace some deprecated font button functions (#294)
Replaces gtk_font_button_*et_font_name with gtk_font_chooser_*et_font
2019-05-08 02:08:22 -07:00
Clement Lefebvre
172f323b4b l10n: Update POT 2019-05-05 17:33:18 +01:00
Stephen Collins
4044529191 Add toggle comment and toggle comment block actions w/ keybindings (#290) 2019-05-05 10:27:11 +01:00
Stephen Collins
992ca7a3ec print preview: fix logic for forward button sensitivity (#292)
Previously, the logic used to set the sensitivity of the forward
navigation button failed to consider when multiple pages are shown.
This resulted in the forward button being sensitive in some cases,
even if all pages, or the last page were shown. With this commit, it
is now updated properly.

Also, when the rows and columns are changed, the current page is now
changed to the nearest multiple of rows*cols so that the current page
is still shown, but navigating back to the beginning and then forward
again will be consistent.
2019-05-05 10:26:58 +01:00
Stephen Collins
67892da099 Fix some deprecation warnings (#289)
* xed-app.c: replace get_active_window with gtk_application version

This allows us to remove quite a bit of code, some of which uses
deprecated functions, so it also has the benefit of cleaning up the
deprecation warnings a bit.

* Switch a couple uses of gtk_show_uri with gtk_show_uri_on_window

gtk_show_uri is deprecated.

* Taglist plugin: remove call to gtk_tree_view_set_rules_hint

This function is deprecated, and it already defaults to false in
any case, so it wasn't doing anything anyway.

* Deprecations: move all instances of gtk_menu_popup to newer methods

In a couple cases this simplifies the code quite a bit

* Replace deprecated gdk_window_at_pointer with newer method
2019-05-05 10:25:37 +01:00
JosephMcc
2ebff67c9c xed-notebook: Always show the main notebook tabs (#285)
We were only showing the tabs when more than one file was open. When
fullscreen this leaves no indication of the current file having been modified
if there is only one. Instead just set them to show at all times.

Closes: https://github.com/linuxmint/xed/issues/152
2019-05-05 10:21:18 +01:00
JosephMcc
43ee0436d8 xed-window: Fix the tabs/spaces label in the statusbar (#283)
This was broken in the commit that added the new highlight mode selection
dialog. Get it working again.
2019-05-05 10:20:53 +01:00
Stephen Collins
fb0002bdcd Filebrowser: Kill the click policy property with fire (#293)
This is left over code from the gedit days, which we don't use, and
don't use. This also has the added benifit of removing at least 1
deprecation warning.
2019-05-05 10:20:18 +01:00
Stephen Collins
2e3f337e84 print preview: fix layout drawing for 1X2 and 2X1 layouts (#291)
The indices were backwards, which was causing incorrect layout, and
scrolling issues at larger zoom levels.
2019-05-03 16:19:49 +01:00
JosephMcc
d208cae3bc cleanup: Remove an unused Makefile.am (#280)
We build with Meson now so don't need this
2019-03-25 15:35:46 +00:00
JosephMcc
05b68fb5f5 statusbar: Fix the menu button styling (#281)
This was broken in 7ce2a750db (diff-d114482c8758b92b9c56c95d18efe926)
2019-03-25 15:35:26 +00:00
Eli Schwartz
42da8bc289 meson: require itstool command to be available (#266)
This is needed in order to run meson's gnome.yelp() helper when
installing the help data.
2019-02-08 10:19:11 +00:00
Clement Lefebvre
fe1c4f1e38 2.0.2 2018-12-11 14:10:28 +00:00
Clement Lefebvre
c57ad618a1 l10n: Update translations 2018-12-11 14:10:00 +00:00
chingyinwan123
39e08bd3b8 Fix warnings when building xed 2.0.1 (#264)
* Remove unused variables

Fixes the following warnings when building xed:

../plugins/filebrowser/xed-file-browser-plugin.c: In function ‘xed_file_browser_plugin_activate’:
../plugins/filebrowser/xed-file-browser-plugin.c:532:22: warning: unused variable ‘schema’ [-Wunused-variable]
     GSettingsSchema *schema;
                      ^~~~~~
../plugins/filebrowser/xed-file-browser-plugin.c:531:28: warning: unused variable ‘schema_source’ [-Wunused-variable]
     GSettingsSchemaSource *schema_source;
                            ^~~~~~~~~~~~~

* Remove an unused variable

Fixes the following warning when building xed:

../plugins/sort/xed-sort-plugin.c: In function ‘buffer_sort_lines’:
../plugins/sort/xed-sort-plugin.c:168:12: warning: variable ‘last_line’ set but not used [-Wunused-but-set-variable]
     gchar *last_line = NULL;
            ^~~~~~~~~

* Remove an unused variable

Fixes the following warning when building xed:

../plugins/wordcompletion/xed-wordcompletion-plugin.c: In function ‘xed_wordcompletion_view_deactivate’:
../plugins/wordcompletion/xed-wordcompletion-plugin.c:306:34: warning: unused variable ‘provider’ [-Wunused-variable]
     GtkSourceCompletionProvider *provider;
                                  ^~~~~~~~

* Remove an unused variable

Fixes the following warning when building xed:

../plugins/spell/xed-spell-plugin.c: In function ‘update_ui’:
../plugins/spell/xed-spell-plugin.c:495:24: warning: unused variable ‘buffer’ [-Wunused-variable]
         GtkTextBuffer *buffer;
                        ^~~~~~
2018-12-11 11:38:12 +00:00
Michael Webster
b868ebde1c highlight mode window: Make activatable via shortcut (ctrl-shift-H),
focus the search entry by default, and allow Escape to cancel the
dialog from the search entry.

Fixes linuxmint/mint-19.1-beta#18
Fixes linuxmint/mint-19.1-beta#19
Fixes linuxmint/mint-19.1-beta#20
2018-12-09 00:07:15 -05:00
Clement Lefebvre
dc1104c93b Fix non-translated desktop file 2018-12-05 15:18:42 +00:00
Clement Lefebvre
c30f2a988d 2.0.1 2018-11-27 18:33:43 +00:00
Clement Lefebvre
465226e185 l10n: Update translations 2018-11-27 18:33:10 +00:00
Leigh Scott
7220975463 Switch build instructions for meson port. (#263) 2018-11-22 09:39:52 +00:00
Clement Lefebvre
088ec7b031 2.0.0 2018-11-19 11:35:09 +00:00
Clement Lefebvre
f6bc8206ed l10n: Update POT 2018-11-19 11:34:13 +00:00
Clement Lefebvre
0ec63fc00e Fix merge issues
POTFILES.in and xed-window.c required a couple of changes
after the status selector PR was merged.
2018-11-19 11:30:51 +00:00
Clement Lefebvre
7ce2a750db Merge branch 'highlight-selector' of git://github.com/TomaszGasior/xed into TomaszGasior-highlight-selector 2018-11-19 11:16:20 +00:00
Stephen Collins
6e36dc4a5f Port to meson (#258)
* Port to meson

* plugin generation script: swtich to meson, update to python3, switch to libpeas, add some extra options, and cleanup

* clean up some build warnings

* kill xed-bugreport.sh with fire: it isn't used anymore, and probably doesn't even work

* update gzip command to avoid warnings on some systems and move appdata.xml to /usr/share/metainfo/ as that's where it's supposed to go now

* POTFILES.in: fix path that changed in the meson port, which was causing makepot to fail
2018-11-19 11:09:52 +00:00
NikoKrause
39cadaa36e close dialog: use "suggested-action" style class (#261)
... for the default actions (save as, save)
2018-11-15 10:10:25 +00:00
NikoKrause
834266682c Rearrange help entries (xapp consistency) (#256)
also delete duplicate entry
2018-10-10 10:51:56 +01:00
NikoKrause
3523968707 Use icon for keyboard shortcuts help entry (#255) 2018-10-09 11:04:20 +01:00
JosephMcc
494a2e7ce3 xed-window: Indicate if we are currently using spaces or tabs in statusbar (#246)
Other editors like Sublime do this and it's more obvious to the user what they
are currently using. The current label "Tab Width" can be misleading.
Especially since we default to using spaces.
2018-09-24 09:59:07 +01:00
Tomasz Gąsior
0b1133ac44 Kill XedStatusComboBox. It's not used now. 2018-07-22 22:30:19 +02:00
Tomasz Gąsior
986655d6aa Use XedStatusMenuButton instead -ComboBox in statusbar, for consistency. 2018-07-22 20:13:26 +02:00
Tomasz Gąsior
06a20265ea Use popover with highlight selector instead loooong menu in statusbar. 2018-07-22 16:49:55 +02:00
Tomasz Gąsior
66c155a386 Fix compilation warning. 2018-07-22 16:24:59 +02:00
Tomasz Gąsior
fe3fa259fb Import GeditStatusMenuButton. 2018-07-22 16:23:29 +02:00
Tomasz Gąsior
ac9d0a9343 XedWindow cleanup. 2018-07-21 22:56:14 +02:00
Tomasz Gąsior
bc381189c7 Use highlight dialog instead submenu in "View" menu. 2018-07-21 22:34:26 +02:00
Tomasz Gąsior
d4de361efb Import GeditHighlightModeDialog and -Selector from Gedit to Xed.
Just copy&paste and change Gedit -> Xed.
2018-07-21 22:26:37 +02:00
243 changed files with 48190 additions and 47056 deletions

View File

@@ -1,70 +0,0 @@
## Process this file with automake to produce Makefile.in
ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}
SUBDIRS = xed pixmaps po data plugins docs help
distuninstallcheck_listfiles = find . -type f -print
EXTRA_DIST = \
autogen.sh \
ChangeLog \
HACKING \
NEWS \
NEWS.GNOME \
README \
xmldocs.make \
omf.make \
intltool-extract.in \
intltool-merge.in \
intltool-update.in
DISTCLEANFILES = \
intltool-extract \
intltool-merge \
intltool-update
MAINTAINERCLEANFILES = \
aclocal.m4 \
config.guess \
config.h.in \
config.sub \
depcomp \
intltool-extract.in \
intltool-merge.in \
intltool-update.in \
configure \
INSTALL \
gtk-doc.make \
install-sh \
ltmain.sh \
missing \
mkinstalldirs \
omf.make \
py-compile \
xmldocs.make \
m4/gtk-doc.m4 \
m4/intltool.m4 \
m4/libtool.m4 \
m4/ltoptions.m4 \
m4/ltsugar.m4 \
m4/ltversion.m4 \
m4/lt~obsolete.m4 \
`find "$(srcdir)" -type f -name Makefile.in -print`
DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc
dist-hook:
@if test -d "$(srcdir)/.git"; \
then \
echo Creating ChangeLog && \
(GIT_DIR=$(top_srcdir)/.git \
./missing --run git log --stat -M -C --name-status --date=short --no-color) | \
fmt --split-only > ChangeLog.tmp \
&& mv -f ChangeLog.tmp $(top_distdir)/ChangeLog \
|| ( rm -f ChangeLog.tmp ; \
echo Failed to generate ChangeLog >&2 ); \
else \
echo A git clone is required to generate a ChangeLog >&2; \
fi
-include $(top_srcdir)/git.mk

6
README
View File

@@ -35,7 +35,7 @@ Installation
Simple install procedure:
% ./autogen.sh # run the `configure' script
% make # build xed
% meson . build # run the `configure' script
% ninja -v -C build # build xed
[ Become root if necessary ]
% make install # install xed
% ninja install -v -C build # install xed

View File

@@ -1,31 +0,0 @@
#!/bin/sh
# Run this to generate all the initial makefiles, etc.
srcdir=`dirname $0`
test -z "$srcdir" && srcdir=.
PKG_NAME="xed"
(test -f $srcdir/configure.ac) || {
echo -n "**Error**: Directory "\`$srcdir\'" does not look like the"
echo " top-level $PKG_NAME directory"
exit 1
}
which gnome-autogen.sh || {
echo "You need to install gnome-common"
exit 1
}
which yelp-build || {
echo "You need to install yelp-tools"
exit 1
}
REQUIRED_AUTOMAKE_VERSION=1.9
GNOME_DATADIR="$gnome_datadir"
USE_COMMON_DOC_BUILD=yes
. gnome-autogen.sh

View File

@@ -1,239 +0,0 @@
dnl Process this file with autoconf to produce a configure script.
AC_PREREQ(2.63.2)
m4_define(xed_major_version, 1)
m4_define(xed_minor_version, 8)
m4_define(xed_micro_version, 3)
m4_define(xed_version, xed_major_version.xed_minor_version.xed_micro_version)
AC_INIT([xed], [xed_version],
[https://github.com/linuxmint/xed/issues],
[xed], [http://github.com/linuxmint/xed])
AC_CONFIG_HEADERS(config.h)
AC_CONFIG_SRCDIR(xed/xed.c)
AC_CONFIG_MACRO_DIR([m4])
AC_DEFINE(XED_MAJOR_VERSION, xed_major_version, [Xed major version])
AC_SUBST(XED_MAJOR_VERSION, xed_major_version)
AC_DEFINE(XED_MINOR_VERSION, xed_minor_version, [Xed minor version])
AC_SUBST(XED_MINOR_VERSION, xed_minor_version)
AC_DEFINE(XED_MICRO_VERSION, xed_micro_version, [Xed micro version])
AC_SUBST(XED_MICRO_VERSION, xed_micro_version)
AM_INIT_AUTOMAKE([1.10 dist-xz no-dist-gzip -Wno-portability check-news])
AM_MAINTAINER_MODE
m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])])
# Checks for programs
AC_PROG_CC
AC_PROG_INSTALL
AC_PROG_MAKE_SET
AC_SYS_LARGEFILE
PKG_PROG_PKG_CONFIG
# Initialize libtool
LT_PREREQ([2.2.6])
LT_INIT(disable-static)
GTK_DOC_CHECK([1.0],[--flavour=no-tmpl])
AC_CHECK_FUNC(sigaction)
AC_CHECK_LIB(m, floor)
dnl make sure we keep ACLOCAL_FLAGS around for maintainer builds to work
AC_SUBST(ACLOCAL_AMFLAGS, "$ACLOCAL_FLAGS -I m4")
dnl toolbar style for GSettings schemas
TOOLBAR_STYLE="XED_TOOLBAR_SYSTEM"
AC_SUBST(TOOLBAR_STYLE)
dnl ===============================================================
dnl Expanded dirs
dnl ===============================================================
# This macro expands DIR and assigns it to RET.
# If DIR is NONE, then it's replaced by DEFAULT.
# Based on AC_DEFINE_DIR
AC_DEFUN([XED_FULLPATH], [
test "x$prefix" = xNONE && prefix="$ac_default_prefix"
test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
ac_expand=[$]$1
test "x$ac_expand" = xNONE && ac_expand="[$]$2"
ac_expand=`eval echo [$]ac_expand`
$3=`eval echo [$]ac_expand`
])
dnl ================================================================
dnl Gettext stuff.
dnl ================================================================
IT_PROG_INTLTOOL([0.50.1])
GETTEXT_PACKAGE=xed
AC_SUBST([GETTEXT_PACKAGE])
AM_GLIB_GNU_GETTEXT
AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE", [Define to the Gettext package name])
dnl ================================================================
dnl Use gvfs metadata or the old xml file store.
dnl ================================================================
AC_ARG_ENABLE([gvfs-metadata],
AS_HELP_STRING([--enable-gvfs-metadata], [Enable using gvfs to store metadata]),
[enable_gvfs_metadata=$enableval],
[enable_gvfs_metadata=yes])
AM_CONDITIONAL(ENABLE_GVFS_METADATA, test "x$enable_gvfs_metadata" != "xno")
if test "x$enable_gvfs_metadata" != "xno"; then
AC_DEFINE([ENABLE_GVFS_METADATA], [1], [Define to enable using gvfs metadata])
fi
dnl ================================================================
dnl spell plugins checks: enchant and iso-codes
dnl ================================================================
GSPELL_REQUIRED=0.2.5
AC_ARG_ENABLE([spell],
AS_HELP_STRING([--disable-spell],[Disable spell plugin (default: enabled)]),
[enable_spell=$enableval],
[enable_spell=yes])
if test "x$enable_spell" = "xyes" ; then
PKG_CHECK_MODULES(GSPELL, gspell-1 >= $GSPELL_REQUIRED, \
have_gspell=yes, have_gspell=no)
if test "x$have_gspell" = "xno"; then
enable_spell=no
AC_MSG_ERROR([gspell library not found or too old. Use --disable-spell to build without spell plugin.])
fi
fi
AM_CONDITIONAL(ENABLE_SPELL, test x"$enable_spell" = "xyes")
dnl ================================================================
dnl Start of pkg-config checks
dnl ================================================================
PKG_CHECK_MODULES(GMODULE,gmodule-2.0,[GMODULE_ADD="gmodule-2.0"],[GMODULE_ADD=""])
PKG_CHECK_MODULES(XED, [
libxml-2.0 >= 2.5.0
glib-2.0 >= 2.40.0
$GMODULE_ADD
gthread-2.0 >= 2.13.0
gio-2.0 >= 2.40.0
gtk+-3.0 >= 3.19.3
gtksourceview-3.0 >= 3.19.0
libpeas-1.0 >= 1.12.0
libpeas-gtk-1.0 >= 1.12.0
xapp
])
PKG_CHECK_MODULES(X11, [x11])
XED_CFLAGS="$XED_CFLAGS $X11_CFLAGS"
XED_LIBS="$XED_LIBS $X11_LIBS"
AC_SUBST(XED_CFLAGS)
AC_SUBST(XED_LIBS)
# Introspection
GOBJECT_INTROSPECTION_CHECK([0.9.3])
if test "$found_introspection" = "yes"; then
enable_introspection=yes
AC_DEFINE([ENABLE_INTROSPECTION], [1], [Define to enable GObject Introspection])
else
enable_introspection=no
fi
AM_PATH_PYTHON([3.4])
dnl ================================================================
dnl GSettings related settings
dnl ================================================================
GLIB_GSETTINGS
dnl ================================================================
dnl Misc
dnl ================================================================
AC_PATH_PROG(GLIB_COMPILE_RESOURCES, glib-compile-resources)
AC_PATH_PROG(GLIB_GENMARSHAL, glib-genmarshal)
AC_PATH_PROG(GLIB_MKENUMS, glib-mkenums)
GNOME_COMPILE_WARNINGS(yes)
AC_ARG_ENABLE(deprecations,
[AS_HELP_STRING([--enable-deprecations],
[warn about deprecated usages [default=no]])],,
[enable_deprecations=no])
if test "x$enable_deprecations" = "xyes"; then
DISABLE_DEPRECATED_CFLAGS="\
-DG_DISABLE_DEPRECATED \
-DGDK_DISABLE_DEPRECATED \
-DGTK_DISABLE_DEPRECATED \
-DGDK_PIXBUF_DISABLE_DEPRECATED \
-DGNOME_DISABLE_DEPRECATED"
AC_SUBST(DISABLE_DEPRECATED_CFLAGS)
fi
PLUGIN_LIBTOOL_FLAGS="-module -avoid-version"
AC_SUBST(PLUGIN_LIBTOOL_FLAGS)
XED_PLUGINS_DATA_DIR="$datadir/xed/plugins"
AC_SUBST(XED_PLUGINS_DATA_DIR)
XED_PLUGINS_LIBS_DIR="$libdir/xed/plugins"
AC_SUBST(XED_PLUGINS_LIBS_DIR)
YELP_HELP_INIT
AC_CONFIG_FILES([
Makefile
data/xed.desktop.in
data/xed-bugreport.sh
data/xed.pc
data/org.x.editor.gschema.xml
data/Makefile
docs/Makefile
docs/reference/Makefile
xed/Makefile
help/Makefile
pixmaps/Makefile
plugins/Makefile
plugins/docinfo/Makefile
plugins/filebrowser/Makefile
plugins/filebrowser/org.x.editor.plugins.filebrowser.gschema.xml
plugins/modelines/Makefile
plugins/sort/Makefile
plugins/spell/Makefile
plugins/spell/org.x.editor.plugins.spell.gschema.xml
plugins/taglist/Makefile
plugins/textsize/Makefile
plugins/textsize/textsize/Makefile
plugins/time/Makefile
plugins/time/org.x.editor.plugins.time.gschema.xml
plugins/trailsave/Makefile
plugins/wordcompletion/Makefile
plugins/wordcompletion/org.x.editor.plugins.wordcompletion.gschema.xml
po/Makefile.in
])
AC_OUTPUT
echo "
Configuration:
Source code location: ${srcdir}
Compiler: ${CC}
Spell Plugin enabled: $enable_spell
Gvfs metadata enabled: $enable_gvfs_metadata
GObject Introspection: ${enable_introspection}
"

View File

@@ -1,49 +0,0 @@
desktopdir = $(datadir)/applications
desktop_in_files = xed.desktop.in
desktop_DATA = $(desktop_in_files:.desktop.in=.desktop)
@INTLTOOL_DESKTOP_RULE@
@INTLTOOL_XML_RULE@
appdatadir = $(datadir)/appdata
appdata_in_files = xed.appdata.xml.in
appdata_DATA = $(appdata_in_files:.xml.in=.xml)
gsettings_SCHEMAS = org.x.editor.gschema.xml
@GSETTINGS_RULES@
servicedir = $(datadir)/dbus-1/services
service_in_files = org.x.editor.service.in
service_DATA = $(service_in_files:.service.in=.service)
$(service_DATA): $(service_in_files) Makefile
@sed -e "s|\@bindir\@|$(bindir)|" $<> $@
man_MANS = xed.1
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = xed.pc
bugreportdir = $(libexecdir)/xed
bugreport_SCRIPTS = xed-bugreport.sh
EXTRA_DIST = \
$(appdata_in_files) \
$(desktop_in_files) \
$(service_in_files) \
$(man_MANS) \
xed.pc.in \
xed-bugreport.sh.in
CLEANFILES = \
$(desktop_DATA) \
$(service_DATA) \
$(gsettings_SCHEMAS) \
$(pkgconfig_DATA) \
$(appdata_DATA)
-include $(top_srcdir)/git.mk

42
data/meson.build Normal file
View File

@@ -0,0 +1,42 @@
desktop = custom_target(
'desktop',
input: 'xed.desktop.in.in',
output: 'xed.desktop',
command: [intltool_merge, '-d', '-u', po_dir, '@INPUT@', '@OUTPUT@'],
install: true,
install_dir: desktopdir,
)
appdata = custom_target(
'appdata',
input: 'xed.appdata.xml.in',
output: 'xed.appdata.xml',
command: [intltool_merge, '-x', '-u', po_dir, '@INPUT@', '@OUTPUT@'],
install: true,
install_dir: join_paths(datadir, 'metainfo'),
)
schema_conf = configuration_data()
schema_conf.set('GETTEXT_PACKAGE', 'xed')
schema_file = configure_file(
input: 'org.x.editor.gschema.xml.in',
output: 'org.x.editor.gschema.xml',
configuration: schema_conf,
install_dir: join_paths(datadir, 'glib-2.0', 'schemas')
)
service_conf = configuration_data()
service_conf.set('bindir', join_paths(prefix, bindir))
configure_file(
input: 'org.x.editor.service.in',
output: 'org.x.editor.service',
configuration: service_conf,
install_dir: join_paths(datadir, 'dbus-1', 'services')
)
install_data(
'xed.1',
install_dir : join_paths(get_option('prefix'), get_option('mandir'), 'man1')
)

View File

@@ -1,51 +0,0 @@
#!/bin/sh
PKG_CONFIG_MODULES="glib-2.0 gtk+-3.0 gtksourceview-3.0 enchant iso-codes"
echo_padded ()
{
echo -n " - $1 "
N=$(echo -n $1 | wc -m)
while test $N -le 20
do
echo -n " "
N=`expr $N + 1`
done
}
if (which gsettings >/dev/null)
then
echo "GSettings configuration dump:"
gsettings list-recursively org.x.editor
echo
fi
echo "Active plugins:"
gsettings get org.x.editor active-plugins \
| sed -r -e 's/^\[(.*)\]$/\1/' -e 's/, /\n/g' \
| sed -e 's/^.*$/ - \0/'
echo
# Manually installed plugins (in $HOME)
if [ -d $HOME/.config/xed/plugins ]
then
echo "Plugins in \$HOME:"
ls $HOME/.config/xed/plugins/*.xed-plugin \
| sed -r -e 's#.*/([^/]*)\.xed-plugin$# - \1#'
else
echo "No plugin installed in \$HOME."
fi
echo
echo "Module versions:"
if (which pkg-config > /dev/null)
then
for i in $PKG_CONFIG_MODULES
do
echo_padded "`echo -n $i | sed -r -e 's/^(.*)-[0-9]\.[0-9]$/\1/'`"
pkg-config --modversion $i 2>/dev/null || echo
done
else
echo " pkg-config unavailable"
fi
echo

View File

@@ -1,12 +0,0 @@
prefix=@prefix@
exec_prefix=@exec_prefix@
libdir=@libdir@
includedir=@includedir@
pluginsdir=@libdir@/xed/plugins
Name: xed
Description: xed
Requires: gtksourceview-3.0 libpeas-1.0 libpeas-gtk-1.0
Version: @VERSION@
Cflags: -I${includedir}/xed
Libs: -L${libdir}

103
debian/changelog vendored
View File

@@ -1,3 +1,106 @@
xed (2.2.0) tina; urgency=medium
[ Eli Schwartz ]
* meson: require itstool command to be available (#266)
[ JosephMcc ]
* statusbar: Fix the menu button styling (#281)
* cleanup: Remove an unused Makefile.am (#280)
[ Stephen Collins ]
* print preview: fix layout drawing for 1X2 and 2X1 layouts (#291)
* Filebrowser: Kill the click policy property with fire (#293)
[ JosephMcc ]
* xed-window: Fix the tabs/spaces label in the statusbar (#283)
* xed-notebook: Always show the main notebook tabs (#285)
[ Stephen Collins ]
* Fix some deprecation warnings (#289)
* print preview: fix logic for forward button sensitivity (#292)
* Add toggle comment and toggle comment block actions w/ keybindings (#290)
[ Clement Lefebvre ]
* l10n: Update POT
[ Stephen Collins ]
* print job: replace some deprecated font button functions (#294)
* Replace deprecated gdk_cursor_new with gdk_cursor_new_for_display (#295)
* Print preview: remove a couple calls to gtk_adjustment_value_changed (#296)
* Search: replace a few functions that were deprecated in Gtk 3.22 (#297)
* Fix stuttering and disappearing of the toolbar when fullscreen (#300)
* Switch deprecated gtk_icon_info_free to g_object_unref (#301)
* Remove references to deprecated GTK_STOCK_* (#298)
* Remove deprecated call to gtk_widget_override_background_color (#299)
* Tab width popup: only select a menu item when the menu is open (#311)
* Simplify an if statement. The logic is identical, but easier to read (#314)
[ Leigh Scott ]
* Add minimum required version for xapp (#313)
[ Stephen Collins ]
* Prevent a warning when closing the window while print preview is open (#315)
[ Clement Lefebvre ]
* l10n: Update POT
-- Clement Lefebvre <root@linuxmint.com> Sat, 29 Jun 2019 17:23:48 +0200
xed (2.0.2) tessa; urgency=medium
[ Clement Lefebvre ]
* Fix non-translated desktop file
[ Michael Webster ]
* highlight mode window: Make activatable via shortcut (ctrl-shift-H), focus the search entry by default, and allow Escape to cancel the dialog from the search entry.
[ chingyinwan123 ]
* Fix warnings when building xed 2.0.1 (#264)
[ Clement Lefebvre ]
* l10n: Update translations
-- Clement Lefebvre <root@linuxmint.com> Tue, 11 Dec 2018 14:10:08 +0000
xed (2.0.1) tessa; urgency=medium
[ Leigh Scott ]
* Switch build instructions for meson port. (#263)
[ Clement Lefebvre ]
* l10n: Update translations
-- Clement Lefebvre <root@linuxmint.com> Tue, 27 Nov 2018 18:33:21 +0000
xed (2.0.0) tessa; urgency=medium
[ Tomasz Gąsior ]
* Import GeditHighlightModeDialog and -Selector from Gedit to Xed.
* Use highlight dialog instead submenu in "View" menu.
* XedWindow cleanup.
* Import GeditStatusMenuButton.
* Fix compilation warning.
* Use popover with highlight selector instead loooong menu in statusbar.
* Use XedStatusMenuButton instead -ComboBox in statusbar, for consistency.
* Kill XedStatusComboBox. It's not used now.
[ JosephMcc ]
* xed-window: Indicate if we are currently using spaces or tabs in statusbar (#246)
[ NikoKrause ]
* Use icon for keyboard shortcuts help entry (#255)
* Rearrange help entries (xapp consistency) (#256)
* close dialog: use "suggested-action" style class (#261)
[ Stephen Collins ]
* Port to meson (#258)
[ Clement Lefebvre ]
* Fix merge issues
* l10n: Update POT
-- Clement Lefebvre <root@linuxmint.com> Mon, 19 Nov 2018 11:34:46 +0000
xed (1.8.3) tara; urgency=medium
[ Michael Webster ]

1
debian/clean vendored Normal file
View File

@@ -0,0 +1 @@
debian/build/

4
debian/control vendored
View File

@@ -2,8 +2,7 @@ Source: xed
Section: x11
Priority: optional
Maintainer: Linux Mint <root@linuxmint.com>
Build-Depends: autotools-dev,
debhelper (>= 9),
Build-Depends: debhelper (>= 9),
gobject-introspection,
gtk-doc-tools,
intltool,
@@ -21,6 +20,7 @@ Build-Depends: autotools-dev,
python3,
python3-gi,
yelp-tools,
meson
Standards-Version: 3.9.6
Package: xed

25
debian/rules vendored
View File

@@ -5,27 +5,28 @@ DHFLAGS=--parallel
%:
dh $@ $(DHFLAGS) --with gir
override_dh_install:
rm -rfv debian/tmp/usr/lib/*/xed/plugins/*.la
rm -rfv debian/tmp/usr/lib/*/xed/*.la
dh_install --fail-missing
override_dh_auto_configure:
# upstream tarball is without configure. autogen.sh will create it
NOCONFIGURE=1 ./autogen.sh
dh_auto_configure $(DHFLAGS) -- \
--enable-silent-rules \
--libexecdir=/usr/lib/ \
--enable-gtk-doc
meson debian/build \
--prefix=/usr \
--buildtype=plain \
-D docs=true \
-D deprecated_warnings=false
override_dh_installchangelogs:
dh_installchangelogs NEWS
override_dh_auto_test:
DEB_BUILD_OPTIONS=nocheck dh_auto_test
ninja -C debian/build test
override_dh_strip:
dh_strip --dbg-package=xed-dbg
get-orig-source:
uscan --noconf --force-download --rename --download-current-version --destdir=..
override_dh_auto_install:
DESTDIR=${CURDIR}/debian/tmp \
ninja -C debian/build install
override_dh_auto_build:
ninja -C debian/build

View File

@@ -1,4 +1,4 @@
usr/share/appdata
usr/share/metainfo
usr/share/xed/plugins
usr/share/glib-2.0
usr/share/help

1
debian/xed.install vendored
View File

@@ -1,6 +1,5 @@
usr/bin/xed
usr/lib/*/xed/girepository-1.0/
usr/lib/xed/xed-bugreport.sh
usr/lib/*/xed/plugins/
usr/lib/*/xed/*.so
usr/share/applications/xed.desktop

View File

@@ -1,5 +0,0 @@
SUBDIRS = reference
EXTRA_DIST = class-diagram.dia
-include $(top_srcdir)/git.mk

View File

@@ -1,74 +0,0 @@
## Process this file with automake to produce Makefile.in
# see /gtk-doc/examples/Makefile.am
# We require automake 1.6 at least.
AUTOMAKE_OPTIONS = 1.6
# The name of the module, e.g. 'glib'.
DOC_MODULE = xed
# The top-level XML file (SGML in the past).
DOC_MAIN_SGML_FILE = xed-docs.xml
# The directory containing the source code. Relative to $(srcdir).
DOC_SOURCE_DIR = ../../xed
# Extra options to supply to gtkdoc-scan.
# e.g. SCAN_OPTIONS = --deprecated-guards="GTK_DISABLE_DEPRECATED"
SCAN_OPTIONS = --rebuild-types
# Extra options to supply to gtkdoc-mkdb.
MKDB_OPTIONS = --xml-mode --output-format=xml
# Used for dependencies. The docs will be rebuilt if any of these change.
HFILE_GLOB = $(top_srcdir)/xed/*.h
CFILE_GLOB = $(top_srcdir)/xed/*.c
# Header files to ignore when scanning (These are internal to xed).
IGNORE_HFILES= \
xed-close-confirmation-dialog.h \
xed-dirs.h \
xed-commands.h \
xed-documents-panel.h \
xed-io-error-info-bar.h \
xed-languages-manager.h \
xed-plugins-engine.h \
xed-session.h \
xed-ui.h \
xed-window-private.h \
xed-output-window.h \
xed-encodings-dialog.h \
xed-open-location-dialog.h \
xed-page-setup-dialog.h \
xed-preferences-dialog.h \
xed-search-dialog.h \
xed-marshal.h \
xed-enum-types.h
# Images to copy into HTML directory.
HTML_IMAGES =
# Extra SGML files that are included by $(DOC_MAIN_SGML_FILE).
content_files =
# CFLAGS and LDFLAGS for compiling gtkdoc-scangobj with your library.
# Only needed if you are using gtkdoc-scangobj to dynamically query widget
# signals and properties.
GTKDOC_CFLAGS = \
-I$(top_srcdir)/xed \
-I$(top_builddir)/xed \
-I$(top_srcdir) \
-I$(top_builddir) \
$(XED_CFLAGS)
GTKDOC_LIBS = \
$(top_builddir)/xed/libxed.la \
$(XED_LIBS)
MAINTAINERCLEANFILES = xed.types
# This includes the standard gtk-doc make rules, copied by gtkdocize.
include $(top_srcdir)/gtk-doc.make
-include $(top_srcdir)/git.mk

View File

@@ -0,0 +1,36 @@
docs_ignore_h = [
'xed-close-confirmation-dialog.h',
'xed-dirs.h',
'xed-commands.h',
'xed-documents-panel.h',
'xed-io-error-info-bar.h',
'xed-languages-manager.h',
'xed-plugins-engine.h',
'xed-session.h',
'xed-ui.h',
'xed-window-private.h',
'xed-output-window.h',
'xed-encodings-dialog.h',
'xed-open-location-dialog.h',
'xed-page-setup-dialog.h',
'xed-preferences-dialog.h',
'xed-search-dialog.h',
'xed-marshal.h',
'xed-enum-types.h'
]
gnome.gtkdoc(
'xed',
mode: 'xml',
install: true,
main_xml: 'xed-docs.xml',
gobject_typesfile: 'xed.types',
src_dir: [
join_paths(meson.source_root(), 'xed'),
join_paths(meson.build_root(), 'xed'),
],
ignore_headers: docs_ignore_h,
dependencies: libxed_dep,
scan_args: ['--rebuild-types'],
mkdb_args: ['--xml-mode', '--output-format=xml'],
)

View File

@@ -458,8 +458,6 @@ xed_help_display
GBOOLEAN_TO_POINTER
GPOINTER_TO_BOOLEAN
IS_VALID_BOOLEAN
xed_utils_menu_position_under_widget
xed_utils_menu_position_under_tree_view
xed_gtk_button_new_with_stock_icon
xed_dialog_add_button
xed_utils_escape_underscores
@@ -474,8 +472,6 @@ xed_warning
xed_utils_make_valid_utf8
xed_utils_uri_get_dirname
xed_utils_replace_home_dir_with_tilde
xed_utils_get_current_workspace
xed_utils_get_window_workspace
xed_utils_activate_url
xed_utils_is_valid_uri
xed_utils_get_glade_widgets

23
help/LINGUAS Normal file
View File

@@ -0,0 +1,23 @@
ar
bg
ca
cs
da
de
el
es
fi
fr
hu
it
ja
ko
oc
pt_BR
ru
sv
th
uk
zh_CN
zh_HK
zh_TW

View File

@@ -1,16 +0,0 @@
@YELP_HELP_RULES@
HELP_ID = xed
HELP_FILES = index.docbook legal.xml
HELP_MEDIA = \
figures/xed_format_bold.png \
figures/xed_format_italic.png \
figures/xed_format_strikethrough.png \
figures/xed_format_underline.png \
figures/xed_recent_files_menu_icon.png \
figures/xed_window.png
HELP_LINGUAS = ar bg ca cs da de el es fi fr hu it ja ko oc pt_BR ru sv th uk zh_CN zh_HK zh_TW
-include $(top_srcdir)/git.mk

20
help/meson.build Normal file
View File

@@ -0,0 +1,20 @@
help_sources = [
'index.docbook',
'legal.xml'
]
help_media = [
'figures/xed_format_bold.png',
'figures/xed_format_italic.png',
'figures/xed_format_strikethrough.png',
'figures/xed_format_underline.png',
'figures/xed_recent_files_menu_icon.png',
'figures/xed_window.png'
]
gnome.yelp(
meson.project_name(),
sources: help_sources,
media: help_media,
symlink_media: false
)

104
meson.build Normal file
View File

@@ -0,0 +1,104 @@
project('xed', 'c', version : '2.2.0')
gnome = import('gnome')
i18n = import('i18n')
pkgconfig = import('pkgconfig')
version = meson.project_version()
xed_conf = configuration_data()
xed_conf.set_quoted('VERSION', version)
xed_conf.set_quoted('GETTEXT_PACKAGE', 'xed')
# directories
prefix = get_option('prefix')
bindir = get_option('bindir')
datadir = get_option('datadir')
libdir = get_option('libdir')
includedir = get_option('includedir')
libexecdir = get_option('libexecdir')
desktopdir = join_paths(datadir, 'applications')
schema_dir = join_paths(datadir, 'glib-2.0', 'schemas')
po_dir = join_paths(meson.source_root(), 'po')
# dependencies
libxml = dependency('libxml-2.0', version: '>= 2.5.0')
glib = dependency('glib-2.0', version: '>= 2.40.0')
gthread = dependency('gthread-2.0', version: '>= 2.13.0')
gio = dependency('gio-2.0', version: '>= 2.40.0')
gtk = dependency('gtk+-3.0', version: '>= 3.19.3')
gtksourceview = dependency('gtksourceview-3.0', version: '>= 3.19.0')
libpeas = dependency('libpeas-1.0', version: '>= 1.12.0')
libpeas_gtk = dependency('libpeas-gtk-1.0', version: '>= 1.12.0')
gir_dep = dependency('gobject-introspection-1.0', version: '>= 0.6.7', required: false)
gmodule = dependency('gmodule-2.0')
xapp = dependency('xapp', version: '>= 1.4.0')
X11 = dependency('x11')
pango = dependency('pango')
if gir_dep.found()
xed_conf.set('ENABLE_INTROSPECTION', 1)
endif
enable_spell = get_option('enable_spell')
if enable_spell
gspell = dependency('gspell-1', version: '>= 0.2.5')
endif
if get_option('enable_gvfs_metadata')
xed_conf.set('ENABLE_GVFS_METADATA', true)
endif
# on some systems we need to find the math lib to make sure it builds
cc = meson.get_compiler('c')
math = cc.find_library('m', required: false)
intltool_merge = find_program('intltool-merge')
itstool = find_program('itstool')
# generate config.h
config_h_file = configure_file(
output : 'config.h',
configuration : xed_conf
)
config_h = declare_dependency(
sources: config_h_file
)
include_dirs = include_directories('.', 'xed')
# compiler flags
add_global_arguments('-DDATADIR="@0@"'.format(join_paths(prefix, datadir)), language: 'c')
add_global_arguments('-DLIBDIR="@0@"'.format(join_paths(prefix, libdir)), language: 'c')
# remove this later or add as build option
if not get_option('deprecated_warnings')
add_global_arguments([
'-Wno-deprecated-declarations',
'-Wno-deprecated',
'-Wno-declaration-after-statement',
],
language: 'c',
)
endif
subdir('xed')
subdir('pixmaps')
subdir('po')
subdir('data')
subdir('plugins')
subdir('help')
if get_option('docs')
subdir('docs/reference')
endif
message('prefix = @0@'.format(prefix))
message('bindir = @0@'.format(bindir))
message('datadir = @0@'.format(datadir))
message('libdir = @0@'.format(libdir))
message('includedir = @0@'.format(includedir))
message('libexecdir = @0@'.format(libexecdir))
message('desktopdir = @0@'.format(desktopdir))
message('schema_dir = @0@'.format(schema_dir))

23
meson_options.txt Normal file
View File

@@ -0,0 +1,23 @@
option(
'enable_spell',
type : 'boolean',
value : true,
description : 'enable gspell'
)
option(
'enable_gvfs_metadata',
type : 'boolean',
value : true,
description : 'enable gvfs metadata'
)
option('docs',
type: 'boolean',
value: false,
description: 'Build the API references (requires gtk-doc)'
)
option(
'deprecated_warnings',
type : 'boolean',
value : false,
description: 'Show build warnings for deprecations'
)

View File

@@ -1,8 +0,0 @@
icondir = $(datadir)/xed/icons
icon_DATA = xed-plugin.png
EXTRA_DIST = \
$(icon_DATA) \
xed.ico
-include $(top_srcdir)/git.mk

4
pixmaps/meson.build Normal file
View File

@@ -0,0 +1,4 @@
install_data(
'xed-plugin.png',
install_dir: join_paths(datadir, 'xed', 'icons')
)

View File

@@ -1,28 +0,0 @@
DIST_SUBDIRS = \
docinfo \
filebrowser \
modelines \
sort \
spell \
taglist \
textsize \
time \
trailsave \
wordcompletion
SUBDIRS = \
docinfo \
filebrowser \
modelines \
sort \
taglist \
textsize \
time \
trailsave \
wordcompletion
if ENABLE_SPELL
SUBDIRS += spell
endif
-include $(top_srcdir)/git.mk

View File

@@ -1,34 +0,0 @@
# docinfo plugin
plugindir = $(XED_PLUGINS_LIBS_DIR)
AM_CPPFLAGS = \
-I$(top_srcdir) \
$(XED_CFLAGS) \
$(WARN_CFLAGS) \
$(DISABLE_DEPRECATED_CFLAGS)
plugin_LTLIBRARIES = libdocinfo.la
libdocinfo_la_SOURCES = \
xed-docinfo-plugin.h \
xed-docinfo-plugin.c
libdocinfo_la_LDFLAGS = $(PLUGIN_LIBTOOL_FLAGS)
libdocinfo_la_LIBADD = $(XED_LIBS)
uidir = $(XED_PLUGINS_DATA_DIR)/docinfo
ui_DATA = docinfo.ui
plugin_in_files = docinfo.plugin.desktop.in
%.plugin: %.plugin.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*po) ; $(INTLTOOL_MERGE) $(top_srcdir)/po $< $@ -d -u -c $(top_builddir)/po/.intltool-merge-cache
plugin_DATA = $(plugin_in_files:.plugin.desktop.in=.plugin)
EXTRA_DIST = $(ui_DATA) $(plugin_in_files)
CLEANFILES = $(plugin_DATA)
DISTCLEANFILES = $(plugin_DATA)
-include $(top_srcdir)/git.mk

View File

@@ -0,0 +1,37 @@
docinfo_sources = [
'xed-docinfo-plugin.h',
'xed-docinfo-plugin.c'
]
docinfo_deps = [
config_h,
glib,
gmodule,
gtksourceview,
libpeas,
pango
]
library('docinfo',
docinfo_sources,
dependencies: docinfo_deps,
include_directories: include_dirs,
link_with: libxed,
install_rpath: join_paths(prefix, libdir, 'xed'),
install: true,
install_dir: join_paths(libdir, 'xed', 'plugins')
)
install_data(
'docinfo.ui',
install_dir: join_paths(pluginsdatadir, 'docinfo')
)
docinfo_desktop = custom_target(
'docinfo_desktop',
input: 'docinfo.plugin.desktop.in',
output: 'docinfo.plugin',
command: [intltool_merge, '-d', '-u', po_dir, '@INPUT@', '@OUTPUT@'],
install: true,
install_dir: pluginslibdir,
)

View File

@@ -19,14 +19,8 @@
*
*/
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif
#include "xed-docinfo-plugin.h"
#include <string.h> /* For strlen (...) */
#include <glib/gi18n.h>
#include <pango/pango-break.h>
#include <gmodule.h>
@@ -36,6 +30,8 @@
#include <xed/xed-debug.h>
#include <xed/xed-utils.h>
#include "xed-docinfo-plugin.h"
#define MENU_PATH "/MenuBar/ToolsMenu/ToolsOps_2"
struct _XedDocInfoPluginPrivate

View File

@@ -1,94 +0,0 @@
# filebrowser
plugindir = $(XED_PLUGINS_LIBS_DIR)
AM_CPPFLAGS = \
-I$(top_srcdir) \
$(XED_CFLAGS) \
$(WARN_CFLAGS) \
$(DISABLE_DEPRECATED_CFLAGS)
BUILT_SOURCES = \
xed-file-browser-enum-types.h \
xed-file-browser-enum-types.c \
xed-file-browser-marshal.h \
xed-file-browser-marshal.c
plugin_LTLIBRARIES = libfilebrowser.la
NOINST_H_FILES = \
xed-file-bookmarks-store.h \
xed-file-browser-store.h \
xed-file-browser-view.h \
xed-file-browser-widget.h \
xed-file-browser-error.h \
xed-file-browser-utils.h \
xed-file-browser-plugin.h \
xed-file-browser-messages.h
libfilebrowser_la_SOURCES = \
$(BUILT_SOURCES) \
xed-file-bookmarks-store.c \
xed-file-browser-store.c \
xed-file-browser-view.c \
xed-file-browser-widget.c \
xed-file-browser-utils.c \
xed-file-browser-plugin.c \
xed-file-browser-messages.c \
$(NOINST_H_FILES)
libfilebrowser_la_LDFLAGS = $(PLUGIN_LIBTOOL_FLAGS)
libfilebrowser_la_LIBADD = $(XED_LIBS)
# UI files (if you use ui for your plugin, list those files here)
uidir = $(XED_PLUGINS_DATA_DIR)/filebrowser
ui_DATA = xed-file-browser-widget-ui.xml
plugin_in_files = filebrowser.plugin.desktop.in
%.plugin: %.plugin.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*po) ; $(INTLTOOL_MERGE) $(top_srcdir)/po $< $@ -d -u -c $(top_builddir)/po/.intltool-merge-cache
xed-file-browser-enum-types.h: xed-file-browser-enum-types.h.template $(NOINST_H_FILES) $(GLIB_MKENUMS)
(cd $(srcdir) && $(GLIB_MKENUMS) --template xed-file-browser-enum-types.h.template $(NOINST_H_FILES)) > $@
xed-file-browser-enum-types.c: xed-file-browser-enum-types.c.template xed-file-browser-enum-register.c.template $(NOINST_H_FILES) $(GLIB_MKENUMS)
$(AM_V_GEN) (cd $(srcdir) && \
$(GLIB_MKENUMS) --template xed-file-browser-enum-types.c.template $(NOINST_H_FILES) && \
$(GLIB_MKENUMS) --template xed-file-browser-enum-register.c.template $(NOINST_H_FILES)) > $@
xed-file-browser-marshal.h: xed-file-browser-marshal.list $(GLIB_GENMARSHAL)
$(AM_V_GEN) $(GLIB_GENMARSHAL) $< --header --prefix=xed_file_browser_marshal > $@
xed-file-browser-marshal.c: xed-file-browser-marshal.list $(GLIB_GENMARSHAL)
$(AM_V_GEN) echo "#include \"xed-file-browser-marshal.h\"" > $@ && \
$(GLIB_GENMARSHAL) $< --body --prefix=xed_file_browser_marshal >> $@
plugin_DATA = $(plugin_in_files:.plugin.desktop.in=.plugin)
@INTLTOOL_XML_NOMERGE_RULE@
filebrowser_gschema_in = org.x.editor.plugins.filebrowser.gschema.xml.in
gsettings_SCHEMAS = $(filebrowser_gschema_in:.xml.in=.xml)
@GSETTINGS_RULES@
EXTRA_DIST = \
$(ui_DATA) \
$(plugin_in_files) \
$(filebrowser_gschema_in) \
xed-file-browser-enum-types.h.template \
xed-file-browser-enum-types.c.template \
xed-file-browser-enum-register.c.template \
xed-file-browser-marshal.list
CLEANFILES = \
$(plugin_DATA) \
$(gsettings_SCHEMAS_in) \
$(gsettings_SCHEMAS) \
$(BUILT_SOURCES)
DISTCLEANFILES = \
$(plugin_DATA) \
$(gsettings_SCHEMAS_in) \
$(gsettings_SCHEMAS) \
$(BUILT_SOURCES)
-include $(top_srcdir)/git.mk

View File

@@ -0,0 +1,73 @@
filebrowser_headers = [
'xed-file-bookmarks-store.h',
'xed-file-browser-store.h',
'xed-file-browser-view.h',
'xed-file-browser-widget.h',
'xed-file-browser-error.h',
'xed-file-browser-utils.h',
'xed-file-browser-plugin.h',
'xed-file-browser-messages.h'
]
filebrowser_lib_sources = [
'xed-file-bookmarks-store.c',
'xed-file-browser-store.c',
'xed-file-browser-view.c',
'xed-file-browser-widget.c',
'xed-file-browser-utils.c',
'xed-file-browser-plugin.c',
'xed-file-browser-messages.c'
]
filebrowser_enums = gnome.mkenums_simple(
'xed-file-browser-enum-types',
sources : filebrowser_headers,
identifier_prefix : 'XedFileBrowser',
symbol_prefix : 'xed_file_browser'
)
filebrowser_marshal = gnome.genmarshal(
'xed-file-browser-marshal',
sources: 'xed-file-browser-marshal.list',
prefix: 'xed_file_browser_marshal'
)
filebrowser_deps = [
config_h,
gio,
glib,
gmodule,
gtk,
gtksourceview,
libpeas
]
library(
'filebrowser',
filebrowser_headers + filebrowser_lib_sources + filebrowser_enums + filebrowser_marshal,
link_with: libxed,
dependencies: filebrowser_deps,
include_directories: include_dirs,
install_rpath: join_paths(prefix, libdir, 'xed'),
install: true,
install_dir: join_paths(libdir, 'xed', 'plugins')
)
install_data(
'xed-file-browser-widget-ui.xml',
install_dir: join_paths(pluginsdatadir, 'filebrowser')
)
filebrowser_desktop = custom_target(
'filebrowser_desktop',
input: 'filebrowser.plugin.desktop.in',
output: 'filebrowser.plugin',
command: [intltool_merge, '-d', '-u', po_dir, '@INPUT@', '@OUTPUT@'],
install: true,
install_dir: pluginslibdir,
)
install_data(
'org.x.editor.plugins.filebrowser.gschema.xml',
install_dir: schema_dir
)

View File

@@ -911,7 +911,7 @@ xed_file_bookmarks_store_get_location (XedFileBookmarksStore *model,
}
else if (!isfs)
{
file = g_object_ref (obj);
file = G_FILE (g_object_ref (obj));
}
g_object_unref (obj);

View File

@@ -1,20 +0,0 @@
/*** BEGIN file-header ***/
void
xed_file_browser_enum_and_flag_register_type (GTypeModule * module)
{
/*** END file-header ***/
/*** BEGIN file-production ***/
/* Enumerations from "@filename@" */
/*** END file-production ***/
/*** BEGIN enumeration-production ***/
register_@enum_name@ (module);
/*** END enumeration-production ***/
/*** BEGIN file-tail ***/
}
/*** END file-tail ***/

View File

@@ -1,45 +0,0 @@
/*** BEGIN file-header ***/
#include "xed-file-browser-enum-types.h"
/*** END file-header ***/
/*** BEGIN file-production ***/
/* enumerations from "@filename@" */
#include "@filename@"
/*** END file-production ***/
/*** BEGIN value-header ***/
static GType @enum_name@_type = 0;
static GType
register_@enum_name@ (GTypeModule *module)
{
static const G@Type@Value values[] = {
/*** END value-header ***/
/*** BEGIN value-production ***/
{ @VALUENAME@,
"@VALUENAME@",
"@valuenick@" },
/*** END value-production ***/
/*** BEGIN value-tail ***/
{ 0, NULL, NULL }
};
@enum_name@_type =
g_type_module_register_@type@ (module,
"@EnumName@",
values);
return @enum_name@_type;
}
GType
@enum_name@_get_type (void)
{
return @enum_name@_type;
}
/*** END value-tail ***/

View File

@@ -1,29 +0,0 @@
/*** BEGIN file-header ***/
#ifndef __XED_FILE_BROWSER_ENUM_TYPES_H__
#define __XED_FILE_BROWSER_ENUM_TYPES_H__
#include <glib-object.h>
G_BEGIN_DECLS
/*** END file-header ***/
/*** BEGIN file-production ***/
/* Enumerations from "@filename@" */
/*** END file-production ***/
/*** BEGIN enumeration-production ***/
#define XED_TYPE_@ENUMSHORT@ (@enum_name@_get_type())
GType @enum_name@_get_type (void) G_GNUC_CONST;
/*** END enumeration-production ***/
/*** BEGIN file-tail ***/
void xed_file_browser_enum_and_flag_register_type (GTypeModule * module);
G_END_DECLS
#endif /* __XED_FILE_BROWSER_ENUM_TYPES_H__ */
/*** END file-tail ***/

View File

@@ -1,5 +1,5 @@
VOID:UINT,STRING
VOID:OBJECT,OBJECT
BOOL:OBJECT,POINTER
BOOL:POINTER
BOOL:VOID
BOOLEAN:OBJECT,POINTER
BOOLEAN:POINTER
BOOLEAN:VOID

View File

@@ -20,10 +20,7 @@
*/
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif
#include <string.h>
#include <glib/gi18n-lib.h>
#include <gmodule.h>
@@ -111,7 +108,6 @@ G_DEFINE_DYNAMIC_TYPE_EXTENDED (XedFileBrowserPlugin,
G_IMPLEMENT_INTERFACE_DYNAMIC (XED_TYPE_WINDOW_ACTIVATABLE,
xed_window_activatable_iface_init) \
\
xed_file_browser_enum_and_flag_register_type (type_module); \
_xed_file_browser_store_register_type (type_module); \
_xed_file_bookmarks_store_register_type (type_module); \
_xed_file_browser_view_register_type (type_module); \
@@ -532,8 +528,6 @@ xed_file_browser_plugin_activate (XedWindowActivatable *activatable)
XedPanel *panel;
XedFileBrowserStore *store;
gchar *data_dir;
GSettingsSchemaSource *schema_source;
GSettingsSchema *schema;
priv = plugin->priv;

View File

@@ -19,10 +19,7 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
*/
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif
#include <string.h>
#include <glib/gi18n-lib.h>
#include <gio/gio.h>
@@ -350,7 +347,7 @@ xed_file_browser_store_class_init (XedFileBrowserStoreClass * klass)
g_param_spec_flags ("filter-mode",
"Filter Mode",
"The filter mode",
XED_TYPE_FILE_BROWSER_STORE_FILTER_MODE,
XED_FILE_BROWSER_TYPE_STORE_FILTER_MODE,
xed_file_browser_store_filter_mode_get_default (),
G_PARAM_READWRITE));
@@ -384,7 +381,7 @@ xed_file_browser_store_class_init (XedFileBrowserStoreClass * klass)
G_SIGNAL_RUN_LAST,
G_STRUCT_OFFSET (XedFileBrowserStoreClass,
no_trash), g_signal_accumulator_true_handled, NULL,
xed_file_browser_marshal_BOOL__POINTER,
xed_file_browser_marshal_BOOLEAN__POINTER,
G_TYPE_BOOLEAN, 1, G_TYPE_POINTER);
model_signals[RENAME] =
g_signal_new ("rename",

View File

@@ -19,10 +19,7 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
*/
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif
#include <glib/gi18n-lib.h>
#include <xed/xed-utils.h>
@@ -94,7 +91,7 @@ xed_file_browser_utils_pixbuf_from_icon (GIcon *icon,
}
ret = gtk_icon_info_load_icon (info, NULL);
gtk_icon_info_free (info);
g_object_unref (info);
return ret;
}

View File

@@ -44,8 +44,6 @@ struct _XedFileBrowserViewPrivate
GtkTreeModel *model;
GtkTreeRowReference *editable;
/* CLick policy */
XedFileBrowserViewClickPolicy click_policy;
GtkTreePath *double_click_path[2]; /* Both clicks in a double click need to be on the same row */
GtkTreePath *hover_path;
GdkCursor *hand_cursor;
@@ -64,7 +62,6 @@ enum
{
PROP_0,
PROP_CLICK_POLICY,
PROP_RESTORE_EXPAND_STATE
};
@@ -227,139 +224,6 @@ row_collapsed (GtkTreeView *tree_view,
_xed_file_browser_store_iter_collapsed (XED_FILE_BROWSER_STORE (view->priv->model), iter);
}
static gboolean
leave_notify_event (GtkWidget *widget,
GdkEventCrossing *event)
{
XedFileBrowserView *view = XED_FILE_BROWSER_VIEW (widget);
if (view->priv->click_policy == XED_FILE_BROWSER_VIEW_CLICK_POLICY_SINGLE &&
view->priv->hover_path != NULL)
{
gtk_tree_path_free (view->priv->hover_path);
view->priv->hover_path = NULL;
}
// Chainup
return GTK_WIDGET_CLASS (xed_file_browser_view_parent_class)->leave_notify_event (widget, event);
}
static gboolean
enter_notify_event (GtkWidget *widget,
GdkEventCrossing *event)
{
XedFileBrowserView *view = XED_FILE_BROWSER_VIEW (widget);
if (view->priv->click_policy == XED_FILE_BROWSER_VIEW_CLICK_POLICY_SINGLE)
{
if (view->priv->hover_path != NULL)
{
gtk_tree_path_free (view->priv->hover_path);
}
gtk_tree_view_get_path_at_pos (GTK_TREE_VIEW (widget),
event->x, event->y,
&view->priv->hover_path,
NULL, NULL, NULL);
if (view->priv->hover_path != NULL)
{
gdk_window_set_cursor (gtk_widget_get_window (widget), view->priv->hand_cursor);
}
}
// Chainup
return GTK_WIDGET_CLASS (xed_file_browser_view_parent_class)->enter_notify_event (widget, event);
}
static gboolean
motion_notify_event (GtkWidget *widget,
GdkEventMotion *event)
{
GtkTreePath *old_hover_path;
XedFileBrowserView *view = XED_FILE_BROWSER_VIEW (widget);
if (view->priv->click_policy == XED_FILE_BROWSER_VIEW_CLICK_POLICY_SINGLE)
{
old_hover_path = view->priv->hover_path;
gtk_tree_view_get_path_at_pos (GTK_TREE_VIEW (widget),
event->x, event->y,
&view->priv->hover_path,
NULL, NULL, NULL);
if ((old_hover_path != NULL) != (view->priv->hover_path != NULL))
{
if (view->priv->hover_path != NULL)
{
gdk_window_set_cursor (gtk_widget_get_window (widget), view->priv->hand_cursor);
}
else
{
gdk_window_set_cursor (gtk_widget_get_window (widget), NULL);
}
}
if (old_hover_path != NULL)
{
gtk_tree_path_free (old_hover_path);
}
}
// Chainup
return GTK_WIDGET_CLASS (xed_file_browser_view_parent_class)->motion_notify_event (widget, event);
}
static void
set_click_policy_property (XedFileBrowserView *obj,
XedFileBrowserViewClickPolicy click_policy)
{
GtkTreeIter iter;
GdkDisplay *display;
GdkWindow *win;
obj->priv->click_policy = click_policy;
if (click_policy == XED_FILE_BROWSER_VIEW_CLICK_POLICY_SINGLE)
{
if (obj->priv->hand_cursor == NULL)
{
obj->priv->hand_cursor = gdk_cursor_new(GDK_HAND2);
}
}
else if (click_policy == XED_FILE_BROWSER_VIEW_CLICK_POLICY_DOUBLE)
{
if (obj->priv->hover_path != NULL)
{
if (gtk_tree_model_get_iter (GTK_TREE_MODEL (obj->priv->model), &iter, obj->priv->hover_path))
{
gtk_tree_model_row_changed (GTK_TREE_MODEL (obj->priv->model), obj->priv->hover_path, &iter);
}
gtk_tree_path_free (obj->priv->hover_path);
obj->priv->hover_path = NULL;
}
if (gtk_widget_get_realized (GTK_WIDGET (obj)))
{
win = gtk_widget_get_window (GTK_WIDGET (obj));
gdk_window_set_cursor (win, NULL);
display = gtk_widget_get_display (GTK_WIDGET (obj));
if (display != NULL)
{
gdk_display_flush (display);
}
}
if (obj->priv->hand_cursor)
{
g_object_unref (obj->priv->hand_cursor);
obj->priv->hand_cursor = NULL;
}
}
}
static void
directory_activated (XedFileBrowserView *view,
GtkTreeIter *iter)
@@ -503,14 +367,7 @@ did_not_drag (XedFileBrowserView *view,
if (gtk_tree_view_get_path_at_pos (tree_view, event->x, event->y, &path, NULL, NULL, NULL))
{
if ((view->priv->click_policy == XED_FILE_BROWSER_VIEW_CLICK_POLICY_SINGLE)
&& !button_event_modifies_selection(event)
&& (event->button == 1 || event->button == 2))
{
/* Activate all selected items, and leave them selected */
activate_selected_items (view);
}
else if ((event->button == 1 || event->button == 2)
if ((event->button == 1 || event->button == 2)
&& ((event->state & GDK_CONTROL_MASK) != 0 ||
(event->state & GDK_SHIFT_MASK) == 0)
&& view->priv->selected_on_button_down)
@@ -589,12 +446,6 @@ button_press_event (GtkWidget *widget,
last_click_time = event->time;
/* Ignore double click if we are in single click mode */
if (view->priv->click_policy == XED_FILE_BROWSER_VIEW_CLICK_POLICY_SINGLE && click_count >= 2)
{
return TRUE;
}
view->priv->ignore_release = FALSE;
call_parent = TRUE;
@@ -654,7 +505,7 @@ button_press_event (GtkWidget *widget,
if (selected)
{
call_parent = on_expander || gtk_tree_selection_count_selected_rows (selection) == 1;
view->priv->ignore_release = call_parent && view->priv->click_policy != XED_FILE_BROWSER_VIEW_CLICK_POLICY_SINGLE;
view->priv->ignore_release = call_parent;
}
else if ((event->state & GDK_CONTROL_MASK) != 0)
{
@@ -881,9 +732,6 @@ get_property (GObject *object,
switch (prop_id)
{
case PROP_CLICK_POLICY:
g_value_set_enum (value, obj->priv->click_policy);
break;
case PROP_RESTORE_EXPAND_STATE:
g_value_set_boolean (value, obj->priv->restore_expand_state);
break;
@@ -903,9 +751,6 @@ set_property (GObject *object,
switch (prop_id)
{
case PROP_CLICK_POLICY:
set_click_policy_property (obj, g_value_get_enum (value));
break;
case PROP_RESTORE_EXPAND_STATE:
set_restore_expand_state (obj, g_value_get_boolean (value));
break;
@@ -927,9 +772,6 @@ xed_file_browser_view_class_init (XedFileBrowserViewClass *klass)
object_class->set_property = set_property;
/* Event handlers */
widget_class->motion_notify_event = motion_notify_event;
widget_class->enter_notify_event = enter_notify_event;
widget_class->leave_notify_event = leave_notify_event;
widget_class->button_press_event = button_press_event;
widget_class->button_release_event = button_release_event;
widget_class->drag_begin = drag_begin;
@@ -943,14 +785,6 @@ xed_file_browser_view_class_init (XedFileBrowserViewClass *klass)
/* Default handlers */
klass->directory_activated = directory_activated;
g_object_class_install_property (object_class, PROP_CLICK_POLICY,
g_param_spec_enum ("click-policy",
"Click Policy",
"The click policy",
XED_TYPE_FILE_BROWSER_VIEW_CLICK_POLICY,
XED_FILE_BROWSER_VIEW_CLICK_POLICY_DOUBLE,
G_PARAM_READWRITE | G_PARAM_CONSTRUCT));
g_object_class_install_property (object_class, PROP_RESTORE_EXPAND_STATE,
g_param_spec_boolean ("restore-expand-state",
"Restore Expand State",
@@ -1013,14 +847,6 @@ cell_data_cb (GtkTreeViewColumn *tree_column,
path = gtk_tree_model_get_path (tree_model, iter);
if (obj->priv->click_policy == XED_FILE_BROWSER_VIEW_CLICK_POLICY_SINGLE)
{
if (obj->priv->hover_path != NULL && gtk_tree_path_compare (path, obj->priv->hover_path) == 0)
{
underline = PANGO_UNDERLINE_SINGLE;
}
}
if (XED_IS_FILE_BROWSER_STORE (tree_model))
{
if (obj->priv->editable != NULL && gtk_tree_row_reference_valid (obj->priv->editable))
@@ -1200,17 +1026,6 @@ xed_file_browser_view_start_rename (XedFileBrowserView *tree_view,
FALSE, 0.0, 0.0);
}
void
xed_file_browser_view_set_click_policy (XedFileBrowserView *tree_view,
XedFileBrowserViewClickPolicy policy)
{
g_return_if_fail (XED_IS_FILE_BROWSER_VIEW (tree_view));
set_click_policy_property (tree_view, policy);
g_object_notify (G_OBJECT (tree_view), "click-policy");
}
void
xed_file_browser_view_set_restore_expand_state (XedFileBrowserView *tree_view,
gboolean restore_expand_state)

View File

@@ -37,12 +37,6 @@ typedef struct _XedFileBrowserView XedFileBrowserView;
typedef struct _XedFileBrowserViewClass XedFileBrowserViewClass;
typedef struct _XedFileBrowserViewPrivate XedFileBrowserViewPrivate;
typedef enum
{
XED_FILE_BROWSER_VIEW_CLICK_POLICY_DOUBLE,
XED_FILE_BROWSER_VIEW_CLICK_POLICY_SINGLE
} XedFileBrowserViewClickPolicy;
struct _XedFileBrowserView
{
GtkTreeView parent;
@@ -74,8 +68,6 @@ void xed_file_browser_view_set_model (XedFileBrowserView *tree_view,
GtkTreeModel *model);
void xed_file_browser_view_start_rename (XedFileBrowserView *tree_view,
GtkTreeIter *iter);
void xed_file_browser_view_set_click_policy (XedFileBrowserView *tree_view,
XedFileBrowserViewClickPolicy policy);
void xed_file_browser_view_set_restore_expand_state (XedFileBrowserView *tree_view,
gboolean restore_expand_state);

View File

@@ -19,10 +19,7 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
*/
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif
#include <sys/types.h>
#include <sys/stat.h>
#include <string.h>
@@ -30,7 +27,6 @@
#include <glib/gi18n-lib.h>
#include <gtk/gtk.h>
#include <gdk/gdkkeysyms.h>
#include <xed/xed-utils.h>
#include "xed-file-browser-utils.h"
@@ -470,7 +466,7 @@ xed_file_browser_widget_class_init (XedFileBrowserWidgetClass *klass)
confirm_delete),
g_signal_accumulator_true_handled,
NULL,
xed_file_browser_marshal_BOOL__OBJECT_POINTER,
xed_file_browser_marshal_BOOLEAN__OBJECT_POINTER,
G_TYPE_BOOLEAN,
2,
G_TYPE_OBJECT,
@@ -483,7 +479,7 @@ xed_file_browser_widget_class_init (XedFileBrowserWidgetClass *klass)
confirm_no_trash),
g_signal_accumulator_true_handled,
NULL,
xed_file_browser_marshal_BOOL__POINTER,
xed_file_browser_marshal_BOOLEAN__POINTER,
G_TYPE_BOOLEAN,
1,
G_TYPE_POINTER);
@@ -712,7 +708,7 @@ fill_combo_model (XedFileBrowserWidget *obj)
GtkTreeIter iter;
GdkPixbuf *icon;
icon = xed_file_browser_utils_pixbuf_from_theme (GTK_STOCK_HOME, GTK_ICON_SIZE_MENU);
icon = xed_file_browser_utils_pixbuf_from_theme ("go-home", GTK_ICON_SIZE_MENU);
gtk_tree_store_append (store, &iter, NULL);
gtk_tree_store_set (store, &iter,
@@ -805,7 +801,7 @@ static const GtkActionEntry tree_actions_sensitive[] =
static const GtkToggleActionEntry tree_actions_toggle[] =
{
{"FilterHidden", GTK_STOCK_DIALOG_AUTHENTICATION, N_("Show _Hidden"), NULL,
{"FilterHidden", NULL, N_("Show _Hidden"), NULL,
N_("Show hidden files and folders"), G_CALLBACK (on_action_filter_hidden), FALSE},
{"FilterBinary", NULL, N_("Show _Binary"), NULL,
N_("Show binary files"), G_CALLBACK (on_action_filter_binary), FALSE}
@@ -1187,7 +1183,7 @@ xed_file_browser_widget_init (XedFileBrowserWidget *obj)
gtk_box_set_spacing (GTK_BOX (obj), 3);
gtk_orientable_set_orientation (GTK_ORIENTABLE (obj), GTK_ORIENTATION_VERTICAL);
obj->priv->busy_cursor = gdk_cursor_new (GDK_WATCH);
obj->priv->busy_cursor = gdk_cursor_new_for_display (gdk_display_get_default(), GDK_WATCH);
}
/* Private */
@@ -1251,6 +1247,7 @@ popup_menu (XedFileBrowserWidget *obj,
GtkTreeModel *model)
{
GtkWidget *menu;
GtkTreeView *tree;
if (XED_IS_FILE_BROWSER_STORE (model))
{
@@ -1267,16 +1264,18 @@ popup_menu (XedFileBrowserWidget *obj,
g_return_val_if_fail (menu != NULL, FALSE);
tree = GTK_TREE_VIEW (obj->priv->treeview);
if (event != NULL)
{
GtkTreeSelection *selection;
selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (obj->priv->treeview));
selection = gtk_tree_view_get_selection (tree);
if (gtk_tree_selection_count_selected_rows (selection) <= 1)
{
GtkTreePath *path;
if (gtk_tree_view_get_path_at_pos (GTK_TREE_VIEW (obj->priv->treeview),
if (gtk_tree_view_get_path_at_pos (tree,
(gint)event->x, (gint)event->y,
&path, NULL, NULL, NULL))
{
@@ -1286,14 +1285,38 @@ popup_menu (XedFileBrowserWidget *obj,
}
}
gtk_menu_popup (GTK_MENU (menu), NULL, NULL, NULL, NULL, event->button, event->time);
gtk_menu_popup_at_pointer (GTK_MENU (menu), (GdkEvent *) event);
}
else
{
gtk_menu_popup (GTK_MENU (menu), NULL, NULL,
xed_utils_menu_position_under_tree_view,
obj->priv->treeview, 0,
gtk_get_current_event_time ());
GtkTreeModel *model;
GtkTreeSelection *selection;
GtkTreeIter iter;
model = gtk_tree_view_get_model (tree);
g_return_val_if_fail (model != NULL, FALSE);
selection = gtk_tree_view_get_selection (tree);
g_return_val_if_fail (selection != NULL, FALSE);
if (gtk_tree_selection_get_selected (selection, NULL, &iter))
{
GtkTreePath *path;
GdkRectangle rect;
path = gtk_tree_model_get_path (model, &iter);
gtk_tree_view_get_cell_area (tree, path, gtk_tree_view_get_column (tree, 0), &rect);
gtk_menu_popup_at_rect (GTK_MENU (menu), gtk_widget_get_window (GTK_WIDGET (tree)),
&rect, GDK_GRAVITY_SOUTH_WEST, GDK_GRAVITY_NORTH_WEST, NULL);
gtk_tree_path_free (path);
}
else
{
gtk_menu_popup_at_widget (GTK_MENU (menu), GTK_WIDGET (obj->priv->treeview),
GDK_GRAVITY_SOUTH, GDK_GRAVITY_NORTH, NULL);
}
gtk_menu_shell_select_first (GTK_MENU_SHELL (menu), FALSE);
}
@@ -1965,11 +1988,7 @@ set_busy (XedFileBrowserWidget *obj,
if (busy)
{
GdkCursor *cursor;
cursor = gdk_cursor_new (GDK_WATCH);
gdk_window_set_cursor (window, cursor);
g_object_unref (obj->priv->busy_cursor);
gdk_window_set_cursor (window, obj->priv->busy_cursor);
}
else
{
@@ -2333,7 +2352,8 @@ directory_open (XedFileBrowserWidget *obj,
uri = g_file_get_uri (location);
if (!gtk_show_uri (gtk_widget_get_screen (GTK_WIDGET (obj)), uri, GDK_CURRENT_TIME, &error))
if (!gtk_show_uri_on_window (GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (obj))),
uri, GDK_CURRENT_TIME, &error))
{
g_signal_emit (obj, signals[ERROR], 0, XED_FILE_BROWSER_ERROR_OPEN_DIRECTORY, error->message);

16
plugins/meson.build Normal file
View File

@@ -0,0 +1,16 @@
pluginsdatadir = join_paths(datadir, 'xed', 'plugins')
pluginslibdir = join_paths(libdir, 'xed', 'plugins')
subdir('docinfo')
subdir('filebrowser')
subdir('modelines')
subdir('sort')
subdir('taglist')
subdir('textsize')
subdir('time')
subdir('trailsave')
subdir('wordcompletion')
if enable_spell
subdir('spell')
endif

View File

@@ -1,38 +0,0 @@
# Modelines Plugin
plugindir = $(XED_PLUGINS_LIBS_DIR)
AM_CPPFLAGS = \
-I$(top_srcdir) \
$(XED_CFLAGS) \
$(WARN_CFLAGS) \
$(DISABLE_DEPRECATED_CFLAGS)
modelinesdir = $(XED_PLUGINS_DATA_DIR)/modelines
modelines_DATA = \
language-mappings
plugin_LTLIBRARIES = libmodelines.la
libmodelines_la_SOURCES = \
xed-modeline-plugin.h \
xed-modeline-plugin.c \
modeline-parser.h \
modeline-parser.c
libmodelines_la_LDFLAGS = $(PLUGIN_LIBTOOL_FLAGS)
libmodelines_la_LIBADD = $(XED_LIBS)
plugin_in_files = modelines.plugin.desktop.in
%.plugin: %.plugin.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*po) ; $(INTLTOOL_MERGE) $(top_srcdir)/po $< $@ -d -u -c $(top_builddir)/po/.intltool-merge-cache
plugin_DATA = $(plugin_in_files:.plugin.desktop.in=.plugin)
EXTRA_DIST = \
$(plugin_in_files) \
$(modelines_DATA)
CLEANFILES = $(plugin_DATA)
DISTCLEANFILES = $(plugin_DATA)
-include $(top_srcdir)/git.mk

View File

@@ -0,0 +1,40 @@
modelines_sources = [
'xed-modeline-plugin.h',
'xed-modeline-plugin.c',
'modeline-parser.h',
'modeline-parser.c'
]
modelines_deps = [
config_h,
glib,
gmodule,
gtk,
gtksourceview,
libpeas
]
library(
'modelines',
modelines_sources,
link_with: libxed,
dependencies: modelines_deps,
include_directories: include_dirs,
install_rpath: join_paths(prefix, libdir, 'xed'),
install: true,
install_dir: join_paths(libdir, 'xed', 'plugins')
)
install_data(
'language-mappings',
install_dir: join_paths(pluginsdatadir, 'modelines')
)
modelines_desktop = custom_target(
'modelines_desktop',
input: 'modelines.plugin.desktop.in',
output: 'modelines.plugin',
command: [intltool_merge, '-d', '-u', po_dir, '@INPUT@', '@OUTPUT@'],
install: true,
install_dir: pluginslibdir,
)

View File

@@ -19,19 +19,16 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
*/
#ifdef HAVE_CONFIG_H
# include <config.h>
#endif
#include <config.h>
#include <glib/gi18n-lib.h>
#include <gmodule.h>
#include "xed-modeline-plugin.h"
#include "modeline-parser.h"
#include <xed/xed-debug.h>
#include <xed/xed-view-activatable.h>
#include <xed/xed-view.h>
#include "xed-modeline-plugin.h"
#include "modeline-parser.h"
struct _XedModelinePluginPrivate
{
XedView *view;

View File

@@ -1,31 +0,0 @@
# sort plugin
plugindir = $(XED_PLUGINS_LIBS_DIR)
AM_CPPFLAGS = \
-I$(top_srcdir) \
$(XED_CFLAGS) \
$(WARN_CFLAGS) \
$(DISABLE_DEPRECATED_CFLAGS)
plugin_LTLIBRARIES = libsort.la
libsort_la_SOURCES = \
xed-sort-plugin.h \
xed-sort-plugin.c
libsort_la_LDFLAGS = $(PLUGIN_LIBTOOL_FLAGS)
libsort_la_LIBADD = $(XED_LIBS)
plugin_in_files = sort.plugin.desktop.in
%.plugin: %.plugin.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*po) ; $(INTLTOOL_MERGE) $(top_srcdir)/po $< $@ -d -u -c $(top_builddir)/po/.intltool-merge-cache
plugin_DATA = $(plugin_in_files:.plugin.desktop.in=.plugin)
EXTRA_DIST = $(plugin_in_files)
CLEANFILES = $(plugin_DATA)
DISTCLEANFILES = $(plugin_DATA)
-include $(top_srcdir)/git.mk

31
plugins/sort/meson.build Normal file
View File

@@ -0,0 +1,31 @@
sort_sources = [
'xed-sort-plugin.h',
'xed-sort-plugin.c'
]
sort_deps = [
config_h,
glib,
gtksourceview,
libpeas
]
library(
'sort',
sort_sources,
link_with: libxed,
dependencies: sort_deps,
include_directories: include_dirs,
install_rpath: join_paths(prefix, libdir, 'xed'),
install: true,
install_dir: join_paths(libdir, 'xed', 'plugins'),
)
sort_desktop = custom_target(
'sort_desktop',
input: 'sort.plugin.desktop.in',
output: 'sort.plugin',
command: [intltool_merge, '-d', '-u', po_dir, '@INPUT@', '@OUTPUT@'],
install: true,
install_dir: pluginslibdir,
)

View File

@@ -21,22 +21,18 @@
* $Id$
*/
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif
#include "xed-sort-plugin.h"
#include <string.h>
#include <stdlib.h>
#include <glib/gi18n.h>
#include <xed/xed-window.h>
#include <xed/xed-window-activatable.h>
#include <xed/xed-debug.h>
#include <xed/xed-utils.h>
#include <xed/xed-app.h>
#include "xed-sort-plugin.h"
#define XED_SORT_PLUGIN_GET_PRIVATE(object)(G_TYPE_INSTANCE_GET_PRIVATE ((object), XED_TYPE_SORT_PLUGIN, XedSortPluginPrivate))
#define MENU_PATH "/MenuBar/EditMenu/EditOps_6"
@@ -169,7 +165,6 @@ buffer_sort_lines (GtkSourceBuffer *buffer,
gint end_line;
gint num_lines;
SortLine *lines;
gchar *last_line = NULL;
gint i;
g_return_if_fail (GTK_SOURCE_IS_BUFFER (buffer));
@@ -230,8 +225,6 @@ buffer_sort_lines (GtkSourceBuffer *buffer,
{
gtk_text_buffer_insert (text_buffer, start, lines[i].line, -1);
gtk_text_buffer_insert (text_buffer, start, "\n", -1);
last_line = lines[i].line;
}
gtk_text_buffer_end_user_action (text_buffer);

View File

@@ -1,58 +0,0 @@
# Spell checker plugin
plugindir = $(XED_PLUGINS_LIBS_DIR)
AM_CPPFLAGS = \
-I$(top_srcdir) \
$(XED_CFLAGS) \
$(GSPELL_CFLAGS) \
$(WARN_CFLAGS) \
$(DISABLE_DEPRECATED_CFLAGS)
BUILT_SOURCES = \
xed-spell-marshal.c \
xed-spell-marshal.h
plugin_LTLIBRARIES = libspell.la
libspell_la_SOURCES = \
xed-spell-plugin.c \
xed-spell-plugin.h \
$(BUILT_SOURCES)
libspell_la_LDFLAGS = $(PLUGIN_LIBTOOL_FLAGS)
libspell_la_LIBADD = $(XED_LIBS) $(GSPELL_LIBS)
uidir = $(XED_PLUGINS_DATA_DIR)/spell
ui_DATA = xed-spell-setup-dialog.ui
xed-spell-marshal.h: xed-spell-marshal.list $(GLIB_GENMARSHAL)
$(AM_V_GEN) $(GLIB_GENMARSHAL) $< --header --prefix=xed_marshal > $@
xed-spell-marshal.c: xed-spell-marshal.list $(GLIB_GENMARSHAL)
$(AM_V_GEN) echo "#include \"xed-spell-marshal.h\"" > $@ && \
$(GLIB_GENMARSHAL) $< --body --prefix=xed_marshal >> $@
plugin_in_files = spell.plugin.desktop.in
%.plugin: %.plugin.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*po) ; $(INTLTOOL_MERGE) $(top_srcdir)/po $< $@ -d -u -c $(top_builddir)/po/.intltool-merge-cache
plugin_DATA = $(plugin_in_files:.plugin.desktop.in=.plugin)
@INTLTOOL_XML_NOMERGE_RULE@
spell_gschema_in = org.x.editor.plugins.spell.gschema.xml.in
gsettings_SCHEMAS = $(spell_gschema_in:.xml.in=.xml)
@GSETTINGS_RULES@
EXTRA_DIST = \
$(ui_DATA) \
$(plugin_in_files) \
xed-spell-marshal.list \
$(spell_gschema_in)
CLEANFILES = $(BUILT_SOURCES) $(plugin_DATA) $(gsettings_SCHEMAS)
dist-hook:
cd $(distdir); rm -f $(BUILT_SOURCES)
-include $(top_srcdir)/git.mk

57
plugins/spell/meson.build Normal file
View File

@@ -0,0 +1,57 @@
spell_sources = [
'xed-spell-plugin.c',
'xed-spell-plugin.h'
]
spell_marshal = gnome.genmarshal(
'xed-spell-marshal',
sources: 'xed-spell-marshal.list',
prefix: 'xed_spell_marshal'
)
spell_deps = [
config_h,
glib,
gspell,
gtksourceview,
libpeas,
libpeas_gtk
]
library(
'spell',
spell_sources + spell_marshal,
link_with: libxed,
dependencies: spell_deps,
include_directories: include_dirs,
install_rpath: join_paths(prefix, libdir, 'xed'),
install: true,
install_dir: join_paths(libdir, 'xed', 'plugins')
)
install_data(
'xed-spell-setup-dialog.ui',
install_dir: join_paths(pluginsdatadir, 'spell')
)
spell_desktop = custom_target(
'spell_desktop',
input: 'spell.plugin.desktop.in',
output: 'spell.plugin',
command: [intltool_merge, '-d', '-u', po_dir, '@INPUT@', '@OUTPUT@'],
install: true,
install_dir: pluginslibdir,
)
spell_schema_file = configure_file(
input: 'org.x.editor.plugins.spell.gschema.xml.in',
output: 'org.x.editor.plugins.spell.gschema.xml',
configuration: schema_conf,
install_dir: join_paths(datadir, 'glib-2.0', 'schemas')
)
install_data(
spell_schema_file,
install_dir: schema_dir
)

View File

@@ -19,14 +19,9 @@
*/
#include <config.h>
#include "xed-spell-plugin.h"
#include <string.h> /* For strlen */
#include <glib/gi18n-lib.h>
#include <libpeas-gtk/peas-gtk-configurable.h>
#include <xed/xed-app.h>
#include <xed/xed-window.h>
#include <xed/xed-window-activatable.h>
@@ -34,6 +29,8 @@
#include <xed/xed-utils.h>
#include <gspell/gspell.h>
#include "xed-spell-plugin.h"
#define XED_METADATA_ATTRIBUTE_SPELL_LANGUAGE "metadata::xed-spell-language"
#define XED_METADATA_ATTRIBUTE_SPELL_ENABLED "metadata::xed-spell-enabled"
@@ -495,7 +492,6 @@ update_ui (XedSpellPlugin *plugin)
if (view != NULL)
{
XedTab *tab;
GtkTextBuffer *buffer;
tab = xed_window_get_active_tab (priv->window);
g_return_if_fail (xed_tab_get_view (tab) == view);

View File

@@ -1,60 +0,0 @@
# Tag list plugin
plugindir = $(XED_PLUGINS_LIBS_DIR)
taglistdir = $(XED_PLUGINS_DATA_DIR)/taglist
taglist_in_files = \
HTML.tags.xml.in \
Latex.tags.xml.in \
XSLT.tags.xml.in \
XUL.tags.xml.in
taglist_DATA = $(taglist_in_files:.tags.xml.in=.tags.gz)
AM_CPPFLAGS = \
-I$(top_srcdir) \
$(XED_CFLAGS) \
$(WARN_CFLAGS) \
$(DISABLE_DEPRECATED_CFLAGS)
plugin_LTLIBRARIES = libtaglist.la
libtaglist_la_SOURCES = \
xed-taglist-plugin-parser.c \
xed-taglist-plugin-parser.h \
xed-taglist-plugin-panel.c \
xed-taglist-plugin-panel.h \
xed-taglist-plugin.c \
xed-taglist-plugin.h
libtaglist_la_LDFLAGS = $(PLUGIN_LIBTOOL_FLAGS)
libtaglist_la_LIBADD = $(XED_LIBS)
plugin_in_files = taglist.plugin.desktop.in
%.plugin: %.plugin.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*po)
$(INTLTOOL_MERGE) $(top_srcdir)/po $< $@ -d -u -c $(top_builddir)/po/.intltool-merge-cache
GZIP_ENV = -9
%.tags.gz: %.tags.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po)
LC_ALL=C $(INTLTOOL_MERGE) $(top_srcdir)/po $< $(@:.gz=) -x -u -c $(top_builddir)/po/.intltool-merge-cache
GZIP=$(GZIP_ENV) gzip -n -f $(@:.gz=)
plugin_DATA = $(plugin_in_files:.plugin.desktop.in=.plugin)
EXTRA_DIST = \
$(taglist_in_files) $(taglist_DATA) \
$(plugin_in_files) $(plugin_DATA)
CLEANFILES = \
$(taglist_DATA) \
$(plugin_DATA)
DISTCLEANFILES = \
$(taglist_DATA) \
$(plugin_DATA)
-include $(top_srcdir)/git.mk

View File

@@ -0,0 +1,63 @@
taglist_sources = [
'xed-taglist-plugin-parser.c',
'xed-taglist-plugin-parser.h',
'xed-taglist-plugin-panel.c',
'xed-taglist-plugin-panel.h',
'xed-taglist-plugin.c',
'xed-taglist-plugin.h'
]
taglist_in_files = [
'C.tags@0@',
'HTML.tags@0@',
'Latex.tags@0@',
'XSLT.tags@0@',
'XUL.tags@0@'
]
taglist_deps = [
config_h,
glib,
gtk,
gtksourceview,
libpeas,
libxml
]
library(
'taglist',
taglist_sources,
link_with: libxed,
dependencies: taglist_deps,
include_directories: include_dirs,
install_rpath: join_paths(prefix, libdir, 'xed'),
install: true,
install_dir: join_paths(libdir, 'xed', 'plugins')
)
taglist_desktop = custom_target(
'taglist_desktop',
input: 'taglist.plugin.desktop.in',
output: 'taglist.plugin',
command: [intltool_merge, '-d', '-u', po_dir, '@INPUT@', '@OUTPUT@'],
install: true,
install_dir: pluginslibdir,
)
foreach tagtype : taglist_in_files
taglist_xml = custom_target(
'@0@xmltags'.format(tagtype.format('')),
input: tagtype.format('.xml.in'),
output: tagtype.format(''),
command: [intltool_merge, '-x', '-u', po_dir, '@INPUT@', '@OUTPUT@'],
)
taglist_gz = custom_target(
'@0@gztags'.format(tagtype.format('')),
input: taglist_xml,
output: tagtype.format('.gz'),
command: ['gzip', '-9', '-n', '-f', '@INPUT@'],
install: true,
install_dir: join_paths(pluginsdatadir, 'taglist')
)
endforeach

View File

@@ -28,22 +28,17 @@
* $Id$
*/
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif
#include <string.h>
#include "xed-taglist-plugin-panel.h"
#include "xed-taglist-plugin-parser.h"
#include <xed/xed-utils.h>
#include <xed/xed-debug.h>
#include <gtk/gtk.h>
#include <gdk/gdkkeysyms.h>
#include <glib/gi18n.h>
#include "xed-taglist-plugin-panel.h"
#include "xed-taglist-plugin-parser.h"
#define XED_TAGLIST_PLUGIN_PANEL_GET_PRIVATE(object)(G_TYPE_INSTANCE_GET_PRIVATE ((object), \
XED_TYPE_TAGLIST_PLUGIN_PANEL, \
XedTaglistPluginPanelPrivate))
@@ -717,7 +712,6 @@ xed_taglist_plugin_panel_init (XedTaglistPluginPanel *panel)
panel->priv->tag_groups_combo,
ATK_RELATION_CONTROLLED_BY);
gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (panel->priv->tags_list), FALSE);
gtk_tree_view_set_headers_visible (GTK_TREE_VIEW (panel->priv->tags_list), FALSE);
g_object_set (panel->priv->tags_list, "has-tooltip", TRUE, NULL);

View File

@@ -30,15 +30,11 @@
/* FIXME: we should rewrite the parser to avoid using DOM */
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif
#include <string.h>
#include <libxml/parser.h>
#include <glib.h>
#include <glib/gi18n.h>
#include <xed/xed-debug.h>
#include "xed-taglist-plugin-parser.h"

View File

@@ -27,20 +27,16 @@
* $Id$
*/
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif
#include <glib/gi18n-lib.h>
#include <xed/xed-window.h>
#include <xed/xed-window-activatable.h>
#include <xed/xed-debug.h>
#include "xed-taglist-plugin.h"
#include "xed-taglist-plugin-panel.h"
#include "xed-taglist-plugin-parser.h"
#include <glib/gi18n-lib.h>
#include <xed/xed-window.h>
#include <xed/xed-window-activatable.h>
#include <xed/xed-debug.h>
#define XED_TAGLIST_PLUGIN_GET_PRIVATE(object)(G_TYPE_INSTANCE_GET_PRIVATE ((object), XED_TYPE_TAGLIST_PLUGIN, XedTaglistPluginPrivate))
struct _XedTaglistPluginPrivate

View File

@@ -1,16 +0,0 @@
# Textsize Plugin
SUBDIRS = textsize
plugindir = $(XED_PLUGINS_LIBS_DIR)
plugin_in_files = textsize.plugin.desktop.in
%.plugin: %.plugin.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*po) ; $(INTLTOOL_MERGE) $(top_srcdir)/po $< $@ -d -u -c $(top_builddir)/po/.intltool-merge-cache
plugin_DATA = $(plugin_in_files:.plugin.desktop.in=.plugin)
EXTRA_DIST = \
$(plugin_in_files)
CLEANFILES = $(plugin_DATA)
DISTCLEANFILES = $(plugin_DATA)
-include $(top_srcdir)/git.mk

View File

@@ -0,0 +1,13 @@
install_subdir(
'textsize',
install_dir: pluginslibdir
)
textsize_desktop = custom_target(
'textsize_desktop',
input: 'textsize.plugin.desktop.in',
output: 'textsize.plugin',
command: [intltool_merge, '-d', '-u', po_dir, '@INPUT@', '@OUTPUT@'],
install: true,
install_dir: pluginslibdir,
)

View File

@@ -1,11 +0,0 @@
plugindir = $(XED_PLUGINS_LIBS_DIR)/textsize
plugin_PYTHON = \
__init__.py \
signals.py \
documenthelper.py
CLEANFILES =
DISTCLEANFILES =
-include $(top_srcdir)/git.mk

View File

@@ -1,41 +0,0 @@
# time plugin
plugindir = $(XED_PLUGINS_LIBS_DIR)
AM_CPPFLAGS = \
-I$(top_srcdir) \
$(XED_CFLAGS) \
$(WARN_CFLAGS) \
$(DISABLE_DEPRECATED_CFLAGS)
plugin_LTLIBRARIES = libtime.la
libtime_la_SOURCES = \
xed-time-plugin.h \
xed-time-plugin.c
libtime_la_LDFLAGS = $(PLUGIN_LIBTOOL_FLAGS)
libtime_la_LIBADD = $(XED_LIBS)
uidir = $(XED_PLUGINS_DATA_DIR)/time
ui_DATA = \
xed-time-dialog.ui \
xed-time-setup-dialog.ui
plugin_in_files = time.plugin.desktop.in
%.plugin: %.plugin.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*po) ; $(INTLTOOL_MERGE) $(top_srcdir)/po $< $@ -d -u -c $(top_builddir)/po/.intltool-merge-cache
plugin_DATA = $(plugin_in_files:.plugin.desktop.in=.plugin)
@INTLTOOL_XML_NOMERGE_RULE@
time_gschema_in = org.x.editor.plugins.time.gschema.xml.in
gsettings_SCHEMAS = $(time_gschema_in:.xml.in=.xml)
@GSETTINGS_RULES@
EXTRA_DIST = $(ui_DATA) $(plugin_in_files) $(time_gschema_in)
CLEANFILES = $(plugin_DATA) $(gsettings_SCHEMAS_in) $(gsettings_SCHEMASn)
DISTCLEANFILES = $(plugin_DATA) $(gsettings_SCHEMAS_in) $(gsettings_SCHEMAS)
-include $(top_srcdir)/git.mk

55
plugins/time/meson.build Normal file
View File

@@ -0,0 +1,55 @@
time_sources = [
'xed-time-plugin.h',
'xed-time-plugin.c'
]
time_deps = [
config_h,
gio,
glib,
gtksourceview,
libpeas,
libpeas_gtk
]
library(
'time',
time_sources,
link_with: libxed,
dependencies: time_deps,
include_directories: include_dirs,
install_rpath: join_paths(prefix, libdir, 'xed'),
install: true,
install_dir: join_paths(libdir, 'xed', 'plugins')
)
time_ui_sources = [
'xed-time-dialog.ui',
'xed-time-setup-dialog.ui'
]
install_data(
time_ui_sources,
install_dir: join_paths(pluginsdatadir, 'time')
)
time_desktop = custom_target(
'time_desktop',
input: 'time.plugin.desktop.in',
output: 'time.plugin',
command: [intltool_merge, '-d', '-u', po_dir, '@INPUT@', '@OUTPUT@'],
install: true,
install_dir: pluginslibdir,
)
time_schema_file = configure_file(
input: 'org.x.editor.plugins.time.gschema.xml.in',
output: 'org.x.editor.plugins.time.gschema.xml',
configuration: schema_conf,
install_dir: join_paths(datadir, 'glib-2.0', 'schemas')
)
install_data(
time_schema_file,
install_dir: schema_dir
)

View File

@@ -24,22 +24,18 @@
* See the ChangeLog files for a list of changes.
*/
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif
#include <string.h>
#include <glib/gi18n-lib.h>
#include <glib.h>
#include <gio/gio.h>
#include <xed/xed-window.h>
#include <xed/xed-window-activatable.h>
#include <libpeas-gtk/peas-gtk-configurable.h>
#include <xed/xed-debug.h>
#include <xed/xed-utils.h>
#include <xed/xed-app.h>
#include "xed-time-plugin.h"
#define XED_TIME_PLUGIN_GET_PRIVATE(object)(G_TYPE_INSTANCE_GET_PRIVATE ((object), \

View File

@@ -1,31 +0,0 @@
# trailsave plugin
plugindir = $(XED_PLUGINS_LIBS_DIR)
AM_CPPFLAGS = \
-I$(top_srcdir) \
$(XED_CFLAGS) \
$(WARN_CFLAGS) \
$(DISABLE_DEPRECATED_CFLAGS)
plugin_LTLIBRARIES = libtrailsave.la
libtrailsave_la_SOURCES = \
xed-trail-save-plugin.h \
xed-trail-save-plugin.c
libtrailsave_la_LDFLAGS = $(PLUGIN_LIBTOOL_FLAGS)
libtrailsave_la_LIBADD = $(XED_LIBS)
plugin_in_files = trailsave.plugin.desktop.in
%.plugin: %.plugin.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*po) ; $(INTLTOOL_MERGE) $(top_srcdir)/po $< $@ -d -u -c $(top_builddir)/po/.intltool-merge-cache
plugin_DATA = $(plugin_in_files:.plugin.desktop.in=.plugin)
EXTRA_DIST = $(plugin_in_files)
CLEANFILES = $(plugin_DATA)
DISTCLEANFILES = $(plugin_DATA)
-include $(top_srcdir)/git.mk

View File

@@ -0,0 +1,31 @@
trailsave_sources = [
'xed-trail-save-plugin.h',
'xed-trail-save-plugin.c'
]
trailsave_deps = [
config_h,
glib,
gtksourceview,
libpeas
]
library(
'trailsave',
trailsave_sources,
link_with: libxed,
dependencies: trailsave_deps,
include_directories: include_dirs,
install_rpath: join_paths(prefix, libdir, 'xed'),
install: true,
install_dir: join_paths(libdir, 'xed', 'plugins')
)
trailsave_desktop = custom_target(
'trailsave_desktop',
input: 'trailsave.plugin.desktop.in',
output: 'trailsave.plugin',
command: [intltool_merge, '-d', '-u', po_dir, '@INPUT@', '@OUTPUT@'],
install: true,
install_dir: pluginslibdir,
)

View File

@@ -16,18 +16,14 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
*/
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif
#include <string.h>
#include "xed-trail-save-plugin.h"
#include <xed/xed-window.h>
#include <xed/xed-window-activatable.h>
#include <xed/xed-debug.h>
#include "xed-trail-save-plugin.h"
#define XED_TRAIL_SAVE_PLUGIN_GET_PRIVATE(object)(G_TYPE_INSTANCE_GET_PRIVATE ((object), \
XED_TYPE_TRAIL_SAVE_PLUGIN, \
XedTrailSavePluginPrivate))

View File

@@ -1,49 +0,0 @@
# Word completion plugin
plugindir = $(XED_PLUGINS_LIBS_DIR)
AM_CPPFLAGS = \
-I$(top_srcdir) \
$(XED_CFLAGS) \
$(ENCHANT_CFLAGS) \
$(WARN_CFLAGS) \
$(DISABLE_DEPRECATED_CFLAGS)
plugin_LTLIBRARIES = libwordcompletion.la
libwordcompletion_la_SOURCES = \
xed-wordcompletion-plugin.h \
xed-wordcompletion-plugin.c
libwordcompletion_la_LDFLAGS = $(PLUGIN_LIBTOOL_FLAGS)
libwordcompletion_la_LIBADD = $(XED_LIBS) $(ENCHANT_LIBS)
plugin_in_files = wordcompletion.plugin.desktop.in
%.plugin: %.plugin.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*po) ; $(INTLTOOL_MERGE) $(top_srcdir)/po $< $@ -d -u -c $(top_builddir)/po/.intltool-merge-cache
plugin_DATA = $(plugin_in_files:.plugin.desktop.in=.plugin)
uidir = $(XED_PLUGINS_DATA_DIR)/wordcompletion
ui_DATA = xed-wordcompletion-configure.ui
@INTLTOOL_XML_NOMERGE_RULE@
wordcompletion_gschema_in = org.x.editor.plugins.wordcompletion.gschema.xml.in
gsettings_SCHEMAS = $(wordcompletion_gschema_in:.xml.in=.xml)
@GSETTINGS_RULES@
EXTRA_DIST = \
$(plugin_in_files) \
$(wordcompletion_gschema_in)
CLEANFILES = \
$(plugin_DATA) \
$(gsettings_SCHEMAS)
DISTCLEANFILES = \
$(plugin_DATA)
dist-hook:
cd $(distdir); rm -f $(BUILT_SOURCES)
-include $(top_srcdir)/git.mk

View File

@@ -0,0 +1,43 @@
wordcompletion_sources = [
'xed-wordcompletion-plugin.h',
'xed-wordcompletion-plugin.c'
]
wordcompletion_deps = [
config_h,
gio,
glib,
gtksourceview,
libpeas,
libpeas_gtk
]
library(
'wordcompletion',
wordcompletion_sources,
link_with: libxed,
dependencies: wordcompletion_deps,
include_directories: include_dirs,
install_rpath: join_paths(prefix, libdir, 'xed'),
install: true,
install_dir: join_paths(libdir, 'xed', 'plugins')
)
wordcompletion_desktop = custom_target(
'wordcompletion_desktop',
input: 'wordcompletion.plugin.desktop.in',
output: 'wordcompletion.plugin',
command: [intltool_merge, '-d', '-u', po_dir, '@INPUT@', '@OUTPUT@'],
install: true,
install_dir: pluginslibdir,
)
install_data(
'xed-wordcompletion-configure.ui',
install_dir: join_paths(pluginsdatadir, 'wordcompletion')
)
install_data(
'org.x.editor.plugins.wordcompletion.gschema.xml',
install_dir: schema_dir
)

View File

@@ -19,16 +19,10 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif
#include "xed-wordcompletion-plugin.h"
#include <glib/gi18n-lib.h>
#include <glib.h>
#include <gio/gio.h>
#include <xed/xed-debug.h>
#include <xed/xed-window.h>
#include <xed/xed-window-activatable.h>
@@ -39,6 +33,8 @@
#include <gtksourceview/gtksource.h>
#include <gtksourceview/completion-providers/words/gtksourcecompletionwords.h>
#include "xed-wordcompletion-plugin.h"
#define WINDOW_PROVIDER "XedWordCompletionPluginProvider"
#define WORDCOMPLETION_SETTINGS_BASE "org.x.editor.plugins.wordcompletion"
@@ -307,7 +303,6 @@ xed_wordcompletion_view_deactivate (XedViewActivatable *activatable)
{
XedWordCompletionPluginPrivate *priv;
GtkSourceCompletion *completion;
GtkSourceCompletionProvider *provider;
GtkTextBuffer *buf;
xed_debug (DEBUG_PLUGINS);

View File

@@ -22,6 +22,8 @@ xed/xed-documents-panel.c
xed/xed-encodings-combo-box.c
xed/xed-encodings-dialog.c
xed/xed-file-chooser-dialog.c
xed/xed-highlight-mode-dialog.c
xed/xed-highlight-mode-selector.c
xed/xed-history-entry.c
xed/xed-io-error-info-bar.c
xed/xed-message-bus.c
@@ -37,6 +39,9 @@ xed/xed-preferences-dialog.c
xed/xed-print-job.c
xed/xed-print-preview.c
xed/xed-progress-info-bar.c
[type: gettext/glade]xed/resources/ui/xed-highlight-mode-dialog.ui
[type: gettext/glade]xed/resources/ui/xed-highlight-mode-selector.ui
[type: gettext/glade]xed/resources/ui/xed-status-menu-button.ui
[type: gettext/glade]xed/resources/ui/xed-encodings-dialog.ui
[type: gettext/glade]xed/resources/ui/xed-preferences-dialog.ui
[type: gettext/glade]xed/resources/ui/xed-print-preferences.ui
@@ -47,7 +52,7 @@ xed/resources/ui/xed-ui.xml
xed/xed-searchbar.c
xed/xed-searchbar.c
xed/xed-settings.c
xed/xed-status-combo-box.c
xed/xed-status-menu-button.c
xed/xed-statusbar.c
xed/xed-statusbar.c
xed/xed-tab-label.c
@@ -65,7 +70,7 @@ plugins/docinfo/docinfo.plugin.desktop.in
[type: gettext/glade]plugins/docinfo/docinfo.ui
plugins/docinfo/xed-docinfo-plugin.c
plugins/filebrowser/filebrowser.plugin.desktop.in
[type: gettext/gsettings]plugins/filebrowser/org.x.editor.plugins.filebrowser.gschema.xml.in
[type: gettext/gsettings]plugins/filebrowser/org.x.editor.plugins.filebrowser.gschema.xml
plugins/filebrowser/xed-file-bookmarks-store.c
plugins/filebrowser/xed-file-browser-messages.c
plugins/filebrowser/xed-file-browser-plugin.c

822
po/ab.po

File diff suppressed because it is too large Load Diff

820
po/af.po

File diff suppressed because it is too large Load Diff

822
po/am.po

File diff suppressed because it is too large Load Diff

822
po/ar.po

File diff suppressed because it is too large Load Diff

822
po/as.po

File diff suppressed because it is too large Load Diff

822
po/ast.po

File diff suppressed because it is too large Load Diff

820
po/az.po

File diff suppressed because it is too large Load Diff

1229
po/be.po

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

822
po/bg.po

File diff suppressed because it is too large Load Diff

822
po/bn.po

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

822
po/br.po

File diff suppressed because it is too large Load Diff

820
po/bs.po

File diff suppressed because it is too large Load Diff

826
po/ca.po

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

822
po/crh.po

File diff suppressed because it is too large Load Diff

824
po/cs.po

File diff suppressed because it is too large Load Diff

822
po/cy.po

File diff suppressed because it is too large Load Diff

830
po/da.po

File diff suppressed because it is too large Load Diff

822
po/de.po

File diff suppressed because it is too large Load Diff

820
po/dz.po

File diff suppressed because it is too large Load Diff

1115
po/el.po

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

820
po/eo.po

File diff suppressed because it is too large Load Diff

824
po/es.po

File diff suppressed because it is too large Load Diff

Some files were not shown because too many files have changed in this diff Show More