parent
fc1472cfb7
commit
55cc018879
@ -0,0 +1,82 @@
|
||||
From fe1b698e4a6bba7783edcb3d0431e6acb24323f4 Mon Sep 17 00:00:00 2001
|
||||
From: Jean-Louis Dupond <jean-louis@dupond.be>
|
||||
Date: Sun, 22 Apr 2012 23:08:47 +0200
|
||||
Subject: [PATCH] Also handle GDK_SCROLL_SMOOTH
|
||||
|
||||
---
|
||||
remmina-plugins/rdp/rdp_event.c | 9 +++++++++
|
||||
remmina-plugins/vnc/vnc_plugin.c | 12 ++++++++++++
|
||||
remmina/src/remmina_connection_window.c | 14 ++++++++++++++
|
||||
3 files changed, 35 insertions(+)
|
||||
|
||||
diff --git a/remmina-plugins/rdp/rdp_event.c b/remmina-plugins/rdp/rdp_event.c
|
||||
index de8e01f..3d3e67a 100644
|
||||
--- a/remmina-plugins/rdp/rdp_event.c
|
||||
+++ b/remmina-plugins/rdp/rdp_event.c
|
||||
@@ -377,6 +377,15 @@ static gboolean remmina_rdp_event_on_scroll(GtkWidget* widget, GdkEventScroll* e
|
||||
case GDK_SCROLL_DOWN:
|
||||
flag = PTR_FLAGS_WHEEL | PTR_FLAGS_WHEEL_NEGATIVE | 0x0088;
|
||||
break;
|
||||
+
|
||||
+ case GDK_SCROLL_SMOOTH:
|
||||
+ if (event->delta_y < 0)
|
||||
+ flag = PTR_FLAGS_WHEEL | 0x0078;
|
||||
+ if (event->delta_y > 0)
|
||||
+ flag = PTR_FLAGS_WHEEL | PTR_FLAGS_WHEEL_NEGATIVE | 0x0088;
|
||||
+ if (!flag)
|
||||
+ return FALSE;
|
||||
+ break;
|
||||
|
||||
default:
|
||||
return FALSE;
|
||||
diff --git a/remmina-plugins/vnc/vnc_plugin.c b/remmina-plugins/vnc/vnc_plugin.c
|
||||
index 0321057..f000ccb 100644
|
||||
--- a/remmina-plugins/vnc/vnc_plugin.c
|
||||
+++ b/remmina-plugins/vnc/vnc_plugin.c
|
||||
@@ -1426,6 +1426,18 @@ static gboolean remmina_plugin_vnc_on_scroll(GtkWidget *widget, GdkEventScroll *
|
||||
case GDK_SCROLL_RIGHT:
|
||||
mask = (1 << 6);
|
||||
break;
|
||||
+ case GDK_SCROLL_SMOOTH:
|
||||
+ if (event->delta_y < 0)
|
||||
+ mask = (1 << 3);
|
||||
+ if (event->delta_y > 0)
|
||||
+ mask = (1 << 4);
|
||||
+ if (event->delta_x < 0)
|
||||
+ mask = (1 << 5);
|
||||
+ if (event->delta_x > 0)
|
||||
+ mask = (1 << 6);
|
||||
+ if (!mask)
|
||||
+ return FALSE;
|
||||
+ break;
|
||||
default:
|
||||
return FALSE;
|
||||
}
|
||||
diff --git a/remmina/src/remmina_connection_window.c b/remmina/src/remmina_connection_window.c
|
||||
index dfcc353..5487697 100644
|
||||
--- a/remmina/src/remmina_connection_window.c
|
||||
+++ b/remmina/src/remmina_connection_window.c
|
||||
@@ -1477,6 +1477,20 @@ static gboolean remmina_connection_holder_toolbar_scroll(GtkWidget* widget, GdkE
|
||||
return TRUE;
|
||||
}
|
||||
break;
|
||||
+ case GDK_SCROLL_SMOOTH:
|
||||
+ if (event->delta_y < 0 && opacity > 0)
|
||||
+ {
|
||||
+ remmina_file_set_int(cnnobj->remmina_file, "toolbar_opacity", opacity - 1);
|
||||
+ remmina_connection_holder_update_toolbar_opacity(cnnhld);
|
||||
+ return TRUE;
|
||||
+ }
|
||||
+ if (event->delta_y > 0 && opacity < TOOLBAR_OPACITY_LEVEL)
|
||||
+ {
|
||||
+ remmina_file_set_int(cnnobj->remmina_file, "toolbar_opacity", opacity + 1);
|
||||
+ remmina_connection_holder_update_toolbar_opacity(cnnhld);
|
||||
+ return TRUE;
|
||||
+ }
|
||||
+ break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
--
|
||||
1.8.1.6
|
||||
|
@ -0,0 +1,44 @@
|
||||
commit bed49ad62d78718c0876c000a97c68cc87f12c7c
|
||||
Author: Jean-Louis Dupond <jean-louis@dupond.be>
|
||||
Date: Sat Sep 1 20:56:09 2012 +0200
|
||||
|
||||
Closes #77: Close the SSH tunnel after the connection has been closed
|
||||
|
||||
Index: FreeRDP-Remmina-356c033/remmina/src/remmina_protocol_widget.c
|
||||
===================================================================
|
||||
--- FreeRDP-Remmina-356c033.orig/remmina/src/remmina_protocol_widget.c
|
||||
+++ FreeRDP-Remmina-356c033/remmina/src/remmina_protocol_widget.c
|
||||
@@ -267,13 +267,7 @@ gboolean remmina_protocol_widget_close_c
|
||||
gp->priv->chat_window = NULL;
|
||||
}
|
||||
|
||||
-#ifdef HAVE_LIBSSH
|
||||
- if (gp->priv->ssh_tunnel)
|
||||
- {
|
||||
- remmina_ssh_tunnel_free(gp->priv->ssh_tunnel);
|
||||
- gp->priv->ssh_tunnel = NULL;
|
||||
- }
|
||||
-#endif
|
||||
+ gboolean retval;
|
||||
|
||||
if (!gp->priv->plugin || !gp->priv->plugin->close_connection)
|
||||
{
|
||||
@@ -281,7 +275,17 @@ gboolean remmina_protocol_widget_close_c
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
- return gp->priv->plugin->close_connection(gp);
|
||||
+ retval = gp->priv->plugin->close_connection(gp);
|
||||
+
|
||||
+ #ifdef HAVE_LIBSSH
|
||||
+ if (gp->priv->ssh_tunnel)
|
||||
+ {
|
||||
+ remmina_ssh_tunnel_free(gp->priv->ssh_tunnel);
|
||||
+ gp->priv->ssh_tunnel = NULL;
|
||||
+ }
|
||||
+ #endif
|
||||
+
|
||||
+ return retval;
|
||||
}
|
||||
|
||||
static gboolean remmina_protocol_widget_emit_signal_timeout(gpointer user_data)
|
@ -0,0 +1,39 @@
|
||||
Index: remmina-1.0.0/remmina/desktop/CMakeLists.txt
|
||||
===================================================================
|
||||
--- remmina-1.0.0.orig/remmina/desktop/CMakeLists.txt
|
||||
+++ remmina-1.0.0/remmina/desktop/CMakeLists.txt
|
||||
@@ -38,3 +38,4 @@ install(FILES ${ICON32_DATA} DESTINATION
|
||||
install(FILES ${ICON48_DATA} DESTINATION ${ICON48_DIR})
|
||||
install(FILES ${ICONSVG_DATA} DESTINATION ${ICONSVG_DIR})
|
||||
|
||||
+install(FILES remmina.desktop DESTINATION "${REMMINA_DATADIR}/applications")
|
||||
Index: remmina-1.0.0/CMakeLists.txt
|
||||
===================================================================
|
||||
--- remmina-1.0.0.orig/CMakeLists.txt
|
||||
+++ remmina-1.0.0/CMakeLists.txt
|
||||
@@ -78,7 +78,7 @@ include_directories(.)
|
||||
include_directories(remmina/include)
|
||||
|
||||
set(REMMINA_VERSION "0.9.99.1")
|
||||
-set(REMMINA_DATADIR "${CMAKE_INSTALL_PREFIX}/share/remmina")
|
||||
+set(REMMINA_DATADIR "${CMAKE_INSTALL_PREFIX}/share")
|
||||
set(REMMINA_LOCALEDIR "${CMAKE_INSTALL_PREFIX}/share/locale")
|
||||
set(REMMINA_PLUGINDIR "${CMAKE_INSTALL_PREFIX}/lib/remmina/plugins")
|
||||
|
||||
Index: remmina-1.0.0/remmina/desktop/remmina.desktop
|
||||
===================================================================
|
||||
--- /dev/null
|
||||
+++ remmina-1.0.0/remmina/desktop/remmina.desktop
|
||||
@@ -0,0 +1,12 @@
|
||||
+[Desktop Entry]
|
||||
+Version=1.0
|
||||
+Name=Remmina Remote Desktop Client
|
||||
+Comment=Connect to remote desktops
|
||||
+TryExec=remmina
|
||||
+Exec=remmina
|
||||
+Icon=remmina
|
||||
+Terminal=false
|
||||
+Type=Application
|
||||
+Actions=
|
||||
+Categories=GTK;GNOME;X-GNOME-NetworkSettings;Network;
|
||||
+
|
@ -0,0 +1,35 @@
|
||||
commit 348e01d27869a577ad5df9bf6286f876b34a40c0
|
||||
Author: Jean-Louis Dupond <jean-louis@dupond.be>
|
||||
Date: Mon Sep 10 20:08:00 2012 +0200
|
||||
|
||||
Fix fullscreen mode with multiple monitors
|
||||
|
||||
diff --git a/remmina/src/remmina_connection_window.c b/remmina/src/remmina_connection_window.c
|
||||
index 761b2f4..7a5b214 100644
|
||||
--- a/remmina/src/remmina_connection_window.c
|
||||
+++ b/remmina/src/remmina_connection_window.c
|
||||
@@ -496,13 +496,21 @@ static void remmina_connection_holder_check_resize(RemminaConnectionHolder* cnnh
|
||||
DECLARE_CNNOBJ
|
||||
gboolean scroll_required = FALSE;
|
||||
GdkScreen* screen;
|
||||
+ gint monitor;
|
||||
+ GdkRectangle screen_size;
|
||||
gint screen_width, screen_height;
|
||||
gint server_width, server_height;
|
||||
|
||||
remmina_connection_holder_get_desktop_size(cnnhld, &server_width, &server_height, FALSE);
|
||||
- screen = gdk_screen_get_default();
|
||||
- screen_width = gdk_screen_get_width(screen);
|
||||
- screen_height = gdk_screen_get_height(screen);
|
||||
+ screen = gtk_window_get_screen(GTK_WINDOW(cnnhld->cnnwin));
|
||||
+ monitor = gdk_screen_get_monitor_at_window(screen, gtk_widget_get_window(GTK_WIDGET(cnnhld->cnnwin)));
|
||||
+#ifdef gdk_screen_get_monitor_workarea
|
||||
+ gdk_screen_get_monitor_workarea(screen, monitor, &screen_size);
|
||||
+#else
|
||||
+ gdk_screen_get_monitor_geometry(screen, monitor, &screen_size);
|
||||
+#endif
|
||||
+ screen_width = screen_size.width;
|
||||
+ screen_height = screen_size.height;
|
||||
|
||||
if (!remmina_protocol_widget_get_expand(REMMINA_PROTOCOL_WIDGET(cnnobj->proto))
|
||||
&& (server_width <= 0 || server_height <= 0 || screen_width < server_width
|
@ -0,0 +1,13 @@
|
||||
Index: remmina-1.0.0/CMakeLists.txt
|
||||
===================================================================
|
||||
--- remmina-1.0.0.orig/CMakeLists.txt
|
||||
+++ remmina-1.0.0/CMakeLists.txt
|
||||
@@ -80,7 +80,7 @@ include_directories(remmina/include)
|
||||
set(REMMINA_VERSION "0.9.99.1")
|
||||
set(REMMINA_DATADIR "${CMAKE_INSTALL_PREFIX}/share")
|
||||
set(REMMINA_LOCALEDIR "${CMAKE_INSTALL_PREFIX}/share/locale")
|
||||
-set(REMMINA_PLUGINDIR "${CMAKE_INSTALL_PREFIX}/lib/remmina/plugins")
|
||||
+set(REMMINA_PLUGINDIR "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}/remmina/plugins")
|
||||
|
||||
find_suggested_package(PTHREAD)
|
||||
if(PTHREAD_FOUND)
|
@ -0,0 +1,32 @@
|
||||
commit c422e9c0396e405ef5a3d2a6b24dbc83c20afe2f
|
||||
Author: Jean-Louis Dupond <jean-louis@dupond.be>
|
||||
Date: Wed Apr 25 11:57:39 2012 +0200
|
||||
|
||||
Also fix scrolling on VNC plugin
|
||||
|
||||
Index: FreeRDP-Remmina-356c033/remmina-plugins/rdp/rdp_event.c
|
||||
===================================================================
|
||||
--- FreeRDP-Remmina-356c033.orig/remmina-plugins/rdp/rdp_event.c
|
||||
+++ FreeRDP-Remmina-356c033/remmina-plugins/rdp/rdp_event.c
|
||||
@@ -468,7 +468,7 @@ void remmina_rdp_event_init(RemminaProto
|
||||
gtk_container_add(GTK_CONTAINER(gp), rfi->drawing_area);
|
||||
|
||||
gtk_widget_add_events(rfi->drawing_area, GDK_POINTER_MOTION_MASK | GDK_BUTTON_PRESS_MASK
|
||||
- | GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK);
|
||||
+ | GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK | GDK_SCROLL_MASK);
|
||||
gtk_widget_set_can_focus(rfi->drawing_area, TRUE);
|
||||
|
||||
remmina_plugin_service->protocol_plugin_register_hostkey(gp, rfi->drawing_area);
|
||||
Index: FreeRDP-Remmina-356c033/remmina-plugins/vnc/vnc_plugin.c
|
||||
===================================================================
|
||||
--- FreeRDP-Remmina-356c033.orig/remmina-plugins/vnc/vnc_plugin.c
|
||||
+++ FreeRDP-Remmina-356c033/remmina-plugins/vnc/vnc_plugin.c
|
||||
@@ -1847,7 +1847,7 @@ static void remmina_plugin_vnc_init(Remm
|
||||
gtk_widget_add_events(
|
||||
gpdata->drawing_area,
|
||||
GDK_POINTER_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK
|
||||
- | GDK_KEY_RELEASE_MASK);
|
||||
+ | GDK_KEY_RELEASE_MASK | GDK_SCROLL_MASK);
|
||||
gtk_widget_set_can_focus(gpdata->drawing_area, TRUE);
|
||||
|
||||
#if GTK_VERSION == 3
|
@ -0,0 +1,25 @@
|
||||
From 1901a1e9e5282c1deca2f5f98476e2c7e9243d35 Mon Sep 17 00:00:00 2001
|
||||
From: Jean-Louis Dupond <jean-louis@dupond.be>
|
||||
Date: Mon, 10 Sep 2012 14:12:11 +0200
|
||||
Subject: [PATCH] Closes #63: fix typo when fitting window
|
||||
|
||||
---
|
||||
remmina/src/remmina_connection_window.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/remmina/src/remmina_connection_window.c b/remmina/src/remmina_connection_window.c
|
||||
index 7ff1246..2ba8193 100644
|
||||
--- a/remmina/src/remmina_connection_window.c
|
||||
+++ b/remmina/src/remmina_connection_window.c
|
||||
@@ -436,7 +436,7 @@ static gboolean remmina_connection_holder_toolbar_autofit_restore(RemminaConnect
|
||||
remmina_connection_holder_get_desktop_size(cnnhld, &width, &height, TRUE);
|
||||
gtk_widget_get_allocation(priv->notebook, &na);
|
||||
gtk_widget_get_allocation(cnnobj->scrolled_container, &ca);
|
||||
- gtk_widget_get_allocation(priv->toolbar, &ca);
|
||||
+ gtk_widget_get_allocation(priv->toolbar, &ta);
|
||||
gtk_window_resize(GTK_WINDOW(cnnhld->cnnwin), MAX(1, width + na.width - ca.width),
|
||||
MAX(1, height + ta.height + na.height - ca.height));
|
||||
gtk_container_check_resize(GTK_CONTAINER(cnnhld->cnnwin));
|
||||
--
|
||||
1.8.1.6
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,53 @@
|
||||
From cb0b209b775e08b0529786d18079437a58398621 Mon Sep 17 00:00:00 2001
|
||||
From: Rex Tsai <chihchun@kalug.linux.org.tw>
|
||||
Date: Wed, 7 Mar 2012 16:44:01 +0800
|
||||
Subject: [PATCH] Add --icon/-i option, contributed by Whoopie. fixed #14
|
||||
|
||||
Signed-off-by: Rex Tsai <chihchun@kalug.linux.org.tw>
|
||||
---
|
||||
remmina/src/remmina.c | 8 ++++++++
|
||||
1 file changed, 8 insertions(+)
|
||||
|
||||
diff --git a/remmina/src/remmina.c b/remmina/src/remmina.c
|
||||
index 2a9c74b..c121880 100644
|
||||
--- a/remmina/src/remmina.c
|
||||
+++ b/remmina/src/remmina.c
|
||||
@@ -55,6 +55,7 @@
|
||||
static gboolean remmina_option_quit;
|
||||
static gchar *remmina_option_server;
|
||||
static gchar *remmina_option_protocol;
|
||||
+static gboolean remmina_option_icon;
|
||||
|
||||
static GOptionEntry remmina_options[] =
|
||||
{
|
||||
@@ -68,6 +69,7 @@
|
||||
{ "quit", 'q', 0, G_OPTION_ARG_NONE, &remmina_option_quit, "Quit the application", NULL },
|
||||
{ "server", 's', 0, G_OPTION_ARG_STRING, &remmina_option_server, "Use default server name S", "S" },
|
||||
{ "protocol", 't', 0, G_OPTION_ARG_STRING, &remmina_option_protocol, "Use default protocol T", "T" },
|
||||
+{ "icon", 'i', 0, G_OPTION_ARG_NONE, &remmina_option_icon, "Start as tray icon", NULL },
|
||||
{ NULL } };
|
||||
|
||||
static gint remmina_on_command_line(GApplication *app, GApplicationCommandLine *cmdline)
|
||||
@@ -90,6 +92,7 @@ static gint remmina_on_command_line(GApplication *app, GApplicationCommandLine *
|
||||
remmina_option_plugin = NULL;
|
||||
remmina_option_server = NULL;
|
||||
remmina_option_protocol = NULL;
|
||||
+ remmina_option_icon = FALSE;
|
||||
|
||||
argv = g_application_command_line_get_arguments(cmdline, &argc);
|
||||
|
||||
@@ -157,6 +160,11 @@ static gint remmina_on_command_line(GApplication *app, GApplicationCommandLine *
|
||||
remmina_exec_command(REMMINA_COMMAND_PLUGIN, remmina_option_plugin);
|
||||
executed = TRUE;
|
||||
}
|
||||
+ if (remmina_option_icon)
|
||||
+ {
|
||||
+ remmina_exec_command(REMMINA_COMMAND_NONE, remmina_option_icon);
|
||||
+ executed = TRUE;
|
||||
+ }
|
||||
if (!executed)
|
||||
{
|
||||
remmina_exec_command(REMMINA_COMMAND_MAIN, NULL);
|
||||
--
|
||||
1.8.1.6
|
||||
|
Loading…
Reference in new issue