Upload via GUI (67 Dateien)

This commit is contained in:
2026-10-23 17:24:21 +00:00
parent 0c5967aa89
commit 1beee34c01
26 changed files with 3009 additions and 1678 deletions
@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
<gradient
android:angle="315"
android:endColor="#0C4A42"
android:startColor="#0C3B55" />
<corners android:radius="26dp" />
</shape>
@@ -1,5 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
<solid android:color="#28405A" />
<corners android:radius="18dp" />
<gradient
android:angle="315"
android:endColor="#12A594"
android:startColor="#0E7FBF" />
<corners android:radius="26dp" />
</shape>
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
<solid android:color="#26FFFFFF" />
<corners android:radius="20dp" />
</shape>
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
<solid android:color="#66FFFFFF" />
<corners android:radius="20dp" />
</shape>
+2 -2
View File
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
<solid android:color="#33FFFFFF" />
<corners android:radius="12dp" />
<solid android:color="#30FFFFFF" />
<corners android:radius="16dp" />
</shape>
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
<solid android:color="#E0D64545" />
<corners android:radius="16dp" />
</shape>
+113 -28
View File
@@ -5,8 +5,9 @@
android:layout_height="match_parent"
android:background="@drawable/widget_background"
android:orientation="vertical"
android:padding="12dp">
android:padding="14dp">
<!-- Kopf: Name, Stand, Aktualisieren -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
@@ -14,40 +15,50 @@
android:orientation="horizontal">
<TextView
android:layout_width="0dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="DeskHub"
android:textColor="#FFFFFF"
android:textSize="15sp"
android:textSize="16sp"
android:textStyle="bold" />
<TextView
android:id="@+id/widget_refresh"
android:layout_width="wrap_content"
android:id="@+id/widget_time"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:layout_weight="1"
android:textColor="#CCFFFFFF"
android:textSize="11sp" />
<TextView
android:id="@+id/widget_refresh"
android:layout_width="32dp"
android:layout_height="32dp"
android:background="@drawable/widget_chip"
android:contentDescription="Aktualisieren"
android:padding="4dp"
android:gravity="center"
android:text="⟳"
android:textColor="#FFFFFF"
android:textSize="20sp" />
android:textSize="18sp" />
</LinearLayout>
<TextView
android:id="@+id/widget_message"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="6dp"
android:layout_marginTop="10dp"
android:text="Lade …"
android:textColor="#D6DEE8"
android:textSize="13sp"
android:textColor="#FFFFFF"
android:textSize="14sp"
android:visibility="gone" />
<!-- Kennzahlen -->
<LinearLayout
android:id="@+id/widget_tiles"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_marginTop="8dp"
android:layout_marginTop="10dp"
android:layout_weight="1"
android:orientation="horizontal">
@@ -65,21 +76,21 @@
android:layout_height="wrap_content"
android:text="–"
android:textColor="#FFFFFF"
android:textSize="24sp"
android:textSize="28sp"
android:textStyle="bold" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Meine"
android:textColor="#D6DEE8"
android:textColor="#E6FFFFFF"
android:textSize="11sp" />
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_marginStart="6dp"
android:layout_marginStart="8dp"
android:layout_weight="1"
android:background="@drawable/widget_tile"
android:gravity="center"
@@ -91,21 +102,22 @@
android:layout_height="wrap_content"
android:text="–"
android:textColor="#FFFFFF"
android:textSize="24sp"
android:textSize="28sp"
android:textStyle="bold" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Offen"
android:textColor="#D6DEE8"
android:text="Nicht zugew."
android:textColor="#E6FFFFFF"
android:textSize="11sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/widget_tile_overdue"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_marginStart="6dp"
android:layout_marginStart="8dp"
android:layout_weight="1"
android:background="@drawable/widget_tile"
android:gravity="center"
@@ -116,25 +128,98 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="–"
android:textColor="#FFB4A8"
android:textSize="24sp"
android:textColor="#FFFFFF"
android:textSize="28sp"
android:textStyle="bold" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Überfällig"
android:textColor="#D6DEE8"
android:textColor="#E6FFFFFF"
android:textSize="11sp" />
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_marginStart="8dp"
android:layout_weight="1"
android:background="@drawable/widget_tile"
android:gravity="center"
android:orientation="vertical">
<TextView
android:id="@+id/widget_unanswered"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="–"
android:textColor="#FFFFFF"
android:textSize="28sp"
android:textStyle="bold" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Unbeantw."
android:textColor="#E6FFFFFF"
android:textSize="11sp" />
</LinearLayout>
</LinearLayout>
<TextView
android:id="@+id/widget_time"
<!-- Die wichtigsten Tickets: nur Nummern (nichts Vertrauliches auf dem Startbildschirm), Tipp öffnet das Ticket -->
<LinearLayout
android:id="@+id/widget_recent"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="4dp"
android:gravity="end"
android:textColor="#A9B6C6"
android:textSize="10sp" />
android:layout_marginTop="10dp"
android:orientation="horizontal">
<TextView
android:id="@+id/widget_t1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@drawable/widget_chip"
android:ellipsize="end"
android:gravity="center"
android:maxLines="1"
android:paddingTop="6dp"
android:paddingBottom="6dp"
android:textColor="#FFFFFF"
android:textSize="12sp"
android:visibility="gone" />
<TextView
android:id="@+id/widget_t2"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="6dp"
android:layout_weight="1"
android:background="@drawable/widget_chip"
android:ellipsize="end"
android:gravity="center"
android:maxLines="1"
android:paddingTop="6dp"
android:paddingBottom="6dp"
android:textColor="#FFFFFF"
android:textSize="12sp"
android:visibility="gone" />
<TextView
android:id="@+id/widget_t3"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="6dp"
android:layout_weight="1"
android:background="@drawable/widget_chip"
android:ellipsize="end"
android:gravity="center"
android:maxLines="1"
android:paddingTop="6dp"
android:paddingBottom="6dp"
android:textColor="#FFFFFF"
android:textSize="12sp"
android:visibility="gone" />
</LinearLayout>
</LinearLayout>
@@ -0,0 +1,325 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/widget_root"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/widget_background"
android:orientation="vertical"
android:padding="14dp">
<!-- Kopf: Name, Stand, Aktualisieren -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="DeskHub"
android:textColor="#FFFFFF"
android:textSize="16sp"
android:textStyle="bold" />
<TextView
android:id="@+id/widget_time"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:layout_weight="1"
android:textColor="#CCFFFFFF"
android:textSize="11sp" />
<TextView
android:id="@+id/widget_refresh"
android:layout_width="32dp"
android:layout_height="32dp"
android:background="@drawable/widget_chip"
android:contentDescription="Aktualisieren"
android:gravity="center"
android:text="⟳"
android:textColor="#FFFFFF"
android:textSize="18sp" />
</LinearLayout>
<TextView
android:id="@+id/widget_message"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:text="Lade …"
android:textColor="#FFFFFF"
android:textSize="14sp"
android:visibility="gone" />
<!-- Kennzahlen -->
<LinearLayout
android:id="@+id/widget_tiles"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_marginTop="10dp"
android:layout_weight="1"
android:orientation="horizontal">
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/widget_tile"
android:gravity="center"
android:orientation="vertical">
<TextView
android:id="@+id/widget_my_open"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="–"
android:textColor="#FFFFFF"
android:textSize="28sp"
android:textStyle="bold" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Meine"
android:textColor="#E6FFFFFF"
android:textSize="11sp" />
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_marginStart="8dp"
android:layout_weight="1"
android:background="@drawable/widget_tile"
android:gravity="center"
android:orientation="vertical">
<TextView
android:id="@+id/widget_unassigned"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="–"
android:textColor="#FFFFFF"
android:textSize="28sp"
android:textStyle="bold" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Nicht zugew."
android:textColor="#E6FFFFFF"
android:textSize="11sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/widget_tile_overdue"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_marginStart="8dp"
android:layout_weight="1"
android:background="@drawable/widget_tile"
android:gravity="center"
android:orientation="vertical">
<TextView
android:id="@+id/widget_overdue"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="–"
android:textColor="#FFFFFF"
android:textSize="28sp"
android:textStyle="bold" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Überfällig"
android:textColor="#E6FFFFFF"
android:textSize="11sp" />
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_marginStart="8dp"
android:layout_weight="1"
android:background="@drawable/widget_tile"
android:gravity="center"
android:orientation="vertical">
<TextView
android:id="@+id/widget_unanswered"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="–"
android:textColor="#FFFFFF"
android:textSize="28sp"
android:textStyle="bold" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Unbeantw."
android:textColor="#E6FFFFFF"
android:textSize="11sp" />
</LinearLayout>
</LinearLayout>
<!-- Die wichtigsten Tickets: nur Nummern (nichts Vertrauliches auf dem Startbildschirm), Tipp öffnet das Ticket -->
<LinearLayout
android:id="@+id/widget_recent"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:orientation="horizontal">
<TextView
android:id="@+id/widget_t1"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@drawable/widget_chip"
android:ellipsize="end"
android:gravity="center"
android:maxLines="1"
android:paddingTop="6dp"
android:paddingBottom="6dp"
android:textColor="#FFFFFF"
android:textSize="12sp"
android:visibility="gone" />
<TextView
android:id="@+id/widget_t2"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="6dp"
android:layout_weight="1"
android:background="@drawable/widget_chip"
android:ellipsize="end"
android:gravity="center"
android:maxLines="1"
android:paddingTop="6dp"
android:paddingBottom="6dp"
android:textColor="#FFFFFF"
android:textSize="12sp"
android:visibility="gone" />
<TextView
android:id="@+id/widget_t3"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="6dp"
android:layout_weight="1"
android:background="@drawable/widget_chip"
android:ellipsize="end"
android:gravity="center"
android:maxLines="1"
android:paddingTop="6dp"
android:paddingBottom="6dp"
android:textColor="#FFFFFF"
android:textSize="12sp"
android:visibility="gone" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:orientation="horizontal">
<TextView
android:id="@+id/widget_btn_new"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@drawable/widget_chip"
android:gravity="center"
android:paddingTop="9dp"
android:paddingBottom="9dp"
android:text="+ Neues Ticket"
android:textColor="#FFFFFF"
android:textSize="13sp" />
<TextView
android:id="@+id/widget_btn_tickets"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:layout_weight="1"
android:background="@drawable/widget_chip"
android:gravity="center"
android:paddingTop="9dp"
android:paddingBottom="9dp"
android:text="Alle Tickets"
android:textColor="#FFFFFF"
android:textSize="13sp" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:orientation="horizontal">
<TextView
android:id="@+id/widget_st_available"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@drawable/widget_chip"
android:gravity="center"
android:maxLines="1"
android:paddingTop="6dp"
android:paddingBottom="6dp"
android:text="Verfügbar"
android:textColor="#FFFFFF"
android:textSize="11sp" />
<TextView
android:id="@+id/widget_st_busy"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="5dp"
android:layout_weight="1"
android:background="@drawable/widget_chip"
android:gravity="center"
android:maxLines="1"
android:paddingTop="6dp"
android:paddingBottom="6dp"
android:text="Beschäftigt"
android:textColor="#FFFFFF"
android:textSize="11sp" />
<TextView
android:id="@+id/widget_st_break"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="5dp"
android:layout_weight="1"
android:background="@drawable/widget_chip"
android:gravity="center"
android:maxLines="1"
android:paddingTop="6dp"
android:paddingBottom="6dp"
android:text="Pause"
android:textColor="#FFFFFF"
android:textSize="11sp" />
<TextView
android:id="@+id/widget_st_offline"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="5dp"
android:layout_weight="1"
android:background="@drawable/widget_chip"
android:gravity="center"
android:maxLines="1"
android:paddingTop="6dp"
android:paddingBottom="6dp"
android:text="Offline"
android:textColor="#FFFFFF"
android:textSize="11sp" />
</LinearLayout>
</LinearLayout>
@@ -0,0 +1,113 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/widget_root"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/widget_background"
android:orientation="vertical"
android:padding="12dp">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:orientation="horizontal">
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="DeskHub"
android:textColor="#FFFFFF"
android:textSize="15sp"
android:textStyle="bold" />
<TextView
android:id="@+id/widget_refresh"
android:layout_width="28dp"
android:layout_height="28dp"
android:background="@drawable/widget_chip"
android:contentDescription="Aktualisieren"
android:gravity="center"
android:text="⟳"
android:textColor="#FFFFFF"
android:textSize="16sp" />
</LinearLayout>
<TextView
android:id="@+id/widget_message"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:text="Lade …"
android:textColor="#FFFFFF"
android:textSize="13sp"
android:visibility="gone" />
<LinearLayout
android:id="@+id/widget_tiles"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_marginTop="8dp"
android:layout_weight="1"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:background="@drawable/widget_tile"
android:gravity="center"
android:orientation="horizontal"
android:paddingStart="4dp"
android:paddingEnd="4dp">
<TextView
android:id="@+id/widget_my_open"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="–"
android:textColor="#FFFFFF"
android:textSize="24sp"
android:textStyle="bold" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:text="Meine"
android:textColor="#E6FFFFFF"
android:textSize="12sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/widget_tile_overdue"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_marginTop="6dp"
android:layout_weight="1"
android:background="@drawable/widget_tile"
android:gravity="center"
android:orientation="horizontal"
android:paddingStart="4dp"
android:paddingEnd="4dp">
<TextView
android:id="@+id/widget_overdue"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="–"
android:textColor="#FFFFFF"
android:textSize="24sp"
android:textStyle="bold" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:text="Überfällig"
android:textColor="#E6FFFFFF"
android:textSize="12sp" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
+1 -1
View File
@@ -1,5 +1,5 @@
<resources>
<string name="app_name">deskhub</string>
<string name="server_label">deskhub-Server</string>
<string name="widget_description">Zeigt deine offenen, nicht zugewiesenen und überfälligen Tickets.</string>
<string name="widget_description">Offene, nicht zugewiesene und überfällige Tickets, die wichtigsten Tickets zum Antippen und dein Status. In drei Größen.</string>
</resources>
@@ -2,9 +2,11 @@
<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
android:description="@string/widget_description"
android:initialLayout="@layout/widget_deskhub"
android:minWidth="250dp"
android:minWidth="110dp"
android:minHeight="110dp"
android:previewLayout="@layout/widget_deskhub"
android:minResizeWidth="110dp"
android:minResizeHeight="110dp"
android:previewLayout="@layout/widget_deskhub_large"
android:resizeMode="horizontal|vertical"
android:updatePeriodMillis="1800000"
android:widgetCategory="home_screen" />