diff options
-rw-r--r-- | .travis.yml | 90 | ||||
-rw-r--r-- | README.md | 2 | ||||
-rw-r--r-- | project/BuildDependencies/scripts/0_package.list | 2 | ||||
-rw-r--r-- | system/keyboardlayouts/french.xml | 22 | ||||
-rw-r--r-- | tools/depends/native/TexturePacker/src/decoder/GifHelper.cpp | 22 | ||||
-rw-r--r-- | xbmc/guilib/GUIListContainer.cpp | 1 | ||||
-rw-r--r-- | xbmc/input/InputManager.cpp | 5 | ||||
-rw-r--r-- | xbmc/input/KeyboardStat.cpp | 2 |
8 files changed, 118 insertions, 28 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 @@ -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/project/BuildDependencies/scripts/0_package.list b/project/BuildDependencies/scripts/0_package.list index 4ce1934db7..fbb76ab8c3 100644 --- a/project/BuildDependencies/scripts/0_package.list +++ b/project/BuildDependencies/scripts/0_package.list @@ -49,5 +49,5 @@ python-2.7.8-win32.7z sqlite-3.8.6-win32-vc120.7z swig-2.0.7-win32-1.7z taglib-1.9.1-patched-win32-vc120.7z -texturepacker-1.0.5-win32.7z +texturepacker-1.0.6-win32.7z tinyxml-2.6.2_3-win32-vc120.7z diff --git a/system/keyboardlayouts/french.xml b/system/keyboardlayouts/french.xml index 3269e9da66..630ec32878 100644 --- a/system/keyboardlayouts/french.xml +++ b/system/keyboardlayouts/french.xml @@ -8,20 +8,20 @@ Default font lacks support for all characters <keyboard> <row>1234567890°+</row> <row>azertyuiop^$</row> - <row>qsdfghjklmú*</row> - <row>wxcvbn,;:!</row> + <row>qsdfghjklmù*</row> + <row><wxcvbn,;:!&</row> </keyboard> <keyboard modifiers="shift"> - <row>1234567890</row> - <row>AZERTYUIOP</row> - <row>QSDFGHJKLM</row> - <row>WXCVBN?./</row> + <row>1234567890@=</row> + <row>AZERTYUIOP¨£</row> + <row>QSDFGHJKLM%µ</row> + <row>>WXCVBN?./§²</row> </keyboard> <keyboard modifiers="symbol,shift+symbol"> - <row>)!@#€§$%^&*(</row> - <row>[]{}-_=+;:μ</row> - <row>'",.<>/?\|</row> - <row>`~éèáàúùç</row> + <row>()[]{}~"'`-_</row> + <row>#|\€¤ÆŒæœüÜÙ</row> + <row>àâçéèêëîïôöû</row> + <row>ÀÂÇÉÈÊËÎÏÔÖÛ</row> </keyboard> </layout> -</keyboardlayouts> +</keyboardlayouts>
\ No newline at end of file diff --git a/tools/depends/native/TexturePacker/src/decoder/GifHelper.cpp b/tools/depends/native/TexturePacker/src/decoder/GifHelper.cpp index d629844399..500d117efd 100644 --- a/tools/depends/native/TexturePacker/src/decoder/GifHelper.cpp +++ b/tools/depends/native/TexturePacker/src/decoder/GifHelper.cpp @@ -263,28 +263,19 @@ bool GifHelper::GcbToFrame(GifFrame &frame, unsigned int imgIdx) { #if GIFLIB_MAJOR == 5 GraphicsControlBlock gcb; - if (!DGifSavedExtensionToGCB(m_gif, imgIdx, &gcb)) + if (DGifSavedExtensionToGCB(m_gif, imgIdx, &gcb)) { - fprintf(stderr, "Gif::GcbToFrame(): Could not read GraphicsControlBlock of frame %d in file %s\n", - imgIdx, m_filename.c_str()), GifErrorString(m_gif->Error); - return false; + // delay in ms + frame.m_delay = gcb.DelayTime * 10; + frame.m_disposal = gcb.DisposalMode; + transparent = gcb.TransparentColor; } - // delay in ms - frame.m_delay = gcb.DelayTime * 10; - frame.m_disposal = gcb.DisposalMode; - transparent = gcb.TransparentColor; #else ExtensionBlock* extb = m_gif->SavedImages[imgIdx].ExtensionBlocks; while (extb && extb->Function != GRAPHICS_EXT_FUNC_CODE) extb++; - if (!extb || extb->ByteCount != 4) - { - fprintf(stderr, "Gif::GcbToFrame() : Could not read GraphicsControlBlock of frame %d in file %s\n", - imgIdx, m_filename.c_str()); - return false; - } - else + if (extb && extb->ByteCount == 4) { uint8_t low = static_cast<uint8_t>(extb->Bytes[1]); uint8_t high = static_cast<uint8_t>(extb->Bytes[2]); @@ -297,7 +288,6 @@ bool GifHelper::GcbToFrame(GifFrame &frame, unsigned int imgIdx) else transparent = -1; } - #endif } 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 |