aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.travis.yml90
-rw-r--r--README.md2
-rw-r--r--system/keyboardlayouts/french.xml27
-rw-r--r--xbmc/guilib/GUIListContainer.cpp1
-rw-r--r--xbmc/input/InputManager.cpp5
-rw-r--r--xbmc/input/KeyboardStat.cpp2
6 files changed, 127 insertions, 0 deletions
diff --git a/.travis.yml b/.travis.yml
new file mode 100644
index 0000000000..accdd271bb
--- /dev/null
+++ b/.travis.yml
@@ -0,0 +1,90 @@
+# Kodi's travis-ci.org integration file
+
+# NOTES:
+# The travis-ci Gods have environmental concerns with verbosity and clang/xcode builds.
+# A nice message is presented in such cases:
+# "The log length has exceeded the limit of 4 MB (this usually means that the test suite is raising the
+# same exception over and over). The job has been terminated"
+#
+# travis-ci has a problem with python 2.7 (see https://github.com/travis-ci/travis-ci/issues/4948) so we mark
+# used language as 'generic' to work around it
+
+# TODO:
+# integrate with slack
+# make it perfect... or not ;-r
+
+
+language: generic
+# - cpp
+# - python
+
+# python:
+# - "2.7"
+
+# Define the build matrix
+#
+# Travis defaults to building on Ubuntu Precise when building on Linux. We need Trusty in order to get up
+# to date versions of cmake and g++.
+#
+matrix:
+ fast_finish: true
+ include:
+ - os: linux
+ dist: trusty
+ sudo: required
+ compiler: gcc
+
+# Prepare system
+#
+# Prepare the system to install prerequisites or dependencies
+#
+before_install:
+
+# Linux
+#
+# Install team-xbmc/xbmc-ppa-build-depends for some dependencies and ppa:wsnipex/vaapi for libda-dev 1.6.0.
+# Stupid libda-dev 1.3.0 does not work on Trusty.
+#
+ - if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then
+ sudo add-apt-repository -y ppa:team-xbmc/xbmc-ppa-build-depends
+ && sudo add-apt-repository -y ppa:wsnipex/vaapi
+ && sudo apt-get update -qq; fi
+
+# Install dependencies
+#
+# Install any prerequisites or dependencies necessary to run our builds
+#
+install:
+
+# Linux dependencies
+#
+ - if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then
+ sudo apt-get install -qq automake autopoint build-essential cmake curl dcadec-dev default-jre gawk gdc
+ gettext git-core gperf libasound2-dev libass-dev libboost-dev libboost-thread-dev libbz2-dev libcap-dev libcdio-dev
+ libcrossguid-dev libcurl3 libcurl4-openssl-dev libdbus-1-dev libfontconfig-dev libegl1-mesa-dev libfreetype6-dev
+ libfribidi-dev libgif-dev libglew-dev libiso9660-dev libjasper-dev libjpeg-dev libltdl-dev liblzo2-dev
+ libmicrohttpd-dev libmodplug-dev libmpeg2-4-dev libmpeg3-dev libmysqlclient-dev libnfs-dev libogg-dev libpcre3-dev
+ libplist-dev libpng-dev libpulse-dev libsdl2-dev libsmbclient-dev libsqlite3-dev libssh-dev libssl-dev libtiff-dev
+ libtag1-dev libtinyxml-dev libtool libudev-dev libusb-dev libva-dev libvdpau-dev libvorbis-dev libvorbisenc2
+ libxml2-dev libxmu-dev libxrandr-dev libxrender-dev libxslt1-dev libxt-dev libyajl-dev mesa-utils nasm pmount
+ python-dev python-imaging python-sqlite swig unzip uuid-dev yasm zip zlib1g-dev; fi
+
+# Prepare builds
+#
+before_script:
+
+# Linux
+#
+ - if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then
+ cd $TRAVIS_BUILD_DIR/
+ && ./bootstrap
+ && ./configure; fi
+
+# Actually build
+#
+script: make -j3
+
+# Disable annoying emails
+#
+notifications:
+ email: false
diff --git a/README.md b/README.md
index ab4112b4f8..b556b16254 100644
--- a/README.md
+++ b/README.md
@@ -1,3 +1,5 @@
+[![Build Status](https://travis-ci.org/xbmc/xbmc.svg?branch=Jarvis)](https://travis-ci.org/xbmc/xbmc)
+
#### About
Kodi is an award-winning free and open source (GPL) software media player and
diff --git a/system/keyboardlayouts/french.xml b/system/keyboardlayouts/french.xml
new file mode 100644
index 0000000000..630ec32878
--- /dev/null
+++ b/system/keyboardlayouts/french.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<!--
+Please use English language names instead.
+Default font lacks support for all characters
+-->
+<keyboardlayouts>
+ <layout language="French" layout="AZERTY">
+ <keyboard>
+ <row>1234567890°+</row>
+ <row>azertyuiop^$</row>
+ <row>qsdfghjklmù*</row>
+ <row>&lt;wxcvbn,;:!&amp;</row>
+ </keyboard>
+ <keyboard modifiers="shift">
+ <row>1234567890@=</row>
+ <row>AZERTYUIOP¨£</row>
+ <row>QSDFGHJKLM%µ</row>
+ <row>&gt;WXCVBN?./§²</row>
+ </keyboard>
+ <keyboard modifiers="symbol,shift+symbol">
+ <row>()[]{}~&quot;&apos;`-_</row>
+ <row>#|\€¤ÆŒæœüÜÙ</row>
+ <row>àâçéèêëîïôöû</row>
+ <row>ÀÂÇÉÈÊËÎÏÔÖÛ</row>
+ </keyboard>
+ </layout>
+</keyboardlayouts> \ No newline at end of file
diff --git a/xbmc/guilib/GUIListContainer.cpp b/xbmc/guilib/GUIListContainer.cpp
index cf2b63ad98..caf8a80714 100644
--- a/xbmc/guilib/GUIListContainer.cpp
+++ b/xbmc/guilib/GUIListContainer.cpp
@@ -117,6 +117,7 @@ bool CGUIListContainer::OnMessage(CGUIMessage& message)
{
SetCursor(0);
SetOffset(0);
+ m_scroller.SetValue(0);
}
}
return CGUIBaseContainer::OnMessage(message);
diff --git a/xbmc/input/InputManager.cpp b/xbmc/input/InputManager.cpp
index 3345a3d906..582ab35b2b 100644
--- a/xbmc/input/InputManager.cpp
+++ b/xbmc/input/InputManager.cpp
@@ -459,6 +459,11 @@ bool CInputManager::OnEvent(XBMC_Event& newEvent)
{
case XBMC_KEYDOWN:
{
+ if (m_LastKey.GetButtonCode() & CKey::MODIFIER_LONG)
+ {
+ // Do not repeat long presses
+ break;
+ }
m_Keyboard.ProcessKeyDown(newEvent.key.keysym);
CKey key = m_Keyboard.TranslateKey(newEvent.key.keysym);
if (!CButtonTranslator::GetInstance().HasLonpressMapping(g_windowManager.GetActiveWindowID(), key))
diff --git a/xbmc/input/KeyboardStat.cpp b/xbmc/input/KeyboardStat.cpp
index f90973a73d..1f2c3d8cff 100644
--- a/xbmc/input/KeyboardStat.cpp
+++ b/xbmc/input/KeyboardStat.cpp
@@ -219,6 +219,8 @@ std::string CKeyboardStat::GetKeyName(int KeyID)
keyname.append("win-");
if (KeyID & CKey::MODIFIER_META)
keyname.append("meta-");
+ if (KeyID & CKey::MODIFIER_LONG)
+ keyname.append("long-");
// Now get the key name