debian/0000755000000000000000000000000012171003371007161 5ustar debian/remmina-plugin-telepathy.install0000644000000000000000000000016111757515775015521 0ustar usr/lib/remmina/plugins/remmina-plugin-telepathy.so remmina-plugins/telepathy/Remmina.client usr/share/telepathy debian/remmina-plugin-rdp.install0000644000000000000000000000005611757515775014312 0ustar usr/lib/remmina/plugins/remmina-plugin-rdp.so debian/menu0000644000000000000000000000017111757515775010100 0ustar ?package(remmina):needs="X11" section="Applications/Network/Communication"\ title="Remmina" command="/usr/bin/remmina" debian/remmina-common.install0000644000000000000000000000001211757515775013511 0ustar usr/share debian/copyright0000644000000000000000000001455111757515775011153 0ustar Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ Upstream-Name: remmina Upstream-Contact: Vic Lee Source: http://remmina.sourceforge.net Files: * Copyright: 2009-2011, Vic Lee 2011, Marc-Andre Moreau 2012, Daniel M. Weeks License: GPL-2+ Files: remmina-plugins/vnc/libvncserver/common/d3des.* Copyright: 1999, AT&T Laboratories Cambridge License: public-domain Files: remmina-plugins/vnc/libvncserver/common/*lzo* Copyright: 1996-2010, Markus Franz Xaver Johannes Oberhumer License: GPL-2+ Files: remmina-plugins/vnc/libvncserver/common/vncauth.c Copyright: 1999, AT&T Laboratories Cambridge License: GPL-2+ Files: remmina-plugins/vnc/libvncserver/common/zywrletemplate.c Copyright: 2006, Hitachi Systems & Services, Ltd. License: BSD-3-clause Files: remmina-plugins/vnc/libvncserver/libvncserver/* Copyright: 1999, AT&T Laboratories Cambridge 2001-2002, Constantin Kaplinsky 2000, Tridia Corporation 2009, Vic Lee 2005, Johannes E. Schindelin License: GPL-2+ Files: remmina-plugins/vnc/libvncserver/rfb/* Copyright: 2005, Rohit Kumar 2005, Johannes E. Schindelin 2002, RealVNC Ltd. 2001-2002, Constantin Kaplinsky 2000, Tridia Corporation 1999, AT&T Laboratories Cambridge 2001, James Weatherhall License: GPL-2+ Files: libvncserver/rfb/keysym.h Copyright: 1987, X Consortium License: MIT Files: debian/* Copyright: 2009-2011 Luca Falavigna License: GPL-2+ License: GPL-2+ This program 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 program 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 General Public License for more details. . You should have received a copy of the GNU General Public License along with this package; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA . On Debian systems, the full text of the GNU General Public License version 2 can be found in the file `/usr/share/common-licenses/GPL-2'. License: public-domain This software 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. License: BSD-3-clause Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: . * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. . * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. . * Neither the name of the Hitachi Systems & Services, Ltd. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. . THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. License: MIT Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: . The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. . THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. . Except as contained in this notice, the name of the X Consortium shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Software without prior written authorization from the X Consortium. . Copyright 1987 by Digital Equipment Corporation, Maynard, Massachusetts. . All Rights Reserved . Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation, and that the name of Digital not be used in advertising or publicity pertaining to distribution of the software without specific, written prior permission. . DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. debian/changelog0000644000000000000000000003035412171003371011040 0ustar remmina (1.0.0-4ubuntu3) saucy; urgency=low * debian/patches/keywords.patch: update remmina.desktop as well, the file is not updated during the build (lp: #1024480) -- Sebastien Bacher Mon, 15 Jul 2013 16:27:18 +0200 remmina (1.0.0-4ubuntu2) raring; urgency=low * Added missing libs to link, fixing FTBFS (LP: #1163798). -- Daniel T Chen Wed, 03 Apr 2013 12:12:04 -0400 remmina (1.0.0-4ubuntu1) raring; urgency=low [ Alex Chiang ] * Merge from Debian unstable. - Dropped in favor of upstream debian's patches: . install_desktop_file.patch => desktop_file.patch . scroll_smooth.patch => scroll.patch . trayicon_option.patch => systray.patch * Remaining changes: - debian/patches/indicator_set_title.patch: . set a title so the unity-hud doesn't list as "untitled" (lp: #943434) - debian/patches/translations.patch, debian/rules: . improve translation support, add a .desktop.in, update potfiles.in lists, call intltool-update on build (lp: #943279) - debian/patches/keywords.patch: . backport upstream patch to set keywords in the desktop entry, it makes easier to find remmina in the unity dash or gnome-shell (lp: #1024480) - debian/patches/unity_launcher_list.patch: unity launcher list support thanks Nekhelesh Ramananthan (lp: #938026) [ Iain Lane ] * Add Breaks and Replaces from remmina to remmina-common as the .desktop file has moved across. -- Alex Chiang Thu, 17 Jan 2013 16:31:24 +0000 remmina (1.0.0-4) unstable; urgency=low [ Martijn van Brummelen ] * debian/patches/clipboard.patch: - Clipboard support (Closes: #659755). [ Luca Falavigna ] * debian/patches/fullname.patch: - Use X-GNOME-FullName in .desktop file (Closes: #625939). * debian/patches/scroll.patch: - Fix some issues with scrolling (Closes: #670535). * debian/patches/systray.patch: - Implement --icon/-i option (Closes: #661893). * debian/control: - Add dbus-x11 to remmina Depends field (Closes: #668018). - Add Jean-Louis to Uploaders field. - Move VCS repository under collab-maint. -- Luca Falavigna Thu, 24 May 2012 22:37:09 +0200 remmina (1.0.0-3) unstable; urgency=low * debian/patches/desktop_file.patch: - Fix installation path of the desktop file. * debian/rules: - Check for existence of remmina-common directory before trying to access it, fix FTBFS. -- Luca Falavigna Sat, 25 Feb 2012 10:16:51 +0100 remmina (1.0.0-2) unstable; urgency=low * debian/patches/desktop_file.patch: - Restore installation of the .desktop file (Closes: #659542). * debian/patches/toolbar.patch: - Mark main toolbar as a primary toolbar (Closes: #659781). * debian/patches/datadir.patch: - Adjust location of REMMINA_DATADIR to allow install of icons in the correct location. * debian/control: - Improve description of the remmina-plugin-gnome package. - Bump Standards-Version to 3.9.3. * debian/copyright: - Format now points to copyright-format site. -- Luca Falavigna Sat, 25 Feb 2012 01:21:41 +0100 remmina (1.0.0-1ubuntu8) quantal; urgency=low * debian/patches/09_keywords.patch: - backport upstream patch to set keywords in the desktop entry, it makes easier to find remmina in the unity dash or gnome-shell (lp: #1024480) -- Sebastien Bacher Fri, 27 Jul 2012 16:57:29 +0200 remmina (1.0.0-1ubuntu6.1) precise-proposed; urgency=low * debian/patches/clipboard.patch: add clipboard support. (LP: #937522) -- Jean-Louis Dupond Tue, 08 May 2012 20:50:11 +0200 remmina (1.0.0-1ubuntu6) precise-proposed; urgency=low * debian/patches/scroll_smooth.patch: fix scrolling with GDK_SCROLL_SMOOTH (LP: #952964). -- Jean-Louis Dupond Sun, 22 Apr 2012 23:10:05 +0200 remmina (1.0.0-1ubuntu5) precise; urgency=low * debian/control: build-depends on intltool * debian/patches/translations.patch: set the gettext domain as well -- Sebastien Bacher Thu, 22 Mar 2012 12:41:23 +0100 remmina (1.0.0-1ubuntu4) precise; urgency=low * debian/patches/translations.patch, debian/rules: - improve translation support, add a .desktop.in, update potfiles.in lists, call intltool-update on build (lp: #943279) -- Sebastien Bacher Thu, 22 Mar 2012 11:44:52 +0100 remmina (1.0.0-1ubuntu3) precise; urgency=low * debian/patches/unity_launcher_list.patch: unity launcher list support thanks Nekhelesh Ramananthan (lp: #938026) -- Sebastien Bacher Thu, 01 Mar 2012 22:45:29 +0100 remmina (1.0.0-1ubuntu2) precise; urgency=low * debian/control: - updated libappindicator requirement * debian/patches/indicator_set_title.patch: - set a title so the unity-hud doesn't list as "untitled" (lp: #943434) -- Sebastien Bacher Wed, 29 Feb 2012 18:53:46 +0100 remmina (1.0.0-1ubuntu1) precise; urgency=low * debian/control, debian/rules: Build with appindicator support. (LP: #926619) * debian/patches/trayicon_option.patch: Add -i option to only start as a tray icon. * debian/patches/install_desktop_file.patch: Add desktop file. (LP: #931336) -- Whoopie Wed, 15 Feb 2012 13:27:09 +0100 remmina (1.0.0-1) unstable; urgency=low * New upstream release. - Compatible with FreeRDP 1.0 (Closes: #658363). - Ported to GTK3, this also fixes an incompatibility with GTK2 and recent Avahi with GTK3 support, which lead to crashes when scanning network services (Closes: #626499). * debian/patches/libvncserver.patch: - Do not use convenience copy of libvncserver. * debian/patches/g_thread_init.patch: - Do not use deprecated g_thread_init function. * debian/patches/REMMINA_COMMAND_NONE.patch: - Removed, obsoleted by GApplication port. * debian/clean: - Remove spurious files created at build-time. * debian/compat: - Bump compatibility level to 9. * debian/control: - Refresh build-dependencies to match new structure. - Drop remmina-dev package, no longer used. - Build packages once provided by remmina-plugins. - Provide remmina-common package. - Provide remmina-plugin-gnome package. * debian/copyright: - Refresh copyright information. * debian/docs: - Documentation is no longer accurate, do not ship it anymore. * debian/remmina-dev.install: - Drop remmina-dev package, no longer used. * debian/remmina-plugin-telepathy.install: - Adjust location for Remmina.client. - Disable D-BUS support for now. * debian/rules: - Compile with -DWITH_APPINDICATOR=OFF. - Do not treat plugins as shared libraries. * debian/watch: - Adjust watch file to match new download location. -- Luca Falavigna Sat, 11 Feb 2012 17:28:48 +0100 remmina (0.9.3-3) unstable; urgency=low * debian/patches/REMMINA_COMMAND_NONE.patch: - Adjust REMMINA_COMMAND_NONE value to match libunique command ID to avoid launching a second instance when an existing remmina process is already running (Closes: #640291). * debian/control: - 0.9 series replaces remmina-gnome and remmina-xfce packages, which have been removed from Debian. Add Replaces field to handle removal of the obsolete packages (Closes: #616289). - Bump Standards-Version to 3.9.2, no changes required. * debian/copyright: - Use DEP-5 syntax. -- Luca Falavigna Sat, 01 Oct 2011 23:25:51 +0200 remmina (0.9.3-2) unstable; urgency=low * Upload to unstable. * debian/copyright: - Update copyright years. -- Luca Falavigna Sun, 06 Feb 2011 19:05:31 +0100 remmina (0.9.3-1) experimental; urgency=low * New upstream bugfix release. * debian/control: - Add Breaks: remmina-plugin-data (<= 0.9) field to make sure plugins are compatible with current version (Closes: #610443). -- Luca Falavigna Sat, 22 Jan 2011 14:36:56 +0100 remmina (0.9.2-1) experimental; urgency=low * New upstream bugfix release. * debian/control: - Remove transitional grdc package, now obsolete. -- Luca Falavigna Tue, 28 Dec 2010 12:05:08 +0100 remmina (0.9.0-1) experimental; urgency=low * New upstream release. - Quick connect menu removed and consolidated with Connection -> New; other Edit menu items moved under Connection menu (Closes: #591755). - New resolution button to easily adjust or add screen resolutions without passing for Preferences dialog (Closes: #595102). -- Luca Falavigna Sun, 12 Dec 2010 18:35:18 +0100 remmina (0.8.3-1) unstable; urgency=low * New upstream bugfix release. -- Luca Falavigna Tue, 26 Oct 2010 22:40:18 +0200 remmina (0.8.2-1) unstable; urgency=low * New upstream bugfix release. - Fix segfault which prevented display of a warning when a saved connection requires a missing plugin (Closes: #590540). -- Luca Falavigna Wed, 01 Sep 2010 22:11:34 +0200 remmina (0.8.1-1) unstable; urgency=low * New upstream bugfix release. * debian/control: - Bump Standards-Version to 3.9.1, no changes required. -- Luca Falavigna Sat, 31 Jul 2010 13:05:22 +0200 remmina (0.8.0-1) unstable; urgency=low * New upstream release. * debian/control: - Bump Standards-Version to 3.9.0, no changes required. -- Luca Falavigna Sun, 11 Jul 2010 23:40:47 +0200 remmina (0.7.99.1-1) experimental; urgency=low * New upstream beta release. - Add IPv6 support (Closes: #580456). * debian/control: - No longer build-depend on libvncserver-dev and libgnutls-dev. - Add remmina-dev package to provide development headers. - Drop rdesktop from Depends, add most commonly used plugins to Recommends, due to new plugin design. * debian/copyright: - Adjust copyright information, drop older entries. * debian/remmina-dev.install: - Install remmina-dev files into correct package. -- Luca Falavigna Sat, 26 Jun 2010 10:29:52 +0200 remmina (0.7.5-1) unstable; urgency=low * New upstream release. * Switch to forma 3.0 (quilt). -- Luca Falavigna Tue, 04 May 2010 21:15:46 +0200 remmina (0.7.4-1) unstable; urgency=low * New upstream release. * Bump Standards-Version to 3.8.4, no changes required. -- Luca Falavigna Sat, 20 Feb 2010 19:12:35 +0100 remmina (0.7.3-1) unstable; urgency=low * New upstream release. - Allow connecting to a VNC server via SSH tunnel by specifying display number instead of TCP port (Closes: #563969). -- Luca Falavigna Tue, 26 Jan 2010 20:17:14 +0100 remmina (0.7.2-1) unstable; urgency=low * New upstream release. -- Luca Falavigna Fri, 08 Jan 2010 19:26:38 +0100 remmina (0.7.1-1) unstable; urgency=low * New upstream release. -- Luca Falavigna Mon, 28 Dec 2009 15:48:13 +0100 remmina (0.7.0-2) unstable; urgency=low * debian/copyright: - Add missing copyright holders. -- Luca Falavigna Wed, 16 Dec 2009 20:06:01 +0100 remmina (0.7.0-1) unstable; urgency=low * Grdc is now Remmina. * New upstream release. * debian/patches/desktop_file.patch: - Removed, fixed upstream. * debian/control: - Refresh build-dependencies. - Move rdesktop to Depends. - Improve long descrription adding new supported protocols. * debian/copyright: - Adjust copyright informations. * debian/rules: - Generate po/POTFILES.skip at runtime to avoid generating po files for unneeded elements. -- Luca Falavigna Mon, 14 Dec 2009 20:24:43 +0100 grdc (0.6.0-2) unstable; urgency=low * Add libgcrypt-dev to Build-Depends. * Build-depend on libssh-dev instead of libssh-2-dev. * Switch to Section: gnome to match override. -- Luca Falavigna Tue, 27 Oct 2009 20:14:12 +0100 grdc (0.6.0-1) unstable; urgency=low * Initial release (Closes: #537292). -- Luca Falavigna Tue, 25 Aug 2009 23:59:55 +0200 debian/rules0000755000000000000000000000100512076020437010243 0ustar #!/usr/bin/make -f %: dh $@ override_dh_install: dh_install cd remmina/po; intltool-update --pot --verbose -g remmina [ -d debian/remmina-common ] && \ find $(CURDIR)/debian/remmina-common -name "*remmina.desktop" -delete && \ find $(CURDIR)/debian/remmina-common -type d -empty -delete || true override_dh_makeshlibs: for plugin in rdp vnc xdmcp nx telepathy; do \ dh_makeshlibs -premmina-plugin-$$plugin -Xremmina-plugin-$$plugin.so; \ done override_dh_clean: -rm remmina/po/remmina.pot dh_clean debian/clean0000644000000000000000000000006711757515775010222 0ustar config.h remmina-plugins/vnc/libvncserver/rfb/rfbint.h debian/source/0000755000000000000000000000000011757515775010512 5ustar debian/source/format0000644000000000000000000000001411757515775011720 0ustar 3.0 (quilt) debian/remmina.10000644000000000000000000000147111757515775010727 0ustar .TH remmina 1 2009-12-12 "remmina" .SH NAME remmina \- remote desktop client for GNOME desktop environment .SH SYNOPSIS .B remmina .SH DESCRIPTION Remmina is a remote desktop connection client able to display and control a remote desktop session. It can connect to a VNC platform as well as windows terminal servers. .SH AUTHORS Remmina was written by Vic Lee .PP This manual page was written by Luca Falavigna .SH COPYRIGHT This program 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, or (at your option) any later version. .PP On Debian GNU/Linux systems, the complete text of the GNU General Public License can be found in `/usr/share/common-licenses/GPL-2' debian/remmina-plugin-gnome.install0000644000000000000000000000006111757515775014626 0ustar usr/lib/remmina/plugins/remmina-plugins-gnome.so debian/remmina-plugin-nx.install0000644000000000000000000000005511757515775014151 0ustar usr/lib/remmina/plugins/remmina-plugin-nx.so debian/control0000644000000000000000000000763012076021414010574 0ustar Source: remmina Section: gnome Priority: optional Maintainer: Ubuntu Developers XSBC-Original-Maintainer: Luca Falavigna Uploaders: Jean-Louis Dupond Build-Depends: debhelper (>= 9~), cmake (>= 2.6), libgtk-3-dev, libgcrypt11-dev, libssh-dev (>= 0.4), libvte-2.90-dev, libxkbfile-dev, libfreerdp-dev (>= 1.0), libtelepathy-glib-dev, libjpeg-dev, libgnutls-dev, libgnome-keyring-dev, libavahi-ui-gtk3-dev (>= 0.6.0), libvncserver-dev, libappindicator3-dev, intltool Standards-Version: 3.9.3 Homepage: http://remmina.sourceforge.net/ Vcs-Git: git://git.debian.org/git/collab-maint/remmina.git Vcs-Browser: http://git.debian.org/git/collab-maint/remmina.git Package: remmina Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, remmina-common (= ${source:Version}), dbus-x11 Recommends: remmina-plugin-rdp, remmina-plugin-vnc Breaks: remmina-plugin-data (<= 0.9), remmina-common (<= 1.0.0-1ubuntu8) Replaces: remmina-gnome, remmina-xfce, remmina-common (<= 1.0.0-1ubuntu8) Description: remote desktop client for GNOME desktop environment Remmina is a remote desktop connection client able to display and control a remote desktop session. . It supports multiple network protocols in an integrated and consistant user interface. Currently RDP, VNC, NX, XDMCP and SSH protocols are supported. Package: remmina-common Architecture: all Depends: ${misc:Depends} Recommends: remmina Breaks: remmina (<< 1.0.0), remmina-plugin-data Replaces: remmina (<< 1.0.0), remmina-plugin-data Description: common files for remmina remote desktop client Remmina is a remote desktop connection client able to display and control a remote desktop session. . This package contains the common files. Package: remmina-plugin-rdp Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, remmina (= ${binary:Version}), libfreerdp-plugins-standard Description: RDP plugin for remmina remote desktop client Remmina is a remote desktop connection client able to display and control a remote desktop session. . This package contains the RDP plugin for Remmina. Package: remmina-plugin-vnc Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, remmina (= ${binary:Version}) Description: VNC plugin for remmina remote desktop client Remmina is a remote desktop connection client able to display and control a remote desktop session. . This package contains the VNC plugin for Remmina. Package: remmina-plugin-xdmcp Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, remmina (= ${binary:Version}), xserver-xephyr Description: XDMCP plugin for remmina remote desktop client Remmina is a remote desktop connection client able to display and control a remote desktop session. . This package contains the XDMCP plugin for Remmina. Package: remmina-plugin-nx Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, remmina (= ${binary:Version}), nxproxy Description: NX plugin for remmina remote desktop client Remmina is a remote desktop connection client able to display and control a remote desktop session. . This package contains the NX plugin for Remmina. Package: remmina-plugin-telepathy Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, remmina (= ${binary:Version}) Description: Telepathy plugin for remmina remote desktop client Remmina is a remote desktop connection client able to display and control a remote desktop session. . This package contains the Telepathy plugin for Remmina. Package: remmina-plugin-gnome Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, remmina (= ${binary:Version}) Description: GNOME plugin for remmina remote desktop client Remmina is a remote desktop connection client able to display and control a remote desktop session. . This package contains the GNOME Keyring plugin for Remmina, which allows one to store and retrieve passwords from GNOME Keyring. debian/install0000644000000000000000000000003711757515775010603 0ustar usr/bin usr/share/applications debian/remmina-plugin-xdmcp.install0000644000000000000000000000006011757515775014633 0ustar usr/lib/remmina/plugins/remmina-plugin-xdmcp.so debian/manpages0000644000000000000000000000002111757515775010721 0ustar debian/remmina.1 debian/compat0000644000000000000000000000000211757515775010410 0ustar 9 debian/watch0000644000000000000000000000011111757515775010234 0ustar version=3 https://github.com/FreeRDP/Remmina/tags .*/tarball/(\d[\d\.]+) debian/patches/0000755000000000000000000000000012171003521010605 5ustar debian/patches/datadir.patch0000644000000000000000000000123211757515775013270 0ustar Description: Adjust location of REMMINA_DATADIR Author: Luca Falavigna Index: remmina/CMakeLists.txt =================================================================== --- remmina.orig/CMakeLists.txt 2012-02-25 01:19:12.786148529 +0100 +++ remmina/CMakeLists.txt 2012-02-25 01:19:21.306148791 +0100 @@ -78,7 +78,7 @@ 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") debian/patches/unity_launcher_list.patch0000644000000000000000000000153312076020437015725 0ustar # Description: list for the unity launcher # Ubuntu: https://launchpad.net/bugs/938026 # Upstream: https://github.com/FreeRDP/Remmina/commits/master === modified file 'remmina/remmina/desktop/remmina.desktop' Index: remmina-1.0.0-4ubuntu1/remmina/desktop/remmina.desktop =================================================================== --- remmina-1.0.0-4ubuntu1.orig/remmina/desktop/remmina.desktop 2012-12-23 14:11:58.000000000 -0800 +++ remmina-1.0.0-4ubuntu1/remmina/desktop/remmina.desktop 2012-12-23 14:17:31.524267461 -0800 @@ -11,3 +11,14 @@ Type=Application Actions= Categories=GTK;GNOME;X-GNOME-NetworkSettings;Network; +Actions=Profile;Tray; + +[Desktop Action Profile] +Name=Create a New Connection Profile +Exec=remmina --new +OnlyShowIn=Unity; + +[Desktop Action Tray] +Name=Start Remmina Minimized +Exec=remmina --icon +OnlyShowIn=Unity; debian/patches/toolbar.patch0000644000000000000000000000142511757515775013326 0ustar Description: Mark main toolbar as a primary toolbar Author: Robert Ancell Bug: http://bugs.debian.org/659781 Index: remmina/remmina/src/remmina_main.c =================================================================== --- remmina.orig/remmina/src/remmina_main.c 2012-02-23 22:15:39.953762296 +0100 +++ remmina/remmina/src/remmina_main.c 2012-02-23 22:40:59.633808853 +0100 @@ -1120,6 +1120,7 @@ gtk_box_pack_start(GTK_BOX(vbox), menubar, FALSE, FALSE, 0); priv->toolbar = gtk_ui_manager_get_widget(uimanager, "/ToolBar"); + gtk_style_context_add_class(gtk_widget_get_style_context(priv->toolbar), GTK_STYLE_CLASS_PRIMARY_TOOLBAR); gtk_box_pack_start(GTK_BOX(vbox), priv->toolbar, FALSE, FALSE, 0); remmina_main_create_quick_search(remminamain); debian/patches/clipboard.patch0000644000000000000000000004432111757515775013625 0ustar Description: Clipboard support Author: Jean-Louis Dupond Index: b/remmina-plugins/rdp/rdp_cliprdr.h =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 +++ b/remmina-plugins/rdp/rdp_cliprdr.h 2012-05-24 21:27:36.538073783 +0200 @@ -0,0 +1,33 @@ +/* + * Remmina - The GTK+ Remote Desktop Client + * Copyright (C) 2010-2011 Vic Lee + * Copyright (C) 2012-2012 Jean-Louis Dupond + * + * This program 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 program 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 General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, + * Boston, MA 02111-1307, USA. + */ + +#ifndef __REMMINA_RDP_CLIPRDR_H__ +#define __REMMINA_RDP_CLIPRDR_H__ + +G_BEGIN_DECLS + +RDP_EVENT* remmina_rdp_cliprdr_get_event(uint16 event_type); +int remmina_rdp_cliprdr_send_format_list_event(RemminaProtocolWidget* gp); +void remmina_handle_channel_event(RemminaProtocolWidget* gp, RDP_EVENT* event); + +G_END_DECLS + +#endif Index: b/remmina-plugins/rdp/CMakeLists.txt =================================================================== --- a/remmina-plugins/rdp/CMakeLists.txt 2012-05-24 21:24:24.200364889 +0200 +++ b/remmina-plugins/rdp/CMakeLists.txt 2012-05-24 21:27:36.538073783 +0200 @@ -33,6 +33,8 @@ rdp_gdi.h rdp_graphics.c rdp_graphics.h + rdp_cliprdr.c + rdp_cliprdr.h ) add_library(remmina-plugin-rdp ${REMMINA_PLUGIN_RDP_SRCS}) Index: b/remmina-plugins/rdp/rdp_event.c =================================================================== --- a/remmina-plugins/rdp/rdp_event.c 2012-05-24 21:24:24.200364889 +0200 +++ b/remmina-plugins/rdp/rdp_event.c 2012-05-24 21:27:36.538073783 +0200 @@ -452,6 +452,16 @@ return TRUE; } +static gboolean remmina_rdp_event_on_clipboard(GtkClipboard *clipboard, GdkEvent *event, RemminaProtocolWidget *gp) +{ + RemminaPluginRdpEvent rdp_event = { 0 }; + + rdp_event.type = REMMINA_RDP_EVENT_TYPE_CLIPBOARD; + remmina_rdp_event_event_push(gp, &rdp_event); + + return TRUE; +} + void remmina_rdp_event_init(RemminaProtocolWidget* gp) { gint n; @@ -461,6 +471,7 @@ XPixmapFormatValues* pf; XPixmapFormatValues* pfs; rfContext* rfi; + GtkClipboard* clipboard; rfi = GET_DATA(gp); rfi->drawing_area = gtk_drawing_area_new(); @@ -499,6 +510,13 @@ g_signal_connect(G_OBJECT(rfi->drawing_area), "key-release-event", G_CALLBACK(remmina_rdp_event_on_key), gp); + RemminaFile* remminafile = remmina_plugin_service->protocol_plugin_get_file(gp); + if (!remmina_plugin_service->file_get_int(remminafile, "disableclipboard", FALSE)) + { + clipboard = gtk_widget_get_clipboard(rfi->drawing_area, GDK_SELECTION_CLIPBOARD); + rfi->clipboard_handler = g_signal_connect(clipboard, "owner-change", G_CALLBACK(remmina_rdp_event_on_clipboard), gp); + } + rfi->pressed_keys = g_array_new(FALSE, TRUE, sizeof (gint)); rfi->event_queue = g_async_queue_new_full(g_free); rfi->ui_queue = g_async_queue_new(); @@ -547,6 +565,13 @@ rfi = GET_DATA(gp); + + /* unregister the clipboard monitor */ + if (rfi->clipboard_handler) + { + g_signal_handler_disconnect(G_OBJECT(gtk_widget_get_clipboard(rfi->drawing_area, GDK_SELECTION_CLIPBOARD)), rfi->clipboard_handler); + rfi->clipboard_handler = NULL; + } if (rfi->scale_handler) { g_source_remove(rfi->scale_handler); Index: b/remmina-plugins/rdp/rdp_plugin.c =================================================================== --- a/remmina-plugins/rdp/rdp_plugin.c 2012-05-24 21:24:24.204362890 +0200 +++ b/remmina-plugins/rdp/rdp_plugin.c 2012-05-24 21:27:36.538073783 +0200 @@ -24,6 +24,7 @@ #include "rdp_graphics.h" #include "rdp_file.h" #include "rdp_settings.h" +#include "rdp_cliprdr.h" #include #include @@ -31,6 +32,7 @@ #include #include #include +#include #define REMMINA_RDP_FEATURE_TOOL_REFRESH 1 #define REMMINA_RDP_FEATURE_SCALE 2 @@ -155,6 +157,14 @@ input->MouseEvent(input, event->mouse_event.flags, event->mouse_event.x, event->mouse_event.y); break; + case REMMINA_RDP_EVENT_TYPE_CLIPBOARD: + if (rfi->clipboard_wait <= 0) + { + remmina_rdp_cliprdr_send_format_list_event(gp); + rfi->clipboard_wait = 0; + } + rfi->clipboard_wait--; + break; } g_free(event); @@ -545,6 +555,7 @@ fd_set rfds_set; fd_set wfds_set; rfContext* rfi; + RDP_EVENT* event; memset(rfds, 0, sizeof(rfds)); memset(wfds, 0, sizeof(wfds)); @@ -618,6 +629,12 @@ { break; } + else + { + event = freerdp_channels_pop_event(rfi->channels); + if (event) + remmina_handle_channel_event(gp, event); + } /* check ui */ if (!rf_check_fds(gp)) { Index: b/remmina-plugins/rdp/rdp_cliprdr.c =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 +++ b/remmina-plugins/rdp/rdp_cliprdr.c 2012-05-24 21:27:36.538073783 +0200 @@ -0,0 +1,450 @@ +/* + * Remmina - The GTK+ Remote Desktop Client + * Copyright (C) 2012-2012 Jean-Louis Dupond + * + * This program 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 program 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 General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, + * Boston, MA 02111-1307, USA. + */ + +#include "rdp_plugin.h" +#include "rdp_cliprdr.h" + +#include +#include +#include +#include + +/* + * Get the formats we can export based on the current clipboard data. + */ +void remmina_rdp_cliprdr_get_target_types(uint32** dst_formats, uint16* size, GdkAtom* types, int count) +{ + int i; + gboolean image = FALSE; + gboolean text = FALSE; + gboolean textutf8 = FALSE; + int matches = 1; + uint32* formats = (uint32*) xmalloc(sizeof(uint32) * (count+1)); + + formats[0] = CB_FORMAT_RAW; + for (i = 0; i < count; i++) + { + GdkAtom atom = GDK_POINTER_TO_ATOM(types[i]); + gchar* name = gdk_atom_name(atom); + if (g_strcmp0("UTF8_STRING", name) == 0 || g_strcmp0("text/plain;charset=utf-8", name) == 0) + { + textutf8 = TRUE; + } + if (g_strcmp0("TEXT", name) == 0 || g_strcmp0("text/plain", name) == 0) + { + text = TRUE; + } + if (g_strcmp0("text/html", name) == 0) + { + formats[matches] = CB_FORMAT_HTML; + matches++; + } + if (g_strcmp0("image/png", name) == 0) + { + formats[matches] = CB_FORMAT_PNG; + image = TRUE; + matches++; + } + if (g_strcmp0("image/jpeg", name) == 0) + { + formats[matches] = CB_FORMAT_JPEG; + image = TRUE; + matches++; + } + if (g_strcmp0("image/bmp", name) == 0) + { + formats[matches] = CB_FORMAT_DIB; + image = TRUE; + matches++; + } + g_free(name); + } + //Only add text formats if we don't have image formats + if (!image) + { + if (textutf8) + { + formats[matches] = CB_FORMAT_UNICODETEXT; + matches++; + } + if (text) + { + formats[matches] = CB_FORMAT_TEXT; + matches++; + } + } + + *size = (uint16)matches; + *dst_formats = (uint32*) xmalloc(sizeof(uint32) * matches); + memcpy(*dst_formats, formats, sizeof(uint32) * matches); + g_free(formats); +} + +int remmina_rdp_cliprdr_send_format_list_event(RemminaProtocolWidget* gp) +{ + GtkClipboard* clipboard; + GdkAtom* targets; + gboolean result = 0; + gint count; + RDP_EVENT* rdp_event; + RDP_CB_FORMAT_LIST_EVENT* format_list_event; + rfContext* rfi = GET_DATA(gp); + + /* Lets see if we have something in our clipboard */ + THREADS_ENTER + clipboard = gtk_widget_get_clipboard(rfi->drawing_area, GDK_SELECTION_CLIPBOARD); + if (clipboard) + { + result = gtk_clipboard_wait_for_targets(clipboard, &targets, &count); + } + THREADS_LEAVE + + if (!result) + return 1; + + rdp_event = (RDP_EVENT*) xnew(RDP_CB_FORMAT_LIST_EVENT); + rdp_event->event_class = RDP_EVENT_CLASS_CLIPRDR; + rdp_event->event_type = RDP_EVENT_TYPE_CB_FORMAT_LIST; + format_list_event = (RDP_CB_FORMAT_LIST_EVENT*) rdp_event; + + remmina_rdp_cliprdr_get_target_types(&format_list_event->formats, &format_list_event->num_formats, targets, count); + g_free(targets); + + return freerdp_channels_send_event(rfi->channels, (RDP_EVENT*) format_list_event); +} + +static uint8* lf2crlf(uint8* data, int* size) +{ + uint8 c; + uint8* outbuf; + uint8* out; + uint8* in_end; + uint8* in; + int out_size; + + out_size = (*size) * 2 + 1; + outbuf = (uint8*) xmalloc(out_size); + out = outbuf; + in = data; + in_end = data + (*size); + + while (in < in_end) + { + c = *in++; + if (c == '\n') + { + *out++ = '\r'; + *out++ = '\n'; + } + else + { + *out++ = c; + } + } + + *out++ = 0; + *size = out - outbuf; + + return outbuf; +} + +static void crlf2lf(uint8* data, int* size) +{ + uint8 c; + uint8* out; + uint8* in; + uint8* in_end; + + out = data; + in = data; + in_end = data + (*size); + + while (in < in_end) + { + c = *in++; + + if (c != '\r') + *out++ = c; + } + + *size = out - data; +} + +uint8* remmina_rdp_cliprdr_get_data(RemminaProtocolWidget* gp, uint32 format, int* size) +{ + rfContext* rfi = GET_DATA(gp); + GtkClipboard* clipboard; + uint8* inbuf = NULL; + uint8* outbuf = NULL; + GdkPixbuf *image = NULL; + + THREADS_ENTER + clipboard = gtk_widget_get_clipboard(rfi->drawing_area, GDK_SELECTION_CLIPBOARD); + if (clipboard) + { + if (format == CB_FORMAT_TEXT || format == CB_FORMAT_UNICODETEXT || format == CB_FORMAT_HTML) + { + inbuf = (uint8*)gtk_clipboard_wait_for_text(clipboard); + } + if (format == CB_FORMAT_PNG || format == CB_FORMAT_JPEG || format == CB_FORMAT_DIB) + { + image = gtk_clipboard_wait_for_image(clipboard); + } + } + THREADS_LEAVE + + /* No data received, send nothing */ + if (inbuf == NULL && image == NULL) + { + *size = 0; + return NULL; + } + + + if (format == CB_FORMAT_TEXT || format == CB_FORMAT_HTML || format == CB_FORMAT_UNICODETEXT) + { + *size = strlen((char*)inbuf); + inbuf = lf2crlf(inbuf, size); + if (format == CB_FORMAT_TEXT) + { + outbuf = inbuf; + } + if (format == CB_FORMAT_HTML) + { + //TODO: check if we need special handling for HTML + outbuf = inbuf; + } + if (format == CB_FORMAT_UNICODETEXT) + { + size_t out_size; + UNICONV* uniconv; + + uniconv = freerdp_uniconv_new(); + outbuf = (uint8*) freerdp_uniconv_out(uniconv, (char*) inbuf, &out_size); + freerdp_uniconv_free(uniconv); + g_free(inbuf); + *size = out_size + 2; + } + } + if (format == CB_FORMAT_PNG || format == CB_FORMAT_JPEG || format == CB_FORMAT_DIB) + { + gchar* data; + gsize buffersize; + if (format == CB_FORMAT_PNG) + { + gdk_pixbuf_save_to_buffer(image, &data, &buffersize, "png", NULL, NULL); + outbuf = (uint8*) xmalloc(buffersize); + memcpy(outbuf, data, buffersize); + *size = buffersize; + } + if (format == CB_FORMAT_JPEG) + { + gdk_pixbuf_save_to_buffer(image, &data, &buffersize, "jpeg", NULL, NULL); + outbuf = (uint8*) xmalloc(buffersize); + memcpy(outbuf, data, buffersize); + *size = buffersize; + } + if (format == CB_FORMAT_DIB) + { + gdk_pixbuf_save_to_buffer(image, &data, &buffersize, "bmp", NULL, NULL); + *size = buffersize - 14; + outbuf = (uint8*) xmalloc(*size); + memcpy(outbuf, data + 14, *size); + } + g_object_unref(image); + } + + return outbuf; +} + +void remmina_rdp_cliprdr_parse_response_event(RemminaProtocolWidget* gp, RDP_EVENT* event) +{ + GtkClipboard* clipboard; + GdkPixbuf *image = NULL; + uint8* data; + int size; + gboolean text = FALSE; + gboolean img = FALSE; + rfContext* rfi = GET_DATA(gp); + RDP_CB_DATA_RESPONSE_EVENT* data_response_event; + GdkPixbufLoader *pixbuf; + data_response_event = (RDP_CB_DATA_RESPONSE_EVENT*) event; + data = data_response_event->data; + size = data_response_event->size; + + if (rfi->requested_format == CB_FORMAT_TEXT || rfi->requested_format == CB_FORMAT_UNICODETEXT || rfi->requested_format == CB_FORMAT_HTML) + { + if (rfi->requested_format == CB_FORMAT_UNICODETEXT) + { + UNICONV* uniconv; + + uniconv = freerdp_uniconv_new(); + data = (uint8*) freerdp_uniconv_in(uniconv, data, size); + size = strlen((char*) data); + freerdp_uniconv_free(uniconv); + } + crlf2lf(data, &size); + text = TRUE; + } + if (rfi->requested_format == CB_FORMAT_DIB || rfi->requested_format == CB_FORMAT_PNG || rfi->requested_format == CB_FORMAT_JPEG) + { + /* Reconstruct header */ + if (rfi->requested_format == CB_FORMAT_DIB) + { + STREAM* s; + uint16 bpp; + uint32 offset; + uint32 ncolors; + + s = stream_new(0); + stream_attach(s, data, size); + stream_seek(s, 14); + stream_read_uint16(s, bpp); + stream_read_uint32(s, ncolors); + offset = 14 + 40 + (bpp <= 8 ? (ncolors == 0 ? (1 << bpp) : ncolors) * 4 : 0); + stream_detach(s); + stream_free(s); + + s = stream_new(14 + size); + stream_write_uint8(s, 'B'); + stream_write_uint8(s, 'M'); + stream_write_uint32(s, 14 + size); + stream_write_uint32(s, 0); + stream_write_uint32(s, offset); + stream_write(s, data, size); + + data = stream_get_head(s); + size = stream_get_length(s); + stream_detach(s); + stream_free(s); + } + pixbuf = gdk_pixbuf_loader_new(); + gdk_pixbuf_loader_write(pixbuf, data, size, NULL); + image = gdk_pixbuf_loader_get_pixbuf(pixbuf); + img = TRUE; + } + + THREADS_ENTER + clipboard = gtk_widget_get_clipboard(rfi->drawing_area, GDK_SELECTION_CLIPBOARD); + if (clipboard) + { + if (text || img) + { + rfi->clipboard_wait = 2; + } + if (text) + { + gtk_clipboard_set_text(clipboard, (gchar*)data, size); + gtk_clipboard_store(clipboard); + } + if (img) + { + gtk_clipboard_set_image(clipboard, image); + gtk_clipboard_store(clipboard); + gdk_pixbuf_loader_close(pixbuf, NULL); + g_object_unref(pixbuf); + } + } + THREADS_LEAVE + +} + +void remmina_handle_channel_event(RemminaProtocolWidget* gp, RDP_EVENT* event) +{ + RDP_EVENT* rdp_event = NULL; + rfContext* rfi = GET_DATA(gp); + + switch (event->event_class) + { + case RDP_EVENT_CLASS_CLIPRDR: + if (event->event_type == RDP_EVENT_TYPE_CB_MONITOR_READY) + { + /* Sending our format list */ + remmina_rdp_cliprdr_send_format_list_event(gp); + } + if (event->event_type == RDP_EVENT_TYPE_CB_FORMAT_LIST) + { + /* We received a FORMAT_LIST from the server, update our clipboard */ + int i; + uint32 format = CB_FORMAT_RAW; + RDP_CB_FORMAT_LIST_EVENT* format_list_event; + + format_list_event = (RDP_CB_FORMAT_LIST_EVENT*) event; + + for (i = 0; i < format_list_event->num_formats; i++) + { + if (format_list_event->formats[i] > format) + { + if (format_list_event->formats[i] == CB_FORMAT_UNICODETEXT) + { + format = CB_FORMAT_UNICODETEXT; + } + if (format_list_event->formats[i] == CB_FORMAT_DIB) + { + format = CB_FORMAT_DIB; + } + if (format_list_event->formats[i] == CB_FORMAT_JPEG) + { + format = CB_FORMAT_JPEG; + } + if (format_list_event->formats[i] == CB_FORMAT_PNG) + { + format = CB_FORMAT_PNG; + } + if (format_list_event->formats[i] == CB_FORMAT_TEXT) + { + format = CB_FORMAT_TEXT; + } + } + } + rfi->requested_format = format; + + /* Request Clipboard data of the server */ + RDP_CB_DATA_REQUEST_EVENT* data_request_event; + rdp_event = (RDP_EVENT*) xnew(RDP_CB_DATA_REQUEST_EVENT); + rdp_event->event_class = RDP_EVENT_CLASS_CLIPRDR; + rdp_event->event_type = RDP_EVENT_TYPE_CB_DATA_REQUEST; + data_request_event = (RDP_CB_DATA_REQUEST_EVENT*) rdp_event; + data_request_event->format = format; + freerdp_channels_send_event(rfi->channels, (RDP_EVENT*) data_request_event); + } + if (event->event_type == RDP_EVENT_TYPE_CB_DATA_REQUEST) + { + uint8* data; + int size; + RDP_CB_DATA_REQUEST_EVENT* data_request_event = (RDP_CB_DATA_REQUEST_EVENT*) event; + RDP_CB_DATA_RESPONSE_EVENT* data_response_event; + + /* Send Data */ + rdp_event = (RDP_EVENT*) xnew(RDP_CB_DATA_RESPONSE_EVENT); + rdp_event->event_class = RDP_EVENT_CLASS_CLIPRDR; + rdp_event->event_type = RDP_EVENT_TYPE_CB_DATA_RESPONSE; + data_response_event = (RDP_CB_DATA_RESPONSE_EVENT*) rdp_event; + data = remmina_rdp_cliprdr_get_data(gp, data_request_event->format, &size); + data_response_event->data = data; + data_response_event->size = size; + freerdp_channels_send_event(rfi->channels, rdp_event); + } + if (event->event_type == RDP_EVENT_TYPE_CB_DATA_RESPONSE) + { + remmina_rdp_cliprdr_parse_response_event(gp, event); + } + } +} Index: b/remmina-plugins/rdp/rdp_plugin.h =================================================================== --- a/remmina-plugins/rdp/rdp_plugin.h 2012-05-24 21:24:24.204362890 +0200 +++ b/remmina-plugins/rdp/rdp_plugin.h 2012-05-24 21:27:36.542073783 +0200 @@ -133,12 +133,17 @@ GArray* pressed_keys; GAsyncQueue* event_queue; gint event_pipe[2]; + + gint clipboard_handler; + gint clipboard_wait; + uint32 requested_format; }; typedef enum { REMMINA_RDP_EVENT_TYPE_SCANCODE, - REMMINA_RDP_EVENT_TYPE_MOUSE + REMMINA_RDP_EVENT_TYPE_MOUSE, + REMMINA_RDP_EVENT_TYPE_CLIPBOARD } RemminaPluginRdpEventType; struct remmina_plugin_rdp_event debian/patches/libvncserver.patch0000644000000000000000000000222011757515775014362 0ustar Description: Do not use convenience copy of libvncserver Author: Pino Toscano Bug: http://bugs.debian.org/639891 Forwarded: https://github.com/FreeRDP/Remmina/issues/15 Index: remmina/remmina-plugins/CMakeLists.txt =================================================================== --- remmina.orig/remmina-plugins/CMakeLists.txt 2012-02-10 20:44:51.073691991 +0100 +++ remmina/remmina-plugins/CMakeLists.txt 2012-02-11 12:53:15.536569918 +0100 @@ -53,7 +53,6 @@ find_suggested_package(ZLIB) if(ZLIB_FOUND) - add_subdirectory(vnc/libvncserver) add_subdirectory(vnc) endif() Index: remmina/remmina-plugins/vnc/CMakeLists.txt =================================================================== --- remmina.orig/remmina-plugins/vnc/CMakeLists.txt 2012-02-10 20:44:51.081691991 +0100 +++ remmina/remmina-plugins/vnc/CMakeLists.txt 2012-02-11 12:53:25.968570238 +0100 @@ -17,7 +17,7 @@ # Foundation, Inc., 59 Temple Place, Suite 330, # Boston, MA 02111-1307, USA. -set(LIBVNCSERVER_INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/libvncserver) +set(LIBVNCSERVER_INCLUDE_DIRS) set(LIBVNCSERVER_LIBRARIES vncclient) set(REMMINA_PLUGIN_VNC_SRCS debian/patches/series0000644000000000000000000000037712127051253012037 0ustar indicator_set_title.patch libvncserver.patch g_thread_init.patch desktop_file.patch toolbar.patch datadir.patch clipboard.patch fullname.patch systray.patch scroll.patch unity_launcher_list.patch translations.patch keywords.patch ftbfs-underlinkage.patch debian/patches/translations.patch0000644000000000000000000000610412076020437014361 0ustar Index: remmina-1.0.0-4ubuntu1/remmina/desktop/remmina.desktop.in =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 +++ remmina-1.0.0-4ubuntu1/remmina/desktop/remmina.desktop.in 2012-12-23 14:43:08.743890098 -0800 @@ -0,0 +1,25 @@ +[Desktop Entry] +Version=1.0 +_Name=Remmina +_GenericName=Remote Desktop Client +_X-GNOME-FullName=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; +Actions=Profile;Tray; + +[Desktop Action Profile] +_Name=Create a New Connection Profile +Exec=remmina --new +OnlyShowIn=Unity; + +[Desktop Action Tray] +_Name=Start Remmina Minimized +Exec=remmina --icon +OnlyShowIn=Unity; + Index: remmina-1.0.0-4ubuntu1/remmina/po/POTFILES.in =================================================================== --- remmina-1.0.0-4ubuntu1.orig/remmina/po/POTFILES.in 2012-12-23 14:38:34.830531831 -0800 +++ remmina-1.0.0-4ubuntu1/remmina/po/POTFILES.in 2012-12-23 14:38:50.966611835 -0800 @@ -1,27 +1,29 @@ desktop/remmina.desktop.in -src/remmina.c -src/remminamain.c -src/remminapublic.c -src/remminafile.c -src/remminafilemanager.c -src/remminafileeditor.c -src/remminaconnectionwindow.c -src/remminaprotocolwidget.c -src/remminainitdialog.c -src/remminaabout.c -src/remminapref.c -src/remminastringlist.c -src/remminaprefdialog.c -src/remminassh.c -src/remminasshplugin.c -src/remminachatwindow.c -src/remminaftpclient.c -src/remminasftpclient.c -src/remminasftpplugin.c -src/remminascaler.c -src/remminapluginmanager.c -src/remminalog.c -src/remminakeychooser.c -src/remminaexec.c -src/remminaicon.c -src/remminaappletmenuitem.c +src/remmina_about.c +src/remmina_applet_menu_item.c +src/remmina_chat_window.c +src/remmina_connection_window.c +src/remmina_exec.c +src/remmina_file_editor.c +src/remmina_ftp_client.c +src/remmina_icon.c +src/remmina_init_dialog.c +src/remmina_key_chooser.c +src/remmina_main.c +src/remmina_plugin_manager.c +src/remmina_pref_dialog.c +src/remmina_protocol_widget.c +src/remmina_scaler.c +src/remmina_sftp_client.c +src/remmina_sftp_plugin.c +src/remmina_ssh.c +src/remmina_ssh_plugin.c +../remmina-plugins/nx/nx_plugin.c +../remmina-plugins/nx/nx_session_manager.c +../remmina-plugins/rdp/rdp_plugin.c +../remmina-plugins/rdp/rdp_settings.c +../remmina-plugins/telepathy/telepathy_channel_handler.c +../remmina-plugins/telepathy/telepathy_plugin.c +../remmina-plugins/vnc/vnc_plugin.c +../remmina-plugins/xdmcp/xdmcp_plugin.c + Index: remmina-1.0.0-4ubuntu1/remmina/desktop/remmina.desktop =================================================================== --- remmina-1.0.0-4ubuntu1.orig/remmina/desktop/remmina.desktop 2012-12-23 14:38:34.810531724 -0800 +++ remmina-1.0.0-4ubuntu1/remmina/desktop/remmina.desktop 2012-12-23 14:38:50.966611835 -0800 @@ -12,6 +12,7 @@ Actions= Categories=GTK;GNOME;X-GNOME-NetworkSettings;Network; Actions=Profile;Tray; +X-Ubuntu-Gettext-Domain=remmina [Desktop Action Profile] Name=Create a New Connection Profile debian/patches/scroll.patch0000644000000000000000000000664711757515775013175 0ustar Description: Fix some issues with scrolling Author: Luca Falavigna Index: remmina/remmina-plugins/rdp/rdp_event.c =================================================================== --- remmina.orig/remmina-plugins/rdp/rdp_event.c 2012-05-24 21:48:37.814112422 +0200 +++ remmina/remmina-plugins/rdp/rdp_event.c 2012-05-24 21:56:56.306127693 +0200 @@ -377,6 +377,17 @@ case GDK_SCROLL_DOWN: flag = PTR_FLAGS_WHEEL | PTR_FLAGS_WHEEL_NEGATIVE | 0x0088; break; + +#ifdef GDK_SCROLL_SMOOTH + 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; +#endif default: return FALSE; @@ -479,7 +490,7 @@ 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: remmina/remmina-plugins/vnc/vnc_plugin.c =================================================================== --- remmina.orig/remmina-plugins/vnc/vnc_plugin.c 2012-05-24 21:24:24.208360890 +0200 +++ remmina/remmina-plugins/vnc/vnc_plugin.c 2012-05-24 21:56:56.310127694 +0200 @@ -1426,6 +1426,20 @@ case GDK_SCROLL_RIGHT: mask = (1 << 6); break; +#ifdef GDK_SCROLL_SMOOTH + 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; +#endif default: return FALSE; } @@ -1847,7 +1861,7 @@ 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 Index: remmina/remmina/src/remmina_connection_window.c =================================================================== --- remmina.orig/remmina/src/remmina_connection_window.c 2012-05-24 21:24:24.228350890 +0200 +++ remmina/remmina/src/remmina_connection_window.c 2012-05-24 21:55:50.294125671 +0200 @@ -1477,6 +1477,22 @@ return TRUE; } break; +#ifdef GDK_SCROLL_SMOOTH + 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; +#endif default: break; } debian/patches/ftbfs-underlinkage.patch0000644000000000000000000000110712127053711015406 0ustar Index: remmina-1.0.0/remmina/CMakeLists.txt =================================================================== --- remmina-1.0.0.orig/remmina/CMakeLists.txt 2012-02-10 13:54:23.000000000 -0500 +++ remmina-1.0.0/remmina/CMakeLists.txt 2013-04-03 12:24:39.160099919 -0400 @@ -91,7 +91,7 @@ add_executable(remmina ${REMMINA_SRCS}) include_directories(${GTK_INCLUDE_DIRS}) -target_link_libraries(remmina ${GTK_LIBRARIES}) +target_link_libraries(remmina ${GTK_LIBRARIES} gmodule-2.0 X11 gdk_pixbuf-2.0 gio-2.0 gobject-2.0 pthread) find_suggested_package(LIBSSH) if(LIBSSH_FOUND) debian/patches/fullname.patch0000644000000000000000000000132611757515775013467 0ustar Description: Use X-GNOME-FullName in .desktop file Author: Luca Falavigna Index: remmina/remmina/desktop/remmina.desktop =================================================================== --- remmina.orig/remmina/desktop/remmina.desktop 2012-05-24 21:33:31.762084665 +0200 +++ remmina/remmina/desktop/remmina.desktop 2012-05-24 21:34:30.650086470 +0200 @@ -1,6 +1,8 @@ [Desktop Entry] Version=1.0 -Name=Remmina Remote Desktop Client +Name=Remmina +GenericName=Remote Desktop Client +X-GNOME-FullName=Remmina Remote Desktop Client Comment=Connect to remote desktops TryExec=remmina Exec=remmina @@ -9,4 +11,3 @@ Type=Application Actions= Categories=GTK;GNOME;X-GNOME-NetworkSettings;Network; - debian/patches/indicator_set_title.patch0000644000000000000000000000121512076020437015666 0ustar Index: remmina-1.0.0/remmina/src/remmina_icon.c =================================================================== --- remmina-1.0.0.orig/remmina/src/remmina_icon.c 2012-02-29 18:48:07.951328420 +0100 +++ remmina-1.0.0/remmina/src/remmina_icon.c 2012-02-29 18:51:37.895338581 +0100 @@ -396,6 +396,7 @@ remmina_icon.icon = app_indicator_new ("remmina-icon", "remmina", APP_INDICATOR_CATEGORY_OTHER); app_indicator_set_status (remmina_icon.icon, APP_INDICATOR_STATUS_ACTIVE); + app_indicator_set_title (remmina_icon.icon, "Remmina"); remmina_icon_populate_menu (); #else remmina_icon.icon = gtk_status_icon_new_from_icon_name("remmina"); debian/patches/keywords.patch0000644000000000000000000000146412171003521013502 0ustar Index: remmina-1.0.0/remmina/desktop/remmina.desktop.in =================================================================== --- remmina-1.0.0.orig/remmina/desktop/remmina.desktop.in 2013-07-15 16:25:45.000000000 +0200 +++ remmina-1.0.0/remmina/desktop/remmina.desktop.in 2013-07-15 16:25:45.000000000 +0200 @@ -12,6 +12,7 @@ Actions= Categories=GTK;GNOME;X-GNOME-NetworkSettings;Network; Actions=Profile;Tray; +_Keywords=VNC;XDMCP;RDP; [Desktop Action Profile] _Name=Create a New Connection Profile --- remmina-1.0.0.orig/remmina/desktop/remmina.desktop +++ remmina-1.0.0/remmina/desktop/remmina.desktop @@ -12,6 +12,7 @@ Type=Application Actions= Categories=GTK;GNOME;X-GNOME-NetworkSettings;Network; Actions=Profile;Tray; +Keywords=VNC;XDMCP;RDP; X-Ubuntu-Gettext-Domain=remmina [Desktop Action Profile] debian/patches/desktop_file.patch0000644000000000000000000000312411757515775014332 0ustar Description: Install .desktop file Author: Jeremy Bicha Bug: http://bugs.debian.org/659542 Index: remmina/remmina/desktop/CMakeLists.txt =================================================================== --- remmina.orig/remmina/desktop/CMakeLists.txt 2012-02-23 22:31:49.813792008 +0100 +++ remmina/remmina/desktop/CMakeLists.txt 2012-02-23 22:32:25.425793099 +0100 @@ -38,3 +38,4 @@ install(FILES ${ICON48_DATA} DESTINATION ${ICON48_DIR}) install(FILES ${ICONSVG_DATA} DESTINATION ${ICONSVG_DIR}) +install(FILES remmina.desktop DESTINATION share/applications) Index: remmina/remmina/desktop/remmina.desktop =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 +++ remmina/remmina/desktop/remmina.desktop 2012-02-23 22:31:18.685791053 +0100 @@ -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; + Index: remmina/remmina/desktop/remmina.desktop.in =================================================================== --- remmina.orig/remmina/desktop/remmina.desktop.in 2012-02-23 22:31:18.685791053 +0100 +++ /dev/null 1970-01-01 00:00:00.000000000 +0000 @@ -1,12 +0,0 @@ -[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; - debian/patches/systray.patch0000644000000000000000000000307611757515775013406 0ustar Description: Implement --icon/-i option Author: Rex Tsai Index: remmina/remmina/src/remmina.c =================================================================== --- remmina.orig/remmina/src/remmina.c 2012-05-24 21:38:18.710093456 +0200 +++ remmina/remmina/src/remmina.c 2012-05-24 21:40:40.570097800 +0200 @@ -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 @@ 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 @@ 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); debian/patches/g_thread_init.patch0000644000000000000000000000077111757515775014467 0ustar Description: Do not use deprecated g_thread_init function. Author: Luca Falavigna Index: remmina/remmina/src/remmina.c =================================================================== --- remmina.orig/remmina/src/remmina.c 2012-02-11 15:17:12.654820026 +0100 +++ remmina/remmina/src/remmina.c 2012-02-11 16:42:36.882977020 +0100 @@ -194,7 +194,7 @@ textdomain(GETTEXT_PACKAGE); #ifdef HAVE_PTHREAD - g_thread_init (NULL); + g_type_init (); gdk_threads_init (); #endif debian/remmina-plugin-vnc.install0000644000000000000000000000005611757515775014313 0ustar usr/lib/remmina/plugins/remmina-plugin-vnc.so