mirror of
https://gitlab.gnome.org/GNOME/nautilus
synced 2024-06-30 23:46:35 +00:00
sendto-extension: Remove extension
nautilus-sendto is no longer maintained and never worked in sandboxed environments. Remove and re-add using portal See: https://gitlab.gnome.org/GNOME/nautilus/-/issues/928
This commit is contained in:
parent
512d508679
commit
57be6b74cf
|
@ -1,3 +1,2 @@
|
|||
subdir('image-properties')
|
||||
subdir('audio-video-properties')
|
||||
subdir('sendto')
|
||||
|
|
|
@ -1,13 +0,0 @@
|
|||
libnautilus_sendto_sources = [
|
||||
'nautilus-nste.c',
|
||||
'nautilus-nste.h',
|
||||
'nautilus-sendto-module.c'
|
||||
]
|
||||
|
||||
libnautilus_sendto = shared_module(
|
||||
'nautilus-sendto',
|
||||
libnautilus_sendto_sources,
|
||||
dependencies: nautilus_extension,
|
||||
install: true,
|
||||
install_dir: extensiondir
|
||||
)
|
|
@ -1,159 +0,0 @@
|
|||
/*
|
||||
* Nautilus-sendto
|
||||
*
|
||||
* Copyright (C) 2004 Free Software Foundation, Inc.
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Library General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public
|
||||
* License along with this library; if not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
* Author: Roberto Majadas <roberto.majadas@openshine.com>
|
||||
*
|
||||
*/
|
||||
|
||||
#include <config.h>
|
||||
#include <string.h>
|
||||
#include <glib/gi18n-lib.h>
|
||||
#include <nautilus-extension.h>
|
||||
#include "nautilus-nste.h"
|
||||
|
||||
struct _NautilusNste
|
||||
{
|
||||
GObject parent_instance;
|
||||
|
||||
gboolean nst_present;
|
||||
};
|
||||
|
||||
static void menu_provider_iface_init (NautilusMenuProviderInterface *iface);
|
||||
|
||||
G_DEFINE_DYNAMIC_TYPE_EXTENDED (NautilusNste, nautilus_nste, G_TYPE_OBJECT, 0,
|
||||
G_IMPLEMENT_INTERFACE_DYNAMIC (NAUTILUS_TYPE_MENU_PROVIDER,
|
||||
menu_provider_iface_init))
|
||||
|
||||
static void
|
||||
sendto_callback (NautilusMenuItem *item,
|
||||
gpointer user_data)
|
||||
{
|
||||
GList *files;
|
||||
g_autoptr (GString) command = NULL;
|
||||
|
||||
files = g_object_get_data (G_OBJECT (item), "files");
|
||||
command = g_string_new ("nautilus-sendto");
|
||||
|
||||
for (GList *l = files; l != NULL; l = l->next)
|
||||
{
|
||||
g_autofree char *uri = NULL;
|
||||
|
||||
uri = nautilus_file_info_get_uri (l->data);
|
||||
|
||||
g_string_append_printf (command, " \"%s\"", uri);
|
||||
}
|
||||
|
||||
g_spawn_command_line_async (command->str, NULL);
|
||||
}
|
||||
|
||||
static gboolean
|
||||
check_available_mailer (void)
|
||||
{
|
||||
g_autoptr (GAppInfo) app_info = NULL;
|
||||
|
||||
app_info = g_app_info_get_default_for_uri_scheme ("mailto");
|
||||
|
||||
return app_info != NULL;
|
||||
}
|
||||
|
||||
static GList *
|
||||
get_file_items (NautilusMenuProvider *provider,
|
||||
GtkWidget *window,
|
||||
GList *files)
|
||||
{
|
||||
GList *items = NULL;
|
||||
gboolean one_item;
|
||||
NautilusMenuItem *item;
|
||||
NautilusNste *nste;
|
||||
|
||||
nste = NAUTILUS_NSTE (provider);
|
||||
if (!nste->nst_present)
|
||||
{
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (files == NULL)
|
||||
{
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (!check_available_mailer ())
|
||||
{
|
||||
return NULL;
|
||||
}
|
||||
|
||||
one_item = (files != NULL) && (files->next == NULL);
|
||||
if (one_item &&
|
||||
!nautilus_file_info_is_directory ((NautilusFileInfo *) files->data))
|
||||
{
|
||||
item = nautilus_menu_item_new ("NautilusNste::sendto",
|
||||
_("Send to…"),
|
||||
_("Send file by mail…"),
|
||||
"document-send");
|
||||
}
|
||||
else
|
||||
{
|
||||
item = nautilus_menu_item_new ("NautilusNste::sendto",
|
||||
_("Send to…"),
|
||||
_("Send files by mail…"),
|
||||
"document-send");
|
||||
}
|
||||
g_signal_connect (item,
|
||||
"activate",
|
||||
G_CALLBACK (sendto_callback),
|
||||
provider);
|
||||
g_object_set_data_full (G_OBJECT (item),
|
||||
"files",
|
||||
nautilus_file_info_list_copy (files),
|
||||
(GDestroyNotify) nautilus_file_info_list_free);
|
||||
|
||||
items = g_list_append (items, item);
|
||||
|
||||
return items;
|
||||
}
|
||||
|
||||
static void
|
||||
menu_provider_iface_init (NautilusMenuProviderInterface *iface)
|
||||
{
|
||||
iface->get_file_items = get_file_items;
|
||||
}
|
||||
|
||||
static void
|
||||
nautilus_nste_init (NautilusNste *nste)
|
||||
{
|
||||
g_autofree char *path = NULL;
|
||||
|
||||
path = g_find_program_in_path ("nautilus-sendto");
|
||||
nste->nst_present = (path != NULL);
|
||||
}
|
||||
|
||||
static void
|
||||
nautilus_nste_class_init (NautilusNsteClass *klass)
|
||||
{
|
||||
}
|
||||
|
||||
static void
|
||||
nautilus_nste_class_finalize (NautilusNsteClass *klass)
|
||||
{
|
||||
}
|
||||
|
||||
void
|
||||
nautilus_nste_load (GTypeModule *module)
|
||||
{
|
||||
nautilus_nste_register_type (module);
|
||||
}
|
|
@ -1,35 +0,0 @@
|
|||
/*
|
||||
* Nautilus SendTo extension
|
||||
*
|
||||
* Copyright (C) 2005 Roberto Majadas
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Library General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public
|
||||
* License along with this library; if not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
* Author: Roberto Majadas <roberto.majadas@openshine.com>
|
||||
*
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <glib-object.h>
|
||||
|
||||
G_BEGIN_DECLS
|
||||
|
||||
#define NAUTILUS_TYPE_NSTE (nautilus_nste_get_type ())
|
||||
|
||||
G_DECLARE_FINAL_TYPE (NautilusNste, nautilus_nste, NAUTILUS, NSTE, GObject)
|
||||
|
||||
void nautilus_nste_load (GTypeModule *module);
|
||||
|
||||
G_END_DECLS
|
|
@ -1,53 +0,0 @@
|
|||
/*
|
||||
* Nautilus SendTo
|
||||
*
|
||||
* Copyright (C) 2005 Roberto Majadas
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Library General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public
|
||||
* License along with this library; if not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
* Author: Roberto Majadas <roberto.majadas@openshine.com>
|
||||
*
|
||||
*/
|
||||
|
||||
#include <config.h>
|
||||
#include <nautilus-extension.h>
|
||||
#include <glib/gi18n-lib.h>
|
||||
#include "nautilus-nste.h"
|
||||
|
||||
|
||||
void
|
||||
nautilus_module_initialize (GTypeModule *module)
|
||||
{
|
||||
nautilus_nste_load (module);
|
||||
|
||||
bindtextdomain (GETTEXT_PACKAGE, LOCALEDIR);
|
||||
bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
|
||||
}
|
||||
|
||||
void
|
||||
nautilus_module_shutdown (void)
|
||||
{
|
||||
}
|
||||
|
||||
void
|
||||
nautilus_module_list_types (const GType **types,
|
||||
int *num_types)
|
||||
{
|
||||
static GType type_list[1];
|
||||
|
||||
type_list[0] = NAUTILUS_TYPE_NSTE;
|
||||
*types = type_list;
|
||||
|
||||
*num_types = 1;
|
||||
}
|
Loading…
Reference in New Issue
Block a user