aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--addons/screensaver.xbmc.builtin.dim/addon.xml2
-rw-r--r--addons/skin.estuary/addon.xml2
-rw-r--r--addons/skin.estuary/language/resource.language.cs_cz/strings.po6
-rw-r--r--addons/skin.estuary/language/resource.language.ro_ro/strings.po8
-rw-r--r--tools/android/packaging/xbmc/res/layout/activity_main.xml4
-rw-r--r--tools/android/packaging/xbmc/src/Main.java.in1
-rw-r--r--tools/android/packaging/xbmc/src/XBMCMainView.java.in4
-rw-r--r--tools/android/packaging/xbmc/src/XBMCVideoView.java.in2
-rw-r--r--xbmc/filesystem/PluginDirectory.cpp3
-rw-r--r--xbmc/music/MusicDatabase.cpp15
-rw-r--r--xbmc/music/dialogs/GUIDialogMusicInfo.cpp19
-rw-r--r--xbmc/music/windows/GUIWindowMusicBase.cpp22
12 files changed, 58 insertions, 30 deletions
diff --git a/addons/screensaver.xbmc.builtin.dim/addon.xml b/addons/screensaver.xbmc.builtin.dim/addon.xml
index 365125ff97..8ded4db399 100644
--- a/addons/screensaver.xbmc.builtin.dim/addon.xml
+++ b/addons/screensaver.xbmc.builtin.dim/addon.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<addon id="screensaver.xbmc.builtin.dim"
name="Dim"
- version="1.0.50"
+ version="1.0.51"
provider-name="Team Kodi">
<extension point="xbmc.ui.screensaver" library=""/>
<extension point="xbmc.addon.metadata">
diff --git a/addons/skin.estuary/addon.xml b/addons/skin.estuary/addon.xml
index 206afa8314..034c174dfc 100644
--- a/addons/skin.estuary/addon.xml
+++ b/addons/skin.estuary/addon.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<addon id="skin.estuary" version="2.0.18" name="Estuary" provider-name="phil65, Ichabod Fletchman">
+<addon id="skin.estuary" version="2.0.19" name="Estuary" provider-name="phil65, Ichabod Fletchman">
<requires>
<import addon="xbmc.gui" version="5.14.0"/>
</requires>
diff --git a/addons/skin.estuary/language/resource.language.cs_cz/strings.po b/addons/skin.estuary/language/resource.language.cs_cz/strings.po
index 31d32581f7..607cb16ed4 100644
--- a/addons/skin.estuary/language/resource.language.cs_cz/strings.po
+++ b/addons/skin.estuary/language/resource.language.cs_cz/strings.po
@@ -230,7 +230,7 @@ msgstr "Položky hlavní nabídky"
msgctxt "#31062"
msgid "Choose weather fanart pack"
-msgstr "Zvolte balíček fanatrů počasí"
+msgstr "Zvolte balíček fanartů počasí"
msgctxt "#31063"
msgid "Sections"
@@ -442,7 +442,7 @@ msgstr "Nastavení související s hlavní nabídkou: Konfigurujte domovskou obr
msgctxt "#31131"
msgid "Choose skin fanart pack"
-msgstr "Zvolte balíček fanatrů vzhledu"
+msgstr "Zvolte balíček fanartů vzhledu"
msgctxt "#31132"
msgid "Select Program"
@@ -502,7 +502,7 @@ msgstr "Kategorie"
msgctxt "#31149"
msgid "Select genre fanart pack"
-msgstr "Zvolte balíček fanatrů žánru"
+msgstr "Zvolte balíček fanartů žánru"
msgctxt "#31150"
msgid "Repository"
diff --git a/addons/skin.estuary/language/resource.language.ro_ro/strings.po b/addons/skin.estuary/language/resource.language.ro_ro/strings.po
index 4391cd7ba7..ba217ea0dc 100644
--- a/addons/skin.estuary/language/resource.language.ro_ro/strings.po
+++ b/addons/skin.estuary/language/resource.language.ro_ro/strings.po
@@ -556,6 +556,14 @@ msgctxt "#31163"
msgid "Show Fanart background"
msgstr "Arată decorul media ca fundal"
+msgctxt "#31164"
+msgid "Choose kind of profile identification"
+msgstr "Alegeți tipul de identificare profil"
+
msgctxt "#31165"
msgid "Profile name"
msgstr "Nume profil"
+
+msgctxt "#31166"
+msgid "Profile avatar"
+msgstr "Avatar profil"
diff --git a/tools/android/packaging/xbmc/res/layout/activity_main.xml b/tools/android/packaging/xbmc/res/layout/activity_main.xml
index f8f9865de0..18fcfc3e6e 100644
--- a/tools/android/packaging/xbmc/res/layout/activity_main.xml
+++ b/tools/android/packaging/xbmc/res/layout/activity_main.xml
@@ -2,8 +2,6 @@
android:id="@+id/VideoLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:background="@android:color/black" >
- >
-
+ android:background="@android:color/transparent">
</RelativeLayout>
diff --git a/tools/android/packaging/xbmc/src/Main.java.in b/tools/android/packaging/xbmc/src/Main.java.in
index d5e6c88381..cc0cd68722 100644
--- a/tools/android/packaging/xbmc/src/Main.java.in
+++ b/tools/android/packaging/xbmc/src/Main.java.in
@@ -197,6 +197,7 @@ public class Main extends NativeActivity implements Choreographer.FrameCallback
public void onStart()
{
super.onStart();
+ mDecorView.setBackgroundColor(Color.TRANSPARENT);
Choreographer.getInstance().removeFrameCallback(this);
Choreographer.getInstance().postFrameCallback(this);
diff --git a/tools/android/packaging/xbmc/src/XBMCMainView.java.in b/tools/android/packaging/xbmc/src/XBMCMainView.java.in
index 6ca1f7bb20..43d6e976ed 100644
--- a/tools/android/packaging/xbmc/src/XBMCMainView.java.in
+++ b/tools/android/packaging/xbmc/src/XBMCMainView.java.in
@@ -27,7 +27,7 @@ public class XBMCMainView extends SurfaceView implements SurfaceHolder.Callback
super(context);
setZOrderOnTop(true);
getHolder().addCallback(this);
- getHolder().setFormat(PixelFormat.TRANSLUCENT);
+ getHolder().setFormat(PixelFormat.TRANSPARENT);
Log.d(TAG, "Created");
}
@@ -37,7 +37,7 @@ public class XBMCMainView extends SurfaceView implements SurfaceHolder.Callback
super(context, attrs, defStyle);
setZOrderOnTop(true);
getHolder().addCallback(this);
- getHolder().setFormat(PixelFormat.TRANSLUCENT);
+ getHolder().setFormat(PixelFormat.TRANSPARENT);
Log.d(TAG, "Created");
}
diff --git a/tools/android/packaging/xbmc/src/XBMCVideoView.java.in b/tools/android/packaging/xbmc/src/XBMCVideoView.java.in
index b80c98420f..c3fc5fcdea 100644
--- a/tools/android/packaging/xbmc/src/XBMCVideoView.java.in
+++ b/tools/android/packaging/xbmc/src/XBMCVideoView.java.in
@@ -59,7 +59,7 @@ public class XBMCVideoView extends SurfaceView implements
super(context);
setZOrderMediaOverlay(true);
getHolder().addCallback(this);
- getHolder().setFormat(PixelFormat.TRANSLUCENT);
+ getHolder().setFormat(PixelFormat.TRANSPARENT);
mVideoLayout = (RelativeLayout) Main.MainActivity.findViewById(R.id.VideoLayout);
}
diff --git a/xbmc/filesystem/PluginDirectory.cpp b/xbmc/filesystem/PluginDirectory.cpp
index f6334bd635..fcc3a15e1f 100644
--- a/xbmc/filesystem/PluginDirectory.cpp
+++ b/xbmc/filesystem/PluginDirectory.cpp
@@ -59,7 +59,8 @@ void CPluginDirectory::CScriptObserver::Process()
void CPluginDirectory::CScriptObserver::Abort()
{
- m_bStop = true;
+ // will wait until thread exits
+ StopThread();
}
CPluginDirectory::CPluginDirectory()
diff --git a/xbmc/music/MusicDatabase.cpp b/xbmc/music/MusicDatabase.cpp
index 96035f7542..5e48e68f9b 100644
--- a/xbmc/music/MusicDatabase.cpp
+++ b/xbmc/music/MusicDatabase.cpp
@@ -10708,11 +10708,16 @@ void CMusicDatabase::UpdateFileDateAdded(int songId, const std::string& strFileN
bool CMusicDatabase::AddAudioBook(const CFileItem& item)
{
- std::string strSQL = PrepareSQL("INSERT INTO audiobook (idBook,strBook,strAuthor,bookmark,file,dateAdded) VALUES (NULL,'%s','%s',%i,'%s','%s')",
- item.GetMusicInfoTag()->GetAlbum().c_str(),
- item.GetMusicInfoTag()->GetArtist()[0].c_str(), 0,
- item.GetPath().c_str(),
- CDateTime::GetCurrentDateTime().GetAsDBDateTime().c_str());
+ auto const& artists = item.GetMusicInfoTag()->GetArtist();
+ std::string strSQL = PrepareSQL(
+ "INSERT INTO audiobook (idBook,strBook,strAuthor,bookmark,file,dateAdded) "
+ "VALUES (NULL,'%s','%s',%i,'%s','%s')",
+ item.GetMusicInfoTag()->GetAlbum().c_str(),
+ artists.empty() ? "" : artists[0].c_str(),
+ 0,
+ item.GetPath().c_str(),
+ CDateTime::GetCurrentDateTime().GetAsDBDateTime().c_str()
+ );
return ExecuteQuery(strSQL);
}
diff --git a/xbmc/music/dialogs/GUIDialogMusicInfo.cpp b/xbmc/music/dialogs/GUIDialogMusicInfo.cpp
index 9448324714..72f52fe658 100644
--- a/xbmc/music/dialogs/GUIDialogMusicInfo.cpp
+++ b/xbmc/music/dialogs/GUIDialogMusicInfo.cpp
@@ -398,11 +398,14 @@ bool CGUIDialogMusicInfo::OnMessage(CGUIMessage& message)
CGUIMessage msg(GUI_MSG_ITEM_SELECTED, GetID(), iControl);
CServiceBroker::GetGUI()->GetWindowManager().SendMessage(msg);
int iItem = msg.GetParam1();
- if (iItem < 0 || iItem >= m_albumSongs->Size())
- break;
- OnAlbumInfo(m_albumSongs->Get(iItem)->GetMusicInfoTag()->GetDatabaseId());
-
- return true;
+ int id = -1;
+ if (iItem >= 0 && iItem < m_albumSongs->Size())
+ id = m_albumSongs->Get(iItem)->GetMusicInfoTag()->GetDatabaseId();
+ if (id > 0)
+ {
+ OnAlbumInfo(id);
+ return true;
+ }
}
}
}
@@ -1010,10 +1013,12 @@ void CGUIDialogMusicInfo::ShowFor(CFileItem* pItem)
// Maybe only path is set, then set MusicInfoTag
CQueryParams params;
CDirectoryNode::GetDatabaseInfo(pItem->GetPath(), params);
- if (params.GetAlbumId() == -1)
+ if (params.GetArtistId() > 0)
pItem->GetMusicInfoTag()->SetDatabaseId(params.GetArtistId(), MediaTypeArtist);
- else
+ else if (params.GetAlbumId() > 0)
pItem->GetMusicInfoTag()->SetDatabaseId(params.GetAlbumId(), MediaTypeAlbum);
+ else
+ return; // nothing to do
}
CGUIDialogMusicInfo *pDlgMusicInfo = CServiceBroker::GetGUI()->GetWindowManager().
GetWindow<CGUIDialogMusicInfo>(WINDOW_DIALOG_MUSIC_INFO);
diff --git a/xbmc/music/windows/GUIWindowMusicBase.cpp b/xbmc/music/windows/GUIWindowMusicBase.cpp
index cb27b0c6a3..d0b7650c16 100644
--- a/xbmc/music/windows/GUIWindowMusicBase.cpp
+++ b/xbmc/music/windows/GUIWindowMusicBase.cpp
@@ -62,6 +62,8 @@
#include "platform/linux/XTimeUtils.h"
#endif
+#include <algorithm>
+
using namespace XFILE;
using namespace MUSICDATABASEDIRECTORY;
using namespace PLAYLIST;
@@ -690,12 +692,20 @@ bool CGUIWindowMusicBase::OnContextButton(int itemNumber, CONTEXT_BUTTON button)
Update(item->GetPath());
int bookmark;
m_musicdatabase.GetResumeBookmarkForAudioBook(item->GetPath(), bookmark);
- int i=0;
- while (i < m_vecItems->Size() && bookmark > m_vecItems->Get(i)->m_lEndOffset)
- ++i;
- CFileItem resItem(*m_vecItems->Get(i));
- resItem.SetProperty("StartPercent", ((double)bookmark-resItem.m_lStartOffset)/(resItem.m_lEndOffset-resItem.m_lStartOffset)*100);
- g_application.PlayFile(resItem, "", false);
+
+ auto itemIt = std::find_if(
+ m_vecItems->cbegin(),
+ m_vecItems->cend(),
+ [&](const CFileItemPtr& item) { return bookmark <= item->m_lEndOffset; }
+ );
+ if (itemIt != m_vecItems->cend())
+ {
+ CFileItem resItem(**itemIt);
+ resItem.SetProperty("StartPercent",
+ 100.0 * (bookmark - resItem.m_lStartOffset) / (resItem.m_lEndOffset - resItem.m_lStartOffset)
+ );
+ g_application.PlayFile(resItem, "", false);
+ }
}
default: