From 4c7f53e309dba1ef279a34f7a6cb82e5d9a7104b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Elias=20M=C3=BCller?= <elias@elias-mueller.com>
Date: Wed, 3 Apr 2024 19:18:17 +0200
Subject: [PATCH] updated project style guidelines

---
 analysis_options.yaml                         |  7 ++
 lib/api/apiError.dart                         |  6 +-
 lib/api/apiParams.dart                        |  2 +-
 lib/api/apiRequest.dart                       |  2 +-
 lib/api/apiResponse.dart                      |  2 +-
 lib/api/holidays/getHolidays.dart             |  4 +-
 lib/api/holidays/getHolidaysCache.dart        |  6 +-
 lib/api/holidays/getHolidaysResponse.dart     |  2 +-
 .../autocomplete/autocompleteApi.dart         | 13 ++-
 .../autocomplete/autocompleteResponse.dart    |  2 +-
 .../files-sharing/fileSharingApi.dart         |  9 +-
 .../files-sharing/fileSharingApiParams.dart   |  2 +-
 lib/api/marianumcloud/talk/chat/getChat.dart  | 10 +--
 .../marianumcloud/talk/chat/getChatCache.dart | 10 +--
 .../talk/chat/getChatParams.dart              |  2 +-
 .../talk/chat/getChatResponse.dart            | 12 ++-
 .../talk/chat/richObjectStringProcessor.dart  |  2 +-
 .../talk/createRoom/createRoom.dart           |  6 +-
 .../talk/createRoom/createRoomParams.dart     |  2 +-
 .../talk/deleteMessage/deleteMessage.dart     | 10 +--
 .../deleteReactMessage.dart                   |  6 +-
 .../deleteReactMessageParams.dart             |  2 +-
 .../talk/getParticipants/getParticipants.dart | 10 +--
 .../getParticipants/getParticipantsCache.dart | 10 +--
 .../getParticipantsResponse.dart              |  2 +-
 .../talk/getReactions/getReactions.dart       | 10 +--
 .../getReactions/getReactionsResponse.dart    |  2 +-
 .../talk/leaveRoom/leaveRoom.dart             | 10 +--
 .../talk/reactMessage/reactMessage.dart       |  6 +-
 .../talk/reactMessage/reactMessageParams.dart |  2 +-
 lib/api/marianumcloud/talk/room/getRoom.dart  | 10 +--
 .../marianumcloud/talk/room/getRoomCache.dart | 10 +--
 .../talk/room/getRoomParams.dart              |  2 +-
 .../talk/room/getRoomResponse.dart            |  2 +-
 .../talk/sendMessage/sendMessage.dart         |  6 +-
 .../talk/sendMessage/sendMessageParams.dart   |  2 +-
 .../talk/sendMessage/sendMessageResponse.dart |  2 +-
 .../talk/setFavorite/setFavorite.dart         |  6 +-
 .../talk/setReadMarker/setReadMarker.dart     |  6 +-
 .../setReadMarker/setReadMarkerParams.dart    |  2 +-
 lib/api/marianumcloud/talk/talkApi.dart       |  4 +-
 lib/api/marianumcloud/talk/talkError.dart     |  6 +-
 .../queries/downloadFile/downloadFile.dart    |  2 +-
 .../downloadFile/downloadFileParams.dart      |  2 +-
 .../downloadFile/downloadFileResponse.dart    |  2 +-
 .../queries/listFiles/cacheableFile.dart      |  2 +-
 .../webdav/queries/listFiles/listFiles.dart   |  6 +-
 .../queries/listFiles/listFilesCache.dart     | 10 +--
 .../queries/listFiles/listFilesParams.dart    |  2 +-
 .../queries/listFiles/listFilesResponse.dart  |  2 +-
 lib/api/marianumcloud/webdav/webdavApi.dart   | 10 +--
 .../mhsl/breaker/getBreakers/getBreakers.dart | 10 +--
 .../breaker/getBreakers/getBreakersCache.dart | 10 +--
 .../getBreakers/getBreakersResponse.dart      |  2 +-
 .../add/addCustomTimetableEvent.dart          |  4 +-
 .../add/addCustomTimetableEventParams.dart    |  2 +-
 .../customTimetableEvent.dart                 |  2 +-
 .../get/getCustomTimetableEvent.dart          | 10 +--
 .../get/getCustomTimetableEventCache.dart     | 10 +--
 .../get/getCustomTimetableEventParams.dart    |  2 +-
 .../get/getCustomTimetableEventResponse.dart  |  2 +-
 .../remove/removeCustomTimetableEvent.dart    |  6 +-
 .../removeCustomTimetableEventParams.dart     |  2 +-
 .../update/updateCustomTimetableEvent.dart    |  6 +-
 .../updateCustomTimetableEventParams.dart     |  2 +-
 .../mhsl/message/getMessages/getMessages.dart | 10 +--
 .../message/getMessages/getMessagesCache.dart | 10 +--
 lib/api/mhsl/mhslApi.dart                     |  7 +-
 .../mhsl/notify/register/notifyRegister.dart  |  4 +-
 .../notify/register/notifyRegisterParams.dart |  2 +-
 lib/api/mhsl/server/feedback/addFeedback.dart |  6 +-
 .../server/feedback/addFeedbackParams.dart    |  2 +-
 .../update/updateUserIndexParams.dart         |  2 +-
 .../userIndex/update/updateUserindex.dart     |  6 +-
 lib/api/requestCache.dart                     |  8 +-
 .../queries/authenticate/authenticate.dart    |  4 +-
 .../authenticate/authenticateParams.dart      |  2 +-
 .../authenticate/authenticateResponse.dart    |  2 +-
 .../queries/getHolidays/getHolidays.dart      |  8 +-
 .../queries/getHolidays/getHolidaysCache.dart | 10 +--
 .../getHolidays/getHolidaysResponse.dart      |  2 +-
 .../webuntis/queries/getRooms/getRooms.dart   |  4 +-
 .../queries/getRooms/getRoomsCache.dart       | 10 +--
 .../queries/getRooms/getRoomsResponse.dart    |  2 +-
 .../queries/getSubjects/getSubjects.dart      |  4 +-
 .../queries/getSubjects/getSubjectsCache.dart | 10 +--
 .../getSubjects/getSubjectsResponse.dart      |  2 +-
 .../queries/getTimetable/getTimetable.dart    |  4 +-
 .../getTimetable/getTimetableCache.dart       | 10 +--
 .../getTimetable/getTimetableParams.dart      |  2 +-
 .../getTimetable/getTimetableResponse.dart    |  2 +-
 lib/api/webuntis/webuntisApi.dart             | 16 ++--
 lib/api/webuntis/webuntisError.dart           |  6 +-
 lib/app.dart                                  |  8 +-
 lib/extensions/dateTime.dart                  | 26 ++----
 lib/extensions/renderNotNull.dart             |  6 +-
 lib/extensions/text.dart                      |  4 +-
 lib/extensions/timeOfDay.dart                 | 14 +--
 lib/main.dart                                 | 10 +--
 lib/model/accountData.dart                    | 24 ++---
 lib/model/accountModel.dart                   |  2 +-
 lib/model/breakers/Breaker.dart               |  6 +-
 lib/model/breakers/BreakerProps.dart          | 12 ++-
 lib/model/chatList/chatListProps.dart         |  6 +-
 lib/model/chatList/chatProps.dart             | 12 +--
 lib/model/dataCleaner.dart                    |  6 +-
 lib/model/dataHolder.dart                     |  8 +-
 lib/model/endpointData.dart                   | 18 ++--
 lib/model/files/filesProps.dart               |  6 +-
 lib/model/holidays/holidaysProps.dart         |  6 +-
 lib/model/message/messageProps.dart           |  6 +-
 lib/model/timetable/timetableProps.dart       | 12 +--
 lib/notification/notificationController.dart  |  2 +-
 lib/notification/notificationService.dart     | 18 ++--
 lib/notification/notificationTasks.dart       |  2 +-
 lib/notification/notifyUpdater.dart           | 10 +--
 lib/storage/base/settings.dart                |  2 +-
 lib/storage/base/settingsProvider.dart        |  8 +-
 lib/storage/devTools/devToolsSettings.dart    |  2 +-
 lib/storage/file/fileSettings.dart            |  2 +-
 lib/storage/fileView/fileViewSettings.dart    |  2 +-
 .../gradeAverages/gradeAveragesSettings.dart  |  2 +-
 lib/storage/holidays/holidaysSettings.dart    |  2 +-
 .../notification/notificationSettings.dart    |  2 +-
 lib/storage/talk/talkSettings.dart            |  2 +-
 lib/storage/timetable/timetableSettings.dart  |  2 +-
 lib/theming/appTheme.dart                     |  6 +-
 lib/theming/darkAppTheme.dart                 |  2 +-
 lib/theming/lightAppTheme.dart                |  2 +-
 lib/view/login/login.dart                     | 14 +--
 lib/view/pages/files/fileElement.dart         | 28 +++---
 lib/view/pages/files/fileUploadDialog.dart    | 10 +--
 lib/view/pages/files/files.dart               | 28 +++---
 .../pages/more/feedback/feedbackDialog.dart   |  7 +-
 lib/view/pages/more/holidays/holidays.dart    | 31 +++----
 lib/view/pages/more/message/message.dart      |  7 +-
 lib/view/pages/more/message/messageView.dart  | 10 +--
 lib/view/pages/more/roomplan/roomplan.dart    |  4 +-
 .../more/share/appSharePlatformView.dart      |  2 +-
 lib/view/pages/more/share/qrShareView.dart    |  4 +-
 .../more/share/selectShareTypeDialog.dart     |  4 +-
 lib/view/pages/overhang.dart                  |  5 +-
 lib/view/pages/talk/chatDetails/chatInfo.dart |  2 +-
 .../participants/participantsListView.dart    | 10 +--
 lib/view/pages/talk/chatList.dart             |  6 +-
 lib/view/pages/talk/chatView.dart             | 12 ++-
 .../pages/talk/components/chatBubble.dart     | 36 +++-----
 .../pages/talk/components/chatMessage.dart    | 14 ++-
 .../pages/talk/components/chatTextfield.dart  | 12 ++-
 lib/view/pages/talk/components/chatTile.dart  | 13 +--
 .../talk/components/splitViewPlaceholder.dart |  4 +-
 lib/view/pages/talk/joinChat.dart             | 18 ++--
 lib/view/pages/talk/messageReactions.dart     | 12 +--
 lib/view/pages/talk/searchChat.dart           | 14 +--
 lib/view/pages/talk/talkNavigator.dart        |  4 +-
 lib/view/pages/timetable/CrossPainter.dart    |  2 +-
 .../pages/timetable/appointmentDetails.dart   | 34 +++-----
 .../pages/timetable/arbitraryAppointment.dart | 10 +--
 .../timetable/customTimetableColors.dart      |  6 +-
 .../customTimetableEventEditDialog.dart       |  8 +-
 .../pages/timetable/timeRegionComponent.dart  |  4 +-
 lib/view/pages/timetable/timetable.dart       | 87 ++++++++-----------
 lib/view/pages/timetable/timetableEvents.dart |  2 +-
 .../timetable/viewCustomTimetableEvents.dart  | 10 +--
 lib/view/settings/defaultSettings.dart        |  6 +-
 lib/view/settings/devToolsSettingsDialog.dart | 12 +--
 lib/view/settings/privacyInfo.dart            |  8 +-
 lib/view/settings/settings.dart               | 15 +---
 lib/widget/about/about.dart                   |  4 +-
 lib/widget/animatedTime.dart                  |  8 +-
 lib/widget/centeredLeading.dart               |  4 +-
 lib/widget/clickableAppBar.dart               |  4 +-
 lib/widget/confirmDialog.dart                 |  4 +-
 lib/widget/debug/cacheView.dart               | 16 ++--
 lib/widget/debug/debugTile.dart               | 14 +--
 lib/widget/debug/jsonViewer.dart              | 15 +---
 lib/widget/filePick.dart                      |  6 +-
 lib/widget/fileViewer.dart                    | 10 +--
 lib/widget/focusBehaviour.dart                |  2 +-
 lib/widget/infoDialog.dart                    |  2 +-
 lib/widget/largeProfilePictureView.dart       |  4 +-
 lib/widget/loadingSpinner.dart                |  4 +-
 lib/widget/placeholderView.dart               |  4 +-
 lib/widget/sharePositionOrigin.dart           |  6 +-
 lib/widget/unimplementedDialog.dart           |  2 +-
 185 files changed, 505 insertions(+), 873 deletions(-)

diff --git a/analysis_options.yaml b/analysis_options.yaml
index 5e39472..ebc4a78 100644
--- a/analysis_options.yaml
+++ b/analysis_options.yaml
@@ -28,6 +28,13 @@ linter:
     prefer_relative_imports: true
     unnecessary_lambdas: true
     prefer_single_quotes: true
+    prefer_if_elements_to_conditional_expressions: true
+    prefer_expression_function_bodies: true
+    omit_local_variable_types: true
+    eol_at_end_of_file: true
+    cast_nullable_to_non_nullable: true
+    avoid_void_async: true
+    avoid_multiple_declarations_per_line: true
 
 # Additional information about this file can be found at
 # https://dart.dev/guides/language/analysis-options
diff --git a/lib/api/apiError.dart b/lib/api/apiError.dart
index 039774e..42fe5c2 100644
--- a/lib/api/apiError.dart
+++ b/lib/api/apiError.dart
@@ -4,7 +4,5 @@ class ApiError {
   ApiError(this.message);
 
   @override
-  String toString() {
-    return 'ApiError: $message';
-  }
-}
\ No newline at end of file
+  String toString() => 'ApiError: $message';
+}
diff --git a/lib/api/apiParams.dart b/lib/api/apiParams.dart
index d59ae83..b679813 100644
--- a/lib/api/apiParams.dart
+++ b/lib/api/apiParams.dart
@@ -1,3 +1,3 @@
 class ApiParams {
 
-}
\ No newline at end of file
+}
diff --git a/lib/api/apiRequest.dart b/lib/api/apiRequest.dart
index f4f9c66..705ccbc 100644
--- a/lib/api/apiRequest.dart
+++ b/lib/api/apiRequest.dart
@@ -2,4 +2,4 @@
 
 class ApiRequest {
 
-}
\ No newline at end of file
+}
diff --git a/lib/api/apiResponse.dart b/lib/api/apiResponse.dart
index 547e286..4eacb01 100644
--- a/lib/api/apiResponse.dart
+++ b/lib/api/apiResponse.dart
@@ -6,4 +6,4 @@ abstract class ApiResponse {
 
   @JsonKey(includeIfNull: false)
   late Map<String, String>? headers;
-}
\ No newline at end of file
+}
diff --git a/lib/api/holidays/getHolidays.dart b/lib/api/holidays/getHolidays.dart
index 641884e..1d7be0b 100644
--- a/lib/api/holidays/getHolidays.dart
+++ b/lib/api/holidays/getHolidays.dart
@@ -6,7 +6,7 @@ import 'getHolidaysResponse.dart';
 
 class GetHolidays {
   Future<GetHolidaysResponse> query() async {
-    String response = (await http.get(Uri.parse('https://ferien-api.de/api/v1/holidays/HE'))).body;
+    var response = (await http.get(Uri.parse('https://ferien-api.de/api/v1/holidays/HE'))).body;
     return GetHolidaysResponse(
         List<GetHolidaysResponseObject>.from(
             jsonDecode(response).map<GetHolidaysResponseObject>(
@@ -15,4 +15,4 @@ class GetHolidays {
         )
     );
   }
-}
\ No newline at end of file
+}
diff --git a/lib/api/holidays/getHolidaysCache.dart b/lib/api/holidays/getHolidaysCache.dart
index 1803bd7..1e8f7e6 100644
--- a/lib/api/holidays/getHolidaysCache.dart
+++ b/lib/api/holidays/getHolidaysCache.dart
@@ -23,7 +23,5 @@ class GetHolidaysCache extends RequestCache<GetHolidaysResponse> {
   }
 
   @override
-  Future<GetHolidaysResponse> onLoad() {
-    return GetHolidays().query();
-  }
-}
\ No newline at end of file
+  Future<GetHolidaysResponse> onLoad() => GetHolidays().query();
+}
diff --git a/lib/api/holidays/getHolidaysResponse.dart b/lib/api/holidays/getHolidaysResponse.dart
index 2ce1a95..6ba00bb 100644
--- a/lib/api/holidays/getHolidaysResponse.dart
+++ b/lib/api/holidays/getHolidaysResponse.dart
@@ -35,4 +35,4 @@ class GetHolidaysResponseObject {
 
   factory GetHolidaysResponseObject.fromJson(Map<String, dynamic> json) => _$GetHolidaysResponseObjectFromJson(json);
   Map<String, dynamic> toJson() => _$GetHolidaysResponseObjectToJson(this);
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/autocomplete/autocompleteApi.dart b/lib/api/marianumcloud/autocomplete/autocompleteApi.dart
index 194fe24..f11b91c 100644
--- a/lib/api/marianumcloud/autocomplete/autocompleteApi.dart
+++ b/lib/api/marianumcloud/autocomplete/autocompleteApi.dart
@@ -2,7 +2,6 @@ import 'dart:convert';
 import 'dart:io';
 
 import 'package:http/http.dart' as http;
-import 'package:http/http.dart';
 
 import '../../../model/accountData.dart';
 import '../../../model/endpointData.dart';
@@ -10,7 +9,7 @@ import 'autocompleteResponse.dart';
 
 class AutocompleteApi {
   Future<AutocompleteResponse> find(String query) async {
-    Map<String, dynamic> getParameters = {
+    var getParameters = <String, dynamic>{
       'search': query,
       'itemType': ' ',
       'itemId': ' ',
@@ -18,16 +17,16 @@ class AutocompleteApi {
       'limit': '10',
     };
 
-    Map<String, String> headers = {};
+    var headers = <String, String>{};
     headers.putIfAbsent('Accept', () => 'application/json');
     headers.putIfAbsent('OCS-APIRequest', () => 'true');
 
-    Uri endpoint = Uri.https('${AccountData().buildHttpAuthString()}@${EndpointData().nextcloud().domain}', '${EndpointData().nextcloud().path}/ocs/v2.php/core/autocomplete/get', getParameters);
+    var endpoint = Uri.https('${AccountData().buildHttpAuthString()}@${EndpointData().nextcloud().domain}', '${EndpointData().nextcloud().path}/ocs/v2.php/core/autocomplete/get', getParameters);
 
-    Response response = await http.get(endpoint, headers: headers);
+    var response = await http.get(endpoint, headers: headers);
     if(response.statusCode != HttpStatus.ok) throw Exception('Api call failed with ${response.statusCode}: ${response.body}');
-    String result = response.body;
+    var result = response.body;
     return AutocompleteResponse.fromJson(jsonDecode(result)['ocs']);
   }
 
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/autocomplete/autocompleteResponse.dart b/lib/api/marianumcloud/autocomplete/autocompleteResponse.dart
index 8677726..15e1ffc 100644
--- a/lib/api/marianumcloud/autocomplete/autocompleteResponse.dart
+++ b/lib/api/marianumcloud/autocomplete/autocompleteResponse.dart
@@ -27,4 +27,4 @@ class AutocompleteResponseObject {
 
   factory AutocompleteResponseObject.fromJson(Map<String, dynamic> json) => _$AutocompleteResponseObjectFromJson(json);
   Map<String, dynamic> toJson() => _$AutocompleteResponseObjectToJson(this);
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/files-sharing/fileSharingApi.dart b/lib/api/marianumcloud/files-sharing/fileSharingApi.dart
index 978b7a0..42d5dd8 100644
--- a/lib/api/marianumcloud/files-sharing/fileSharingApi.dart
+++ b/lib/api/marianumcloud/files-sharing/fileSharingApi.dart
@@ -1,7 +1,6 @@
 import 'dart:io';
 
 import 'package:http/http.dart' as http;
-import 'package:http/http.dart';
 
 import '../../../model/accountData.dart';
 import '../../../model/endpointData.dart';
@@ -9,15 +8,15 @@ import 'fileSharingApiParams.dart';
 
 class FileSharingApi {
   Future<void> share(FileSharingApiParams query) async {
-    Map<String, String> headers = {};
+    var headers = <String, String>{};
     headers.putIfAbsent('Accept', () => 'application/json');
     headers.putIfAbsent('OCS-APIRequest', () => 'true');
 
-    Uri endpoint = Uri.https('${AccountData().buildHttpAuthString()}@${EndpointData().nextcloud().domain}', '${EndpointData().nextcloud().path}/ocs/v2.php/apps/files_sharing/api/v1/shares', query.toJson().map((key, value) => MapEntry(key, value.toString())));
-    Response response = await http.post(endpoint, headers: headers);
+    var endpoint = Uri.https('${AccountData().buildHttpAuthString()}@${EndpointData().nextcloud().domain}', '${EndpointData().nextcloud().path}/ocs/v2.php/apps/files_sharing/api/v1/shares', query.toJson().map((key, value) => MapEntry(key, value.toString())));
+    var response = await http.post(endpoint, headers: headers);
 
     if(response.statusCode != HttpStatus.ok) {
       throw Exception('Api call failed with ${response.statusCode}: ${response.body}');
     }
   }
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/files-sharing/fileSharingApiParams.dart b/lib/api/marianumcloud/files-sharing/fileSharingApiParams.dart
index 3dac0dd..edcc6a5 100644
--- a/lib/api/marianumcloud/files-sharing/fileSharingApiParams.dart
+++ b/lib/api/marianumcloud/files-sharing/fileSharingApiParams.dart
@@ -20,4 +20,4 @@ class FileSharingApiParams {
 
   factory FileSharingApiParams.fromJson(Map<String, dynamic> json) => _$FileSharingApiParamsFromJson(json);
   Map<String, dynamic> toJson() => _$FileSharingApiParamsToJson(this);
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/talk/chat/getChat.dart b/lib/api/marianumcloud/talk/chat/getChat.dart
index 2af2c54..fb64466 100644
--- a/lib/api/marianumcloud/talk/chat/getChat.dart
+++ b/lib/api/marianumcloud/talk/chat/getChat.dart
@@ -14,13 +14,9 @@ class GetChat extends TalkApi<GetChatResponse> {
   GetChat(this.chatToken, this.params) : super('v1/chat/$chatToken', null, getParameters: params.toJson());
 
   @override
-  assemble(String raw) {
-    return GetChatResponse.fromJson(jsonDecode(raw)['ocs']);
-  }
+  assemble(String raw) => GetChatResponse.fromJson(jsonDecode(raw)['ocs']);
 
   @override
-  Future<Response> request(Uri uri, Object? body, Map<String, String>? headers) {
-    return http.get(uri, headers: headers);
-  }
+  Future<Response> request(Uri uri, Object? body, Map<String, String>? headers) => http.get(uri, headers: headers);
   
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/talk/chat/getChatCache.dart b/lib/api/marianumcloud/talk/chat/getChatCache.dart
index cb60032..1a6cfd0 100644
--- a/lib/api/marianumcloud/talk/chat/getChatCache.dart
+++ b/lib/api/marianumcloud/talk/chat/getChatCache.dart
@@ -13,8 +13,7 @@ class GetChatCache extends RequestCache<GetChatResponse> {
   }
 
   @override
-  Future<GetChatResponse> onLoad() {
-    return GetChat(
+  Future<GetChatResponse> onLoad() => GetChat(
       chatToken,
       GetChatParams(
         lookIntoFuture: GetChatParamsSwitch.off,
@@ -22,11 +21,8 @@ class GetChatCache extends RequestCache<GetChatResponse> {
         limit: 200,
       )
     ).run();
-  }
 
   @override
-  GetChatResponse onLocalData(String json) {
-    return GetChatResponse.fromJson(jsonDecode(json));
-  }
+  GetChatResponse onLocalData(String json) => GetChatResponse.fromJson(jsonDecode(json));
 
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/talk/chat/getChatParams.dart b/lib/api/marianumcloud/talk/chat/getChatParams.dart
index 02ea362..08197b2 100644
--- a/lib/api/marianumcloud/talk/chat/getChatParams.dart
+++ b/lib/api/marianumcloud/talk/chat/getChatParams.dart
@@ -31,4 +31,4 @@ class GetChatParams extends ApiParams {
 enum GetChatParamsSwitch {
   @JsonValue(1) on,
   @JsonValue(0) off,
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/talk/chat/getChatResponse.dart b/lib/api/marianumcloud/talk/chat/getChatResponse.dart
index fbec9d0..b62b897 100644
--- a/lib/api/marianumcloud/talk/chat/getChatResponse.dart
+++ b/lib/api/marianumcloud/talk/chat/getChatResponse.dart
@@ -16,7 +16,7 @@ class GetChatResponse extends ApiResponse {
   Map<String, dynamic> toJson() => _$GetChatResponseToJson(this);
 
   List<GetChatResponseObject> sortByTimestamp() {
-    List<GetChatResponseObject> sorted = data.toList();
+    var sorted = data.toList();
     sorted.sort((a, b) => a.timestamp.compareTo(b.timestamp));
     return sorted;
   }
@@ -60,12 +60,11 @@ class GetChatResponseObject {
   Map<String, dynamic> toJson() => _$GetChatResponseObjectToJson(this);
 
   static GetChatResponseObject getDateDummy(int timestamp) {
-    DateTime elementDate = DateTime.fromMillisecondsSinceEpoch(timestamp * 1000);
+    var elementDate = DateTime.fromMillisecondsSinceEpoch(timestamp * 1000);
     return getTextDummy(Jiffy.parseFromDateTime(elementDate).format(pattern: 'dd.MM.yyyy'));
   }
 
-  static GetChatResponseObject getTextDummy(String text) {
-    return GetChatResponseObject(
+  static GetChatResponseObject getTextDummy(String text) => GetChatResponseObject(
         0,
         '',
         GetRoomResponseObjectMessageActorType.user,
@@ -81,13 +80,12 @@ class GetChatResponseObject {
         null,
         null
     );
-  }
 
 }
 
 Map<String, RichObjectString>? _fromJson(json) {
   if(json is Map<String, dynamic>) {
-    Map<String, RichObjectString> data = {};
+    var data = <String, RichObjectString>{};
     for (var element in json.keys) {
       data.putIfAbsent(element, () => RichObjectString.fromJson(json[element]));
     }
@@ -119,4 +117,4 @@ enum RichObjectStringObjectType {
   @JsonValue('guest') guest,
   @JsonValue('highlight') highlight,
   @JsonValue('talk-poll') talkPoll,
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/talk/chat/richObjectStringProcessor.dart b/lib/api/marianumcloud/talk/chat/richObjectStringProcessor.dart
index 9e7ea83..b61d064 100644
--- a/lib/api/marianumcloud/talk/chat/richObjectStringProcessor.dart
+++ b/lib/api/marianumcloud/talk/chat/richObjectStringProcessor.dart
@@ -11,4 +11,4 @@ class RichObjectStringProcessor {
 
     return message;
   }
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/talk/createRoom/createRoom.dart b/lib/api/marianumcloud/talk/createRoom/createRoom.dart
index 9407932..27d274d 100644
--- a/lib/api/marianumcloud/talk/createRoom/createRoom.dart
+++ b/lib/api/marianumcloud/talk/createRoom/createRoom.dart
@@ -10,9 +10,7 @@ class CreateRoom extends TalkApi {
   CreateRoom(this.params) : super('v4/room', params);
 
   @override
-  assemble(String raw) {
-    return null;
-  }
+  assemble(String raw) => null;
 
   @override
   Future<Response>? request(Uri uri, Object? body, Map<String, String>? headers) {
@@ -22,4 +20,4 @@ class CreateRoom extends TalkApi {
 
     return null;
   }
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/talk/createRoom/createRoomParams.dart b/lib/api/marianumcloud/talk/createRoom/createRoomParams.dart
index 66534fa..cb1d1b5 100644
--- a/lib/api/marianumcloud/talk/createRoom/createRoomParams.dart
+++ b/lib/api/marianumcloud/talk/createRoom/createRoomParams.dart
@@ -24,4 +24,4 @@ class CreateRoomParams extends ApiParams {
 
   factory CreateRoomParams.fromJson(Map<String, dynamic> json) => _$CreateRoomParamsFromJson(json);
   Map<String, dynamic> toJson() => _$CreateRoomParamsToJson(this);
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/talk/deleteMessage/deleteMessage.dart b/lib/api/marianumcloud/talk/deleteMessage/deleteMessage.dart
index c60d0ee..580f899 100644
--- a/lib/api/marianumcloud/talk/deleteMessage/deleteMessage.dart
+++ b/lib/api/marianumcloud/talk/deleteMessage/deleteMessage.dart
@@ -10,13 +10,9 @@ class DeleteMessage extends TalkApi {
   DeleteMessage(this.chatToken, this.messageId) : super('v1/chat/$chatToken/$messageId', null);
 
   @override
-  assemble(String raw) {
-    return null;
-  }
+  assemble(String raw) => null;
 
   @override
-  Future<Response>? request(Uri uri, ApiParams? body, Map<String, String>? headers) {
-    return http.delete(uri, headers: headers);
-  }
+  Future<Response>? request(Uri uri, ApiParams? body, Map<String, String>? headers) => http.delete(uri, headers: headers);
 
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/talk/deleteReactMessage/deleteReactMessage.dart b/lib/api/marianumcloud/talk/deleteReactMessage/deleteReactMessage.dart
index e24ff26..d586d5b 100644
--- a/lib/api/marianumcloud/talk/deleteReactMessage/deleteReactMessage.dart
+++ b/lib/api/marianumcloud/talk/deleteReactMessage/deleteReactMessage.dart
@@ -11,9 +11,7 @@ class DeleteReactMessage extends TalkApi {
   DeleteReactMessage({required this.chatToken, required this.messageId, required DeleteReactMessageParams params}) : super('v1/reaction/$chatToken/$messageId', params);
 
   @override
-  assemble(String raw) {
-    return null;
-  }
+  assemble(String raw) => null;
 
   @override
   Future<Response>? request(Uri uri, ApiParams? body, Map<String, String>? headers) {
@@ -23,4 +21,4 @@ class DeleteReactMessage extends TalkApi {
     return null;
   }
 
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/talk/deleteReactMessage/deleteReactMessageParams.dart b/lib/api/marianumcloud/talk/deleteReactMessage/deleteReactMessageParams.dart
index 93f13cb..c40c317 100644
--- a/lib/api/marianumcloud/talk/deleteReactMessage/deleteReactMessageParams.dart
+++ b/lib/api/marianumcloud/talk/deleteReactMessage/deleteReactMessageParams.dart
@@ -12,4 +12,4 @@ class DeleteReactMessageParams extends ApiParams {
 
   factory DeleteReactMessageParams.fromJson(Map<String, dynamic> json) => _$DeleteReactMessageParamsFromJson(json);
   Map<String, dynamic> toJson() => _$DeleteReactMessageParamsToJson(this);
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/talk/getParticipants/getParticipants.dart b/lib/api/marianumcloud/talk/getParticipants/getParticipants.dart
index 38a8266..ec88234 100644
--- a/lib/api/marianumcloud/talk/getParticipants/getParticipants.dart
+++ b/lib/api/marianumcloud/talk/getParticipants/getParticipants.dart
@@ -10,13 +10,9 @@ class GetParticipants extends TalkApi<GetParticipantsResponse> {
   GetParticipants(this.token) : super('v4/room/$token/participants', null);
 
   @override
-  GetParticipantsResponse assemble(String raw) {
-    return GetParticipantsResponse.fromJson(jsonDecode(raw)['ocs']);
-  }
+  GetParticipantsResponse assemble(String raw) => GetParticipantsResponse.fromJson(jsonDecode(raw)['ocs']);
 
   @override
-  Future<http.Response> request(Uri uri, Object? body, Map<String, String>? headers) {
-    return http.get(uri, headers: headers);
-  }
+  Future<http.Response> request(Uri uri, Object? body, Map<String, String>? headers) => http.get(uri, headers: headers);
 
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/talk/getParticipants/getParticipantsCache.dart b/lib/api/marianumcloud/talk/getParticipants/getParticipantsCache.dart
index e457059..4adfd5c 100644
--- a/lib/api/marianumcloud/talk/getParticipants/getParticipantsCache.dart
+++ b/lib/api/marianumcloud/talk/getParticipants/getParticipantsCache.dart
@@ -12,15 +12,11 @@ class GetParticipantsCache extends RequestCache<GetParticipantsResponse> {
   }
 
   @override
-  Future<GetParticipantsResponse> onLoad() {
-    return GetParticipants(
+  Future<GetParticipantsResponse> onLoad() => GetParticipants(
         chatToken,
     ).run();
-  }
 
   @override
-  GetParticipantsResponse onLocalData(String json) {
-    return GetParticipantsResponse.fromJson(jsonDecode(json));
-  }
+  GetParticipantsResponse onLocalData(String json) => GetParticipantsResponse.fromJson(jsonDecode(json));
 
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/talk/getParticipants/getParticipantsResponse.dart b/lib/api/marianumcloud/talk/getParticipants/getParticipantsResponse.dart
index 85b99fb..1be47ce 100644
--- a/lib/api/marianumcloud/talk/getParticipants/getParticipantsResponse.dart
+++ b/lib/api/marianumcloud/talk/getParticipants/getParticipantsResponse.dart
@@ -69,4 +69,4 @@ enum GetParticipantsResponseObjectParticipantsInCallFlags {
   @JsonValue(2) providesAudio,
   @JsonValue(3) providesVideo,
   @JsonValue(4) usesSipDialIn
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/talk/getReactions/getReactions.dart b/lib/api/marianumcloud/talk/getReactions/getReactions.dart
index e946751..5b9a8e3 100644
--- a/lib/api/marianumcloud/talk/getReactions/getReactions.dart
+++ b/lib/api/marianumcloud/talk/getReactions/getReactions.dart
@@ -13,13 +13,9 @@ class GetReactions extends TalkApi<GetReactionsResponse> {
   GetReactions({required this.chatToken, required this.messageId}) : super('v1/reaction/$chatToken/$messageId', null);
 
   @override
-  assemble(String raw) {
-    return GetReactionsResponse.fromJson(jsonDecode(raw)['ocs']);
-  }
+  assemble(String raw) => GetReactionsResponse.fromJson(jsonDecode(raw)['ocs']);
 
   @override
-  Future<Response>? request(Uri uri, ApiParams? body, Map<String, String>? headers) {
-    return http.get(uri, headers: headers);
-  }
+  Future<Response>? request(Uri uri, ApiParams? body, Map<String, String>? headers) => http.get(uri, headers: headers);
 
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/talk/getReactions/getReactionsResponse.dart b/lib/api/marianumcloud/talk/getReactions/getReactionsResponse.dart
index 5c0fd14..5a6c9f0 100644
--- a/lib/api/marianumcloud/talk/getReactions/getReactionsResponse.dart
+++ b/lib/api/marianumcloud/talk/getReactions/getReactionsResponse.dart
@@ -30,4 +30,4 @@ class GetReactionsResponseObject {
 enum GetReactionsResponseObjectActorType {
   @JsonValue('guests') guests,
   @JsonValue('users') users,
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/talk/leaveRoom/leaveRoom.dart b/lib/api/marianumcloud/talk/leaveRoom/leaveRoom.dart
index 4d13fe0..ee1f090 100644
--- a/lib/api/marianumcloud/talk/leaveRoom/leaveRoom.dart
+++ b/lib/api/marianumcloud/talk/leaveRoom/leaveRoom.dart
@@ -9,12 +9,8 @@ class LeaveRoom extends TalkApi {
   LeaveRoom(this.chatToken) : super('v4/room/$chatToken/participants/self', null);
 
   @override
-  assemble(String raw) {
-    return null;
-  }
+  assemble(String raw) => null;
 
   @override
-  Future<Response> request(Uri uri, Object? body, Map<String, String>? headers) {
-    return http.delete(uri, headers: headers);
-  }
-}
\ No newline at end of file
+  Future<Response> request(Uri uri, Object? body, Map<String, String>? headers) => http.delete(uri, headers: headers);
+}
diff --git a/lib/api/marianumcloud/talk/reactMessage/reactMessage.dart b/lib/api/marianumcloud/talk/reactMessage/reactMessage.dart
index 4ce840f..ac76bd2 100644
--- a/lib/api/marianumcloud/talk/reactMessage/reactMessage.dart
+++ b/lib/api/marianumcloud/talk/reactMessage/reactMessage.dart
@@ -11,9 +11,7 @@ class ReactMessage extends TalkApi {
   ReactMessage({required this.chatToken, required this.messageId, required ReactMessageParams params}) : super('v1/reaction/$chatToken/$messageId', params);
 
   @override
-  assemble(String raw) {
-    return null;
-  }
+  assemble(String raw) => null;
 
   @override
   Future<Response>? request(Uri uri, ApiParams? body, Map<String, String>? headers) {
@@ -23,4 +21,4 @@ class ReactMessage extends TalkApi {
     return null;
   }
 
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/talk/reactMessage/reactMessageParams.dart b/lib/api/marianumcloud/talk/reactMessage/reactMessageParams.dart
index 05ef0ac..0fb6cc1 100644
--- a/lib/api/marianumcloud/talk/reactMessage/reactMessageParams.dart
+++ b/lib/api/marianumcloud/talk/reactMessage/reactMessageParams.dart
@@ -12,4 +12,4 @@ class ReactMessageParams extends ApiParams {
 
   factory ReactMessageParams.fromJson(Map<String, dynamic> json) => _$ReactMessageParamsFromJson(json);
   Map<String, dynamic> toJson() => _$ReactMessageParamsToJson(this);
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/talk/room/getRoom.dart b/lib/api/marianumcloud/talk/room/getRoom.dart
index 5e0c092..dd7cc52 100644
--- a/lib/api/marianumcloud/talk/room/getRoom.dart
+++ b/lib/api/marianumcloud/talk/room/getRoom.dart
@@ -14,13 +14,9 @@ class GetRoom extends TalkApi<GetRoomResponse> {
 
 
   @override
-  GetRoomResponse assemble(String raw) {
-    return GetRoomResponse.fromJson(jsonDecode(raw)['ocs']);
-  }
+  GetRoomResponse assemble(String raw) => GetRoomResponse.fromJson(jsonDecode(raw)['ocs']);
 
   @override
-  Future<http.Response> request(Uri uri, Object? body, Map<String, String>? headers) {
-    return http.get(uri, headers: headers);
-  }
+  Future<http.Response> request(Uri uri, Object? body, Map<String, String>? headers) => http.get(uri, headers: headers);
 
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/talk/room/getRoomCache.dart b/lib/api/marianumcloud/talk/room/getRoomCache.dart
index 091bd65..295856c 100644
--- a/lib/api/marianumcloud/talk/room/getRoomCache.dart
+++ b/lib/api/marianumcloud/talk/room/getRoomCache.dart
@@ -12,16 +12,12 @@ class GetRoomCache extends RequestCache<GetRoomResponse> {
   }
 
   @override
-  GetRoomResponse onLocalData(String json) {
-    return GetRoomResponse.fromJson(jsonDecode(json));
-  }
+  GetRoomResponse onLocalData(String json) => GetRoomResponse.fromJson(jsonDecode(json));
 
   @override
-  Future<GetRoomResponse> onLoad() {
-    return GetRoom(
+  Future<GetRoomResponse> onLoad() => GetRoom(
       GetRoomParams(
         includeStatus: true,
       )
     ).run();
-  }
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/talk/room/getRoomParams.dart b/lib/api/marianumcloud/talk/room/getRoomParams.dart
index f90e914..70d371d 100644
--- a/lib/api/marianumcloud/talk/room/getRoomParams.dart
+++ b/lib/api/marianumcloud/talk/room/getRoomParams.dart
@@ -22,4 +22,4 @@ class GetRoomParams extends ApiParams {
 enum GetRoomParamsStatusUpdate {
   @JsonValue(0) defaults,
   @JsonValue(1) keepAlive,
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/talk/room/getRoomResponse.dart b/lib/api/marianumcloud/talk/room/getRoomResponse.dart
index 3899887..e8b9e27 100644
--- a/lib/api/marianumcloud/talk/room/getRoomResponse.dart
+++ b/lib/api/marianumcloud/talk/room/getRoomResponse.dart
@@ -164,4 +164,4 @@ enum GetRoomResponseObjectMessageType {
   @JsonValue('comment_deleted') deletedComment,
   @JsonValue('system') system,
   @JsonValue('command') command,
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/talk/sendMessage/sendMessage.dart b/lib/api/marianumcloud/talk/sendMessage/sendMessage.dart
index 79f6845..61af457 100644
--- a/lib/api/marianumcloud/talk/sendMessage/sendMessage.dart
+++ b/lib/api/marianumcloud/talk/sendMessage/sendMessage.dart
@@ -10,9 +10,7 @@ class SendMessage extends TalkApi {
   SendMessage(this.chatToken, SendMessageParams params) : super('v1/chat/$chatToken', params);
 
   @override
-  assemble(String raw) {
-    return null;
-  }
+  assemble(String raw) => null;
 
   @override
   Future<Response>? request(Uri uri, ApiParams? body, Map<String, String>? headers) {
@@ -22,4 +20,4 @@ class SendMessage extends TalkApi {
     return null;
   }
   
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/talk/sendMessage/sendMessageParams.dart b/lib/api/marianumcloud/talk/sendMessage/sendMessageParams.dart
index 9cbeff6..e9150c4 100644
--- a/lib/api/marianumcloud/talk/sendMessage/sendMessageParams.dart
+++ b/lib/api/marianumcloud/talk/sendMessage/sendMessageParams.dart
@@ -13,4 +13,4 @@ class SendMessageParams extends ApiParams {
 
   factory SendMessageParams.fromJson(Map<String, dynamic> json) => _$SendMessageParamsFromJson(json);
   Map<String, dynamic> toJson() => _$SendMessageParamsToJson(this);
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/talk/sendMessage/sendMessageResponse.dart b/lib/api/marianumcloud/talk/sendMessage/sendMessageResponse.dart
index 52fe5c4..5c9500b 100644
--- a/lib/api/marianumcloud/talk/sendMessage/sendMessageResponse.dart
+++ b/lib/api/marianumcloud/talk/sendMessage/sendMessageResponse.dart
@@ -2,4 +2,4 @@ import '../../../apiResponse.dart';
 
 class SendMessageResponse extends ApiResponse {
 
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/talk/setFavorite/setFavorite.dart b/lib/api/marianumcloud/talk/setFavorite/setFavorite.dart
index f5ab5df..5f06d51 100644
--- a/lib/api/marianumcloud/talk/setFavorite/setFavorite.dart
+++ b/lib/api/marianumcloud/talk/setFavorite/setFavorite.dart
@@ -11,9 +11,7 @@ class SetFavorite extends TalkApi {
   SetFavorite(this.chatToken, this.favoriteState) : super('v4/room/$chatToken/favorite', null);
 
   @override
-  assemble(String raw) {
-    return null;
-  }
+  assemble(String raw) => null;
 
   @override
   Future<Response> request(Uri uri, Object? body, Map<String, String>? headers) {
@@ -24,4 +22,4 @@ class SetFavorite extends TalkApi {
     }
   }
 
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/talk/setReadMarker/setReadMarker.dart b/lib/api/marianumcloud/talk/setReadMarker/setReadMarker.dart
index fbdd5a4..c3ae029 100644
--- a/lib/api/marianumcloud/talk/setReadMarker/setReadMarker.dart
+++ b/lib/api/marianumcloud/talk/setReadMarker/setReadMarker.dart
@@ -15,9 +15,7 @@ class SetReadMarker extends TalkApi {
   }
 
   @override
-  assemble(String raw) {
-    return null;
-  }
+  assemble(String raw) => null;
 
   @override
   Future<Response> request(Uri uri, Object? body, Map<String, String>? headers) {
@@ -29,4 +27,4 @@ class SetReadMarker extends TalkApi {
     }
   }
 
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/talk/setReadMarker/setReadMarkerParams.dart b/lib/api/marianumcloud/talk/setReadMarker/setReadMarkerParams.dart
index 58ac2a8..5f037c2 100644
--- a/lib/api/marianumcloud/talk/setReadMarker/setReadMarkerParams.dart
+++ b/lib/api/marianumcloud/talk/setReadMarker/setReadMarkerParams.dart
@@ -14,4 +14,4 @@ class SetReadMarkerParams extends ApiParams {
 
   factory SetReadMarkerParams.fromJson(Map<String, dynamic> json) => _$SetReadMarkerParamsFromJson(json);
   Map<String, dynamic> toJson() => _$SetReadMarkerParamsToJson(this);
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/talk/talkApi.dart b/lib/api/marianumcloud/talk/talkApi.dart
index 7da0e91..b90af22 100644
--- a/lib/api/marianumcloud/talk/talkApi.dart
+++ b/lib/api/marianumcloud/talk/talkApi.dart
@@ -34,7 +34,7 @@ abstract class TalkApi<T extends ApiResponse?> extends ApiRequest {
       getParameters?.update(key, (value) => value.toString());
     });
 
-    Uri endpoint = Uri.https('${AccountData().buildHttpAuthString()}@${EndpointData().nextcloud().domain}', '${EndpointData().nextcloud().path}/ocs/v2.php/apps/spreed/api/$path', getParameters);
+    var endpoint = Uri.https('${AccountData().buildHttpAuthString()}@${EndpointData().nextcloud().domain}', '${EndpointData().nextcloud().path}/ocs/v2.php/apps/spreed/api/$path', getParameters);
 
     headers ??= {};
     headers?.putIfAbsent('Accept', () => 'application/json');
@@ -65,4 +65,4 @@ abstract class TalkApi<T extends ApiResponse?> extends ApiRequest {
     throw Exception('Error assembling Talk API response');
   }
 
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/talk/talkError.dart b/lib/api/marianumcloud/talk/talkError.dart
index 8f2884e..186994d 100644
--- a/lib/api/marianumcloud/talk/talkError.dart
+++ b/lib/api/marianumcloud/talk/talkError.dart
@@ -6,7 +6,5 @@ class TalkError {
   TalkError(this.status, this.code, this.message);
 
   @override
-  String toString() {
-    return 'Talk - $status - ($code): $message';
-  }
-}
\ No newline at end of file
+  String toString() => 'Talk - $status - ($code): $message';
+}
diff --git a/lib/api/marianumcloud/webdav/queries/downloadFile/downloadFile.dart b/lib/api/marianumcloud/webdav/queries/downloadFile/downloadFile.dart
index 3bfd5ba..30269c6 100644
--- a/lib/api/marianumcloud/webdav/queries/downloadFile/downloadFile.dart
+++ b/lib/api/marianumcloud/webdav/queries/downloadFile/downloadFile.dart
@@ -19,4 +19,4 @@ class DownloadFile extends WebdavApi<DownloadFileParams> {
     // OpenFile.open(localPath);
     throw UnimplementedError();
   }
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/webdav/queries/downloadFile/downloadFileParams.dart b/lib/api/marianumcloud/webdav/queries/downloadFile/downloadFileParams.dart
index 48317d3..11b6231 100644
--- a/lib/api/marianumcloud/webdav/queries/downloadFile/downloadFileParams.dart
+++ b/lib/api/marianumcloud/webdav/queries/downloadFile/downloadFileParams.dart
@@ -14,4 +14,4 @@ class DownloadFileParams extends ApiParams {
 
   factory DownloadFileParams.fromJson(Map<String, dynamic> json) => _$DownloadFileParamsFromJson(json);
   Map<String, dynamic> toJson() => _$DownloadFileParamsToJson(this);
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/webdav/queries/downloadFile/downloadFileResponse.dart b/lib/api/marianumcloud/webdav/queries/downloadFile/downloadFileResponse.dart
index 5dfc741..3368cdd 100644
--- a/lib/api/marianumcloud/webdav/queries/downloadFile/downloadFileResponse.dart
+++ b/lib/api/marianumcloud/webdav/queries/downloadFile/downloadFileResponse.dart
@@ -11,4 +11,4 @@ class DownloadFileResponse {
 
   factory DownloadFileResponse.fromJson(Map<String, dynamic> json) => _$DownloadFileResponseFromJson(json);
   Map<String, dynamic> toJson() => _$DownloadFileResponseToJson(this);
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/webdav/queries/listFiles/cacheableFile.dart b/lib/api/marianumcloud/webdav/queries/listFiles/cacheableFile.dart
index 90df17c..b8a9918 100644
--- a/lib/api/marianumcloud/webdav/queries/listFiles/cacheableFile.dart
+++ b/lib/api/marianumcloud/webdav/queries/listFiles/cacheableFile.dart
@@ -34,4 +34,4 @@ class CacheableFile {
 
   factory CacheableFile.fromJson(Map<String, dynamic> json) => _$CacheableFileFromJson(json);
   Map<String, dynamic> toJson() => _$CacheableFileToJson(this);
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/webdav/queries/listFiles/listFiles.dart b/lib/api/marianumcloud/webdav/queries/listFiles/listFiles.dart
index 96fd558..438204d 100644
--- a/lib/api/marianumcloud/webdav/queries/listFiles/listFiles.dart
+++ b/lib/api/marianumcloud/webdav/queries/listFiles/listFiles.dart
@@ -13,8 +13,8 @@ class ListFiles extends WebdavApi<ListFilesParams> {
 
   @override
   Future<ListFilesResponse> run() async {
-    List<WebDavFile> davFiles = (await (await WebdavApi.webdav).propfind(PathUri.parse(params.path))).toWebDavFiles();
-    Set<CacheableFile> files = davFiles.map(CacheableFile.fromDavFile).toSet();
+    var davFiles = (await (await WebdavApi.webdav).propfind(PathUri.parse(params.path))).toWebDavFiles();
+    var files = davFiles.map(CacheableFile.fromDavFile).toSet();
 
     // webdav handles subdirectories wrong, this is a fix
     // currently this fix is not needed anymore
@@ -30,4 +30,4 @@ class ListFiles extends WebdavApi<ListFilesParams> {
 
     return ListFilesResponse(files);
   }
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/webdav/queries/listFiles/listFilesCache.dart b/lib/api/marianumcloud/webdav/queries/listFiles/listFilesCache.dart
index ef1aefa..fab0e2d 100644
--- a/lib/api/marianumcloud/webdav/queries/listFiles/listFilesCache.dart
+++ b/lib/api/marianumcloud/webdav/queries/listFiles/listFilesCache.dart
@@ -11,19 +11,17 @@ class ListFilesCache extends RequestCache<ListFilesResponse> {
 
   ListFilesCache({required onUpdate, required this.path}) : super(RequestCache.cacheNothing, onUpdate) {
     var bytes = utf8.encode('MarianumMobile-$path');
-    String cacheName = md5.convert(bytes).toString();
+    var cacheName = md5.convert(bytes).toString();
     start('MarianumMobile', 'wd-folder-$cacheName');
   }
 
   @override
   Future<ListFilesResponse> onLoad() async {
-    ListFilesResponse data = await ListFiles(ListFilesParams(path)).run();
+    var data = await ListFiles(ListFilesParams(path)).run();
     return data;
   }
 
   @override
-  ListFilesResponse onLocalData(String json) {
-    return ListFilesResponse.fromJson(jsonDecode(json));
-  }
+  ListFilesResponse onLocalData(String json) => ListFilesResponse.fromJson(jsonDecode(json));
 
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/webdav/queries/listFiles/listFilesParams.dart b/lib/api/marianumcloud/webdav/queries/listFiles/listFilesParams.dart
index 8f839f9..f0adf21 100644
--- a/lib/api/marianumcloud/webdav/queries/listFiles/listFilesParams.dart
+++ b/lib/api/marianumcloud/webdav/queries/listFiles/listFilesParams.dart
@@ -12,4 +12,4 @@ class ListFilesParams extends ApiParams {
 
   factory ListFilesParams.fromJson(Map<String, dynamic> json) => _$ListFilesParamsFromJson(json);
   Map<String, dynamic> toJson() => _$ListFilesParamsToJson(this);
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/webdav/queries/listFiles/listFilesResponse.dart b/lib/api/marianumcloud/webdav/queries/listFiles/listFilesResponse.dart
index cc8b5d2..59f8d0e 100644
--- a/lib/api/marianumcloud/webdav/queries/listFiles/listFilesResponse.dart
+++ b/lib/api/marianumcloud/webdav/queries/listFiles/listFilesResponse.dart
@@ -54,4 +54,4 @@ class ListFilesResponse extends ApiResponse {
         var list = files.toList()..sort((a, b) => b.sort!.compareTo(a.sort!));
         return reversed ? list.reversed.toList() : list;
     }
-}
\ No newline at end of file
+}
diff --git a/lib/api/marianumcloud/webdav/webdavApi.dart b/lib/api/marianumcloud/webdav/webdavApi.dart
index 27ad784..cfa7159 100644
--- a/lib/api/marianumcloud/webdav/webdavApi.dart
+++ b/lib/api/marianumcloud/webdav/webdavApi.dart
@@ -17,11 +17,7 @@ abstract class WebdavApi<T> extends ApiRequest {
   static Future<WebDavClient> webdav = establishWebdavConnection();
   static Future<String> webdavConnectString = buildWebdavConnectString();
 
-  static Future<WebDavClient> establishWebdavConnection() async {
-    return NextcloudClient(Uri.parse('https://${EndpointData().nextcloud().full()}'), password: AccountData().getPassword(), loginName: AccountData().getUsername()).webdav;
-  }
+  static Future<WebDavClient> establishWebdavConnection() async => NextcloudClient(Uri.parse('https://${EndpointData().nextcloud().full()}'), password: AccountData().getPassword(), loginName: AccountData().getUsername()).webdav;
 
-  static Future<String> buildWebdavConnectString() async {
-    return 'https://${AccountData().buildHttpAuthString()}@${EndpointData().nextcloud().full()}/remote.php/dav/files/${AccountData().getUsername()}/';
-  }
-}
\ No newline at end of file
+  static Future<String> buildWebdavConnectString() async => 'https://${AccountData().buildHttpAuthString()}@${EndpointData().nextcloud().full()}/remote.php/dav/files/${AccountData().getUsername()}/';
+}
diff --git a/lib/api/mhsl/breaker/getBreakers/getBreakers.dart b/lib/api/mhsl/breaker/getBreakers/getBreakers.dart
index 6395df5..63d2fe0 100644
--- a/lib/api/mhsl/breaker/getBreakers/getBreakers.dart
+++ b/lib/api/mhsl/breaker/getBreakers/getBreakers.dart
@@ -9,13 +9,9 @@ class GetBreakers extends MhslApi<GetBreakersResponse> {
   GetBreakers() : super('breaker/');
 
   @override
-  GetBreakersResponse assemble(String raw) {
-    return GetBreakersResponse.fromJson(jsonDecode(raw));
-  }
+  GetBreakersResponse assemble(String raw) => GetBreakersResponse.fromJson(jsonDecode(raw));
 
   @override
-  Future<Response>? request(Uri uri) {
-    return http.get(uri);
-  }
+  Future<Response>? request(Uri uri) => http.get(uri);
 
-}
\ No newline at end of file
+}
diff --git a/lib/api/mhsl/breaker/getBreakers/getBreakersCache.dart b/lib/api/mhsl/breaker/getBreakers/getBreakersCache.dart
index 3b98444..50dcb9b 100644
--- a/lib/api/mhsl/breaker/getBreakers/getBreakersCache.dart
+++ b/lib/api/mhsl/breaker/getBreakers/getBreakersCache.dart
@@ -10,12 +10,8 @@ class GetBreakersCache extends RequestCache<GetBreakersResponse> {
   }
 
   @override
-  GetBreakersResponse onLocalData(String json) {
-    return GetBreakersResponse.fromJson(jsonDecode(json));
-  }
+  GetBreakersResponse onLocalData(String json) => GetBreakersResponse.fromJson(jsonDecode(json));
 
   @override
-  Future<GetBreakersResponse> onLoad() {
-    return GetBreakers().run();
-  }
-}
\ No newline at end of file
+  Future<GetBreakersResponse> onLoad() => GetBreakers().run();
+}
diff --git a/lib/api/mhsl/breaker/getBreakers/getBreakersResponse.dart b/lib/api/mhsl/breaker/getBreakers/getBreakersResponse.dart
index 0b7e6c4..6e0cb73 100644
--- a/lib/api/mhsl/breaker/getBreakers/getBreakersResponse.dart
+++ b/lib/api/mhsl/breaker/getBreakers/getBreakersResponse.dart
@@ -33,4 +33,4 @@ enum BreakerArea {
   @JsonValue('TALK') talk,
   @JsonValue('FILES') files,
   @JsonValue('MORE') more,
-}
\ No newline at end of file
+}
diff --git a/lib/api/mhsl/customTimetableEvent/add/addCustomTimetableEvent.dart b/lib/api/mhsl/customTimetableEvent/add/addCustomTimetableEvent.dart
index 25bb7db..15f237f 100644
--- a/lib/api/mhsl/customTimetableEvent/add/addCustomTimetableEvent.dart
+++ b/lib/api/mhsl/customTimetableEvent/add/addCustomTimetableEvent.dart
@@ -16,7 +16,7 @@ class AddCustomTimetableEvent extends MhslApi<void> {
 
   @override
   Future<Response>? request(Uri uri) {
-    String body = jsonEncode(params.toJson());
+    var body = jsonEncode(params.toJson());
     return http.post(uri, body: body);
   }
-}
\ No newline at end of file
+}
diff --git a/lib/api/mhsl/customTimetableEvent/add/addCustomTimetableEventParams.dart b/lib/api/mhsl/customTimetableEvent/add/addCustomTimetableEventParams.dart
index 1ae908f..125d3ea 100644
--- a/lib/api/mhsl/customTimetableEvent/add/addCustomTimetableEventParams.dart
+++ b/lib/api/mhsl/customTimetableEvent/add/addCustomTimetableEventParams.dart
@@ -13,4 +13,4 @@ class AddCustomTimetableEventParams {
 
   factory AddCustomTimetableEventParams.fromJson(Map<String, dynamic> json) => _$AddCustomTimetableEventParamsFromJson(json);
   Map<String, dynamic> toJson() => _$AddCustomTimetableEventParamsToJson(this);
-}
\ No newline at end of file
+}
diff --git a/lib/api/mhsl/customTimetableEvent/customTimetableEvent.dart b/lib/api/mhsl/customTimetableEvent/customTimetableEvent.dart
index 1a8efe5..d34489b 100644
--- a/lib/api/mhsl/customTimetableEvent/customTimetableEvent.dart
+++ b/lib/api/mhsl/customTimetableEvent/customTimetableEvent.dart
@@ -25,4 +25,4 @@ class CustomTimetableEvent {
 
   factory CustomTimetableEvent.fromJson(Map<String, dynamic> json) => _$CustomTimetableEventFromJson(json);
   Map<String, dynamic> toJson() => _$CustomTimetableEventToJson(this);
-}
\ No newline at end of file
+}
diff --git a/lib/api/mhsl/customTimetableEvent/get/getCustomTimetableEvent.dart b/lib/api/mhsl/customTimetableEvent/get/getCustomTimetableEvent.dart
index 50b10b7..bca7fd0 100644
--- a/lib/api/mhsl/customTimetableEvent/get/getCustomTimetableEvent.dart
+++ b/lib/api/mhsl/customTimetableEvent/get/getCustomTimetableEvent.dart
@@ -12,12 +12,8 @@ class GetCustomTimetableEvent extends MhslApi<GetCustomTimetableEventResponse> {
   GetCustomTimetableEvent(this.params) : super('server/timetable/customEvents?user=${params.user}');
 
   @override
-  GetCustomTimetableEventResponse assemble(String raw) {
-    return GetCustomTimetableEventResponse.fromJson({'events': jsonDecode(raw)});
-  }
+  GetCustomTimetableEventResponse assemble(String raw) => GetCustomTimetableEventResponse.fromJson({'events': jsonDecode(raw)});
 
   @override
-  Future<Response>? request(Uri uri) {
-    return http.get(uri);
-  }
-}
\ No newline at end of file
+  Future<Response>? request(Uri uri) => http.get(uri);
+}
diff --git a/lib/api/mhsl/customTimetableEvent/get/getCustomTimetableEventCache.dart b/lib/api/mhsl/customTimetableEvent/get/getCustomTimetableEventCache.dart
index 8c8762f..ba47a31 100644
--- a/lib/api/mhsl/customTimetableEvent/get/getCustomTimetableEventCache.dart
+++ b/lib/api/mhsl/customTimetableEvent/get/getCustomTimetableEventCache.dart
@@ -13,12 +13,8 @@ class GetCustomTimetableEventCache extends RequestCache<GetCustomTimetableEventR
   }
 
   @override
-  Future<GetCustomTimetableEventResponse> onLoad() {
-    return GetCustomTimetableEvent(params).run();
-  }
+  Future<GetCustomTimetableEventResponse> onLoad() => GetCustomTimetableEvent(params).run();
 
   @override
-  GetCustomTimetableEventResponse onLocalData(String json) {
-    return GetCustomTimetableEventResponse.fromJson(jsonDecode(json));
-  }
-}
\ No newline at end of file
+  GetCustomTimetableEventResponse onLocalData(String json) => GetCustomTimetableEventResponse.fromJson(jsonDecode(json));
+}
diff --git a/lib/api/mhsl/customTimetableEvent/get/getCustomTimetableEventParams.dart b/lib/api/mhsl/customTimetableEvent/get/getCustomTimetableEventParams.dart
index bf00f78..c4d6c79 100644
--- a/lib/api/mhsl/customTimetableEvent/get/getCustomTimetableEventParams.dart
+++ b/lib/api/mhsl/customTimetableEvent/get/getCustomTimetableEventParams.dart
@@ -10,4 +10,4 @@ class GetCustomTimetableEventParams {
 
   factory GetCustomTimetableEventParams.fromJson(Map<String, dynamic> json) => _$GetCustomTimetableEventParamsFromJson(json);
   Map<String, dynamic> toJson() => _$GetCustomTimetableEventParamsToJson(this);
-}
\ No newline at end of file
+}
diff --git a/lib/api/mhsl/customTimetableEvent/get/getCustomTimetableEventResponse.dart b/lib/api/mhsl/customTimetableEvent/get/getCustomTimetableEventResponse.dart
index c923e19..c086b73 100644
--- a/lib/api/mhsl/customTimetableEvent/get/getCustomTimetableEventResponse.dart
+++ b/lib/api/mhsl/customTimetableEvent/get/getCustomTimetableEventResponse.dart
@@ -13,4 +13,4 @@ class GetCustomTimetableEventResponse extends ApiResponse {
 
   factory GetCustomTimetableEventResponse.fromJson(Map<String, dynamic> json) => _$GetCustomTimetableEventResponseFromJson(json);
   Map<String, dynamic> toJson() => _$GetCustomTimetableEventResponseToJson(this);
-}
\ No newline at end of file
+}
diff --git a/lib/api/mhsl/customTimetableEvent/remove/removeCustomTimetableEvent.dart b/lib/api/mhsl/customTimetableEvent/remove/removeCustomTimetableEvent.dart
index 7bfc00c..add1c55 100644
--- a/lib/api/mhsl/customTimetableEvent/remove/removeCustomTimetableEvent.dart
+++ b/lib/api/mhsl/customTimetableEvent/remove/removeCustomTimetableEvent.dart
@@ -15,7 +15,5 @@ class RemoveCustomTimetableEvent extends MhslApi<void> {
   void assemble(String raw) {}
 
   @override
-  Future<Response>? request(Uri uri) {
-    return http.delete(uri, body: jsonEncode(params.toJson()));
-  }
-}
\ No newline at end of file
+  Future<Response>? request(Uri uri) => http.delete(uri, body: jsonEncode(params.toJson()));
+}
diff --git a/lib/api/mhsl/customTimetableEvent/remove/removeCustomTimetableEventParams.dart b/lib/api/mhsl/customTimetableEvent/remove/removeCustomTimetableEventParams.dart
index 1be141a..3b1d989 100644
--- a/lib/api/mhsl/customTimetableEvent/remove/removeCustomTimetableEventParams.dart
+++ b/lib/api/mhsl/customTimetableEvent/remove/removeCustomTimetableEventParams.dart
@@ -10,4 +10,4 @@ class RemoveCustomTimetableEventParams {
 
   factory RemoveCustomTimetableEventParams.fromJson(Map<String, dynamic> json) => _$RemoveCustomTimetableEventParamsFromJson(json);
   Map<String, dynamic> toJson() => _$RemoveCustomTimetableEventParamsToJson(this);
-}
\ No newline at end of file
+}
diff --git a/lib/api/mhsl/customTimetableEvent/update/updateCustomTimetableEvent.dart b/lib/api/mhsl/customTimetableEvent/update/updateCustomTimetableEvent.dart
index 0dd8d94..9b1a754 100644
--- a/lib/api/mhsl/customTimetableEvent/update/updateCustomTimetableEvent.dart
+++ b/lib/api/mhsl/customTimetableEvent/update/updateCustomTimetableEvent.dart
@@ -15,7 +15,5 @@ class UpdateCustomTimetableEvent extends MhslApi<void> {
   void assemble(String raw) {}
 
   @override
-  Future<Response>? request(Uri uri) {
-    return http.patch(uri, body: jsonEncode(params.toJson()));
-  }
-}
\ No newline at end of file
+  Future<Response>? request(Uri uri) => http.patch(uri, body: jsonEncode(params.toJson()));
+}
diff --git a/lib/api/mhsl/customTimetableEvent/update/updateCustomTimetableEventParams.dart b/lib/api/mhsl/customTimetableEvent/update/updateCustomTimetableEventParams.dart
index 806d572..4a09c83 100644
--- a/lib/api/mhsl/customTimetableEvent/update/updateCustomTimetableEventParams.dart
+++ b/lib/api/mhsl/customTimetableEvent/update/updateCustomTimetableEventParams.dart
@@ -14,4 +14,4 @@ class UpdateCustomTimetableEventParams {
 
   factory UpdateCustomTimetableEventParams.fromJson(Map<String, dynamic> json) => _$UpdateCustomTimetableEventParamsFromJson(json);
   Map<String, dynamic> toJson() => _$UpdateCustomTimetableEventParamsToJson(this);
-}
\ No newline at end of file
+}
diff --git a/lib/api/mhsl/message/getMessages/getMessages.dart b/lib/api/mhsl/message/getMessages/getMessages.dart
index d62be9e..32a5734 100644
--- a/lib/api/mhsl/message/getMessages/getMessages.dart
+++ b/lib/api/mhsl/message/getMessages/getMessages.dart
@@ -10,12 +10,8 @@ class GetMessages extends MhslApi<GetMessagesResponse> {
 
 
   @override
-  GetMessagesResponse assemble(String raw) {
-    return GetMessagesResponse.fromJson(jsonDecode(raw));
-  }
+  GetMessagesResponse assemble(String raw) => GetMessagesResponse.fromJson(jsonDecode(raw));
 
   @override
-  Future<http.Response> request(Uri uri) {
-    return http.get(uri);
-  }
-}
\ No newline at end of file
+  Future<http.Response> request(Uri uri) => http.get(uri);
+}
diff --git a/lib/api/mhsl/message/getMessages/getMessagesCache.dart b/lib/api/mhsl/message/getMessages/getMessagesCache.dart
index 96d736a..416ff45 100644
--- a/lib/api/mhsl/message/getMessages/getMessagesCache.dart
+++ b/lib/api/mhsl/message/getMessages/getMessagesCache.dart
@@ -10,12 +10,8 @@ class GetMessagesCache extends RequestCache<GetMessagesResponse> {
   }
 
   @override
-  GetMessagesResponse onLocalData(String json) {
-    return GetMessagesResponse.fromJson(jsonDecode(json));
-  }
+  GetMessagesResponse onLocalData(String json) => GetMessagesResponse.fromJson(jsonDecode(json));
 
   @override
-  Future<GetMessagesResponse> onLoad() {
-    return GetMessages().run();
-  }
-}
\ No newline at end of file
+  Future<GetMessagesResponse> onLoad() => GetMessages().run();
+}
diff --git a/lib/api/mhsl/mhslApi.dart b/lib/api/mhsl/mhslApi.dart
index df76c09..eb4910a 100644
--- a/lib/api/mhsl/mhslApi.dart
+++ b/lib/api/mhsl/mhslApi.dart
@@ -15,9 +15,9 @@ abstract class MhslApi<T> extends ApiRequest {
   T assemble(String raw);
 
   Future<T> run() async {
-    Uri endpoint = Uri.parse('https://mhsl.eu/marianum/marianummobile/$subpath');
+    var endpoint = Uri.parse('https://mhsl.eu/marianum/marianummobile/$subpath');
 
-    http.Response? data = await request(endpoint);
+    var data = await request(endpoint);
     if(data == null) {
       throw ApiError('Request could not be dispatched!');
     }
@@ -31,5 +31,4 @@ abstract class MhslApi<T> extends ApiRequest {
 
   static String dateTimeToJson(DateTime time) => Jiffy.parseFromDateTime(time).format(pattern: 'yyyy-MM-dd HH:mm:ss');
   static DateTime dateTimeFromJson(String time) => DateTime.parse(time);
-
-}
\ No newline at end of file
+}
diff --git a/lib/api/mhsl/notify/register/notifyRegister.dart b/lib/api/mhsl/notify/register/notifyRegister.dart
index 178b0c9..94ffde7 100644
--- a/lib/api/mhsl/notify/register/notifyRegister.dart
+++ b/lib/api/mhsl/notify/register/notifyRegister.dart
@@ -19,8 +19,8 @@ class NotifyRegister extends MhslApi<void> {
 
   @override
   Future<http.Response> request(Uri uri) {
-    String requestString = jsonEncode(params.toJson());
+    var requestString = jsonEncode(params.toJson());
     log(requestString);
     return http.post(uri, body: requestString);
   }
-}
\ No newline at end of file
+}
diff --git a/lib/api/mhsl/notify/register/notifyRegisterParams.dart b/lib/api/mhsl/notify/register/notifyRegisterParams.dart
index 75c7a95..3f18319 100644
--- a/lib/api/mhsl/notify/register/notifyRegisterParams.dart
+++ b/lib/api/mhsl/notify/register/notifyRegisterParams.dart
@@ -16,4 +16,4 @@ class NotifyRegisterParams {
 
   factory NotifyRegisterParams.fromJson(Map<String, dynamic> json) => _$NotifyRegisterParamsFromJson(json);
   Map<String, dynamic> toJson() => _$NotifyRegisterParamsToJson(this);
-}
\ No newline at end of file
+}
diff --git a/lib/api/mhsl/server/feedback/addFeedback.dart b/lib/api/mhsl/server/feedback/addFeedback.dart
index ad1f34a..54c3ce0 100644
--- a/lib/api/mhsl/server/feedback/addFeedback.dart
+++ b/lib/api/mhsl/server/feedback/addFeedback.dart
@@ -15,7 +15,5 @@ class AddFeedback extends MhslApi<void> {
   void assemble(String raw) {}
 
   @override
-  Future<Response>? request(Uri uri) {
-    return http.post(uri, body: jsonEncode(params.toJson()));
-  }
-}
\ No newline at end of file
+  Future<Response>? request(Uri uri) => http.post(uri, body: jsonEncode(params.toJson()));
+}
diff --git a/lib/api/mhsl/server/feedback/addFeedbackParams.dart b/lib/api/mhsl/server/feedback/addFeedbackParams.dart
index 3ed0c55..945b00c 100644
--- a/lib/api/mhsl/server/feedback/addFeedbackParams.dart
+++ b/lib/api/mhsl/server/feedback/addFeedbackParams.dart
@@ -19,4 +19,4 @@ class AddFeedbackParams {
 
   factory AddFeedbackParams.fromJson(Map<String, dynamic> json) => _$AddFeedbackParamsFromJson(json);
   Map<String, dynamic> toJson() => _$AddFeedbackParamsToJson(this);
-}
\ No newline at end of file
+}
diff --git a/lib/api/mhsl/server/userIndex/update/updateUserIndexParams.dart b/lib/api/mhsl/server/userIndex/update/updateUserIndexParams.dart
index 8a200fa..680edda 100644
--- a/lib/api/mhsl/server/userIndex/update/updateUserIndexParams.dart
+++ b/lib/api/mhsl/server/userIndex/update/updateUserIndexParams.dart
@@ -21,4 +21,4 @@ class UpdateUserIndexParams {
 
   factory UpdateUserIndexParams.fromJson(Map<String, dynamic> json) => _$UpdateUserIndexParamsFromJson(json);
   Map<String, dynamic> toJson() => _$UpdateUserIndexParamsToJson(this);
-}
\ No newline at end of file
+}
diff --git a/lib/api/mhsl/server/userIndex/update/updateUserindex.dart b/lib/api/mhsl/server/userIndex/update/updateUserindex.dart
index 119906d..1f83c06 100644
--- a/lib/api/mhsl/server/userIndex/update/updateUserindex.dart
+++ b/lib/api/mhsl/server/userIndex/update/updateUserindex.dart
@@ -19,12 +19,12 @@ class UpdateUserIndex extends MhslApi<void> {
 
   @override
   Future<http.Response> request(Uri uri) {
-    String data = jsonEncode(params.toJson());
+    var data = jsonEncode(params.toJson());
     log('Updating userindex:\n $data');
     return http.post(uri, body: data);
   }
 
-  static void index() async {
+  static Future<void> index() async {
     UpdateUserIndex(
       UpdateUserIndexParams(
         username: AccountData().getUsername(),
@@ -35,4 +35,4 @@ class UpdateUserIndex extends MhslApi<void> {
       ),
     ).run();
   }
-}
\ No newline at end of file
+}
diff --git a/lib/api/requestCache.dart b/lib/api/requestCache.dart
index 620df08..8040f2c 100644
--- a/lib/api/requestCache.dart
+++ b/lib/api/requestCache.dart
@@ -20,8 +20,8 @@ abstract class RequestCache<T extends ApiResponse?> {
 
   static void ignore(Exception e) {}
 
-  void start(String file, String document) async {
-    Map<String, dynamic>? tableData = await Localstore.instance.collection(file).doc(document).get();
+  Future<void> start(String file, String document) async {
+    var tableData = await Localstore.instance.collection(file).doc(document).get();
     if(tableData != null) {
       onUpdate(onLocalData(tableData['json']));
     }
@@ -31,7 +31,7 @@ abstract class RequestCache<T extends ApiResponse?> {
     }
 
     try {
-      T newValue = await onLoad();
+      var newValue = await onLoad();
       onUpdate(newValue);
 
       Localstore.instance.collection(file).doc(document).set({
@@ -46,4 +46,4 @@ abstract class RequestCache<T extends ApiResponse?> {
   T onLocalData(String json);
   Future<T> onLoad();
 
-}
\ No newline at end of file
+}
diff --git a/lib/api/webuntis/queries/authenticate/authenticate.dart b/lib/api/webuntis/queries/authenticate/authenticate.dart
index f237aa2..c42f62c 100644
--- a/lib/api/webuntis/queries/authenticate/authenticate.dart
+++ b/lib/api/webuntis/queries/authenticate/authenticate.dart
@@ -14,7 +14,7 @@ class Authenticate extends WebuntisApi {
   @override
   Future<AuthenticateResponse> run() async {
     awaitingResponse = true;
-    String rawAnswer = await query(this);
+    var rawAnswer = await query(this);
     AuthenticateResponse response = finalize(AuthenticateResponse.fromJson(jsonDecode(rawAnswer)['result']));
     _lastResponse = response;
     if(!awaitedResponse.isCompleted) awaitedResponse.complete();
@@ -46,4 +46,4 @@ class Authenticate extends WebuntisApi {
     return _lastResponse!;
 
   }
-}
\ No newline at end of file
+}
diff --git a/lib/api/webuntis/queries/authenticate/authenticateParams.dart b/lib/api/webuntis/queries/authenticate/authenticateParams.dart
index 5e6fb48..bfa65e6 100644
--- a/lib/api/webuntis/queries/authenticate/authenticateParams.dart
+++ b/lib/api/webuntis/queries/authenticate/authenticateParams.dart
@@ -14,4 +14,4 @@ class AuthenticateParams extends ApiParams {
   factory AuthenticateParams.fromJson(Map<String, dynamic> json) => _$AuthenticateParamsFromJson(json);
 
   Map<String, dynamic> toJson() => _$AuthenticateParamsToJson(this);
-}
\ No newline at end of file
+}
diff --git a/lib/api/webuntis/queries/authenticate/authenticateResponse.dart b/lib/api/webuntis/queries/authenticate/authenticateResponse.dart
index f76ddad..509b1dc 100644
--- a/lib/api/webuntis/queries/authenticate/authenticateResponse.dart
+++ b/lib/api/webuntis/queries/authenticate/authenticateResponse.dart
@@ -16,4 +16,4 @@ class AuthenticateResponse extends ApiResponse {
 
   factory AuthenticateResponse.fromJson(Map<String, dynamic> json) => _$AuthenticateResponseFromJson(json);
   Map<String, dynamic> toJson() => _$AuthenticateResponseToJson(this);
-}
\ No newline at end of file
+}
diff --git a/lib/api/webuntis/queries/getHolidays/getHolidays.dart b/lib/api/webuntis/queries/getHolidays/getHolidays.dart
index 699657d..145cb6e 100644
--- a/lib/api/webuntis/queries/getHolidays/getHolidays.dart
+++ b/lib/api/webuntis/queries/getHolidays/getHolidays.dart
@@ -8,7 +8,7 @@ class GetHolidays extends WebuntisApi {
 
   @override
   Future<GetHolidaysResponse> run() async {
-    String rawAnswer = await query(this);
+    var rawAnswer = await query(this);
     return finalize(GetHolidaysResponse.fromJson(jsonDecode(rawAnswer)));
   }
 
@@ -17,12 +17,12 @@ class GetHolidays extends WebuntisApi {
     time = DateTime(time.year, time.month, time.day, 0, 0, 0, 0, 0);
 
     for (var element in holidaysResponse.result) {
-      DateTime start = DateTime.parse(element.startDate.toString());
-      DateTime end = DateTime.parse(element.endDate.toString());
+      var start = DateTime.parse(element.startDate.toString());
+      var end = DateTime.parse(element.endDate.toString());
 
       if(!start.isAfter(time) && !end.isBefore(time)) return element;
     }
     return null;
   }
 
-}
\ No newline at end of file
+}
diff --git a/lib/api/webuntis/queries/getHolidays/getHolidaysCache.dart b/lib/api/webuntis/queries/getHolidays/getHolidaysCache.dart
index 9f7924c..da89d46 100644
--- a/lib/api/webuntis/queries/getHolidays/getHolidaysCache.dart
+++ b/lib/api/webuntis/queries/getHolidays/getHolidaysCache.dart
@@ -10,12 +10,8 @@ class GetHolidaysCache extends RequestCache<GetHolidaysResponse> {
   }
 
   @override
-  Future<GetHolidaysResponse> onLoad() {
-    return GetHolidays().run();
-  }
+  Future<GetHolidaysResponse> onLoad() => GetHolidays().run();
 
   @override
-  GetHolidaysResponse onLocalData(String json) {
-    return GetHolidaysResponse.fromJson(jsonDecode(json));
-  }
-}
\ No newline at end of file
+  GetHolidaysResponse onLocalData(String json) => GetHolidaysResponse.fromJson(jsonDecode(json));
+}
diff --git a/lib/api/webuntis/queries/getHolidays/getHolidaysResponse.dart b/lib/api/webuntis/queries/getHolidays/getHolidaysResponse.dart
index 7e93fab..f087c4a 100644
--- a/lib/api/webuntis/queries/getHolidays/getHolidaysResponse.dart
+++ b/lib/api/webuntis/queries/getHolidays/getHolidaysResponse.dart
@@ -26,4 +26,4 @@ class GetHolidaysResponseObject {
 
   factory GetHolidaysResponseObject.fromJson(Map<String, dynamic> json) => _$GetHolidaysResponseObjectFromJson(json);
   Map<String, dynamic> toJson() => _$GetHolidaysResponseObjectToJson(this);
-}
\ No newline at end of file
+}
diff --git a/lib/api/webuntis/queries/getRooms/getRooms.dart b/lib/api/webuntis/queries/getRooms/getRooms.dart
index d28f040..45c53c5 100644
--- a/lib/api/webuntis/queries/getRooms/getRooms.dart
+++ b/lib/api/webuntis/queries/getRooms/getRooms.dart
@@ -9,7 +9,7 @@ class GetRooms extends WebuntisApi {
 
   @override
   Future<GetRoomsResponse> run() async {
-    String rawAnswer = await query(this);
+    var rawAnswer = await query(this);
     try {
       return finalize(GetRoomsResponse.fromJson(jsonDecode(rawAnswer)));
     } catch(e, trace) {
@@ -20,4 +20,4 @@ class GetRooms extends WebuntisApi {
     throw Exception('Failed to parse getRoom server response: $rawAnswer');
   }
 
-}
\ No newline at end of file
+}
diff --git a/lib/api/webuntis/queries/getRooms/getRoomsCache.dart b/lib/api/webuntis/queries/getRooms/getRoomsCache.dart
index 777de09..d126cd0 100644
--- a/lib/api/webuntis/queries/getRooms/getRoomsCache.dart
+++ b/lib/api/webuntis/queries/getRooms/getRoomsCache.dart
@@ -10,13 +10,9 @@ class GetRoomsCache extends RequestCache<GetRoomsResponse> {
   }
 
   @override
-  Future<GetRoomsResponse> onLoad() {
-    return GetRooms().run();
-  }
+  Future<GetRoomsResponse> onLoad() => GetRooms().run();
 
   @override
-  GetRoomsResponse onLocalData(String json) {
-    return GetRoomsResponse.fromJson(jsonDecode(json));
-  }
+  GetRoomsResponse onLocalData(String json) => GetRoomsResponse.fromJson(jsonDecode(json));
 
-}
\ No newline at end of file
+}
diff --git a/lib/api/webuntis/queries/getRooms/getRoomsResponse.dart b/lib/api/webuntis/queries/getRooms/getRoomsResponse.dart
index 91db146..fe4dc84 100644
--- a/lib/api/webuntis/queries/getRooms/getRoomsResponse.dart
+++ b/lib/api/webuntis/queries/getRooms/getRoomsResponse.dart
@@ -26,4 +26,4 @@ class GetRoomsResponseObject {
 
   factory GetRoomsResponseObject.fromJson(Map<String, dynamic> json) => _$GetRoomsResponseObjectFromJson(json);
   Map<String, dynamic> toJson() => _$GetRoomsResponseObjectToJson(this);
-}
\ No newline at end of file
+}
diff --git a/lib/api/webuntis/queries/getSubjects/getSubjects.dart b/lib/api/webuntis/queries/getSubjects/getSubjects.dart
index 27ff750..8505381 100644
--- a/lib/api/webuntis/queries/getSubjects/getSubjects.dart
+++ b/lib/api/webuntis/queries/getSubjects/getSubjects.dart
@@ -8,7 +8,7 @@ class GetSubjects extends WebuntisApi {
 
   @override
   Future<GetSubjectsResponse> run() async {
-    String rawAnswer = await query(this);
+    var rawAnswer = await query(this);
     return finalize(GetSubjectsResponse.fromJson(jsonDecode(rawAnswer)));
   }
-}
\ No newline at end of file
+}
diff --git a/lib/api/webuntis/queries/getSubjects/getSubjectsCache.dart b/lib/api/webuntis/queries/getSubjects/getSubjectsCache.dart
index aea6387..a1670d0 100644
--- a/lib/api/webuntis/queries/getSubjects/getSubjectsCache.dart
+++ b/lib/api/webuntis/queries/getSubjects/getSubjectsCache.dart
@@ -10,13 +10,9 @@ class GetSubjectsCache extends RequestCache<GetSubjectsResponse> {
   }
 
   @override
-  Future<GetSubjectsResponse> onLoad() {
-    return GetSubjects().run();
-  }
+  Future<GetSubjectsResponse> onLoad() => GetSubjects().run();
 
   @override
-  onLocalData(String json) {
-    return GetSubjectsResponse.fromJson(jsonDecode(json));
-  }
+  onLocalData(String json) => GetSubjectsResponse.fromJson(jsonDecode(json));
 
-}
\ No newline at end of file
+}
diff --git a/lib/api/webuntis/queries/getSubjects/getSubjectsResponse.dart b/lib/api/webuntis/queries/getSubjects/getSubjectsResponse.dart
index 2db8261..cfd2cf1 100644
--- a/lib/api/webuntis/queries/getSubjects/getSubjectsResponse.dart
+++ b/lib/api/webuntis/queries/getSubjects/getSubjectsResponse.dart
@@ -26,4 +26,4 @@ class GetSubjectsResponseObject {
 
   factory GetSubjectsResponseObject.fromJson(Map<String, dynamic> json) => _$GetSubjectsResponseObjectFromJson(json);
   Map<String, dynamic> toJson() => _$GetSubjectsResponseObjectToJson(this);
-}
\ No newline at end of file
+}
diff --git a/lib/api/webuntis/queries/getTimetable/getTimetable.dart b/lib/api/webuntis/queries/getTimetable/getTimetable.dart
index 369f012..e9da26d 100644
--- a/lib/api/webuntis/queries/getTimetable/getTimetable.dart
+++ b/lib/api/webuntis/queries/getTimetable/getTimetable.dart
@@ -11,8 +11,8 @@ class GetTimetable extends WebuntisApi {
 
   @override
   Future<GetTimetableResponse> run() async {
-    String rawAnswer = await query(this);
+    var rawAnswer = await query(this);
     return finalize(GetTimetableResponse.fromJson(jsonDecode(rawAnswer)));
   }
 
-}
\ No newline at end of file
+}
diff --git a/lib/api/webuntis/queries/getTimetable/getTimetableCache.dart b/lib/api/webuntis/queries/getTimetable/getTimetableCache.dart
index 9e4adb8..54a1b86 100644
--- a/lib/api/webuntis/queries/getTimetable/getTimetableCache.dart
+++ b/lib/api/webuntis/queries/getTimetable/getTimetableCache.dart
@@ -15,13 +15,10 @@ class GetTimetableCache extends RequestCache<GetTimetableResponse> {
   }
 
   @override
-  GetTimetableResponse onLocalData(String json) {
-    return GetTimetableResponse.fromJson(jsonDecode(json));
-  }
+  GetTimetableResponse onLocalData(String json) => GetTimetableResponse.fromJson(jsonDecode(json));
 
   @override
-  Future<GetTimetableResponse> onLoad() async {
-    return GetTimetable(
+  Future<GetTimetableResponse> onLoad() async => GetTimetable(
         GetTimetableParams(
             options: GetTimetableParamsOptions(
                 element: GetTimetableParamsOptionsElement(
@@ -38,5 +35,4 @@ class GetTimetableCache extends RequestCache<GetTimetableResponse> {
         )
     )
     ).run();
-  }
-}
\ No newline at end of file
+}
diff --git a/lib/api/webuntis/queries/getTimetable/getTimetableParams.dart b/lib/api/webuntis/queries/getTimetable/getTimetableParams.dart
index 1dec8c7..48ba379 100644
--- a/lib/api/webuntis/queries/getTimetable/getTimetableParams.dart
+++ b/lib/api/webuntis/queries/getTimetable/getTimetableParams.dart
@@ -91,4 +91,4 @@ enum GetTimetableParamsOptionsElementKeyType {
   @JsonValue('id') id,
   @JsonValue('name') name,
   @JsonValue('externalkey') externalkey
-}
\ No newline at end of file
+}
diff --git a/lib/api/webuntis/queries/getTimetable/getTimetableResponse.dart b/lib/api/webuntis/queries/getTimetable/getTimetableResponse.dart
index e9752f2..fc6663c 100644
--- a/lib/api/webuntis/queries/getTimetable/getTimetableResponse.dart
+++ b/lib/api/webuntis/queries/getTimetable/getTimetableResponse.dart
@@ -136,4 +136,4 @@ class GetTimetableResponseObjectRoom {
 
   factory GetTimetableResponseObjectRoom.fromJson(Map<String, dynamic> json) => _$GetTimetableResponseObjectRoomFromJson(json);
   Map<String, dynamic> toJson() => _$GetTimetableResponseObjectRoomToJson(this);
-}
\ No newline at end of file
+}
diff --git a/lib/api/webuntis/webuntisApi.dart b/lib/api/webuntis/webuntisApi.dart
index 90a7cf4..bf3e2e1 100644
--- a/lib/api/webuntis/webuntisApi.dart
+++ b/lib/api/webuntis/webuntisApi.dart
@@ -20,13 +20,13 @@ abstract class WebuntisApi extends ApiRequest {
 
 
   Future<String> query(WebuntisApi untis) async {
-    String query = '{"id":"ID","method":"$method","params":${untis._body()},"jsonrpc":"2.0"}';
+    var query = '{"id":"ID","method":"$method","params":${untis._body()},"jsonrpc":"2.0"}';
 
-    String sessionId = '0';
+    var sessionId = '0';
     if(authenticatedResponse) {
       sessionId = (await Authenticate.getSession()).sessionId;
     }
-    http.Response data = await post(query, {'Cookie': 'JSESSIONID=$sessionId'});
+    var data = await post(query, {'Cookie': 'JSESSIONID=$sessionId'});
     response = data;
 
     dynamic jsonData = jsonDecode(data.body);
@@ -48,16 +48,12 @@ abstract class WebuntisApi extends ApiRequest {
 
   Future<ApiResponse> run();
 
-  String _body() {
-    return genericParam == null ? '{}' : jsonEncode(genericParam);
-  }
+  String _body() => genericParam == null ? '{}' : jsonEncode(genericParam);
 
-  Future<http.Response> post(String data, Map<String, String>? headers) async {
-    return await http
+  Future<http.Response> post(String data, Map<String, String>? headers) async => await http
         .post(endpoint, body: data, headers: headers)
         .timeout(
         const Duration(seconds: 10),
         onTimeout: () => throw WebuntisError('Timeout', 1)
     );
-  }
-}
\ No newline at end of file
+}
diff --git a/lib/api/webuntis/webuntisError.dart b/lib/api/webuntis/webuntisError.dart
index b79b727..fadcc2e 100644
--- a/lib/api/webuntis/webuntisError.dart
+++ b/lib/api/webuntis/webuntisError.dart
@@ -5,7 +5,5 @@ class WebuntisError implements Exception {
   WebuntisError(this.message, this.code);
 
   @override
-  String toString() {
-    return 'WebUntis ($code): $message';
-  }
-}
\ No newline at end of file
+  String toString() => 'WebUntis ($code): $message';
+}
diff --git a/lib/app.dart b/lib/app.dart
index 4b2a449..11ea0ac 100644
--- a/lib/app.dart
+++ b/lib/app.dart
@@ -94,8 +94,7 @@ class _AppState extends State<App> with WidgetsBindingObserver {
   }
 
   @override
-  Widget build(BuildContext context) {
-    return PersistentTabView(
+  Widget build(BuildContext context) => PersistentTabView(
       controller: App.bottomNavigator,
       navBarOverlap: const NavBarOverlap.none(),
       backgroundColor: Theme.of(context).colorScheme.primary,
@@ -119,7 +118,7 @@ class _AppState extends State<App> with WidgetsBindingObserver {
             icon: Consumer<ChatListProps>(
               builder: (context, value, child) {
                 if(value.primaryLoading()) return const Icon(Icons.chat);
-                int messages = value.getRoomsResponse.data.map((e) => e.unreadMessages).reduce((a, b) => a+b);
+                var messages = value.getRoomsResponse.data.map((e) => e.unreadMessages).reduce((a, b) => a+b);
                 return badges.Badge(
                   showBadge: messages > 0,
                   position: badges.BadgePosition.topEnd(top: -3, end: -3),
@@ -164,7 +163,6 @@ class _AppState extends State<App> with WidgetsBindingObserver {
         ),
       ),
     );
-  }
 
   @override
   void dispose() {
@@ -173,4 +171,4 @@ class _AppState extends State<App> with WidgetsBindingObserver {
     WidgetsBinding.instance.removeObserver(this);
     super.dispose();
   }
-}
\ No newline at end of file
+}
diff --git a/lib/extensions/dateTime.dart b/lib/extensions/dateTime.dart
index ebfda66..7852873 100644
--- a/lib/extensions/dateTime.dart
+++ b/lib/extensions/dateTime.dart
@@ -1,30 +1,20 @@
 import 'package:flutter/material.dart';
 
 extension IsSameDay on DateTime {
-  bool isSameDay(DateTime other) {
-    return year == other.year && month == other.month && day == other.day;
-  }
+  bool isSameDay(DateTime other) => year == other.year && month == other.month && day == other.day;
 
-  DateTime nextWeekday(int day) {
-    return add(Duration(days: (day - weekday) % DateTime.daysPerWeek));
-  }
+  DateTime nextWeekday(int day) => add(Duration(days: (day - weekday) % DateTime.daysPerWeek));
 
-  DateTime withTime(TimeOfDay time) {
-    return copyWith(hour: time.hour, minute: time.minute);
-  }
+  DateTime withTime(TimeOfDay time) => copyWith(hour: time.hour, minute: time.minute);
 
-  TimeOfDay toTimeOfDay() {
-    return TimeOfDay(hour: hour, minute: minute);
-  }
+  TimeOfDay toTimeOfDay() => TimeOfDay(hour: hour, minute: minute);
 
   bool isSameDateTime(DateTime other) {
-    bool isSameDay = this.isSameDay(other);
-    bool isSameTimeOfDay = (toTimeOfDay() == other.toTimeOfDay());
+    var isSameDay = this.isSameDay(other);
+    var isSameTimeOfDay = (toTimeOfDay() == other.toTimeOfDay());
 
     return isSameDay && isSameTimeOfDay;
   }
 
-  bool isSameOrAfter(DateTime other) {
-    return isSameDateTime(other) || isAfter(other);
-  }
-}
\ No newline at end of file
+  bool isSameOrAfter(DateTime other) => isSameDateTime(other) || isAfter(other);
+}
diff --git a/lib/extensions/renderNotNull.dart b/lib/extensions/renderNotNull.dart
index 86d9207..3d267a0 100644
--- a/lib/extensions/renderNotNull.dart
+++ b/lib/extensions/renderNotNull.dart
@@ -1,5 +1,3 @@
 extension RenderNotNullExt<T> on T? {
-  R? wrapNullable<R>(R Function(T data) defaultValueCallback) {
-    return this != null ? defaultValueCallback(this as T) : null;
-  }
-}
\ No newline at end of file
+  R? wrapNullable<R>(R Function(T data) defaultValueCallback) => this != null ? defaultValueCallback(this as T) : null;
+}
diff --git a/lib/extensions/text.dart b/lib/extensions/text.dart
index caaabe1..0cf90a2 100644
--- a/lib/extensions/text.dart
+++ b/lib/extensions/text.dart
@@ -2,11 +2,11 @@ import 'package:flutter/material.dart';
 
 extension TextExt on Text {
   Size get size {
-    final TextPainter textPainter = TextPainter(
+    final textPainter = TextPainter(
         text: TextSpan(text: data, style: style),
         maxLines: 1,
         textDirection: TextDirection.ltr
     )..layout(minWidth: 0, maxWidth: double.infinity);
     return textPainter.size;
   }
-}
\ No newline at end of file
+}
diff --git a/lib/extensions/timeOfDay.dart b/lib/extensions/timeOfDay.dart
index cb4d60b..c99a47e 100644
--- a/lib/extensions/timeOfDay.dart
+++ b/lib/extensions/timeOfDay.dart
@@ -1,15 +1,9 @@
 import 'package:flutter/material.dart';
 
 extension TimeOfDayExt on TimeOfDay {
-  bool isBefore(TimeOfDay other) {
-    return hour < other.hour && minute < other.minute;
-  }
+  bool isBefore(TimeOfDay other) => hour < other.hour && minute < other.minute;
 
-  bool isAfter(TimeOfDay other) {
-    return hour > other.hour && minute > other.minute;
-  }
+  bool isAfter(TimeOfDay other) => hour > other.hour && minute > other.minute;
 
-  TimeOfDay add({int hours = 0, int minutes = 0}) {
-    return replacing(hour: hour + hours, minute: minute + minutes);
-  }
-}
\ No newline at end of file
+  TimeOfDay add({int hours = 0, int minutes = 0}) => replacing(hour: hour + hours, minute: minute + minutes);
+}
diff --git a/lib/main.dart b/lib/main.dart
index b4f7e59..10b741b 100644
--- a/lib/main.dart
+++ b/lib/main.dart
@@ -41,16 +41,14 @@ Future<void> main() async {
     log('Error initializing Firebase app!');
   }
 
-  ByteData data = await PlatformAssetBundle().load('assets/ca/lets-encrypt-r3.pem');
+  var data = await PlatformAssetBundle().load('assets/ca/lets-encrypt-r3.pem');
   SecurityContext.defaultContext.setTrustedCertificatesBytes(data.buffer.asUint8List());
 
   if(kReleaseMode) {
-    ErrorWidget.builder = (error) {
-      return PlaceholderView(
+    ErrorWidget.builder = (error) => PlaceholderView(
         icon: Icons.phonelink_erase_rounded,
         text: error.toStringShort(),
       );
-    };
   }
 
   runApp(
@@ -101,8 +99,7 @@ class _MainState extends State<Main> {
   }
 
   @override
-  Widget build(BuildContext context) {
-    return Directionality(
+  Widget build(BuildContext context) => Directionality(
       textDirection: TextDirection.ltr,
       child: Consumer<SettingsProvider>(
         builder: (context, settings, child) {
@@ -146,7 +143,6 @@ class _MainState extends State<Main> {
         },
       ),
     );
-  }
 
   @override
   void dispose() {
diff --git a/lib/model/accountData.dart b/lib/model/accountData.dart
index 7648511..419146a 100644
--- a/lib/model/accountData.dart
+++ b/lib/model/accountData.dart
@@ -17,9 +17,7 @@ class AccountData {
   final Future<SharedPreferences> _storage = SharedPreferences.getInstance();
   Completer<void> _populated = Completer();
 
-  factory AccountData() {
-    return _instance;
-  }
+  factory AccountData() => _instance;
 
   AccountData._construct() {
     _updateFromStorage();
@@ -38,16 +36,12 @@ class AccountData {
     return _password!;
   }
 
-  String getUserSecret() {
-    return sha512.convert(utf8.encode('${AccountData().getUsername()}:${AccountData().getPassword()}')).toString();
-  }
+  String getUserSecret() => sha512.convert(utf8.encode('${AccountData().getUsername()}:${AccountData().getPassword()}')).toString();
 
-  Future<String> getDeviceId() async {
-    return sha512.convert(utf8.encode('${getUserSecret()}@${await FirebaseMessaging.instance.getToken()}')).toString();
-  }
+  Future<String> getDeviceId() async => sha512.convert(utf8.encode('${getUserSecret()}@${await FirebaseMessaging.instance.getToken()}')).toString();
 
   Future<void> setData(String username, String password) async {
-    SharedPreferences storage = await _storage;
+    var storage = await _storage;
 
     storage.setString(_usernameField, username);
     storage.setString(_passwordField, password);
@@ -59,13 +53,13 @@ class AccountData {
 
     if(context != null) Provider.of<AccountModel>(context, listen: false).setState(AccountModelState.loggedOut);
 
-    SharedPreferences storage = await _storage;
+    var storage = await _storage;
     await storage.remove(_usernameField);
     await storage.remove(_passwordField);
   }
 
   Future<void> _updateFromStorage() async {
-    SharedPreferences storage = await _storage;
+    var storage = await _storage;
     //await storage.reload(); // This line was the cause of the first rejected google play upload :(
     if(storage.containsKey(_usernameField) && storage.containsKey(_passwordField)) {
       _username = storage.getString(_usernameField);
@@ -79,12 +73,10 @@ class AccountData {
     return isPopulated();
   }
 
-  bool isPopulated() {
-    return _username != null && _password != null;
-  }
+  bool isPopulated() => _username != null && _password != null;
 
   String buildHttpAuthString() {
     if(!isPopulated()) throw Exception('AccountData (e.g. username or password) is not initialized!');
     return '$_username:$_password';
   }
-}
\ No newline at end of file
+}
diff --git a/lib/model/accountModel.dart b/lib/model/accountModel.dart
index 39df3f4..26abcfd 100644
--- a/lib/model/accountModel.dart
+++ b/lib/model/accountModel.dart
@@ -14,4 +14,4 @@ enum AccountModelState {
   undefined,
   loggedIn,
   loggedOut,
-}
\ No newline at end of file
+}
diff --git a/lib/model/breakers/Breaker.dart b/lib/model/breakers/Breaker.dart
index 7fb4b24..1545296 100644
--- a/lib/model/breakers/Breaker.dart
+++ b/lib/model/breakers/Breaker.dart
@@ -19,10 +19,9 @@ class Breaker extends StatefulWidget {
 
 class _BreakerState extends State<Breaker> {
   @override
-  Widget build(BuildContext context) {
-    return Consumer<BreakerProps>(
+  Widget build(BuildContext context) => Consumer<BreakerProps>(
       builder: (context, value, child) {
-        String? blocked = value.isBlocked(widget.breaker);
+        var blocked = value.isBlocked(widget.breaker);
         if(blocked != null) {
           return PlaceholderView(icon: Icons.security_outlined, text: "Die App/ Dieser Bereich wurde als Schutzmaßnahme deaktiviert!\n\n${blocked.isEmpty ? "Es wurde vom Server kein Grund übermittelt." : blocked}");
         }
@@ -30,5 +29,4 @@ class _BreakerState extends State<Breaker> {
         return widget.child;
       },
     );
-  }
 }
diff --git a/lib/model/breakers/BreakerProps.dart b/lib/model/breakers/BreakerProps.dart
index 54bf2a4..1c5fed5 100644
--- a/lib/model/breakers/BreakerProps.dart
+++ b/lib/model/breakers/BreakerProps.dart
@@ -18,13 +18,13 @@ class BreakerProps extends DataHolder {
     }
 
     if(primaryLoading()) return null;
-    GetBreakersResponse breakers = _getBreakersResponse!;
+    var breakers = _getBreakersResponse!;
 
     if(breakers.global.areas.contains(type)) return breakers.global.message;
 
-    int selfVersion = int.parse(packageInfo!.buildNumber);
+    var selfVersion = int.parse(packageInfo!.buildNumber);
     for(var key in breakers.regional.keys) {
-      GetBreakersReponseObject value = breakers.regional[key]!;
+      var value = breakers.regional[key]!;
 
       if(int.parse(key.split('b')[1]) >= selfVersion) {
         if(value.areas.contains(type)) return value.message;
@@ -35,9 +35,7 @@ class BreakerProps extends DataHolder {
   }
 
   @override
-  List<ApiResponse?> properties() {
-    return [_getBreakersResponse];
-  }
+  List<ApiResponse?> properties() => [_getBreakersResponse];
 
   @override
   void run() {
@@ -48,4 +46,4 @@ class BreakerProps extends DataHolder {
       }
     );
   }
-}
\ No newline at end of file
+}
diff --git a/lib/model/chatList/chatListProps.dart b/lib/model/chatList/chatListProps.dart
index 5ba1793..2c4e2b7 100644
--- a/lib/model/chatList/chatListProps.dart
+++ b/lib/model/chatList/chatListProps.dart
@@ -11,9 +11,7 @@ class ChatListProps extends DataHolder {
   GetRoomResponse get getRoomsResponse => _getRoomResponse!;
 
   @override
-  List<ApiResponse?> properties() {
-    return [_getRoomResponse];
-  }
+  List<ApiResponse?> properties() => [_getRoomResponse];
 
   @override
   void run({renew}) {
@@ -27,4 +25,4 @@ class ChatListProps extends DataHolder {
     );
   }
 
-}
\ No newline at end of file
+}
diff --git a/lib/model/chatList/chatProps.dart b/lib/model/chatList/chatProps.dart
index c96ed6c..bd0a749 100644
--- a/lib/model/chatList/chatProps.dart
+++ b/lib/model/chatList/chatProps.dart
@@ -11,15 +11,13 @@ class ChatProps extends DataHolder {
   GetChatResponse get getChatResponse => _getChatResponse!;
 
   @override
-  List<ApiResponse?> properties() {
-    return [_getChatResponse];
-  }
+  List<ApiResponse?> properties() => [_getChatResponse];
 
   @override
   void run() {
     notifyListeners();
     if(_queryToken.isEmpty) return;
-    DateTime requestStart = DateTime.now();
+    var requestStart = DateTime.now();
 
     GetChatCache(
       chatToken: _queryToken,
@@ -39,7 +37,5 @@ class ChatProps extends DataHolder {
     run();
   }
 
-  String currentToken() {
-    return _queryToken;
-  }
-}
\ No newline at end of file
+  String currentToken() => _queryToken;
+}
diff --git a/lib/model/dataCleaner.dart b/lib/model/dataCleaner.dart
index 5e6a3ce..a2706a9 100644
--- a/lib/model/dataCleaner.dart
+++ b/lib/model/dataCleaner.dart
@@ -3,13 +3,13 @@ import 'package:localstore/localstore.dart';
 import '../widget/debug/cacheView.dart';
 
 class DataCleaner {
-  static void cleanOldCache() async {
+  static Future<void> cleanOldCache() async {
     var cacheData = await Localstore.instance.collection(CacheView.collection).get();
     cacheData?.forEach((key, value) async {
-      DateTime lastUpdate = DateTime.fromMillisecondsSinceEpoch(value['lastupdate']);
+      var lastUpdate = DateTime.fromMillisecondsSinceEpoch(value['lastupdate']);
       if(DateTime.now().subtract(const Duration(days: 200)).isAfter(lastUpdate)) {
         await Localstore.instance.collection(CacheView.collection).doc(key.split('/').last).delete();
       }
     });
   }
-}
\ No newline at end of file
+}
diff --git a/lib/model/dataHolder.dart b/lib/model/dataHolder.dart
index 5169eb8..84b3dbd 100644
--- a/lib/model/dataHolder.dart
+++ b/lib/model/dataHolder.dart
@@ -6,19 +6,17 @@ import '../api/apiResponse.dart';
 
 abstract class DataHolder extends ChangeNotifier {
 
-  CollectionRef storage(String path) {
-    return Localstore.instance.collection(path);
-  }
+  CollectionRef storage(String path) => Localstore.instance.collection(path);
 
   void run();
   List<ApiResponse?> properties();
 
   bool primaryLoading() {
     // log("${toString()} ${properties().map((e) => e != null ? "1" : "0").join(", ")}");
-    for(ApiResponse? element in properties()) {
+    for(var element in properties()) {
       if(element == null) return true;
     }
     return false;
     //return properties().where((element) => element != null).isEmpty;
   }
-}
\ No newline at end of file
+}
diff --git a/lib/model/endpointData.dart b/lib/model/endpointData.dart
index d151435..18e8699 100644
--- a/lib/model/endpointData.dart
+++ b/lib/model/endpointData.dart
@@ -23,17 +23,13 @@ class Endpoint {
 
   Endpoint({required this.domain, this.path = ''});
 
-  String full() {
-    return domain + path;
-  }
+  String full() => domain + path;
 }
 
 class EndpointData {
   static final EndpointData _instance = EndpointData._construct();
 
-  factory EndpointData() {
-    return _instance;
-  }
+  factory EndpointData() => _instance;
 
   EndpointData._construct();
 
@@ -43,8 +39,7 @@ class EndpointData {
     return existingName.startsWith('google') ? EndpointMode.stage : EndpointMode.live;
   }
 
-  Endpoint webuntis() {
-    return EndpointOptions(
+  Endpoint webuntis() => EndpointOptions(
       live: Endpoint(
         domain: 'peleus.webuntis.com',
       ),
@@ -53,10 +48,8 @@ class EndpointData {
         path: '/marianum/marianummobile/webuntis/public/index.php/api'
       ),
     ).get(getEndpointMode());
-  }
 
-  Endpoint nextcloud() {
-    return EndpointOptions(
+  Endpoint nextcloud() => EndpointOptions(
       live: Endpoint(
         domain: 'cloud.marianum-fulda.de',
       ),
@@ -65,6 +58,5 @@ class EndpointData {
         path: '/marianum/marianummobile/cloud',
       )
     ).get(getEndpointMode());
-  }
 
-}
\ No newline at end of file
+}
diff --git a/lib/model/files/filesProps.dart b/lib/model/files/filesProps.dart
index a7160c2..979c708 100644
--- a/lib/model/files/filesProps.dart
+++ b/lib/model/files/filesProps.dart
@@ -23,9 +23,7 @@ class FilesProps extends DataHolder {
   }
 
   @override
-  List<ApiResponse?> properties() {
-    return [_listFilesResponse];
-  }
+  List<ApiResponse?> properties() => [_listFilesResponse];
 
   @override
   void run() {
@@ -51,4 +49,4 @@ class FilesProps extends DataHolder {
     if(folderPath.isEmpty) currentFolderName = 'Home';
     run();
   }
-}
\ No newline at end of file
+}
diff --git a/lib/model/holidays/holidaysProps.dart b/lib/model/holidays/holidaysProps.dart
index c46820f..a3e153f 100644
--- a/lib/model/holidays/holidaysProps.dart
+++ b/lib/model/holidays/holidaysProps.dart
@@ -10,9 +10,7 @@ class HolidaysProps extends DataHolder {
   GetHolidaysResponse get getHolidaysResponse => _getHolidaysResponse!;
 
   @override
-  List<ApiResponse?> properties() {
-    return [_getHolidaysResponse];
-  }
+  List<ApiResponse?> properties() => [_getHolidaysResponse];
 
   @override
   void run() {
@@ -23,4 +21,4 @@ class HolidaysProps extends DataHolder {
       },
     );
   }
-}
\ No newline at end of file
+}
diff --git a/lib/model/message/messageProps.dart b/lib/model/message/messageProps.dart
index 80644b8..c2e2a37 100644
--- a/lib/model/message/messageProps.dart
+++ b/lib/model/message/messageProps.dart
@@ -9,9 +9,7 @@ class MessageProps extends DataHolder {
   GetMessagesResponse get getMessagesResponse => _getMessagesResponse!;
 
   @override
-  List<ApiResponse?> properties() {
-    return [_getMessagesResponse];
-  }
+  List<ApiResponse?> properties() => [_getMessagesResponse];
 
   @override
   void run({renew}) {
@@ -24,4 +22,4 @@ class MessageProps extends DataHolder {
     );
   }
 
-}
\ No newline at end of file
+}
diff --git a/lib/model/timetable/timetableProps.dart b/lib/model/timetable/timetableProps.dart
index d12282f..2d7be91 100644
--- a/lib/model/timetable/timetableProps.dart
+++ b/lib/model/timetable/timetableProps.dart
@@ -42,9 +42,7 @@ class TimetableProps extends DataHolder {
   bool get hasError => error != null;
 
   @override
-  List<ApiResponse?> properties() {
-    return [_getTimetableResponse, _getRoomsResponse, _getSubjectsResponse, _getHolidaysResponse, _getCustomTimetableEventResponse];
-  }
+  List<ApiResponse?> properties() => [_getTimetableResponse, _getRoomsResponse, _getSubjectsResponse, _getHolidaysResponse, _getCustomTimetableEventResponse];
 
   @override
   void run({renew}) {
@@ -101,9 +99,7 @@ class TimetableProps extends DataHolder {
 
   DateTime getDate(DateTime d) => DateTime(d.year, d.month, d.day);
 
-  bool isWeekend(DateTime queryDate) {
-    return queryDate.weekday == DateTime.saturday || queryDate.weekday == DateTime.sunday;
-  }
+  bool isWeekend(DateTime queryDate) => queryDate.weekday == DateTime.saturday || queryDate.weekday == DateTime.sunday;
 
   void updateWeek(DateTime start, DateTime end) {
     properties().forEach((element) => element = null);
@@ -123,7 +119,7 @@ class TimetableProps extends DataHolder {
     error = null;
     notifyListeners();
 
-    DateTime queryWeek = DateTime.now().add(const Duration(days: 2));
+    var queryWeek = DateTime.now().add(const Duration(days: 2));
 
     startDate = getDate(queryWeek.subtract(Duration(days: queryWeek.weekday - 1)));
     endDate = getDate(queryWeek.add(Duration(days: DateTime.daysPerWeek - queryWeek.weekday)));
@@ -131,4 +127,4 @@ class TimetableProps extends DataHolder {
     run();
     notifyListeners();
   }
-}
\ No newline at end of file
+}
diff --git a/lib/notification/notificationController.dart b/lib/notification/notificationController.dart
index f5babc9..af35c22 100644
--- a/lib/notification/notificationController.dart
+++ b/lib/notification/notificationController.dart
@@ -60,4 +60,4 @@ class NotificationController {
       ));
     });
   }
-}
\ No newline at end of file
+}
diff --git a/lib/notification/notificationService.dart b/lib/notification/notificationService.dart
index cbb5758..c855db6 100644
--- a/lib/notification/notificationService.dart
+++ b/lib/notification/notificationService.dart
@@ -3,27 +3,25 @@ import 'package:flutter_local_notifications/flutter_local_notifications.dart';
 class NotificationService {
   static final NotificationService _instance = NotificationService._internal();
 
-  factory NotificationService() {
-    return _instance;
-  }
+  factory NotificationService() => _instance;
 
   NotificationService._internal();
 
   FlutterLocalNotificationsPlugin flutterLocalNotificationsPlugin = FlutterLocalNotificationsPlugin();
 
   Future<void> initializeNotifications() async {
-    const AndroidInitializationSettings androidSettings = AndroidInitializationSettings(
+    const androidSettings = AndroidInitializationSettings(
         '@mipmap/ic_launcher'
     );
 
-    final DarwinInitializationSettings iosSettings = DarwinInitializationSettings(
+    final iosSettings = DarwinInitializationSettings(
       onDidReceiveLocalNotification: (id, title, body, payload) {
         // TODO Navigate to Talk section (This runs when an Notification is tapped)
       },
     );
 
 
-    final InitializationSettings initializationSettings = InitializationSettings(
+    final initializationSettings = InitializationSettings(
       android: androidSettings,
       iOS: iosSettings,
     );
@@ -34,7 +32,7 @@ class NotificationService {
   }
 
   Future<void> showNotification({required String title, required String body, required int badgeCount}) async {
-    const AndroidNotificationDetails androidPlatformChannelSpecifics =
+    const androidPlatformChannelSpecifics =
     AndroidNotificationDetails(
       'marmobile',
       'Marianum Fulda',
@@ -43,9 +41,9 @@ class NotificationService {
       ticker: 'Marianum Fulda',
     );
 
-    const DarwinNotificationDetails iosPlatformChannelSpecifics = DarwinNotificationDetails();
+    const iosPlatformChannelSpecifics = DarwinNotificationDetails();
 
-    const NotificationDetails platformChannelSpecifics = NotificationDetails(
+    const platformChannelSpecifics = NotificationDetails(
       android: androidPlatformChannelSpecifics,
       iOS: iosPlatformChannelSpecifics
     );
@@ -57,4 +55,4 @@ class NotificationService {
       platformChannelSpecifics,
     );
   }
-}
\ No newline at end of file
+}
diff --git a/lib/notification/notificationTasks.dart b/lib/notification/notificationTasks.dart
index dd9f860..9719b67 100644
--- a/lib/notification/notificationTasks.dart
+++ b/lib/notification/notificationTasks.dart
@@ -20,4 +20,4 @@ class NotificationTasks {
   static void navigateToTalk() {
     App.bottomNavigator.jumpToTab(1);
   }
-}
\ No newline at end of file
+}
diff --git a/lib/notification/notifyUpdater.dart b/lib/notification/notifyUpdater.dart
index b22d221..271e820 100644
--- a/lib/notification/notifyUpdater.dart
+++ b/lib/notification/notifyUpdater.dart
@@ -8,8 +8,7 @@ import '../storage/base/settingsProvider.dart';
 import '../widget/confirmDialog.dart';
 
 class NotifyUpdater {
-  static ConfirmDialog enableAfterDisclaimer(SettingsProvider settings) {
-    return ConfirmDialog(
+  static ConfirmDialog enableAfterDisclaimer(SettingsProvider settings) => ConfirmDialog(
       title: 'Warnung',
       icon: Icons.warning_amber,
       content: ''
@@ -25,9 +24,8 @@ class NotifyUpdater {
         NotifyUpdater.registerToServer();
       },
     );
-  }
-  static void registerToServer() async {
-    String? fcmToken = await FirebaseMessaging.instance.getToken();
+  static Future<void> registerToServer() async {
+    var fcmToken = await FirebaseMessaging.instance.getToken();
 
     if(fcmToken == null) throw Exception('Failed to register push notification because there is no FBC token!');
 
@@ -39,4 +37,4 @@ class NotifyUpdater {
       ),
     ).run();
   }
-}
\ No newline at end of file
+}
diff --git a/lib/storage/base/settings.dart b/lib/storage/base/settings.dart
index 46cd3b8..4759059 100644
--- a/lib/storage/base/settings.dart
+++ b/lib/storage/base/settings.dart
@@ -48,4 +48,4 @@ class Settings {
 
   factory Settings.fromJson(Map<String, dynamic> json) => _$SettingsFromJson(json);
   Map<String, dynamic> toJson() => _$SettingsToJson(this);
-}
\ No newline at end of file
+}
diff --git a/lib/storage/base/settingsProvider.dart b/lib/storage/base/settingsProvider.dart
index 1853c30..b1fb43f 100644
--- a/lib/storage/base/settingsProvider.dart
+++ b/lib/storage/base/settingsProvider.dart
@@ -29,7 +29,7 @@ class SettingsProvider extends ChangeNotifier {
     _readFromStorage();
   }
 
-  void reset() async {
+  Future<void> reset() async {
     _storage = await SharedPreferences.getInstance();
     _storage.remove(_fieldName);
     _settings = DefaultSettings.get();
@@ -38,7 +38,7 @@ class SettingsProvider extends ChangeNotifier {
     notifyListeners();
   }
 
-  void _readFromStorage() async {
+  Future<void> _readFromStorage() async {
     _storage = await SharedPreferences.getInstance();
 
     try {
@@ -63,7 +63,7 @@ class SettingsProvider extends ChangeNotifier {
   }
 
   Map<String, dynamic> _mergeSettings(Map<String, dynamic> oldMap, Map<String, dynamic> newMap) {
-    Map<String, dynamic> mergedMap = Map.from(newMap);
+    var mergedMap = Map<String, dynamic>.from(newMap);
 
     oldMap.forEach((key, value) {
       if (mergedMap.containsKey(key)) {
@@ -77,4 +77,4 @@ class SettingsProvider extends ChangeNotifier {
 
     return mergedMap;
   }
-}
\ No newline at end of file
+}
diff --git a/lib/storage/devTools/devToolsSettings.dart b/lib/storage/devTools/devToolsSettings.dart
index 39dfaa5..4a882ed 100644
--- a/lib/storage/devTools/devToolsSettings.dart
+++ b/lib/storage/devTools/devToolsSettings.dart
@@ -12,4 +12,4 @@ class DevToolsSettings {
 
   factory DevToolsSettings.fromJson(Map<String, dynamic> json) => _$DevToolsSettingsFromJson(json);
   Map<String, dynamic> toJson() => _$DevToolsSettingsToJson(this);
-}
\ No newline at end of file
+}
diff --git a/lib/storage/file/fileSettings.dart b/lib/storage/file/fileSettings.dart
index 054f9c0..9dec6ca 100644
--- a/lib/storage/file/fileSettings.dart
+++ b/lib/storage/file/fileSettings.dart
@@ -15,4 +15,4 @@ class FileSettings {
 
   factory FileSettings.fromJson(Map<String, dynamic> json) => _$FileSettingsFromJson(json);
   Map<String, dynamic> toJson() => _$FileSettingsToJson(this);
-}
\ No newline at end of file
+}
diff --git a/lib/storage/fileView/fileViewSettings.dart b/lib/storage/fileView/fileViewSettings.dart
index 5ebc15d..1f0f1b3 100644
--- a/lib/storage/fileView/fileViewSettings.dart
+++ b/lib/storage/fileView/fileViewSettings.dart
@@ -10,4 +10,4 @@ class FileViewSettings {
 
   factory FileViewSettings.fromJson(Map<String, dynamic> json) => _$FileViewSettingsFromJson(json);
   Map<String, dynamic> toJson() => _$FileViewSettingsToJson(this);
-}
\ No newline at end of file
+}
diff --git a/lib/storage/gradeAverages/gradeAveragesSettings.dart b/lib/storage/gradeAverages/gradeAveragesSettings.dart
index 8c3645a..721f239 100644
--- a/lib/storage/gradeAverages/gradeAveragesSettings.dart
+++ b/lib/storage/gradeAverages/gradeAveragesSettings.dart
@@ -13,4 +13,4 @@ class GradeAveragesSettings {
 
   factory GradeAveragesSettings.fromJson(Map<String, dynamic> json) => _$GradeAveragesSettingsFromJson(json);
   Map<String, dynamic> toJson() => _$GradeAveragesSettingsToJson(this);
-}
\ No newline at end of file
+}
diff --git a/lib/storage/holidays/holidaysSettings.dart b/lib/storage/holidays/holidaysSettings.dart
index af6912b..6a25292 100644
--- a/lib/storage/holidays/holidaysSettings.dart
+++ b/lib/storage/holidays/holidaysSettings.dart
@@ -11,4 +11,4 @@ class HolidaysSettings {
 
   factory HolidaysSettings.fromJson(Map<String, dynamic> json) => _$HolidaysSettingsFromJson(json);
   Map<String, dynamic> toJson() => _$HolidaysSettingsToJson(this);
-}
\ No newline at end of file
+}
diff --git a/lib/storage/notification/notificationSettings.dart b/lib/storage/notification/notificationSettings.dart
index 81607ba..ce02847 100644
--- a/lib/storage/notification/notificationSettings.dart
+++ b/lib/storage/notification/notificationSettings.dart
@@ -11,4 +11,4 @@ class NotificationSettings {
 
   factory NotificationSettings.fromJson(Map<String, dynamic> json) => _$NotificationSettingsFromJson(json);
   Map<String, dynamic> toJson() => _$NotificationSettingsToJson(this);
-}
\ No newline at end of file
+}
diff --git a/lib/storage/talk/talkSettings.dart b/lib/storage/talk/talkSettings.dart
index 7f63d1b..a0df6a2 100644
--- a/lib/storage/talk/talkSettings.dart
+++ b/lib/storage/talk/talkSettings.dart
@@ -12,4 +12,4 @@ class TalkSettings {
 
   factory TalkSettings.fromJson(Map<String, dynamic> json) => _$TalkSettingsFromJson(json);
   Map<String, dynamic> toJson() => _$TalkSettingsToJson(this);
-}
\ No newline at end of file
+}
diff --git a/lib/storage/timetable/timetableSettings.dart b/lib/storage/timetable/timetableSettings.dart
index cd1098d..5242556 100644
--- a/lib/storage/timetable/timetableSettings.dart
+++ b/lib/storage/timetable/timetableSettings.dart
@@ -10,4 +10,4 @@ class TimetableSettings {
 
   factory TimetableSettings.fromJson(Map<String, dynamic> json) => _$TimetableSettingsFromJson(json);
   Map<String, dynamic> toJson() => _$TimetableSettingsToJson(this);
-}
\ No newline at end of file
+}
diff --git a/lib/theming/appTheme.dart b/lib/theming/appTheme.dart
index 717bb74..bcf44f7 100644
--- a/lib/theming/appTheme.dart
+++ b/lib/theming/appTheme.dart
@@ -15,9 +15,7 @@ class AppTheme {
     }
   }
 
-  static bool isDarkMode(BuildContext context) {
-    return Theme.of(context).brightness == Brightness.dark;
-  }
+  static bool isDarkMode(BuildContext context) => Theme.of(context).brightness == Brightness.dark;
 }
 
 class ThemeModeDisplay {
@@ -25,4 +23,4 @@ class ThemeModeDisplay {
   final String displayName;
 
   ThemeModeDisplay({required this.icon, required this.displayName});
-}
\ No newline at end of file
+}
diff --git a/lib/theming/darkAppTheme.dart b/lib/theming/darkAppTheme.dart
index a8d33e5..97e6a81 100644
--- a/lib/theming/darkAppTheme.dart
+++ b/lib/theming/darkAppTheme.dart
@@ -10,4 +10,4 @@ class DarkAppTheme {
     ),
     primaryColor: marianumRed,
   );
-}
\ No newline at end of file
+}
diff --git a/lib/theming/lightAppTheme.dart b/lib/theming/lightAppTheme.dart
index 09a707a..97e9130 100644
--- a/lib/theming/lightAppTheme.dart
+++ b/lib/theming/lightAppTheme.dart
@@ -10,4 +10,4 @@ class LightAppTheme {
       foregroundColor: Colors.white
     )
   );
-}
\ No newline at end of file
+}
diff --git a/lib/view/login/login.dart b/lib/view/login/login.dart
index a99e8be..6f7d0a5 100644
--- a/lib/view/login/login.dart
+++ b/lib/view/login/login.dart
@@ -20,9 +20,7 @@ class Login extends StatefulWidget {
 class _LoginState extends State<Login> {
   bool displayDisclaimerText = true;
 
-  String? _checkInput(value){
-    return (value ?? '').length == 0 ? 'Eingabe erforderlich' : null;
-  }
+  String? _checkInput(value)=> (value ?? '').length == 0 ? 'Eingabe erforderlich' : null;
 
   Future<String?> _login(LoginData data) async {
     await AccountData().removeData();
@@ -49,15 +47,10 @@ class _LoginState extends State<Login> {
     return null;
   }
 
-  Future<String> _resetPassword(String name) {
-    return Future.delayed(Duration.zero).then((_) {
-      return 'Diese Funktion steht nicht zur Verfügung!';
-    });
-  }
+  Future<String> _resetPassword(String name) => Future.delayed(Duration.zero).then((_) => 'Diese Funktion steht nicht zur Verfügung!');
 
   @override
-  Widget build(BuildContext context) {
-    return FlutterLogin(
+  Widget build(BuildContext context) => FlutterLogin(
       logo: Image.asset('assets/logo/icon.png').image,
 
       userValidator: _checkInput,
@@ -109,5 +102,4 @@ class _LoginState extends State<Login> {
 
       userType: LoginUserType.name,
     );
-  }
 }
diff --git a/lib/view/pages/files/fileElement.dart b/lib/view/pages/files/fileElement.dart
index 02c1e09..478da24 100644
--- a/lib/view/pages/files/fileElement.dart
+++ b/lib/view/pages/files/fileElement.dart
@@ -26,14 +26,14 @@ class FileElement extends StatefulWidget {
   const FileElement(this.file, this.path, this.refetch, {super.key});
 
   static Future<DownloaderCore> download(BuildContext context, String remotePath, String name, Function(double) onProgress, Function(OpenResult) onDone) async {
-    Directory paths = await getTemporaryDirectory();
+    var paths = await getTemporaryDirectory();
     
     var encodedPath = Uri.encodeComponent(remotePath);
     encodedPath = encodedPath.replaceAll('%2F', '/');
 
-    String local = paths.path + Platform.pathSeparator + name;
+    var local = paths.path + Platform.pathSeparator + name;
 
-    DownloaderUtils options = DownloaderUtils(
+    var options = DownloaderUtils(
       progressCallback: (current, total) {
         final progress = (current / total) * 100;
         onProgress(progress);
@@ -52,7 +52,7 @@ class FileElement extends StatefulWidget {
     );
 
     return await Flowder.download(
-      "${await WebdavApi.webdavConnectString}$encodedPath",
+      '${await WebdavApi.webdavConnectString}$encodedPath',
       options,
     );
   }
@@ -89,8 +89,7 @@ class _FileElementState extends State<FileElement> {
   }
 
   @override
-  Widget build(BuildContext context) {
-    return ListTile(
+  Widget build(BuildContext context) => ListTile(
       leading: CenteredLeading(
           Icon(widget.file.isDirectory ? Icons.folder : Icons.description_outlined)
       ),
@@ -100,9 +99,7 @@ class _FileElementState extends State<FileElement> {
       onTap: () {
         if(widget.file.isDirectory) {
           Navigator.of(context).push(MaterialPageRoute(
-            builder: (context) {
-              return Files(widget.path.toList()..add(widget.file.name));
-            },
+            builder: (context) => Files(widget.path.toList()..add(widget.file.name)),
           ));
         } else {
           if(EndpointData().getEndpointMode() == EndpointMode.stage) {
@@ -141,12 +138,10 @@ class _FileElementState extends State<FileElement> {
             setState(() => percent = progress);
           }, (result) {
             if(result.type != ResultType.done) {
-              showDialog(context: context, builder: (context) {
-                return AlertDialog(
+              showDialog(context: context, builder: (context) => AlertDialog(
                   title: const Text('Download'),
                   content: Text(result.message),
-                );
-              });
+                ));
             }
 
             setState(() {
@@ -158,8 +153,7 @@ class _FileElementState extends State<FileElement> {
         }
       },
       onLongPress: () {
-        showDialog(context: context, builder: (context) {
-          return SimpleDialog(
+        showDialog(context: context, builder: (context) => SimpleDialog(
             children: [
               ListTile(
                 leading: const Icon(Icons.delete_outline),
@@ -189,9 +183,7 @@ class _FileElementState extends State<FileElement> {
                 ),
               ),
             ],
-          );
-        });
+          ));
       },
     );
-  }
 }
diff --git a/lib/view/pages/files/fileUploadDialog.dart b/lib/view/pages/files/fileUploadDialog.dart
index 6322ee5..0708cdf 100644
--- a/lib/view/pages/files/fileUploadDialog.dart
+++ b/lib/view/pages/files/fileUploadDialog.dart
@@ -32,18 +32,18 @@ class _FileUploadDialogState extends State<FileUploadDialog> {
   TextEditingController fileNameController = TextEditingController();
 
 
-  void upload({bool override = false}) async {
+  Future<void> upload({bool override = false}) async {
     setState(() {
       state = FileUploadState.upload;
     });
 
-    WebDavClient webdavClient = await WebdavApi.webdav;
+    var webdavClient = await WebdavApi.webdav;
 
     if(!override) {
       setState(() {
         state = FileUploadState.checkConflict;
       });
-      List<WebDavResponse> result = (await webdavClient.propfind(PathUri.parse(widget.remotePath.join('/')))).responses;
+      var result = (await webdavClient.propfind(PathUri.parse(widget.remotePath.join('/')))).responses;
       if(result.any((element) => element.href!.endsWith('/$targetFileName'))) {
         setState(() {
           state = FileUploadState.conflict;
@@ -56,7 +56,7 @@ class _FileUploadDialogState extends State<FileUploadDialog> {
       }
     }
 
-    Future<HttpClientResponse> uploadTask = webdavClient.putFile(File(widget.localPath), FileStat.statSync(widget.localPath), PathUri.parse(fullRemotePath)); // TODO use onProgress from putFile
+    var uploadTask = webdavClient.putFile(File(widget.localPath), FileStat.statSync(widget.localPath), PathUri.parse(fullRemotePath)); // TODO use onProgress from putFile
     uploadTask.then(Future<HttpClientResponse?>.value).catchError((e) {
       setState(() {
         state = FileUploadState.error;
@@ -230,4 +230,4 @@ enum FileUploadState {
   upload,
   done,
   error
-}
\ No newline at end of file
+}
diff --git a/lib/view/pages/files/files.dart b/lib/view/pages/files/files.dart
index b377cbf..28f991f 100644
--- a/lib/view/pages/files/files.dart
+++ b/lib/view/pages/files/files.dart
@@ -64,9 +64,7 @@ class SortOptions {
     )
   };
 
-  static BetterSortOption getOption(SortOption option) {
-    return options[option]!;
-  }
+  static BetterSortOption getOption(SortOption option) => options[option]!;
 }
 
 class _FilesState extends State<Files> {
@@ -101,7 +99,7 @@ class _FilesState extends State<Files> {
 
   @override
   Widget build(BuildContext context) {
-    List<CacheableFile> files = data?.sortBy(
+    var files = data?.sortBy(
       sortOption: currentSort,
       foldersToTop: Provider.of<SettingsProvider>(context).val().fileSettings.sortFoldersToTop,
       reversed: currentSortDirection
@@ -119,8 +117,7 @@ class _FilesState extends State<Files> {
           // ),
           PopupMenuButton<bool>(
             icon: Icon(currentSortDirection ? Icons.text_rotate_up : Icons.text_rotation_down),
-            itemBuilder: (context) {
-              return [true, false].map((e) => PopupMenuItem<bool>(
+            itemBuilder: (context) => [true, false].map((e) => PopupMenuItem<bool>(
                   value: e,
                   enabled: e != currentSortDirection,
                   child: Row(
@@ -130,8 +127,7 @@ class _FilesState extends State<Files> {
                       Text(e ? 'Aufsteigend' : 'Absteigend')
                     ],
                   )
-              )).toList();
-            },
+              )).toList(),
             onSelected: (e) {
               setState(() {
                 currentSortDirection = e;
@@ -141,8 +137,7 @@ class _FilesState extends State<Files> {
           ),
           PopupMenuButton<SortOption>(
             icon: const Icon(Icons.sort),
-            itemBuilder: (context) {
-              return SortOptions.options.keys.map((key) => PopupMenuItem<SortOption>(
+            itemBuilder: (context) => SortOptions.options.keys.map((key) => PopupMenuItem<SortOption>(
                   value: key,
                   enabled: key != currentSort,
                   child: Row(
@@ -152,8 +147,7 @@ class _FilesState extends State<Files> {
                       Text(SortOptions.getOption(key).displayName)
                     ],
                   )
-              )).toList();
-            },
+              )).toList(),
             onSelected: (e) {
               setState(() {
                 currentSort = e;
@@ -167,8 +161,7 @@ class _FilesState extends State<Files> {
         heroTag: 'uploadFile',
         backgroundColor: Theme.of(context).primaryColor,
         onPressed: () {
-          showDialog(context: context, builder: (context) {
-            return SimpleDialog(
+          showDialog(context: context, builder: (context) => SimpleDialog(
               children: [
                 ListTile(
                   leading: const Icon(Icons.create_new_folder_outlined),
@@ -224,8 +217,7 @@ class _FilesState extends State<Files> {
                   ),
                 ),
               ],
-            );
-          });
+            ));
         },
         child: const Icon(Icons.add),
       ),
@@ -239,7 +231,7 @@ class _FilesState extends State<Files> {
             padding: EdgeInsets.zero,
             itemCount: files.length,
             itemBuilder: (context, index) {
-              CacheableFile file = files.toList()[index];
+              var file = files.toList()[index];
               return FileElement(file, widget.path, _query);
             },
           ),
@@ -248,7 +240,7 @@ class _FilesState extends State<Files> {
     );
   }
 
-  void mediaUpload(String? path) async {
+  Future<void> mediaUpload(String? path) async {
     context.loaderOverlay.hide();
 
     if(path == null) {
diff --git a/lib/view/pages/more/feedback/feedbackDialog.dart b/lib/view/pages/more/feedback/feedbackDialog.dart
index 2e0a3e7..b155fa8 100644
--- a/lib/view/pages/more/feedback/feedbackDialog.dart
+++ b/lib/view/pages/more/feedback/feedbackDialog.dart
@@ -44,8 +44,7 @@ class _FeedbackDialogState extends State<FeedbackDialog> {
   }
 
   @override
-  Widget build(BuildContext context) {
-    return Scaffold(
+  Widget build(BuildContext context) => Scaffold(
       appBar: AppBar(
         title: const Text('Feedback'),
       ),
@@ -125,7 +124,7 @@ class _FeedbackDialogState extends State<FeedbackDialog> {
                     onPressed: () async {
                       context.loaderOverlay.show();
                       var imageData = await (await FilePick.galleryPick())?.readAsBytes();
-                      context.loaderOverlay.hide();
+                      if(context.mounted) context.loaderOverlay.hide();
                       setState(() {
                         _image = imageData;
                       });
@@ -170,6 +169,4 @@ class _FeedbackDialogState extends State<FeedbackDialog> {
         ],
       ),
     );
-
-  }
 }
diff --git a/lib/view/pages/more/holidays/holidays.dart b/lib/view/pages/more/holidays/holidays.dart
index 477915a..6d5df2a 100644
--- a/lib/view/pages/more/holidays/holidays.dart
+++ b/lib/view/pages/more/holidays/holidays.dart
@@ -4,7 +4,6 @@ import 'package:flutter/material.dart';
 import 'package:jiffy/jiffy.dart';
 import 'package:provider/provider.dart';
 
-import '../../../../api/holidays/getHolidaysResponse.dart';
 import '../../../../model/holidays/holidaysProps.dart';
 import '../../../../storage/base/settingsProvider.dart';
 import '../../../../widget/centeredLeading.dart';
@@ -22,9 +21,7 @@ class Holidays extends StatefulWidget {
 }
 
 extension StringExtension on String {
-  String capitalize() {
-    return "${this[0].toUpperCase()}${substring(1).toLowerCase()}";
-  }
+  String capitalize() => '${this[0].toUpperCase()}${substring(1).toLowerCase()}';
 }
 
 class _HolidaysState extends State<Holidays> {
@@ -41,13 +38,10 @@ class _HolidaysState extends State<Holidays> {
     super.initState();
   }
 
-  String parseString(String enDate) {
-    return Jiffy.parse(enDate).format(pattern: 'dd.MM.yyyy');
-  }
+  String parseString(String enDate) => Jiffy.parse(enDate).format(pattern: 'dd.MM.yyyy');
 
   void showDisclaimer() {
-    showDialog(context: context, builder: (context) {
-      return AlertDialog(
+    showDialog(context: context, builder: (context) => AlertDialog(
         title: const Text('Richtigkeit und Bereitstellung der Daten'),
         content: Column(
           mainAxisSize: MainAxisSize.min,
@@ -70,13 +64,11 @@ class _HolidaysState extends State<Holidays> {
           TextButton(child: const Text('ferien-api.de besuchen'), onPressed: () => ConfirmDialog.openBrowser(context, 'https://ferien-api.de/')),
           TextButton(child: const Text('Okay'), onPressed: () => Navigator.of(context).pop()),
         ],
-      );
-    });
+      ));
   }
 
   @override
-  Widget build(BuildContext context) {
-    return Scaffold(
+  Widget build(BuildContext context) => Scaffold(
       appBar: AppBar(
         title: const Text('Schulferien in Hessen'),
         actions: [
@@ -87,8 +79,7 @@ class _HolidaysState extends State<Holidays> {
           PopupMenuButton<bool>(
             initialValue: settings.val().holidaysSettings.showPastEvents,
             icon: const Icon(Icons.manage_history_outlined),
-            itemBuilder: (context) {
-              return [true, false].map((e) => PopupMenuItem<bool>(
+            itemBuilder: (context) => [true, false].map((e) => PopupMenuItem<bool>(
                   value: e,
                   enabled: e != showPastEvents,
                   child: Row(
@@ -98,8 +89,7 @@ class _HolidaysState extends State<Holidays> {
                       Text(e ? 'Alle anzeigen' : 'Nur zukünftige anzeigen')
                     ],
                   )
-              )).toList();
-            },
+              )).toList(),
             onSelected: (e) {
               setState(() {
                 showPastEvents = e;
@@ -112,7 +102,7 @@ class _HolidaysState extends State<Holidays> {
       body: Consumer<HolidaysProps>(builder: (context, value, child) {
         if(value.primaryLoading()) return const LoadingSpinner();
 
-        List<GetHolidaysResponseObject> holidays = value.getHolidaysResponse.data;
+        var holidays = value.getHolidaysResponse.data;
         if(!showPastEvents) holidays = holidays.where((element) => DateTime.parse(element.end).isAfter(DateTime.now())).toList();
 
         if(holidays.isEmpty) return const PlaceholderView(icon: Icons.search_off, text: 'Es wurden keine Ferieneinträge gefunden!');
@@ -120,8 +110,8 @@ class _HolidaysState extends State<Holidays> {
         return ListView.builder(
             itemCount: holidays.length,
             itemBuilder: (context, index) {
-              GetHolidaysResponseObject holiday = holidays[index];
-              String holidayType = holiday.name.split(' ').first.capitalize();
+              var holiday = holidays[index];
+              var holidayType = holiday.name.split(' ').first.capitalize();
               return ListTile(
                 leading: const CenteredLeading(Icon(Icons.calendar_month)),
                 title: Text('$holidayType ab ${parseString(holiday.start)}'),
@@ -164,5 +154,4 @@ class _HolidaysState extends State<Holidays> {
         },
       )
     );
-  }
 }
diff --git a/lib/view/pages/more/message/message.dart b/lib/view/pages/more/message/message.dart
index 3d12f3f..d9be17f 100644
--- a/lib/view/pages/more/message/message.dart
+++ b/lib/view/pages/more/message/message.dart
@@ -1,7 +1,6 @@
 import 'package:flutter/material.dart';
 import 'package:provider/provider.dart';
 
-import '../../../../api/mhsl/message/getMessages/getMessagesResponse.dart';
 import '../../../../model/message/messageProps.dart';
 import '../../../../widget/loadingSpinner.dart';
 import 'messageView.dart';
@@ -24,8 +23,7 @@ class _MessageState extends State<Message> {
   }
 
   @override
-  Widget build(BuildContext context) {
-    return Scaffold(
+  Widget build(BuildContext context) => Scaffold(
       appBar: AppBar(
         title: const Text('Marianum Message'),
       ),
@@ -36,7 +34,7 @@ class _MessageState extends State<Message> {
           child: ListView.builder(
               itemCount: value.getMessagesResponse.messages.length,
               itemBuilder: (context, index) {
-                GetMessagesResponseObject message = value.getMessagesResponse.messages.toList()[index];
+                var message = value.getMessagesResponse.messages.toList()[index];
                 return ListTile(
                   leading: const Column(
                     mainAxisAlignment: MainAxisAlignment.center,
@@ -58,5 +56,4 @@ class _MessageState extends State<Message> {
         );
       }),
     );
-  }
 }
diff --git a/lib/view/pages/more/message/messageView.dart b/lib/view/pages/more/message/messageView.dart
index 63b25fc..791a2ed 100644
--- a/lib/view/pages/more/message/messageView.dart
+++ b/lib/view/pages/more/message/messageView.dart
@@ -17,8 +17,7 @@ class MessageView extends StatefulWidget {
 class _MessageViewState extends State<MessageView> {
 
   @override
-  Widget build(BuildContext context) {
-    return Scaffold(
+  Widget build(BuildContext context) => Scaffold(
       appBar: AppBar(
         title: Text(widget.message.name),
       ),
@@ -27,8 +26,7 @@ class _MessageViewState extends State<MessageView> {
         enableHyperlinkNavigation: true,
         onDocumentLoadFailed: (PdfDocumentLoadFailedDetails e) {
           Navigator.of(context).pop();
-          showDialog(context: context, builder: (context) {
-            return AlertDialog(
+          showDialog(context: context, builder: (context) => AlertDialog(
               title: const Text('Fehler beim öffnen'),
               content: Text("Dokument '${widget.message.name}' konnte nicht geladen werden:\n${e.description}"),
               actions: [
@@ -36,8 +34,7 @@ class _MessageViewState extends State<MessageView> {
                   Navigator.of(context).pop();
                 }, child: const Text('Ok'))
               ],
-            );
-          });
+            ));
         },
         onHyperlinkClicked: (PdfHyperlinkClickedDetails e) {
           showDialog(
@@ -52,5 +49,4 @@ class _MessageViewState extends State<MessageView> {
         },
       ),
     );
-  }
 }
diff --git a/lib/view/pages/more/roomplan/roomplan.dart b/lib/view/pages/more/roomplan/roomplan.dart
index 09f365f..edabc5e 100644
--- a/lib/view/pages/more/roomplan/roomplan.dart
+++ b/lib/view/pages/more/roomplan/roomplan.dart
@@ -5,8 +5,7 @@ class Roomplan extends StatelessWidget {
   const Roomplan({super.key});
 
   @override
-  Widget build(BuildContext context) {
-    return Scaffold(
+  Widget build(BuildContext context) => Scaffold(
       appBar: AppBar(
         title: const Text('Raumplan'),
       ),
@@ -17,5 +16,4 @@ class Roomplan extends StatelessWidget {
         backgroundDecoration: BoxDecoration(color: Theme.of(context).colorScheme.background),
       ),
     );
-  }
 }
diff --git a/lib/view/pages/more/share/appSharePlatformView.dart b/lib/view/pages/more/share/appSharePlatformView.dart
index 1789312..b25d7c1 100644
--- a/lib/view/pages/more/share/appSharePlatformView.dart
+++ b/lib/view/pages/more/share/appSharePlatformView.dart
@@ -8,7 +8,7 @@ class AppSharePlatformView extends StatelessWidget {
 
   @override
   Widget build(BuildContext context) {
-    Color foregroundColor = Theme.of(context).colorScheme.onBackground;
+    var foregroundColor = Theme.of(context).colorScheme.onBackground;
     return Column(
       mainAxisSize: MainAxisSize.min,
       crossAxisAlignment: CrossAxisAlignment.center,
diff --git a/lib/view/pages/more/share/qrShareView.dart b/lib/view/pages/more/share/qrShareView.dart
index 6e52b54..b945224 100644
--- a/lib/view/pages/more/share/qrShareView.dart
+++ b/lib/view/pages/more/share/qrShareView.dart
@@ -11,8 +11,7 @@ class QrShareView extends StatefulWidget {
 
 class _QrShareViewState extends State<QrShareView> {
   @override
-  Widget build(BuildContext context) {
-    return DefaultTabController(
+  Widget build(BuildContext context) => DefaultTabController(
       length: 2,
       child: Scaffold(
         appBar: AppBar(
@@ -32,5 +31,4 @@ class _QrShareViewState extends State<QrShareView> {
         ),
       ),
     );
-  }
 }
diff --git a/lib/view/pages/more/share/selectShareTypeDialog.dart b/lib/view/pages/more/share/selectShareTypeDialog.dart
index a10097d..0b768bc 100644
--- a/lib/view/pages/more/share/selectShareTypeDialog.dart
+++ b/lib/view/pages/more/share/selectShareTypeDialog.dart
@@ -8,8 +8,7 @@ class SelectShareTypeDialog extends StatelessWidget {
   const SelectShareTypeDialog({super.key});
 
   @override
-  Widget build(BuildContext context) {
-    return SimpleDialog(
+  Widget build(BuildContext context) => SimpleDialog(
       children: [
         ListTile(
           leading: const Icon(Icons.qr_code_2_outlined),
@@ -36,5 +35,4 @@ class SelectShareTypeDialog extends StatelessWidget {
         )
       ],
     );
-  }
 }
diff --git a/lib/view/pages/overhang.dart b/lib/view/pages/overhang.dart
index 4ed82c0..0fbe65a 100644
--- a/lib/view/pages/overhang.dart
+++ b/lib/view/pages/overhang.dart
@@ -21,9 +21,7 @@ class Overhang extends StatelessWidget {
   const Overhang({super.key});
 
   @override
-  Widget build(BuildContext context) {
-
-    return Scaffold(
+  Widget build(BuildContext context) => Scaffold(
       appBar: AppBar(
         title: const Text('Mehr'),
         actions: [
@@ -79,5 +77,4 @@ class Overhang extends StatelessWidget {
         ],
       ),
     );
-  }
 }
diff --git a/lib/view/pages/talk/chatDetails/chatInfo.dart b/lib/view/pages/talk/chatDetails/chatInfo.dart
index 35ebb7a..2460704 100644
--- a/lib/view/pages/talk/chatDetails/chatInfo.dart
+++ b/lib/view/pages/talk/chatDetails/chatInfo.dart
@@ -35,7 +35,7 @@ class _ChatInfoState extends State<ChatInfo> {
 
   @override
   Widget build(BuildContext context) {
-    bool isGroup = widget.room.type != GetRoomResponseObjectConversationType.oneToOne;
+    var isGroup = widget.room.type != GetRoomResponseObjectConversationType.oneToOne;
     return Scaffold(
       appBar: AppBar(
         title: Text(widget.room.displayName),
diff --git a/lib/view/pages/talk/chatDetails/participants/participantsListView.dart b/lib/view/pages/talk/chatDetails/participants/participantsListView.dart
index a96d023..2bc863b 100644
--- a/lib/view/pages/talk/chatDetails/participants/participantsListView.dart
+++ b/lib/view/pages/talk/chatDetails/participants/participantsListView.dart
@@ -13,20 +13,16 @@ class ParticipantsListView extends StatefulWidget {
 
 class _ParticipantsListViewState extends State<ParticipantsListView> {
   @override
-  Widget build(BuildContext context) {
-    return Scaffold(
+  Widget build(BuildContext context) => Scaffold(
       appBar: AppBar(
         title: const Text('Teilnehmende'),
       ),
       body: ListView(
-        children: widget.participantsResponse.data.map((participant) {
-          return ListTile(
+        children: widget.participantsResponse.data.map((participant) => ListTile(
             leading: UserAvatar(id: participant.actorId),
             title: Text(participant.displayName),
             subtitle: participant.statusMessage != null ? Text(participant.statusMessage!) : null,
-          );
-        }).toList(),
+          )).toList(),
       ),
     );
-  }
 }
diff --git a/lib/view/pages/talk/chatList.dart b/lib/view/pages/talk/chatList.dart
index bf1cd9d..905a11d 100644
--- a/lib/view/pages/talk/chatList.dart
+++ b/lib/view/pages/talk/chatList.dart
@@ -119,14 +119,14 @@ class _ChatListState extends State<ChatList> {
 
             if(data.primaryLoading()) return const LoadingSpinner();
             latestData = data;
-            List<ChatTile> chats = [];
+            var chats = <ChatTile>[];
             for (var chatRoom in data.getRoomsResponse.sortBy(
               lastActivity: true,
               favoritesToTop: Provider.of<SettingsProvider>(context).val().talkSettings.sortFavoritesToTop,
               unreadToTop: Provider.of<SettingsProvider>(context).val().talkSettings.sortUnreadToTop,
             )
             ) {
-              bool hasDraft = settings.val().talkSettings.drafts.containsKey(chatRoom.token);
+              var hasDraft = settings.val().talkSettings.drafts.containsKey(chatRoom.token);
               chats.add(ChatTile(data: chatRoom, query: _query, hasDraft: hasDraft));
             }
 
@@ -146,4 +146,4 @@ class _ChatListState extends State<ChatList> {
       ),
     );
   }
-}
\ No newline at end of file
+}
diff --git a/lib/view/pages/talk/chatView.dart b/lib/view/pages/talk/chatView.dart
index 92fe293..c66725f 100644
--- a/lib/view/pages/talk/chatView.dart
+++ b/lib/view/pages/talk/chatView.dart
@@ -40,19 +40,18 @@ class _ChatViewState extends State<ChatView> {
   }
 
   @override
-  Widget build(BuildContext context) {
-    return Consumer<ChatProps>(
+  Widget build(BuildContext context) => Consumer<ChatProps>(
       builder: (context, data, child) {
-        List<Widget> messages = List<Widget>.empty(growable: true);
+        var messages = List<Widget>.empty(growable: true);
 
         if(!data.primaryLoading()) {
 
-          DateTime lastDate = DateTime.now();
+          var lastDate = DateTime.now();
           data.getChatResponse.sortByTimestamp().forEach((element) {
-            DateTime elementDate = DateTime.fromMillisecondsSinceEpoch(element.timestamp * 1000);
+            var elementDate = DateTime.fromMillisecondsSinceEpoch(element.timestamp * 1000);
 
             if(element.systemMessage.contains('reaction')) return;
-            int commonRead = int.parse(data.getChatResponse.headers?['x-chat-last-common-read'] ?? '0');
+            var commonRead = int.parse(data.getChatResponse.headers?['x-chat-last-common-read'] ?? '0');
 
             if(!elementDate.isSameDay(lastDate)) {
               lastDate = elementDate;
@@ -140,5 +139,4 @@ class _ChatViewState extends State<ChatView> {
         );
       },
     );
-  }
 }
diff --git a/lib/view/pages/talk/components/chatBubble.dart b/lib/view/pages/talk/components/chatBubble.dart
index 0323117..6e56dc7 100644
--- a/lib/view/pages/talk/components/chatBubble.dart
+++ b/lib/view/pages/talk/components/chatBubble.dart
@@ -51,15 +51,13 @@ class ChatBubble extends StatefulWidget {
 
 class _ChatBubbleState extends State<ChatBubble> {
 
-  BubbleStyle getSystemStyle() {
-    return BubbleStyle(
+  BubbleStyle getSystemStyle() => BubbleStyle(
       color: AppTheme.isDarkMode(context) ? const Color(0xff182229) : Colors.white,
       borderWidth: 1,
       elevation: 2,
       margin: const BubbleEdges.only(bottom: 20, top: 10),
       alignment: Alignment.center,
     );
-  }
 
   BubbleStyle getRemoteStyle(bool seamless) {
     var color = AppTheme.isDarkMode(context) ? const Color(0xff202c33) : Colors.white;
@@ -105,17 +103,17 @@ class _ChatBubbleState extends State<ChatBubble> {
   @override
   Widget build(BuildContext context) {
     message = ChatMessage(originalMessage: widget.bubbleData.message, originalData: widget.bubbleData.messageParameters);
-    bool showActorDisplayName = widget.bubbleData.messageType == GetRoomResponseObjectMessageType.comment && widget.chatData.type != GetRoomResponseObjectConversationType.oneToOne;
-    bool showBubbleTime = widget.bubbleData.messageType != GetRoomResponseObjectMessageType.system;
+    var showActorDisplayName = widget.bubbleData.messageType == GetRoomResponseObjectMessageType.comment && widget.chatData.type != GetRoomResponseObjectConversationType.oneToOne;
+    var showBubbleTime = widget.bubbleData.messageType != GetRoomResponseObjectMessageType.system;
 
-    Text actorText = Text(
+    var actorText = Text(
       widget.bubbleData.actorDisplayName,
       textAlign: TextAlign.start,
       overflow: TextOverflow.ellipsis,
       style: TextStyle(color: Theme.of(context).primaryColor, fontWeight: FontWeight.bold),
     );
 
-    Text timeText = Text(
+    var timeText = Text(
       Jiffy.parseFromMillisecondsSinceEpoch(widget.bubbleData.timestamp * 1000).format(pattern: 'HH:mm'),
       textAlign: TextAlign.end,
       style: TextStyle(color: widget.timeIconColor, fontSize: widget.timeIconSize),
@@ -186,8 +184,8 @@ class _ChatBubbleState extends State<ChatBubble> {
           ),
           onLongPress: () {
             showDialog(context: context, builder: (context) {
-              List<String> commonReactions = ['👍', '👎', '😆', '❤️', '👀'];
-              bool canReact = widget.bubbleData.messageType == GetRoomResponseObjectMessageType.comment;
+              var commonReactions = <String>['👍', '👎', '😆', '❤️', '👀'];
+              var canReact = widget.bubbleData.messageType == GetRoomResponseObjectMessageType.comment;
               return SimpleDialog(
                 children: [
                   Visibility(
@@ -217,8 +215,7 @@ class _ChatBubbleState extends State<ChatBubble> {
                             ),
                             IconButton(
                               onPressed: () {
-                                showDialog(context: context, builder: (context) {
-                                  return AlertDialog(
+                                showDialog(context: context, builder: (context) => AlertDialog(
                                     contentPadding: const EdgeInsets.all(15),
                                     titlePadding: const EdgeInsets.only(left: 6, top: 15),
                                     title: Row(
@@ -278,8 +275,7 @@ class _ChatBubbleState extends State<ChatBubble> {
                                         ],
                                       ),
                                     ),
-                                  );
-                                });
+                                  ));
                               },
                               style: IconButton.styleFrom(
                                 padding: EdgeInsets.zero,
@@ -350,8 +346,7 @@ class _ChatBubbleState extends State<ChatBubble> {
             if(message.file == null) return;
 
             if(downloadProgress > 0) {
-              showDialog(context: context, builder: (context) {
-                return AlertDialog(
+              showDialog(context: context, builder: (context) => AlertDialog(
                   title: const Text('Download abbrechen?'),
                   content: const Text('Möchtest du den Download abbrechen?'),
                   actions: [
@@ -369,8 +364,7 @@ class _ChatBubbleState extends State<ChatBubble> {
                       });
                     }, child: const Text('Ja, Abbrechen'))
                   ],
-                );
-              });
+                ));
 
               return;
             }
@@ -388,11 +382,9 @@ class _ChatBubbleState extends State<ChatBubble> {
               });
 
               if(result.type != ResultType.done) {
-                showDialog(context: context, builder: (context) {
-                  return AlertDialog(
+                showDialog(context: context, builder: (context) => AlertDialog(
                     content: Text(result.message),
-                  );
-                });
+                  ));
               }
             });
           },
@@ -408,7 +400,7 @@ class _ChatBubbleState extends State<ChatBubble> {
                 alignment: widget.isSender ? WrapAlignment.end : WrapAlignment.start,
                 crossAxisAlignment: WrapCrossAlignment.start,
                 children: widget.bubbleData.reactions?.entries.map<Widget>((e) {
-                  bool hasSelfReacted = widget.bubbleData.reactionsSelf?.contains(e.key) ?? false;
+                  var hasSelfReacted = widget.bubbleData.reactionsSelf?.contains(e.key) ?? false;
                   return Container(
                     margin: const EdgeInsets.only(right: 2.5, left: 2.5),
                     child: ActionChip(
diff --git a/lib/view/pages/talk/components/chatMessage.dart b/lib/view/pages/talk/components/chatMessage.dart
index 4b72500..48bcaf9 100644
--- a/lib/view/pages/talk/components/chatMessage.dart
+++ b/lib/view/pages/talk/components/chatMessage.dart
@@ -37,8 +37,7 @@ class ChatMessage {
     }
 
     return CachedNetworkImage(
-      errorWidget: (context, url, error) {
-        return Padding(padding: const EdgeInsets.only(top: 10), child: Row(
+      errorWidget: (context, url, error) => Padding(padding: const EdgeInsets.only(top: 10), child: Row(
           mainAxisSize: MainAxisSize.min,
           crossAxisAlignment: CrossAxisAlignment.center,
           children: [
@@ -47,12 +46,9 @@ class ChatMessage {
             Flexible(child: Text(file!.name, maxLines: 2, overflow: TextOverflow.ellipsis, style: const TextStyle(fontWeight: FontWeight.bold))),
             const SizedBox(width: 10),
           ],
-        ));
-      },
+        )),
       alignment: Alignment.center,
-      placeholder: (context, url) {
-        return const Padding(padding: EdgeInsets.all(10), child: CircularProgressIndicator());
-      },
+      placeholder: (context, url) => const Padding(padding: EdgeInsets.all(10), child: CircularProgressIndicator()),
       fadeInDuration: Duration.zero,
       fadeOutDuration: Duration.zero,
       errorListener: (value) {},
@@ -60,9 +56,9 @@ class ChatMessage {
     );
   }
 
-  void onOpen(LinkableElement link) async {
+  Future<void> onOpen(LinkableElement link) async {
     if(await canLaunchUrlString(link.url)) {
       await launchUrlString(link.url);
     }
   }
-}
\ No newline at end of file
+}
diff --git a/lib/view/pages/talk/components/chatTextfield.dart b/lib/view/pages/talk/components/chatTextfield.dart
index 5513d8a..b77928d 100644
--- a/lib/view/pages/talk/components/chatTextfield.dart
+++ b/lib/view/pages/talk/components/chatTextfield.dart
@@ -34,15 +34,15 @@ class _ChatTextfieldState extends State<ChatTextfield> {
     Provider.of<ChatProps>(context, listen: false).run();
   }
 
-  void mediaUpload(String? path) async {
+  Future<void> mediaUpload(String? path) async {
     context.loaderOverlay.hide();
 
     if(path == null) {
       return;
     }
 
-    String filename = "${path.split("/").last.split(".").first}-${const Uuid().v4()}.${path.split(".").last}";
-    String shareFolder = 'MarianumMobile';
+    var filename = "${path.split("/").last.split(".").first}-${const Uuid().v4()}.${path.split(".").last}";
+    var shareFolder = 'MarianumMobile';
     WebdavApi.webdav.then((webdav) {
       webdav.mkcol(PathUri.parse('/$shareFolder'));
     });
@@ -91,8 +91,7 @@ class _ChatTextfieldState extends State<ChatTextfield> {
               children: <Widget>[
                 GestureDetector(
                   onTap: (){
-                    showDialog(context: context, builder: (context) {
-                      return SimpleDialog(
+                    showDialog(context: context, builder: (context) => SimpleDialog(
                         children: [
                           ListTile(
                             leading: const Icon(Icons.file_open),
@@ -118,8 +117,7 @@ class _ChatTextfieldState extends State<ChatTextfield> {
                             ),
                           ),
                         ],
-                      );
-                    });
+                      ));
                   },
                   child: Material(
                     elevation: 5,
diff --git a/lib/view/pages/talk/components/chatTile.dart b/lib/view/pages/talk/components/chatTile.dart
index e1e4dba..0eee6d8 100644
--- a/lib/view/pages/talk/components/chatTile.dart
+++ b/lib/view/pages/talk/components/chatTile.dart
@@ -40,7 +40,7 @@ class _ChatTileState extends State<ChatTile> {
       username = value.getString('username')!
     });
 
-    bool isGroup = widget.data.type != GetRoomResponseObjectConversationType.oneToOne;
+    var isGroup = widget.data.type != GetRoomResponseObjectConversationType.oneToOne;
     circleAvatar = UserAvatar(id: isGroup ? widget.data.token : widget.data.name, isGroup: isGroup);
   }
 
@@ -56,10 +56,7 @@ class _ChatTileState extends State<ChatTile> {
 
 
   @override
-  Widget build(BuildContext context) {
-
-    return Consumer<ChatProps>(builder: (context, chatData, child) {
-      return ListTile(
+  Widget build(BuildContext context) => Consumer<ChatProps>(builder: (context, chatData, child) => ListTile(
         style: ListTileStyle.list,
         tileColor: chatData.currentToken() == widget.data.token && TalkNavigator.isSecondaryVisible(context)
             ? Theme.of(context).primaryColor.withAlpha(100)
@@ -120,7 +117,7 @@ class _ChatTileState extends State<ChatTile> {
         ),
         onTap: () async {
           setCurrentAsRead();
-          ChatView view = ChatView(room: widget.data, selfId: username, avatar: circleAvatar);
+          var view = ChatView(room: widget.data, selfId: username, avatar: circleAvatar);
           TalkNavigator.pushSplitView(context, view, overrideToSingleSubScreen: true);
           Provider.of<ChatProps>(context, listen: false).setQueryToken(widget.data.token);
         },
@@ -185,7 +182,5 @@ class _ChatTileState extends State<ChatTile> {
             ],
           ));
         },
-      );
-    });
-  }
+      ));
 }
diff --git a/lib/view/pages/talk/components/splitViewPlaceholder.dart b/lib/view/pages/talk/components/splitViewPlaceholder.dart
index 29d8473..d5c4030 100644
--- a/lib/view/pages/talk/components/splitViewPlaceholder.dart
+++ b/lib/view/pages/talk/components/splitViewPlaceholder.dart
@@ -6,8 +6,7 @@ class SplitViewPlaceholder extends StatelessWidget {
   const SplitViewPlaceholder({super.key});
 
   @override
-  Widget build(BuildContext context) {
-    return Scaffold(
+  Widget build(BuildContext context) => Scaffold(
       appBar: AppBar(),
       body: Center(
         child: Column(
@@ -25,5 +24,4 @@ class SplitViewPlaceholder extends StatelessWidget {
         ),
       )
     );
-  }
 }
diff --git a/lib/view/pages/talk/joinChat.dart b/lib/view/pages/talk/joinChat.dart
index f629ff9..e51815a 100644
--- a/lib/view/pages/talk/joinChat.dart
+++ b/lib/view/pages/talk/joinChat.dart
@@ -11,8 +11,7 @@ class JoinChat extends SearchDelegate<String> {
   CancelableOperation<AutocompleteResponse>? future;
 
   @override
-  List<Widget>? buildActions(BuildContext context) {
-    return [
+  List<Widget>? buildActions(BuildContext context) => [
       if(future != null && query.isNotEmpty) FutureBuilder(
         future: future!.value,
         builder: (context, snapshot) {
@@ -35,12 +34,9 @@ class JoinChat extends SearchDelegate<String> {
       ),
       if(query.isNotEmpty) IconButton(onPressed: () => query = '', icon: const Icon(Icons.delete)),
     ];
-  }
 
   @override
-  Widget? buildLeading(BuildContext context) {
-    return null;
-  }
+  Widget? buildLeading(BuildContext context) => null;
 
   @override
   Widget buildResults(BuildContext context) {
@@ -61,8 +57,8 @@ class JoinChat extends SearchDelegate<String> {
           return ListView.builder(
             itemCount: snapshot.data!.data.length,
             itemBuilder: (context, index) {
-              AutocompleteResponseObject object = snapshot.data!.data[index];
-              CircleAvatar circleAvatar = CircleAvatar(
+              var object = snapshot.data!.data[index];
+              var circleAvatar = CircleAvatar(
                 foregroundImage: Image.network('https://${EndpointData().nextcloud().full()}/avatar/${object.id}/128').image,
                 backgroundColor: Theme.of(context).primaryColor,
                 foregroundColor: Colors.white,
@@ -89,8 +85,6 @@ class JoinChat extends SearchDelegate<String> {
   }
 
   @override
-  Widget buildSuggestions(BuildContext context) {
-    return buildResults(context);
-  }
+  Widget buildSuggestions(BuildContext context) => buildResults(context);
 
-}
\ No newline at end of file
+}
diff --git a/lib/view/pages/talk/messageReactions.dart b/lib/view/pages/talk/messageReactions.dart
index 592ef29..1ab77ca 100644
--- a/lib/view/pages/talk/messageReactions.dart
+++ b/lib/view/pages/talk/messageReactions.dart
@@ -30,8 +30,7 @@ class _MessageReactionsState extends State<MessageReactions> {
   }
 
   @override
-  Widget build(BuildContext context) {
-    return Scaffold(
+  Widget build(BuildContext context) => Scaffold(
       appBar: AppBar(
         title: const Text('Reaktionen'),
       ),
@@ -42,8 +41,7 @@ class _MessageReactionsState extends State<MessageReactions> {
           if(snapshot.data == null) return const PlaceholderView(icon: Icons.search_off_outlined, text: 'Keine Reaktionen gefunden!');
           return ListView(
             children: [
-              ...snapshot.data!.data.entries.map<Widget>((entry) {
-                return ExpansionTile(
+              ...snapshot.data!.data.entries.map<Widget>((entry) => ExpansionTile(
                   textColor: Theme.of(context).colorScheme.onSurface,
                   collapsedTextColor: Theme.of(context).colorScheme.onSurface,
                   iconColor: Theme.of(context).colorScheme.onSurface,
@@ -53,7 +51,7 @@ class _MessageReactionsState extends State<MessageReactions> {
                   leading: CenteredLeading(Text(entry.key)),
                   title: Text('${entry.value.length} mal reagiert'),
                   children: entry.value.map((e) {
-                    bool isSelf = AccountData().getUsername() == e.actorId;
+                    var isSelf = AccountData().getUsername() == e.actorId;
                     return ListTile(
                       leading: UserAvatar(id: e.actorId, isGroup: false),
                       title: Text(e.actorDisplayName),
@@ -71,12 +69,10 @@ class _MessageReactionsState extends State<MessageReactions> {
                         ),
                     );
                   }).toList(),
-                );
-              })
+                ))
             ],
           );
         },
       ),
     );
-  }
 }
diff --git a/lib/view/pages/talk/searchChat.dart b/lib/view/pages/talk/searchChat.dart
index 39bdd56..3f39738 100644
--- a/lib/view/pages/talk/searchChat.dart
+++ b/lib/view/pages/talk/searchChat.dart
@@ -9,16 +9,12 @@ class SearchChat extends SearchDelegate {
   SearchChat(this.chats);
 
   @override
-  List<Widget>? buildActions(BuildContext context) {
-    return [
+  List<Widget>? buildActions(BuildContext context) => [
       if(query.isNotEmpty) IconButton(onPressed: () => query = '', icon: const Icon(Icons.delete)),
     ];
-  }
 
   @override
-  Widget? buildLeading(BuildContext context) {
-    return null;
-  }
+  Widget? buildLeading(BuildContext context) => null;
 
   @override
   Widget buildResults(BuildContext context) {
@@ -35,7 +31,5 @@ class SearchChat extends SearchDelegate {
   }
 
   @override
-  Widget buildSuggestions(BuildContext context) {
-    return buildResults(context);
-  }
-}
\ No newline at end of file
+  Widget buildSuggestions(BuildContext context) => buildResults(context);
+}
diff --git a/lib/view/pages/talk/talkNavigator.dart b/lib/view/pages/talk/talkNavigator.dart
index e882c98..18c33ab 100644
--- a/lib/view/pages/talk/talkNavigator.dart
+++ b/lib/view/pages/talk/talkNavigator.dart
@@ -9,10 +9,10 @@ class TalkNavigator {
 
   static void pushSplitView(BuildContext context, Widget view, {bool overrideToSingleSubScreen = false}) {
     if(isSecondaryVisible(context)) {
-      SplitViewState splitView = SplitView.of(context);
+      var splitView = SplitView.of(context);
       overrideToSingleSubScreen ? splitView.setSecondary(view) : splitView.push(view);
     } else {
       pushScreen(context, screen: view, withNavBar: false);
     }
   }
-}
\ No newline at end of file
+}
diff --git a/lib/view/pages/timetable/CrossPainter.dart b/lib/view/pages/timetable/CrossPainter.dart
index 49c2418..99e4431 100644
--- a/lib/view/pages/timetable/CrossPainter.dart
+++ b/lib/view/pages/timetable/CrossPainter.dart
@@ -13,4 +13,4 @@ class CrossPainter extends CustomPainter {
 
   @override
   bool shouldRepaint(CrossPainter oldDelegate) => false;
-}
\ No newline at end of file
+}
diff --git a/lib/view/pages/timetable/appointmentDetails.dart b/lib/view/pages/timetable/appointmentDetails.dart
index 43f9663..9adb671 100644
--- a/lib/view/pages/timetable/appointmentDetails.dart
+++ b/lib/view/pages/timetable/appointmentDetails.dart
@@ -33,7 +33,7 @@ class AppointmentDetails {
   }
 
   static void show(BuildContext context, TimetableProps webuntisData, Appointment appointment) {
-    (appointment.id as ArbitraryAppointment).handlers(
+    (appointment.id! as ArbitraryAppointment).handlers(
       (webuntis) => _webuntis(context, webuntisData, appointment, webuntis),
       (customData) => _custom(context, webuntisData, customData)
     );
@@ -76,21 +76,18 @@ class AppointmentDetails {
 
     _bottomSheet(
       context,
-      (context) {
-        return Center(
+      (context) => Center(
           child: Column(
             mainAxisSize: MainAxisSize.min,
             children: [
-              Text("${_getEventPrefix(timetableData.code)}${subject.alternateName}", textAlign: TextAlign.center, style: const TextStyle(fontSize: 25), overflow: TextOverflow.ellipsis),
+              Text('${_getEventPrefix(timetableData.code)}${subject.alternateName}', textAlign: TextAlign.center, style: const TextStyle(fontSize: 25), overflow: TextOverflow.ellipsis),
               Text(subject.longName),
               Text("${Jiffy.parseFromDateTime(appointment.startTime).format(pattern: "HH:mm")} - ${Jiffy.parseFromDateTime(appointment.endTime).format(pattern: "HH:mm")}", style: const TextStyle(fontSize: 15)),
             ],
           ),
-        );
-      },
+        ),
 
-      (context) {
-        return SliverChildListDelegate(
+      (context) => SliverChildListDelegate(
           [
             const Divider(),
             ListTile(
@@ -132,13 +129,12 @@ class AppointmentDetails {
             ),
             DebugTile(context).jsonData(timetableData.toJson()),
           ],
-        );
-      }
+        )
     );
   }
 
   static Completer deleteCustomEvent(BuildContext context, CustomTimetableEvent appointment) {
-    Completer future = Completer();
+    var future = Completer();
     ConfirmDialog(
       title: 'Termin löschen',
       content: "Der ${appointment.rrule.isEmpty ? "Termin" : "Serientermin"} wird unwiederruflich gelöscht.",
@@ -160,8 +156,7 @@ class AppointmentDetails {
   static void _custom(BuildContext context, TimetableProps webuntisData, CustomTimetableEvent appointment) {
     _bottomSheet(
       context,
-      (context) {
-        return Center(
+      (context) => Center(
           child: Column(
             mainAxisSize: MainAxisSize.min,
             children: [
@@ -169,10 +164,8 @@ class AppointmentDetails {
               Text("${Jiffy.parseFromDateTime(appointment.startDate).format(pattern: "HH:mm")} - ${Jiffy.parseFromDateTime(appointment.endDate).format(pattern: "HH:mm")}", style: const TextStyle(fontSize: 15)),
             ],
           ),
-        );
-      },
-      (context) {
-        return SliverChildListDelegate(
+        ),
+      (context) => SliverChildListDelegate(
           [
             const Divider(),
             Center(
@@ -212,7 +205,7 @@ class AppointmentDetails {
                 builder: (context, snapshot) {
                   if(appointment.rrule.isEmpty) return const Text('Keine weiteren vorkomnisse');
                   if(snapshot.data == null) return const Text('...');
-                  RecurrenceRule rrule = RecurrenceRule.fromString(appointment.rrule);
+                  var rrule = RecurrenceRule.fromString(appointment.rrule);
                   if(!rrule.canFullyConvertToText) return const Text('Keine genauere Angabe möglich.');
                   return Text(rrule.toText(l10n: snapshot.data!));
                 },
@@ -227,8 +220,7 @@ class AppointmentDetails {
             ),
             DebugTile(context).jsonData(appointment.toJson()),
           ]
-        );
-      }
+        )
     );
   }
-}
\ No newline at end of file
+}
diff --git a/lib/view/pages/timetable/arbitraryAppointment.dart b/lib/view/pages/timetable/arbitraryAppointment.dart
index 2dd081b..46c9b1b 100644
--- a/lib/view/pages/timetable/arbitraryAppointment.dart
+++ b/lib/view/pages/timetable/arbitraryAppointment.dart
@@ -8,16 +8,12 @@ class ArbitraryAppointment {
 
   ArbitraryAppointment({this.webuntis, this.custom});
 
-  bool hasWebuntis() {
-    return webuntis != null;
-  }
+  bool hasWebuntis() => webuntis != null;
 
-  bool hasCustom() {
-    return custom != null;
-  }
+  bool hasCustom() => custom != null;
 
   void handlers(void Function(GetTimetableResponseObject webuntisData) webuntis, void Function(CustomTimetableEvent customData) custom) {
     if(hasWebuntis()) webuntis(this.webuntis!);
     if(hasCustom()) custom(this.custom!);
   }
-}
\ No newline at end of file
+}
diff --git a/lib/view/pages/timetable/customTimetableColors.dart b/lib/view/pages/timetable/customTimetableColors.dart
index 15d5231..1b65838 100644
--- a/lib/view/pages/timetable/customTimetableColors.dart
+++ b/lib/view/pages/timetable/customTimetableColors.dart
@@ -29,9 +29,7 @@ class TimetableColors {
     }
   }
 
-  static Color getColorFromString(String color) {
-    return getDisplayOptions(CustomTimetableColors.values.firstWhere((element) => element.name == color, orElse: () => TimetableColors.defaultColor)).color;
-  }
+  static Color getColorFromString(String color) => getDisplayOptions(CustomTimetableColors.values.firstWhere((element) => element.name == color, orElse: () => TimetableColors.defaultColor)).color;
 }
 
 class ColorModeDisplay {
@@ -39,4 +37,4 @@ class ColorModeDisplay {
   final String displayName;
 
   ColorModeDisplay({required this.color, required this.displayName});
-}
\ No newline at end of file
+}
diff --git a/lib/view/pages/timetable/customTimetableEventEditDialog.dart b/lib/view/pages/timetable/customTimetableEventEditDialog.dart
index f08aafd..ba21525 100644
--- a/lib/view/pages/timetable/customTimetableEventEditDialog.dart
+++ b/lib/view/pages/timetable/customTimetableEventEditDialog.dart
@@ -51,8 +51,7 @@ class _AddCustomTimetableEventDialogState extends State<CustomTimetableEventEdit
   }
 
   @override
-  Widget build(BuildContext context) {
-    return AlertDialog(
+  Widget build(BuildContext context) => AlertDialog(
       insetPadding: const EdgeInsets.all(20),
       contentPadding: const EdgeInsets.all(10),
       title: const Text('Termin hinzufügen'),
@@ -89,7 +88,7 @@ class _AddCustomTimetableEventDialogState extends State<CustomTimetableEventEdit
               title: Text(Jiffy.parseFromDateTime(_date).yMMMd),
               subtitle: const Text('Datum'),
               onTap: () async {
-                final DateTime? pickedDate = await showDatePicker(
+                final pickedDate = await showDatePicker(
                   context: context,
                   initialDate: _date,
                   firstDate: DateTime.now().subtract(const Duration(days: 30)),
@@ -185,7 +184,7 @@ class _AddCustomTimetableEventDialogState extends State<CustomTimetableEventEdit
           onPressed: () {
             if(!validate()) return;
 
-            CustomTimetableEvent editedEvent = CustomTimetableEvent(
+            var editedEvent = CustomTimetableEvent(
               id: '',
               title: _eventName.text,
               description: _eventDescription.text,
@@ -231,5 +230,4 @@ class _AddCustomTimetableEventDialogState extends State<CustomTimetableEventEdit
         ),
       ],
     );
-  }
 }
diff --git a/lib/view/pages/timetable/timeRegionComponent.dart b/lib/view/pages/timetable/timeRegionComponent.dart
index 8d03f50..01d3d7e 100644
--- a/lib/view/pages/timetable/timeRegionComponent.dart
+++ b/lib/view/pages/timetable/timeRegionComponent.dart
@@ -12,8 +12,8 @@ class TimeRegionComponent extends StatefulWidget {
 class _TimeRegionComponentState extends State<TimeRegionComponent> {
   @override
   Widget build(BuildContext context) {
-    String text = widget.details.region.text!;
-    Color? color = widget.details.region.color;
+    var text = widget.details.region.text!;
+    var color = widget.details.region.color;
 
     if (text == 'centerIcon') {
       return Container(
diff --git a/lib/view/pages/timetable/timetable.dart b/lib/view/pages/timetable/timetable.dart
index 0475af6..dc5ffe1 100644
--- a/lib/view/pages/timetable/timetable.dart
+++ b/lib/view/pages/timetable/timetable.dart
@@ -7,8 +7,6 @@ import 'package:provider/provider.dart';
 import 'package:syncfusion_flutter_calendar/calendar.dart';
 
 import '../../../api/webuntis/queries/getHolidays/getHolidaysResponse.dart';
-import '../../../api/webuntis/queries/getRooms/getRoomsResponse.dart';
-import '../../../api/webuntis/queries/getSubjects/getSubjectsResponse.dart';
 import '../../../api/webuntis/queries/getTimetable/getTimetableResponse.dart';
 import '../../../model/timetable/timetableProps.dart';
 import '../../../storage/base/settingsProvider.dart';
@@ -53,9 +51,7 @@ class _TimetableState extends State<Timetable> {
   }
 
   @override
-  Widget build(BuildContext context) {
-
-    return Scaffold(
+  Widget build(BuildContext context) => Scaffold(
       appBar: AppBar(
         title: const Text('Stunden & Vertretungsplan'),
         actions: [
@@ -67,8 +63,7 @@ class _TimetableState extends State<Timetable> {
           ),
           PopupMenuButton<CalendarActions>(
             icon: const Icon(Icons.edit_calendar_outlined),
-            itemBuilder: (context) {
-              return CalendarActions.values.map(
+            itemBuilder: (context) => CalendarActions.values.map(
                 (e) {
                   String title;
                   Icon icon;
@@ -89,8 +84,7 @@ class _TimetableState extends State<Timetable> {
                     )
                   );
                 }
-              ).toList();
-            },
+              ).toList(),
             onSelected: (value) {
               switch(value) {
                 case CalendarActions.addEvent:
@@ -125,7 +119,7 @@ class _TimetableState extends State<Timetable> {
 
           if(value.primaryLoading()) return const LoadingSpinner();
 
-          GetHolidaysResponse holidays = value.getHolidaysResponse;
+          var holidays = value.getHolidaysResponse;
 
           return RefreshIndicator(
               child: SfCalendar(
@@ -181,7 +175,6 @@ class _TimetableState extends State<Timetable> {
         },
       ),
     );
-  }
 
   @override
   void dispose() {
@@ -190,19 +183,18 @@ class _TimetableState extends State<Timetable> {
   }
 
   List<TimeRegion> _buildSpecialTimeRegions(GetHolidaysResponse holidays) {
-    DateTime lastMonday = DateTime.now().subtract(const Duration(days: 14)).nextWeekday(DateTime.monday);
-    DateTime firstBreak = lastMonday.copyWith(hour: 10, minute: 15);
-    DateTime secondBreak = lastMonday.copyWith(hour: 13, minute: 50);
+    var lastMonday = DateTime.now().subtract(const Duration(days: 14)).nextWeekday(DateTime.monday);
+    var firstBreak = lastMonday.copyWith(hour: 10, minute: 15);
+    var secondBreak = lastMonday.copyWith(hour: 13, minute: 50);
 
-    Iterable<TimeRegion> holidayList = holidays.result.map((holiday) {
-        DateTime startDay = _parseWebuntisTimestamp(holiday.startDate, 0);
-        int dayCount = _parseWebuntisTimestamp(holiday.endDate, 0)
+    var holidayList = holidays.result.map((holiday) {
+        var startDay = _parseWebuntisTimestamp(holiday.startDate, 0);
+        var dayCount = _parseWebuntisTimestamp(holiday.endDate, 0)
             .difference(startDay)
             .inDays;
-        List<DateTime> days = List.generate(dayCount, (index) => startDay.add(Duration(days: index)));
+        var days = List<DateTime>.generate(dayCount, (index) => startDay.add(Duration(days: index)));
 
-        return days.map((holidayDay) {
-          return TimeRegion(
+        return days.map((holidayDay) => TimeRegion(
               startTime: holidayDay.copyWith(hour: 07, minute: 55),
               endTime: holidayDay.copyWith(hour: 16, minute: 30),
               text: 'holiday:${holiday.name}',
@@ -211,13 +203,10 @@ class _TimetableState extends State<Timetable> {
                   .disabledColor
                   .withAlpha(50),
               iconData: Icons.holiday_village_outlined
-          );
-        });
+          ));
     }).expand((e) => e);
 
-    bool isInHoliday(DateTime time) {
-      return holidayList.any((element) => element.startTime.isSameDay(time));
-    }
+    bool isInHoliday(DateTime time) => holidayList.any((element) => element.startTime.isSameDay(time));
 
     return [
       ...holidayList,
@@ -246,34 +235,34 @@ class _TimetableState extends State<Timetable> {
 
   List<GetTimetableResponseObject> _removeDuplicates(TimetableProps data, Duration maxTimeBetweenDouble) {
 
-    List<GetTimetableResponseObject> timetableList = data.getTimetableResponse.result.toList();
+    var timetableList = data.getTimetableResponse.result.toList();
 
     if(timetableList.isEmpty) return timetableList;
 
     timetableList.sort((a, b) => _parseWebuntisTimestamp(a.date, a.startTime).compareTo(_parseWebuntisTimestamp(b.date, b.startTime)));
 
-    GetTimetableResponseObject previousElement = timetableList.first;
+    var previousElement = timetableList.first;
     for(var i = 1; i < timetableList.length; i++) {
-      GetTimetableResponseObject currentElement = timetableList.elementAt(i);
+      var currentElement = timetableList.elementAt(i);
 
       bool isSameLesson() {
-        int? currentSubjectId = currentElement.su.firstOrNull?.id;
-        int? previousSubjectId = previousElement.su.firstOrNull?.id;
+        var currentSubjectId = currentElement.su.firstOrNull?.id;
+        var previousSubjectId = previousElement.su.firstOrNull?.id;
 
         if(currentSubjectId == null || previousSubjectId == null || currentSubjectId != previousSubjectId) return false;
 
-        int? currentRoomId = currentElement.ro.firstOrNull?.id;
-        int? previousRoomId = previousElement.ro.firstOrNull?.id;
+        var currentRoomId = currentElement.ro.firstOrNull?.id;
+        var previousRoomId = previousElement.ro.firstOrNull?.id;
 
         if(currentRoomId != previousRoomId) return false;
 
-        int? currentTeacherId = currentElement.te.firstOrNull?.id;
-        int? previousTeacherId = previousElement.te.firstOrNull?.id;
+        var currentTeacherId = currentElement.te.firstOrNull?.id;
+        var previousTeacherId = previousElement.te.firstOrNull?.id;
 
         if(currentTeacherId != previousTeacherId) return false;
 
-        String? currentStatusCode = currentElement.code;
-        String? previousStatusCode = previousElement.code;
+        var currentStatusCode = currentElement.code;
+        var previousStatusCode = previousElement.code;
 
         if(currentStatusCode != previousStatusCode) return false;
 
@@ -297,20 +286,20 @@ class _TimetableState extends State<Timetable> {
 
   TimetableEvents _buildTableEvents(TimetableProps data) {
 
-    List<GetTimetableResponseObject> timetableList = data.getTimetableResponse.result.toList();
+    var timetableList = data.getTimetableResponse.result.toList();
 
     if(settings.val().timetableSettings.connectDoubleLessons) {
       timetableList = _removeDuplicates(data, const Duration(minutes: 5));
     }
 
-    List<Appointment> appointments = timetableList.map((element) {
+    var appointments = timetableList.map((element) {
 
-      GetRoomsResponse rooms = data.getRoomsResponse;
-      GetSubjectsResponse subjects = data.getSubjectsResponse;
+      var rooms = data.getRoomsResponse;
+      var subjects = data.getSubjectsResponse;
 
       try {
-        DateTime startTime = _parseWebuntisTimestamp(element.date, element.startTime);
-        DateTime endTime = _parseWebuntisTimestamp(element.date, element.endTime);
+        var startTime = _parseWebuntisTimestamp(element.date, element.startTime);
+        var endTime = _parseWebuntisTimestamp(element.date, element.endTime);
         return Appointment(
           id: ArbitraryAppointment(webuntis: element),
           startTime: startTime,
@@ -324,7 +313,7 @@ class _TimetableState extends State<Timetable> {
           color: _getEventColor(element, startTime, endTime),
         );
       } catch(e) {
-        DateTime endTime = _parseWebuntisTimestamp(element.date, element.endTime);
+        var endTime = _parseWebuntisTimestamp(element.date, element.endTime);
         return Appointment(
           id: ArbitraryAppointment(webuntis: element),
           startTime: _parseWebuntisTimestamp(element.date, element.startTime),
@@ -339,8 +328,7 @@ class _TimetableState extends State<Timetable> {
       }
     }).toList();
 
-    appointments.addAll(data.getCustomTimetableEventResponse.events.map((customEvent) {
-      return Appointment(
+    appointments.addAll(data.getCustomTimetableEventResponse.events.map((customEvent) => Appointment(
         id: ArbitraryAppointment(custom: customEvent),
         startTime: customEvent.startDate,
         endTime: customEvent.endDate,
@@ -350,20 +338,19 @@ class _TimetableState extends State<Timetable> {
         color: TimetableColors.getColorFromString(customEvent.color ?? TimetableColors.defaultColor.name),
         startTimeZone: '',
         endTimeZone: '',
-      );
-    }));
+      )));
 
     return TimetableEvents(appointments);
   }
 
   DateTime _parseWebuntisTimestamp(int date, int time) {
-    String timeString = time.toString().padLeft(4, '0');
+    var timeString = time.toString().padLeft(4, '0');
     return DateTime.parse('$date ${timeString.substring(0, 2)}:${timeString.substring(2, 4)}');
   }
 
   Color _getEventColor(GetTimetableResponseObject webuntisElement, DateTime startTime, DateTime endTime) {
     // Make element darker, when it already took place
-    int alpha = endTime.isBefore(DateTime.now()) ? 100 : 255;
+    var alpha = endTime.isBefore(DateTime.now()) ? 100 : 255;
 
     // Cancelled
     if(webuntisElement.code == 'cancelled') return const Color(0xff000000).withAlpha(alpha);
@@ -382,7 +369,7 @@ class _TimetableState extends State<Timetable> {
   }
 
   bool _isCrossedOut(CalendarAppointmentDetails calendarEntry) {
-    ArbitraryAppointment appointment = calendarEntry.appointments.first.id as ArbitraryAppointment;
+    var appointment = calendarEntry.appointments.first.id as ArbitraryAppointment;
     if(appointment.hasWebuntis()) {
       return appointment.webuntis!.code == 'cancelled';
     }
diff --git a/lib/view/pages/timetable/timetableEvents.dart b/lib/view/pages/timetable/timetableEvents.dart
index 03510fa..8450df7 100644
--- a/lib/view/pages/timetable/timetableEvents.dart
+++ b/lib/view/pages/timetable/timetableEvents.dart
@@ -5,4 +5,4 @@ class TimetableEvents extends CalendarDataSource {
   TimetableEvents(List<Appointment> source) {
     appointments = source;
   }
-}
\ No newline at end of file
+}
diff --git a/lib/view/pages/timetable/viewCustomTimetableEvents.dart b/lib/view/pages/timetable/viewCustomTimetableEvents.dart
index 144738b..f089184 100644
--- a/lib/view/pages/timetable/viewCustomTimetableEvents.dart
+++ b/lib/view/pages/timetable/viewCustomTimetableEvents.dart
@@ -34,8 +34,7 @@ class _ViewCustomTimetableEventsState extends State<ViewCustomTimetableEvents> {
   }
 
   @override
-  Widget build(BuildContext context) {
-    return Scaffold(
+  Widget build(BuildContext context) => Scaffold(
       appBar: AppBar(
         title: const Text('Eigene Termine'),
         actions: [
@@ -49,8 +48,7 @@ class _ViewCustomTimetableEventsState extends State<ViewCustomTimetableEvents> {
         if(value.primaryLoading()) return const LoadingSpinner();
 
         var listView = ListView(
-          children: value.getCustomTimetableEventResponse.events.map((e) {
-            return ListTile(
+          children: value.getCustomTimetableEventResponse.events.map((e) => ListTile(
               title: Text(e.title),
               subtitle: Text("${e.rrule.isNotEmpty ? "wiederholdend, " : ""}beginnend ${Jiffy.parseFromDateTime(e.startDate).fromNow()}"),
               leading: CenteredLeading(Icon(e.rrule.isEmpty ? Icons.event_outlined : Icons.event_repeat_outlined)),
@@ -71,8 +69,7 @@ class _ViewCustomTimetableEventsState extends State<ViewCustomTimetableEvents> {
                   )
                 ],
               ),
-            );
-          }).toList(),
+            )).toList(),
         );
 
         var placeholder = PlaceholderView(
@@ -95,5 +92,4 @@ class _ViewCustomTimetableEventsState extends State<ViewCustomTimetableEvents> {
         );
       }),
     );
-  }
 }
diff --git a/lib/view/settings/defaultSettings.dart b/lib/view/settings/defaultSettings.dart
index 311da12..20ce747 100644
--- a/lib/view/settings/defaultSettings.dart
+++ b/lib/view/settings/defaultSettings.dart
@@ -14,8 +14,7 @@ import '../../storage/timetable/timetableSettings.dart';
 import '../pages/files/files.dart';
 
 class DefaultSettings {
-  static Settings get() {
-    return Settings(
+  static Settings get() => Settings(
       appTheme: ThemeMode.system,
       devToolsEnabled: false,
       gradeAveragesSettings: GradeAveragesSettings(
@@ -53,5 +52,4 @@ class DefaultSettings {
         showPerformanceOverlay: false,
       ),
     );
-  }
-}
\ No newline at end of file
+}
diff --git a/lib/view/settings/devToolsSettingsDialog.dart b/lib/view/settings/devToolsSettingsDialog.dart
index f96d797..c62cdde 100644
--- a/lib/view/settings/devToolsSettingsDialog.dart
+++ b/lib/view/settings/devToolsSettingsDialog.dart
@@ -19,8 +19,7 @@ class DevToolsSettingsDialog extends StatefulWidget {
 
 class _DevToolsSettingsDialogState extends State<DevToolsSettingsDialog> {
   @override
-  Widget build(BuildContext context) {
-    return Column(
+  Widget build(BuildContext context) => Column(
       children: [
         ListTile(
           leading: const CenteredLeading(Icon(Icons.speed_outlined)),
@@ -95,14 +94,10 @@ class _DevToolsSettingsDialogState extends State<DevToolsSettingsDialog> {
           title: const Text('Cache-storage JSON dump'),
           subtitle: FutureBuilder(
             future: const CacheView().totalSize(),
-            builder: (context, snapshot) {
-              return Text("etwa ${snapshot.hasError ? "?" : snapshot.hasData ? filesize(snapshot.data) : "..."}\nLange tippen um zu löschen");
-            },
+            builder: (context, snapshot) => Text("etwa ${snapshot.hasError ? "?" : snapshot.hasData ? filesize(snapshot.data) : "..."}\nLange tippen um zu löschen"),
           ),
           onTap: () {
-            Navigator.push(context, MaterialPageRoute(builder: (context) {
-              return const CacheView();
-            }));
+            Navigator.push(context, MaterialPageRoute(builder: (context) => const CacheView()));
           },
           onLongPress: () {
             ConfirmDialog(
@@ -116,5 +111,4 @@ class _DevToolsSettingsDialogState extends State<DevToolsSettingsDialog> {
         ),
       ],
     );
-  }
 }
diff --git a/lib/view/settings/privacyInfo.dart b/lib/view/settings/privacyInfo.dart
index 65d2286..ceb9ea5 100644
--- a/lib/view/settings/privacyInfo.dart
+++ b/lib/view/settings/privacyInfo.dart
@@ -11,8 +11,7 @@ class PrivacyInfo {
   PrivacyInfo({required this.providerText, required this.imprintUrl, required this.privacyUrl});
 
   void showPopup(BuildContext context) {
-    showDialog(context: context, builder: (context) {
-      return SimpleDialog(
+    showDialog(context: context, builder: (context) => SimpleDialog(
         title: Text('Betreiberinformation | $providerText'),
         children: [
           ListTile(
@@ -28,7 +27,6 @@ class PrivacyInfo {
             onTap: () => ConfirmDialog.openBrowser(context, privacyUrl),
           ),
         ],
-      );
-    });
+      ));
   }
-}
\ No newline at end of file
+}
diff --git a/lib/view/settings/settings.dart b/lib/view/settings/settings.dart
index fc3473a..2d7fcc5 100644
--- a/lib/view/settings/settings.dart
+++ b/lib/view/settings/settings.dart
@@ -36,10 +36,7 @@ class _SettingsState extends State<Settings> {
   bool developerMode = false;
 
   @override
-  Widget build(BuildContext context) {
-
-    return Consumer<SettingsProvider>(builder: (context, settings, child) {
-      return Scaffold(
+  Widget build(BuildContext context) => Consumer<SettingsProvider>(builder: (context, settings, child) => Scaffold(
         appBar: AppBar(
           title: const Text('Einstellungen'),
         ),
@@ -218,8 +215,7 @@ class _SettingsState extends State<Settings> {
               leading: const Icon(Icons.policy_outlined),
               title: const Text('Impressum & Datenschutz'),
               onTap: () {
-                showDialog(context: context, builder: (context) {
-                  return SimpleDialog(
+                showDialog(context: context, builder: (context) => SimpleDialog(
                     children: [
                       ListTile(
                         leading: const CenteredLeading(Icon(Icons.school_outlined)),
@@ -243,8 +239,7 @@ class _SettingsState extends State<Settings> {
                         onTap: () => PrivacyInfo(providerText: 'mhsl', imprintUrl: 'https://mhsl.eu/id.html', privacyUrl: 'https://mhsl.eu/datenschutz.html').showPopup(context),
                       ),
                     ],
-                  );
-                });
+                  ));
               },
               trailing: const Icon(Icons.arrow_right),
             ),
@@ -297,7 +292,5 @@ class _SettingsState extends State<Settings> {
             ),
           ],
         ),
-      );
-    });
-  }
+      ));
 }
diff --git a/lib/widget/about/about.dart b/lib/widget/about/about.dart
index ff5b7fb..17003f2 100644
--- a/lib/widget/about/about.dart
+++ b/lib/widget/about/about.dart
@@ -5,8 +5,7 @@ class About extends StatelessWidget {
   const About({super.key});
 
   @override
-  Widget build(BuildContext context) {
-    return Scaffold(
+  Widget build(BuildContext context) => Scaffold(
       appBar: AppBar(
         title: const Text('Über diese App'),
       ),
@@ -16,5 +15,4 @@ class About extends StatelessWidget {
         child: Text('Marianum Fulda'),
       ),
     );
-  }
 }
diff --git a/lib/widget/animatedTime.dart b/lib/widget/animatedTime.dart
index 11edc25..ea9991e 100644
--- a/lib/widget/animatedTime.dart
+++ b/lib/widget/animatedTime.dart
@@ -29,8 +29,7 @@ class _AnimatedTimeState extends State<AnimatedTime> {
   }
 
   @override
-  Widget build(BuildContext context) {
-    return Row(
+  Widget build(BuildContext context) => Row(
       children: [
         const Text('Noch '),
         buildWidget(current.inDays),
@@ -42,10 +41,8 @@ class _AnimatedTimeState extends State<AnimatedTime> {
         buildWidget(current.inSeconds > 60 ? current.inSeconds - current.inMinutes * 60 : current.inSeconds),
       ],
     );
-  }
 
-  AnimatedDigitWidget buildWidget(int value) {
-    return AnimatedDigitWidget(
+  AnimatedDigitWidget buildWidget(int value) => AnimatedDigitWidget(
       value: value,
       duration: const Duration(milliseconds: 100),
       textStyle: TextStyle(
@@ -53,7 +50,6 @@ class _AnimatedTimeState extends State<AnimatedTime> {
         color: Theme.of(context).colorScheme.onSurface,
       ),
     );
-  }
 
   @override
   void dispose() {
diff --git a/lib/widget/centeredLeading.dart b/lib/widget/centeredLeading.dart
index e83596b..2993e3f 100644
--- a/lib/widget/centeredLeading.dart
+++ b/lib/widget/centeredLeading.dart
@@ -5,11 +5,9 @@ class CenteredLeading extends StatelessWidget {
   const CenteredLeading(this.child, {super.key});
 
   @override
-  Widget build(BuildContext context) {
-    return Column(
+  Widget build(BuildContext context) => Column(
       mainAxisAlignment: MainAxisAlignment.center,
       crossAxisAlignment: CrossAxisAlignment.center,
       children: [child],
     );
-  }
 }
diff --git a/lib/widget/clickableAppBar.dart b/lib/widget/clickableAppBar.dart
index b83cb10..a928113 100644
--- a/lib/widget/clickableAppBar.dart
+++ b/lib/widget/clickableAppBar.dart
@@ -6,9 +6,7 @@ class ClickableAppBar extends StatelessWidget implements PreferredSizeWidget {
   const ClickableAppBar({required this.onTap, required this.appBar, super.key});
 
   @override
-  Widget build(BuildContext context) {
-    return GestureDetector(onTap: onTap, child: appBar);
-  }
+  Widget build(BuildContext context) => GestureDetector(onTap: onTap, child: appBar);
 
   @override
   Size get preferredSize => appBar.preferredSize;
diff --git a/lib/widget/confirmDialog.dart b/lib/widget/confirmDialog.dart
index 75fc153..8e2f01f 100644
--- a/lib/widget/confirmDialog.dart
+++ b/lib/widget/confirmDialog.dart
@@ -15,8 +15,7 @@ class ConfirmDialog extends StatelessWidget {
   }
 
   @override
-  Widget build(BuildContext context) {
-    return AlertDialog(
+  Widget build(BuildContext context) => AlertDialog(
       icon: icon != null ? Icon(icon) : null,
       title: Text(title),
       content: Text(content),
@@ -30,7 +29,6 @@ class ConfirmDialog extends StatelessWidget {
         }, child: Text(confirmButton)),
       ],
     );
-  }
   
   static void openBrowser(BuildContext context, String url) {
     showDialog(
diff --git a/lib/widget/debug/cacheView.dart b/lib/widget/debug/cacheView.dart
index caa34aa..ce4e9ad 100644
--- a/lib/widget/debug/cacheView.dart
+++ b/lib/widget/debug/cacheView.dart
@@ -39,8 +39,7 @@ class _CacheViewState extends State<CacheView> {
   }
 
   @override
-  Widget build(BuildContext context) {
-    return Scaffold(
+  Widget build(BuildContext context) => Scaffold(
       appBar: AppBar(
         title: const Text('Lokaler cache'),
       ),
@@ -52,7 +51,7 @@ class _CacheViewState extends State<CacheView> {
               itemCount: snapshot.data!.length,
               itemBuilder: (context, index) {
                 Map<String, dynamic> element = snapshot.data![snapshot.data!.keys.elementAt(index)];
-                String filename = snapshot.data!.keys.elementAt(index).split('/').last;
+                var filename = snapshot.data!.keys.elementAt(index).split('/').last;
 
                 return ListTile(
                   leading: const Icon(Icons.text_snippet_outlined),
@@ -60,13 +59,10 @@ class _CacheViewState extends State<CacheView> {
                   subtitle: Text("${filesize(jsonEncode(element).length * 8)}, ${Jiffy.parseFromMillisecondsSinceEpoch(element['lastupdate']).fromNow()}"),
                   trailing: const Icon(Icons.arrow_right),
                   onTap: () {
-                    Navigator.push(context, MaterialPageRoute(builder: (context) {
-                      return JsonViewer(title: filename, data: jsonDecode(element['json']));
-                    },));
+                    Navigator.push(context, MaterialPageRoute(builder: (context) => JsonViewer(title: filename, data: jsonDecode(element['json'])),));
                   },
                   onLongPress: () {
-                    showDialog(context: context, builder: (context) {
-                      return SimpleDialog(
+                    showDialog(context: context, builder: (context) => SimpleDialog(
                         children: [
                           const ListTile(
                             leading: Icon(Icons.delete_forever),
@@ -81,8 +77,7 @@ class _CacheViewState extends State<CacheView> {
                             },
                           )
                         ],
-                      );
-                    });
+                      ));
                   },
                 );
               },
@@ -99,7 +94,6 @@ class _CacheViewState extends State<CacheView> {
         },
       ),
     );
-  }
 }
 
 extension FutureExtension<T> on Future<T> {
diff --git a/lib/widget/debug/debugTile.dart b/lib/widget/debug/debugTile.dart
index 0bf879f..bc5a8c4 100644
--- a/lib/widget/debug/debugTile.dart
+++ b/lib/widget/debug/debugTile.dart
@@ -13,15 +13,12 @@ class DebugTile {
 
   bool devConditionFulfilled() => Provider.of<SettingsProvider>(context, listen: false).val().devToolsEnabled && (onlyInDebug ? kDebugMode : true);
 
-  Widget jsonData(Map<String, dynamic> data, {bool ignoreConfig = false}) {
-    return callback(
+  Widget jsonData(Map<String, dynamic> data, {bool ignoreConfig = false}) => callback(
       title: 'JSON daten anzeigen',
       onTab: () => JsonViewer.asDialog(context, data)
     );
-  }
 
-  Widget callback({String title = 'Debugaktion', required void Function() onTab}) {
-    return child(
+  Widget callback({String title = 'Debugaktion', required void Function() onTab}) => child(
       ListTile(
         leading: const CenteredLeading(Icon(Icons.developer_mode_outlined)),
         title: Text(title),
@@ -29,17 +26,14 @@ class DebugTile {
         onTap: onTab,
       )
     );
-  }
 
-  Widget child(Widget child) {
-    return Visibility(
+  Widget child(Widget child) => Visibility(
       visible: devConditionFulfilled(),
       child: child,
     );
-  }
 
   void run(void Function() callback) {
     if(!devConditionFulfilled()) return;
     callback();
   }
-}
\ No newline at end of file
+}
diff --git a/lib/widget/debug/jsonViewer.dart b/lib/widget/debug/jsonViewer.dart
index f89ec89..465a98b 100644
--- a/lib/widget/debug/jsonViewer.dart
+++ b/lib/widget/debug/jsonViewer.dart
@@ -9,8 +9,7 @@ class JsonViewer extends StatelessWidget {
   const JsonViewer({super.key, required this.title, required this.data});
 
   @override
-  Widget build(BuildContext context) {
-    return Scaffold(
+  Widget build(BuildContext context) => Scaffold(
       appBar: AppBar(
         title: Text(title),
       ),
@@ -19,16 +18,11 @@ class JsonViewer extends StatelessWidget {
         child: Text(format(data)),
       ),
     );
-  }
   
-  static String format(Map<String, dynamic> jsonInput) {
-    return prettyJson(jsonInput, indent: 2);
-    //return jsonInput.replaceAllMapped(RegExp(r'[{,}]'), (match) => "${match.group(0)}\n    ");
-  }
+  static String format(Map<String, dynamic> jsonInput) => prettyJson(jsonInput, indent: 2);
 
   static void asDialog(BuildContext context, Map<String, dynamic> dataMap) {
-    showDialog(context: context, builder: (context) {
-      return AlertDialog(
+    showDialog(context: context, builder: (context) => AlertDialog(
         scrollable: true,
         title: const Row(children: [Icon(Icons.bug_report_outlined), Text('Rohdaten')]),
         content: Text(JsonViewer.format(dataMap)),
@@ -45,7 +39,6 @@ class JsonViewer extends StatelessWidget {
           }, child: const Text('Inline Kopieren')),
           TextButton(onPressed: () => Navigator.of(context).pop(), child: const Text('Schließen'))
         ],
-      );
-    });
+      ));
   }
 }
diff --git a/lib/widget/filePick.dart b/lib/widget/filePick.dart
index b37fef4..e5bbd94 100644
--- a/lib/widget/filePick.dart
+++ b/lib/widget/filePick.dart
@@ -6,7 +6,7 @@ class FilePick {
   static final _picker = ImagePicker();
 
   static Future<XFile?> galleryPick() async {
-    final XFile? pickedImage = await _picker.pickImage(source: ImageSource.gallery);
+    final pickedImage = await _picker.pickImage(source: ImageSource.gallery);
     if (pickedImage != null) {
       return pickedImage;
     }
@@ -14,7 +14,7 @@ class FilePick {
   }
 
   static Future<String?> documentPick() async {
-    FilePickerResult? result = await FilePicker.platform.pickFiles();
+    var result = await FilePicker.platform.pickFiles();
     return result?.files.single.path;
   }
-}
\ No newline at end of file
+}
diff --git a/lib/widget/fileViewer.dart b/lib/widget/fileViewer.dart
index 5907aa2..8eb01e1 100644
--- a/lib/widget/fileViewer.dart
+++ b/lib/widget/fileViewer.dart
@@ -35,8 +35,7 @@ class _FileViewerState extends State<FileViewer> {
 
   @override
   Widget build(BuildContext context) {
-    AppBar appbar({List actions = const []}) {
-      return AppBar(
+    AppBar appbar({List actions = const []}) => AppBar(
         title: Text(widget.path.split('/').last),
         actions: [
           IconButton(
@@ -57,7 +56,6 @@ class _FileViewerState extends State<FileViewer> {
           ...actions
         ],
       );
-    }
 
     switch(openExternal ? '' : widget.path.split('.').last.toLowerCase()) {
       case 'png':
@@ -98,11 +96,9 @@ class _FileViewerState extends State<FileViewer> {
         OpenFile.open(widget.path).then((result) {
           Navigator.of(context).pop();
           if(result.type != ResultType.done) {
-            showDialog(context: context, builder: (context) {
-              return AlertDialog(
+            showDialog(context: context, builder: (context) => AlertDialog(
                 content: Text(result.message),
-              );
-            });
+              ));
           }
         });
 
diff --git a/lib/widget/focusBehaviour.dart b/lib/widget/focusBehaviour.dart
index fe5a52b..da83d3d 100644
--- a/lib/widget/focusBehaviour.dart
+++ b/lib/widget/focusBehaviour.dart
@@ -4,4 +4,4 @@ class FocusBehaviour {
   static void textFieldTapOutside(BuildContext context) {
     FocusScope.of(context).requestFocus(FocusNode());
   }
-}
\ No newline at end of file
+}
diff --git a/lib/widget/infoDialog.dart b/lib/widget/infoDialog.dart
index d066e45..e30a61e 100644
--- a/lib/widget/infoDialog.dart
+++ b/lib/widget/infoDialog.dart
@@ -7,4 +7,4 @@ class InfoDialog {
       contentPadding: const EdgeInsets.all(20),
     ));
   }
-}
\ No newline at end of file
+}
diff --git a/lib/widget/largeProfilePictureView.dart b/lib/widget/largeProfilePictureView.dart
index 4de08c5..65a9a4f 100644
--- a/lib/widget/largeProfilePictureView.dart
+++ b/lib/widget/largeProfilePictureView.dart
@@ -8,8 +8,7 @@ class LargeProfilePictureView extends StatelessWidget {
   const LargeProfilePictureView(this.username, {super.key});
 
   @override
-  Widget build(BuildContext context) {
-    return Scaffold(
+  Widget build(BuildContext context) => Scaffold(
       appBar: AppBar(
         title: const Text('Profilbild'),
       ),
@@ -18,5 +17,4 @@ class LargeProfilePictureView extends StatelessWidget {
         backgroundDecoration: BoxDecoration(color: Theme.of(context).colorScheme.surface),
       ),
     );
-  }
 }
diff --git a/lib/widget/loadingSpinner.dart b/lib/widget/loadingSpinner.dart
index 5419b1d..4cf9ab0 100644
--- a/lib/widget/loadingSpinner.dart
+++ b/lib/widget/loadingSpinner.dart
@@ -26,8 +26,7 @@ class _LoadingSpinnerState extends State<LoadingSpinner> {
   }
 
   @override
-  Widget build(BuildContext context) {
-    return Center(
+  Widget build(BuildContext context) => Center(
       child: Column(
         mainAxisAlignment: MainAxisAlignment.center,
         children: [
@@ -47,7 +46,6 @@ class _LoadingSpinnerState extends State<LoadingSpinner> {
         ],
       ),
     );
-  }
 
   @override
   void dispose() {
diff --git a/lib/widget/placeholderView.dart b/lib/widget/placeholderView.dart
index c06d27d..8896b94 100644
--- a/lib/widget/placeholderView.dart
+++ b/lib/widget/placeholderView.dart
@@ -7,8 +7,7 @@ class PlaceholderView extends StatelessWidget {
   const PlaceholderView({super.key, required this.icon, required this.text, this.button});
 
   @override
-  Widget build(BuildContext context) {
-    return DefaultTextStyle(
+  Widget build(BuildContext context) => DefaultTextStyle(
       style: const TextStyle(),
       child: Center(
         child: Container(
@@ -33,5 +32,4 @@ class PlaceholderView extends StatelessWidget {
         ),
       ),
     );
-  }
 }
diff --git a/lib/widget/sharePositionOrigin.dart b/lib/widget/sharePositionOrigin.dart
index af07c71..f110beb 100644
--- a/lib/widget/sharePositionOrigin.dart
+++ b/lib/widget/sharePositionOrigin.dart
@@ -1,7 +1,5 @@
 import 'package:flutter/material.dart';
 
 class SharePositionOrigin {
-  static Rect get(BuildContext context) {
-    return Rect.fromLTWH(0, 0, MediaQuery.of(context).size.width, MediaQuery.of(context).size.height / 2);
-  }
-}
\ No newline at end of file
+  static Rect get(BuildContext context) => Rect.fromLTWH(0, 0, MediaQuery.of(context).size.width, MediaQuery.of(context).size.height / 2);
+}
diff --git a/lib/widget/unimplementedDialog.dart b/lib/widget/unimplementedDialog.dart
index c829c17..c02472d 100644
--- a/lib/widget/unimplementedDialog.dart
+++ b/lib/widget/unimplementedDialog.dart
@@ -4,4 +4,4 @@ class UnimplementedDialog {
   static void show(BuildContext context) {
     showDialog(context: context, builder: (context) => const AlertDialog(content: Text('Not implemented yet')));
   }
-}
\ No newline at end of file
+}