community/freerdp to 1.2.0_beta1+20150302-1

This commit is contained in:
David Beauchamp 2015-03-02 17:27:15 -05:00
parent 9361723ac2
commit a4d5603f27
2 changed files with 34 additions and 5 deletions

View file

@ -6,10 +6,10 @@
# - define WITH_NEON and ARM_FP_ABI to fix retard developer assumptions
pkgname=freerdp
pkgver=1.2.0_beta1+20150227
pkgver=1.2.0_beta1+20150302
_pkgver=${pkgver/_/-}
_pkgver=${_pkgver/+/-}
pkgrel=4
pkgrel=1
pkgdesc="Free RDP client"
arch=('i686' 'x86_64')
url="http://freerdp.sourceforge.net"
@ -21,12 +21,14 @@ makedepends=('krb5' 'cmake' 'damageproto' 'fixesproto' 'renderproto'
'xmlto' 'docbook-xsl' 'git')
conflicts=('freerdp-git')
#source=($pkgname-$pkgver.tar.gz::https://github.com/FreeRDP/FreeRDP/archive/${pkgver/_/-}.tar.gz
source=(FreeRDP-${_pkgver}::git://github.com/FreeRDP/FreeRDP.git#commit=ff6dbb049ce066f6fca5708f81fd33f97086bc0e)
md5sums=('SKIP')
source=(FreeRDP-${_pkgver}::git://github.com/FreeRDP/FreeRDP.git#commit=ff6dbb049ce066f6fca5708f81fd33f97086bc0e
stuck_winkey.patch)
md5sums=('SKIP'
'd29f028e61967f091f021d24005dbee2')
prepare() {
cd $srcdir/FreeRDP-${_pkgver}
# patch -p1 <$srcdir/build-fix.patch
patch -p1 <$srcdir/stuck_winkey.patch
}
build() {

View file

@ -0,0 +1,27 @@
diff -rup ./client/X11.old/xf_event.c ./client/X11/xf_event.c
--- ./client/X11.old/xf_event.c 2014-06-12 15:51:57.000000000 +0200
+++ ./client/X11/xf_event.c 2014-10-22 16:53:53.440644196 +0200
@@ -556,6 +556,7 @@ static BOOL xf_event_FocusOut(xfContext*
if (event->xfocus.mode == NotifyWhileGrabbed)
XUngrabKeyboard(xfc->display, CurrentTime);
+ xf_keyboard_release_all_keypress(xfc);
xf_keyboard_clear(xfc);
if (app)
diff -rup ./client/X11.old/xf_keyboard.c ./client/X11/xf_keyboard.c
--- ./client/X11.old/xf_keyboard.c 2014-06-12 15:51:57.000000000 +0200
+++ ./client/X11/xf_keyboard.c 2014-10-22 16:57:58.403749478 +0200
@@ -169,6 +169,12 @@ void xf_keyboard_release_all_keypress(xf
if (xfc->KeyboardState[keycode] != NoSymbol)
{
rdp_scancode = freerdp_keyboard_get_rdp_scancode_from_x11_keycode(keycode);
+
+ // release tab before releasing the windows key.
+ // this stops the start menu from opening on unfocus event.
+ if (rdp_scancode == RDP_SCANCODE_LWIN)
+ freerdp_input_send_keyboard_event_ex(xfc->instance->input, FALSE, RDP_SCANCODE_TAB);
+
freerdp_input_send_keyboard_event_ex(xfc->instance->input, FALSE, rdp_scancode);
xfc->KeyboardState[keycode] = NoSymbol;
}