Initaler Commit

This commit is contained in:
2026-05-03 21:53:03 +02:00
commit b37b162662
634 changed files with 73932 additions and 0 deletions

View File

@@ -0,0 +1,79 @@
// Generated by view binder compiler. Do not edit!
package de.libredeck.android.databinding;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.LinearLayout;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.viewbinding.ViewBinding;
import androidx.viewbinding.ViewBindings;
import com.google.android.material.button.MaterialButton;
import de.libredeck.android.R;
import java.lang.NullPointerException;
import java.lang.Override;
import java.lang.String;
public final class ActivityDeezerAuthBinding implements ViewBinding {
@NonNull
private final LinearLayout rootView;
@NonNull
public final MaterialButton btnCancel;
@NonNull
public final MaterialButton btnOpenDeezerLogin;
private ActivityDeezerAuthBinding(@NonNull LinearLayout rootView,
@NonNull MaterialButton btnCancel, @NonNull MaterialButton btnOpenDeezerLogin) {
this.rootView = rootView;
this.btnCancel = btnCancel;
this.btnOpenDeezerLogin = btnOpenDeezerLogin;
}
@Override
@NonNull
public LinearLayout getRoot() {
return rootView;
}
@NonNull
public static ActivityDeezerAuthBinding inflate(@NonNull LayoutInflater inflater) {
return inflate(inflater, null, false);
}
@NonNull
public static ActivityDeezerAuthBinding inflate(@NonNull LayoutInflater inflater,
@Nullable ViewGroup parent, boolean attachToParent) {
View root = inflater.inflate(R.layout.activity_deezer_auth, parent, false);
if (attachToParent) {
parent.addView(root);
}
return bind(root);
}
@NonNull
public static ActivityDeezerAuthBinding bind(@NonNull View rootView) {
// The body of this method is generated in a way you would not otherwise write.
// This is done to optimize the compiled bytecode for size and performance.
int id;
missingId: {
id = R.id.btnCancel;
MaterialButton btnCancel = ViewBindings.findChildViewById(rootView, id);
if (btnCancel == null) {
break missingId;
}
id = R.id.btnOpenDeezerLogin;
MaterialButton btnOpenDeezerLogin = ViewBindings.findChildViewById(rootView, id);
if (btnOpenDeezerLogin == null) {
break missingId;
}
return new ActivityDeezerAuthBinding((LinearLayout) rootView, btnCancel, btnOpenDeezerLogin);
}
String missingId = rootView.getResources().getResourceName(id);
throw new NullPointerException("Missing required view with ID: ".concat(missingId));
}
}

View File

@@ -0,0 +1,91 @@
// Generated by view binder compiler. Do not edit!
package de.libredeck.android.databinding;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.FrameLayout;
import android.widget.ImageView;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.viewbinding.ViewBinding;
import androidx.viewbinding.ViewBindings;
import com.google.android.material.button.MaterialButton;
import de.libredeck.android.R;
import java.lang.NullPointerException;
import java.lang.Override;
import java.lang.String;
public final class ActivityMainBinding implements ViewBinding {
@NonNull
private final FrameLayout rootView;
@NonNull
public final MaterialButton btnStart;
@NonNull
public final ImageView ivLogo;
@NonNull
public final TextView tvCreateLink;
private ActivityMainBinding(@NonNull FrameLayout rootView, @NonNull MaterialButton btnStart,
@NonNull ImageView ivLogo, @NonNull TextView tvCreateLink) {
this.rootView = rootView;
this.btnStart = btnStart;
this.ivLogo = ivLogo;
this.tvCreateLink = tvCreateLink;
}
@Override
@NonNull
public FrameLayout getRoot() {
return rootView;
}
@NonNull
public static ActivityMainBinding inflate(@NonNull LayoutInflater inflater) {
return inflate(inflater, null, false);
}
@NonNull
public static ActivityMainBinding inflate(@NonNull LayoutInflater inflater,
@Nullable ViewGroup parent, boolean attachToParent) {
View root = inflater.inflate(R.layout.activity_main, parent, false);
if (attachToParent) {
parent.addView(root);
}
return bind(root);
}
@NonNull
public static ActivityMainBinding bind(@NonNull View rootView) {
// The body of this method is generated in a way you would not otherwise write.
// This is done to optimize the compiled bytecode for size and performance.
int id;
missingId: {
id = R.id.btnStart;
MaterialButton btnStart = ViewBindings.findChildViewById(rootView, id);
if (btnStart == null) {
break missingId;
}
id = R.id.ivLogo;
ImageView ivLogo = ViewBindings.findChildViewById(rootView, id);
if (ivLogo == null) {
break missingId;
}
id = R.id.tvCreateLink;
TextView tvCreateLink = ViewBindings.findChildViewById(rootView, id);
if (tvCreateLink == null) {
break missingId;
}
return new ActivityMainBinding((FrameLayout) rootView, btnStart, ivLogo, tvCreateLink);
}
String missingId = rootView.getResources().getResourceName(id);
throw new NullPointerException("Missing required view with ID: ".concat(missingId));
}
}

View File

@@ -0,0 +1,114 @@
// Generated by view binder compiler. Do not edit!
package de.libredeck.android.databinding;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.FrameLayout;
import android.widget.ProgressBar;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.recyclerview.widget.RecyclerView;
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
import androidx.viewbinding.ViewBinding;
import androidx.viewbinding.ViewBindings;
import de.libredeck.android.R;
import java.lang.NullPointerException;
import java.lang.Override;
import java.lang.String;
public final class ActivityPlaylistBinding implements ViewBinding {
@NonNull
private final FrameLayout rootView;
@NonNull
public final ProgressBar progressBar;
@NonNull
public final RecyclerView recyclerPlaylists;
@NonNull
public final SwipeRefreshLayout swipeRefresh;
@NonNull
public final TextView tvEmpty;
@NonNull
public final TextView tvLoadingMsg;
private ActivityPlaylistBinding(@NonNull FrameLayout rootView, @NonNull ProgressBar progressBar,
@NonNull RecyclerView recyclerPlaylists, @NonNull SwipeRefreshLayout swipeRefresh,
@NonNull TextView tvEmpty, @NonNull TextView tvLoadingMsg) {
this.rootView = rootView;
this.progressBar = progressBar;
this.recyclerPlaylists = recyclerPlaylists;
this.swipeRefresh = swipeRefresh;
this.tvEmpty = tvEmpty;
this.tvLoadingMsg = tvLoadingMsg;
}
@Override
@NonNull
public FrameLayout getRoot() {
return rootView;
}
@NonNull
public static ActivityPlaylistBinding inflate(@NonNull LayoutInflater inflater) {
return inflate(inflater, null, false);
}
@NonNull
public static ActivityPlaylistBinding inflate(@NonNull LayoutInflater inflater,
@Nullable ViewGroup parent, boolean attachToParent) {
View root = inflater.inflate(R.layout.activity_playlist, parent, false);
if (attachToParent) {
parent.addView(root);
}
return bind(root);
}
@NonNull
public static ActivityPlaylistBinding bind(@NonNull View rootView) {
// The body of this method is generated in a way you would not otherwise write.
// This is done to optimize the compiled bytecode for size and performance.
int id;
missingId: {
id = R.id.progressBar;
ProgressBar progressBar = ViewBindings.findChildViewById(rootView, id);
if (progressBar == null) {
break missingId;
}
id = R.id.recyclerPlaylists;
RecyclerView recyclerPlaylists = ViewBindings.findChildViewById(rootView, id);
if (recyclerPlaylists == null) {
break missingId;
}
id = R.id.swipeRefresh;
SwipeRefreshLayout swipeRefresh = ViewBindings.findChildViewById(rootView, id);
if (swipeRefresh == null) {
break missingId;
}
id = R.id.tvEmpty;
TextView tvEmpty = ViewBindings.findChildViewById(rootView, id);
if (tvEmpty == null) {
break missingId;
}
id = R.id.tvLoadingMsg;
TextView tvLoadingMsg = ViewBindings.findChildViewById(rootView, id);
if (tvLoadingMsg == null) {
break missingId;
}
return new ActivityPlaylistBinding((FrameLayout) rootView, progressBar, recyclerPlaylists,
swipeRefresh, tvEmpty, tvLoadingMsg);
}
String missingId = rootView.getResources().getResourceName(id);
throw new NullPointerException("Missing required view with ID: ".concat(missingId));
}
}

View File

@@ -0,0 +1,113 @@
// Generated by view binder compiler. Do not edit!
package de.libredeck.android.databinding;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.FrameLayout;
import android.widget.LinearLayout;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.camera.view.PreviewView;
import androidx.viewbinding.ViewBinding;
import androidx.viewbinding.ViewBindings;
import com.google.android.material.button.MaterialButton;
import de.libredeck.android.R;
import java.lang.NullPointerException;
import java.lang.Override;
import java.lang.String;
public final class ActivityScanBinding implements ViewBinding {
@NonNull
private final FrameLayout rootView;
@NonNull
public final MaterialButton btnCancel;
@NonNull
public final MaterialButton btnNextCard;
@NonNull
public final LinearLayout layoutHint;
@NonNull
public final FrameLayout overlaySuccess;
@NonNull
public final PreviewView previewView;
private ActivityScanBinding(@NonNull FrameLayout rootView, @NonNull MaterialButton btnCancel,
@NonNull MaterialButton btnNextCard, @NonNull LinearLayout layoutHint,
@NonNull FrameLayout overlaySuccess, @NonNull PreviewView previewView) {
this.rootView = rootView;
this.btnCancel = btnCancel;
this.btnNextCard = btnNextCard;
this.layoutHint = layoutHint;
this.overlaySuccess = overlaySuccess;
this.previewView = previewView;
}
@Override
@NonNull
public FrameLayout getRoot() {
return rootView;
}
@NonNull
public static ActivityScanBinding inflate(@NonNull LayoutInflater inflater) {
return inflate(inflater, null, false);
}
@NonNull
public static ActivityScanBinding inflate(@NonNull LayoutInflater inflater,
@Nullable ViewGroup parent, boolean attachToParent) {
View root = inflater.inflate(R.layout.activity_scan, parent, false);
if (attachToParent) {
parent.addView(root);
}
return bind(root);
}
@NonNull
public static ActivityScanBinding bind(@NonNull View rootView) {
// The body of this method is generated in a way you would not otherwise write.
// This is done to optimize the compiled bytecode for size and performance.
int id;
missingId: {
id = R.id.btnCancel;
MaterialButton btnCancel = ViewBindings.findChildViewById(rootView, id);
if (btnCancel == null) {
break missingId;
}
id = R.id.btnNextCard;
MaterialButton btnNextCard = ViewBindings.findChildViewById(rootView, id);
if (btnNextCard == null) {
break missingId;
}
id = R.id.layoutHint;
LinearLayout layoutHint = ViewBindings.findChildViewById(rootView, id);
if (layoutHint == null) {
break missingId;
}
id = R.id.overlaySuccess;
FrameLayout overlaySuccess = ViewBindings.findChildViewById(rootView, id);
if (overlaySuccess == null) {
break missingId;
}
id = R.id.previewView;
PreviewView previewView = ViewBindings.findChildViewById(rootView, id);
if (previewView == null) {
break missingId;
}
return new ActivityScanBinding((FrameLayout) rootView, btnCancel, btnNextCard, layoutHint,
overlaySuccess, previewView);
}
String missingId = rootView.getResources().getResourceName(id);
throw new NullPointerException("Missing required view with ID: ".concat(missingId));
}
}

View File

@@ -0,0 +1,90 @@
// Generated by view binder compiler. Do not edit!
package de.libredeck.android.databinding;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.viewbinding.ViewBinding;
import androidx.viewbinding.ViewBindings;
import com.google.android.material.card.MaterialCardView;
import de.libredeck.android.R;
import java.lang.NullPointerException;
import java.lang.Override;
import java.lang.String;
public final class ItemPlaylistBinding implements ViewBinding {
@NonNull
private final MaterialCardView rootView;
@NonNull
public final ImageView ivCover;
@NonNull
public final TextView tvCount;
@NonNull
public final TextView tvTitle;
private ItemPlaylistBinding(@NonNull MaterialCardView rootView, @NonNull ImageView ivCover,
@NonNull TextView tvCount, @NonNull TextView tvTitle) {
this.rootView = rootView;
this.ivCover = ivCover;
this.tvCount = tvCount;
this.tvTitle = tvTitle;
}
@Override
@NonNull
public MaterialCardView getRoot() {
return rootView;
}
@NonNull
public static ItemPlaylistBinding inflate(@NonNull LayoutInflater inflater) {
return inflate(inflater, null, false);
}
@NonNull
public static ItemPlaylistBinding inflate(@NonNull LayoutInflater inflater,
@Nullable ViewGroup parent, boolean attachToParent) {
View root = inflater.inflate(R.layout.item_playlist, parent, false);
if (attachToParent) {
parent.addView(root);
}
return bind(root);
}
@NonNull
public static ItemPlaylistBinding bind(@NonNull View rootView) {
// The body of this method is generated in a way you would not otherwise write.
// This is done to optimize the compiled bytecode for size and performance.
int id;
missingId: {
id = R.id.ivCover;
ImageView ivCover = ViewBindings.findChildViewById(rootView, id);
if (ivCover == null) {
break missingId;
}
id = R.id.tvCount;
TextView tvCount = ViewBindings.findChildViewById(rootView, id);
if (tvCount == null) {
break missingId;
}
id = R.id.tvTitle;
TextView tvTitle = ViewBindings.findChildViewById(rootView, id);
if (tvTitle == null) {
break missingId;
}
return new ItemPlaylistBinding((MaterialCardView) rootView, ivCover, tvCount, tvTitle);
}
String missingId = rootView.getResources().getResourceName(id);
throw new NullPointerException("Missing required view with ID: ".concat(missingId));
}
}

View File

@@ -0,0 +1,14 @@
/**
* Automatically generated file. DO NOT MODIFY
*/
package de.libredeck.android;
public final class BuildConfig {
public static final boolean DEBUG = Boolean.parseBoolean("true");
public static final String APPLICATION_ID = "de.libredeck.android";
public static final String BUILD_TYPE = "debug";
public static final int VERSION_CODE = 1;
public static final String VERSION_NAME = "0.1.0";
// Field from default config.
public static final String BACKEND_URL = "http://192.168.178.106:8091";
}

Binary file not shown.

View File

@@ -0,0 +1,21 @@
{
"version": 3,
"artifactType": {
"type": "APK",
"kind": "Directory"
},
"applicationId": "de.libredeck.android",
"variantName": "debug",
"elements": [
{
"type": "SINGLE",
"filters": [],
"attributes": [],
"versionCode": 1,
"versionName": "0.1.0",
"outputFile": "app-debug.apk"
}
],
"elementType": "File",
"minSdkVersionForDexing": 26
}

View File

@@ -0,0 +1,2 @@
#- File Locator -
listingFile=../../../apk/debug/output-metadata.json

View File

@@ -0,0 +1,2 @@
appMetadataVersion=1.1
androidGradlePluginVersion=8.3.2

View File

@@ -0,0 +1,10 @@
{
"version": 3,
"artifactType": {
"type": "COMPATIBLE_SCREEN_MANIFEST",
"kind": "Directory"
},
"applicationId": "de.libredeck.android",
"variantName": "debug",
"elements": []
}

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="activity_deezer_auth" modulePackage="de.libredeck.android" filePath="app/src/main/res/layout/activity_deezer_auth.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="android.widget.LinearLayout"><Targets><Target tag="layout/activity_deezer_auth_0" view="LinearLayout"><Expressions/><location startLine="1" startOffset="0" endLine="43" endOffset="14"/></Target><Target id="@+id/btnOpenDeezerLogin" view="com.google.android.material.button.MaterialButton"><Expressions/><location startLine="27" startOffset="4" endLine="34" endOffset="47"/></Target><Target id="@+id/btnCancel" view="com.google.android.material.button.MaterialButton"><Expressions/><location startLine="36" startOffset="4" endLine="41" endOffset="58"/></Target></Targets></Layout>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="activity_main" modulePackage="de.libredeck.android" filePath="app/src/main/res/layout/activity_main.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="android.widget.FrameLayout"><Targets><Target tag="layout/activity_main_0" view="FrameLayout"><Expressions/><location startLine="1" startOffset="0" endLine="75" endOffset="13"/></Target><Target id="@+id/ivLogo" view="ImageView"><Expressions/><location startLine="24" startOffset="8" endLine="31" endOffset="56"/></Target><Target id="@+id/btnStart" view="com.google.android.material.button.MaterialButton"><Expressions/><location startLine="33" startOffset="8" endLine="40" endOffset="41"/></Target><Target id="@+id/tvCreateLink" view="TextView"><Expressions/><location startLine="62" startOffset="8" endLine="71" endOffset="37"/></Target></Targets></Layout>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="activity_playlist" modulePackage="de.libredeck.android" filePath="app/src/main/res/layout/activity_playlist.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="android.widget.FrameLayout"><Targets><Target tag="layout/activity_playlist_0" view="FrameLayout"><Expressions/><location startLine="1" startOffset="0" endLine="45" endOffset="13"/></Target><Target id="@+id/swipeRefresh" view="androidx.swiperefreshlayout.widget.SwipeRefreshLayout"><Expressions/><location startLine="6" startOffset="4" endLine="18" endOffset="59"/></Target><Target id="@+id/recyclerPlaylists" view="androidx.recyclerview.widget.RecyclerView"><Expressions/><location startLine="11" startOffset="8" endLine="16" endOffset="34"/></Target><Target id="@+id/tvEmpty" view="TextView"><Expressions/><location startLine="20" startOffset="4" endLine="27" endOffset="34"/></Target><Target id="@+id/progressBar" view="ProgressBar"><Expressions/><location startLine="29" startOffset="4" endLine="34" endOffset="34"/></Target><Target id="@+id/tvLoadingMsg" view="TextView"><Expressions/><location startLine="36" startOffset="4" endLine="43" endOffset="34"/></Target></Targets></Layout>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="activity_scan" modulePackage="de.libredeck.android" filePath="app/src/main/res/layout/activity_scan.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="android.widget.FrameLayout"><Targets><Target tag="layout/activity_scan_0" view="FrameLayout"><Expressions/><location startLine="1" startOffset="0" endLine="90" endOffset="13"/></Target><Target id="@+id/previewView" view="androidx.camera.view.PreviewView"><Expressions/><location startLine="8" startOffset="4" endLine="11" endOffset="45"/></Target><Target id="@+id/layoutHint" view="LinearLayout"><Expressions/><location startLine="14" startOffset="4" endLine="49" endOffset="18"/></Target><Target id="@+id/btnCancel" view="com.google.android.material.button.MaterialButton"><Expressions/><location startLine="35" startOffset="8" endLine="47" endOffset="66"/></Target><Target id="@+id/overlaySuccess" view="FrameLayout"><Expressions/><location startLine="52" startOffset="4" endLine="88" endOffset="17"/></Target><Target id="@+id/btnNextCard" view="com.google.android.material.button.MaterialButton"><Expressions/><location startLine="76" startOffset="12" endLine="84" endOffset="41"/></Target></Targets></Layout>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="item_playlist" modulePackage="de.libredeck.android" filePath="app/src/main/res/layout/item_playlist.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="com.google.android.material.card.MaterialCardView"><Targets><Target tag="layout/item_playlist_0" view="com.google.android.material.card.MaterialCardView"><Expressions/><location startLine="1" startOffset="0" endLine="61" endOffset="51"/></Target><Target id="@+id/ivCover" view="ImageView"><Expressions/><location startLine="19" startOffset="8" endLine="24" endOffset="43"/></Target><Target id="@+id/tvTitle" view="TextView"><Expressions/><location startLine="34" startOffset="12" endLine="42" endOffset="40"/></Target><Target id="@+id/tvCount" view="TextView"><Expressions/><location startLine="44" startOffset="12" endLine="50" endOffset="47"/></Target></Targets></Layout>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="activity_deezer_auth" modulePackage="de.libredeck.android" filePath="app/src/main/res/layout/activity_deezer_auth.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="android.widget.LinearLayout"><Targets><Target tag="layout/activity_deezer_auth_0" view="LinearLayout"><Expressions/><location startLine="1" startOffset="0" endLine="43" endOffset="14"/></Target><Target id="@+id/btnOpenDeezerLogin" view="com.google.android.material.button.MaterialButton"><Expressions/><location startLine="27" startOffset="4" endLine="34" endOffset="47"/></Target><Target id="@+id/btnCancel" view="com.google.android.material.button.MaterialButton"><Expressions/><location startLine="36" startOffset="4" endLine="41" endOffset="58"/></Target></Targets></Layout>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="activity_main" modulePackage="de.libredeck.android" filePath="app/src/main/res/layout/activity_main.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="android.widget.FrameLayout"><Targets><Target tag="layout/activity_main_0" view="FrameLayout"><Expressions/><location startLine="1" startOffset="0" endLine="75" endOffset="13"/></Target><Target id="@+id/ivLogo" view="ImageView"><Expressions/><location startLine="24" startOffset="8" endLine="31" endOffset="56"/></Target><Target id="@+id/btnStart" view="com.google.android.material.button.MaterialButton"><Expressions/><location startLine="33" startOffset="8" endLine="40" endOffset="41"/></Target><Target id="@+id/tvCreateLink" view="TextView"><Expressions/><location startLine="62" startOffset="8" endLine="71" endOffset="37"/></Target></Targets></Layout>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="activity_playlist" modulePackage="de.libredeck.android" filePath="app/src/main/res/layout/activity_playlist.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="android.widget.FrameLayout"><Targets><Target tag="layout/activity_playlist_0" view="FrameLayout"><Expressions/><location startLine="1" startOffset="0" endLine="45" endOffset="13"/></Target><Target id="@+id/swipeRefresh" view="androidx.swiperefreshlayout.widget.SwipeRefreshLayout"><Expressions/><location startLine="6" startOffset="4" endLine="18" endOffset="59"/></Target><Target id="@+id/recyclerPlaylists" view="androidx.recyclerview.widget.RecyclerView"><Expressions/><location startLine="11" startOffset="8" endLine="16" endOffset="34"/></Target><Target id="@+id/tvEmpty" view="TextView"><Expressions/><location startLine="20" startOffset="4" endLine="27" endOffset="34"/></Target><Target id="@+id/progressBar" view="ProgressBar"><Expressions/><location startLine="29" startOffset="4" endLine="34" endOffset="34"/></Target><Target id="@+id/tvLoadingMsg" view="TextView"><Expressions/><location startLine="36" startOffset="4" endLine="43" endOffset="34"/></Target></Targets></Layout>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="activity_scan" modulePackage="de.libredeck.android" filePath="app/src/main/res/layout/activity_scan.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="android.widget.FrameLayout"><Targets><Target tag="layout/activity_scan_0" view="FrameLayout"><Expressions/><location startLine="1" startOffset="0" endLine="90" endOffset="13"/></Target><Target id="@+id/previewView" view="androidx.camera.view.PreviewView"><Expressions/><location startLine="8" startOffset="4" endLine="11" endOffset="45"/></Target><Target id="@+id/layoutHint" view="LinearLayout"><Expressions/><location startLine="14" startOffset="4" endLine="49" endOffset="18"/></Target><Target id="@+id/btnCancel" view="com.google.android.material.button.MaterialButton"><Expressions/><location startLine="35" startOffset="8" endLine="47" endOffset="66"/></Target><Target id="@+id/overlaySuccess" view="FrameLayout"><Expressions/><location startLine="52" startOffset="4" endLine="88" endOffset="17"/></Target><Target id="@+id/btnNextCard" view="com.google.android.material.button.MaterialButton"><Expressions/><location startLine="76" startOffset="12" endLine="84" endOffset="41"/></Target></Targets></Layout>

View File

@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><Layout layout="item_playlist" modulePackage="de.libredeck.android" filePath="app/src/main/res/layout/item_playlist.xml" directory="layout" isMerge="false" isBindingData="false" rootNodeType="com.google.android.material.card.MaterialCardView"><Targets><Target tag="layout/item_playlist_0" view="com.google.android.material.card.MaterialCardView"><Expressions/><location startLine="1" startOffset="0" endLine="61" endOffset="51"/></Target><Target id="@+id/ivCover" view="ImageView"><Expressions/><location startLine="19" startOffset="8" endLine="24" endOffset="43"/></Target><Target id="@+id/tvTitle" view="TextView"><Expressions/><location startLine="34" startOffset="12" endLine="42" endOffset="40"/></Target><Target id="@+id/tvCount" view="TextView"><Expressions/><location startLine="44" startOffset="12" endLine="50" endOffset="47"/></Target></Targets></Layout>

Some files were not shown because too many files have changed in this diff Show More