Sfoglia il codice sorgente

Polish language and stuff

Krzysztof Krysiński 2 anni fa
parent
commit
f315676b65

+ 7 - 12
src/PixiEditor/Data/Localization/Languages/en.json

@@ -28,10 +28,6 @@
   "RESIZE": "Resize",
 
   "DISCORD": "Discord",
-  "DISCORD_DETAILS": "Staring at absolutely",
-  "DISCORD_STATE": "nothing",
-  "DISCORD_LARGE_IMAGE": "You've discovered PixiEditor's logo",
-  "DISCORD_SMALL_IMAGE": "Download PixiEditor (pixieditor.net/download)!",
   "EDITING_IMG": "Editing an image",
   "EDITING_IMG_DETAIL": "Editing {0}",
   "ONE_LAYER": "1 layer",
@@ -203,11 +199,6 @@
   "SHOW_LAYER_COUNT": "Show layer count",
 
   "ABOUT": "About",
-  "ABOUT_ME": "ABOUT ME",
-  "BOT_DESCRIPTION": "Use me to display your .pixi files in Discord.\nStart by sending a file in any appropriate channel",
-  "MEMBER_SINCE": "DISCORD MEMBER SINCE",
-  "DISCORD_PLAYING": "PLAYING A \"GAME\"",
-  "DISCORD_ELAPSED": "00:00 elapsed",
 
   "MINIMIZE": "Minimize",
   "RESTORE": "Restore",
@@ -449,7 +440,7 @@
   "LIGHTEN_BLEND_MODE": "Lighten",
   "SCREEN_BLEND_MODE": "Screen",
   "COLOR_DODGE_BLEND_MODE": "Color dodge",
-  "LINEAR_DOGE_BLEND_MODE": "Linear dodge (Add)",
+  "LINEAR_DODGE_BLEND_MODE": "Linear dodge (Add)",
   "OVERLAY_BLEND_MODE": "Overlay",
   "SOFT_LIGHT_BLEND_MODE": "Soft light",
   "HARD_LIGHT_BLEND_MODE": "Hard light",
@@ -480,7 +471,9 @@
 
   "NAME_IS_TOO_LONG": "The name is too long",
   "STOP_IT_TEXT1": "That's enough. Tidy up your file names.",
-  "STOP_IT_TEXT2": "Can you stop copying these names please?\", \"No, really, stop it.\", \"Don't you have anything better to do?",
+  "STOP_IT_TEXT2": "Can you stop copying these names please?",
+  "STOP_IT_TEXT3": "No, really, stop it.",
+  "STOP_IT_TEXT4": "Don't you have anything better to do?",
 
   "REPLACER_TOOLTIP": "Right click on palette color and choose 'Replace' or drop it here.",
   "CLICK_TO_CHOOSE_COLOR": "Click to choose the color",
@@ -532,6 +525,8 @@
   "IMPORT_FROM_TEMPLATE": "Import from template",
   "SHORTCUTS_IMPORTED_SUCCESS": "Shortcuts were imported successfully.",
   "WARNING_RESET_SHORTCUTS_DEFAULT": "Are you sure you want to reset all shortcuts to their default value?",
+  "PRESS_ANY_KEY": "Press any key",
+  "NONE_SHORTCUT": "None",
 
   "SUCCESS": "Success",
   "ERROR": "Error",
@@ -553,7 +548,7 @@
   "REPLACE": "Replace",
   "SWAP": "Swap",
   "SHORTCUT_ALREADY_ASSIGNED_SWAP": "This shortcut is already assigned to '{0}'\nDo you want to replace the existing shortcut or swap the two?",
-  "SHORTCUT_ALREADY_ASSIGNED_OVERWRITE": "This shortcut is already assigned to '{oldCommand.DisplayName}'\nDo you want to replace the existing shortcut?",
+  "SHORTCUT_ALREADY_ASSIGNED_OVERWRITE": "This shortcut is already assigned to '{0}'\nDo you want to replace the existing shortcut?",
 
   "UNSAVED_CHANGES": "Unsaved changes",
   "DOCUMENT_MODIFIED_SAVE": "The document has been modified. Do you want to save changes?",

+ 494 - 8
src/PixiEditor/Data/Localization/Languages/pl.json

@@ -1,9 +1,495 @@
-{
-  "RECENT_FILES": "Ostatnie pliki",
-  "OPEN_FILE": "Otwórz",
-  "NEW_FILE": "Nowy",
-  "RECENT_EMPTY_TEXT": "Ale tu pusto, na co czekasz, stwórz coś!",
-
-  "LANGUAGE": "Język",
-  "RECENT_FILE_LENGTH_TOOLTIP": "Ile ostatnich plików wyświetlać, domyślnie 8"
+{
+    "RECENT_FILES": "Ostatnie pliki",
+    "OPEN_FILE": "Otwórz plik",
+    "NEW_FILE": "Nowy",
+    "RECENT_EMPTY_TEXT": "Ale tu pusto",
+    "LANGUAGE": "Język",
+    "GENERAL": "Ogólne",
+    "DISCORD": "Discord",
+    "KEY_BINDINGS": "Skróty klawiszowe",
+    "MISC": "Inne",
+    "SHOW_STARTUP_WINDOW": "Otwórz okno powitalne na starcie",
+    "SHOW_IMAGE_PREVIEW_TASKBAR": "Pokaż podgląd obrazu w pasku zadań",
+    "RECENT_FILE_LENGTH": "Ilość ostatnich plików",
+    "RECENT_FILE_LENGTH_TOOLTIP": "Ile plików jest wyświetlanych w menu Plik -> Ostatnie. Domyślnie 8",
+    "DEFAULT_NEW_SIZE": "Domyslny rozmiar nowego obrazu",
+    "WIDTH": "Szerokość",
+    "HEIGHT": "Wysokość",
+    "TOOLS": "Narzędzia",
+    "ENABLE_SHARED_TOOLBAR": "Włącz wspólny pasek narzędzi",
+    "AUTOMATIC_UPDATES": "Automatyczne aktualizacje",
+    "CHECK_FOR_UPDATES": "Sprawdzaj aktualizacje na starcie",
+    "UPDATE_STREAM": "Kanał aktualizacji",
+    "UPDATE_CHANNEL_HELP_TOOLTIP": "Kanały aktualizacji mogą być tylko ustawione w wersji samodzielnej (pobranej z https://pixieditor.net).\nSteam i Microsoft Store zajmuje się aktualizacjami osobno.",
+    "DEBUG": "Debugowanie",
+    "ENABLE_DEBUG_MODE": "Włącz tryb debugowania",
+    "OPEN_CRASH_REPORTS_DIR": "Otwórz folder z raportami o awariach",
+    "DISCORD_RICH_PRESENCE": "Rich Presence",
+    "ENABLED": "Włączony",
+    "SHOW_IMAGE_NAME": "Pokaż nazwę obrazu",
+    "SHOW_IMAGE_SIZE": "Pokaż wielkość obrazu",
+    "SHOW_LAYER_COUNT": "Pokaż ilość warstw",
+    "FILE": "Plik",
+    "RECENT": "Ostatnie",
+    "OPEN": "Otwórz",
+    "SAVE_PIXI": "Zapisz (.pixi)",
+    "SAVE_AS_PIXI": "Zapisz jako... (.pixi)",
+    "EXPORT_IMG": "Eksportuj (.png, .jpg, itp.)",
+    "EDIT": "Edytuj",
+    "EXIT": "Wyjdź",
+    "PERCENTAGE": "Procentowo",
+    "ABSOLUTE": "Absolutnie",
+    "PRESERVE_ASPECT_RATIO": "Zachowaj proporcje",
+    "ANCHOR_POINT": "Punkt zaczepienia",
+    "RESIZE_IMAGE": "Zmień rozmiar obrazu",
+    "RESIZE": "Zmień rozmiar",
+    "EDITING_IMG": "Edytuje obraz",
+    "EDITING_IMG_DETAIL": "Edytuje {0}",
+    "ONE_LAYER": "1 warstwa",
+    "LAYERS": "{0} warstw",
+    "DOCUMENTATION": "Dokumentacja",
+    "WEBSITE": "Strona internetowa",
+    "OPEN_WEBSITE": "Otwórz stronę internetową",
+    "REPOSITORY": "Repozytorium",
+    "OPEN_REPOSITORY": "Otwórz repozytorium",
+    "LICENSE": "Licencja",
+    "OPEN_LICENSE": "Otwórz licencję",
+    "THIRD_PARTY_LICENSES": "Licencje stron trzecich",
+    "OPEN_THIRD_PARTY_LICENSES": "Otwórz licencje stron trzecich",
+    "APPLY_TRANSFORM": "Zastosuj transformację",
+    "INCREASE_TOOL_SIZE": "Zwiększ rozmiar narzędzia",
+    "DECREASE_TOOL_SIZE": "Zmniejsz rozmiar narzędzia",
+    "TO_INSTALL_UPDATE": "aby zainstalować aktualizacje {0}",
+    "DOWNLOADING_UPDATE": "Pobieranie aktualizacji...",
+    "UPDATE_READY": "Aktualizacja jest gotowa do instalacji. Czy chcesz ją zainstalować teraz?",
+    "NEW_UPDATE": "Nowa aktualizacja",
+    "COULD_NOT_UPDATE_WITHOUT_ADMIN": "Nie można zaaktualizować bez uprawnien administratora. Włącz PixiEditor jako administrator.",
+    "INSUFFICIENT_PERMISSIONS": "Niewystarczające uprawnienia",
+    "UPDATE_CHECK_FAILED": "Sprawdzanie aktualizacji nie powiodło się",
+    "COULD_NOT_CHECK_FOR_UPDATES": "Nie udało się sprawdzić aktualizacji",
+    "VERSION": "Wersja {0}",
+    "OPEN_TEMP_DIR": "Otwórz folder temp",
+    "OPEN_LOCAL_APPDATA_DIR": "Otwórz folder Local AppData",
+    "OPEN_ROAMING_APPDATA_DIR": "Otwórz folder Roaming AppData",
+    "OPEN_INSTALLATION_DIR": "Otwórz folder instalacji",
+    "DUMP_ALL_COMMANDS": "Wypisz wszystkie komendy",
+    "DUMP_ALL_COMMANDS_DESCRIPTIVE": "Wypisz wszystkie komendy do pliku",
+    "CRASH": "Crash",
+    "CRASH_APP": "Zcrashuj aplikację",
+    "DELETE_USR_PREFS": "Usuń preferencje użytkownika (Roaming AppData)",
+    "DELETE_SHORTCUT_FILE": "Usuń plik skrótów klawiszowych (Roaming AppData)",
+    "DELETE_EDITOR_DATA": "Usuń dane edytora (Local AppData)",
+    "GENERATE_KEY_BINDINGS_TEMPLATE": "Stwórz szablon skrótów klawiszowych",
+    "GENERATE_KEY_BINDINGS_TEMPLATE_DESCRIPTIVE": "Stwórz szablon JSON skrótów klawiszowych",
+    "VALIDATE_SHORTCUT_MAP": "Sprawdź poprawność mapy skrótów",
+    "VALIDATE_SHORTCUT_MAP_DESCRIPTIVE": "Sprawdza poprawność mapy skrótów",
+    "VALIDATION_KEYS_NOTICE_DIALOG": "Puste klucze: {0}\nNieznane komendy: {1}",
+    "RESULT": "Wynik",
+    "CLEAR_RECENT_DOCUMENTS": "Wyczyść ostatnie dokumenty",
+    "CLEAR_RECENTLY_OPENED_DOCUMENTS": "Wyczyść ostatnio otwarte dokumenty",
+    "OPEN_CMD_DEBUG_WINDOW": "Otwórz okno do debugowania komend",
+    "PATH_DOES_NOT_EXIST": "{0} nie istnieje.",
+    "LOCATION_DOES_NOT_EXIST": "Lokalizacja nie istnieje.",
+    "FILE_NOT_FOUND": "Plik nie znaleziony.",
+    "FILE_NOT_FOUND_PATH_FULL_PATH": "Plik {0} nie istnieje\n(Pełna ścieżka: {1})",
+    "ARE_YOU_SURE": "Jesteś pewien?",
+    "ARE_YOU_SURE_PATH_FULL_PATH": "Czy na pewno chcesz usunąć {0}?\nDane zostaną utracone dla wszystkich instalacji.\n(Pełna ścieżka: {1})",
+    "FAILED_TO_OPEN_FILE": "Nie udało się otworzyć pliku",
+    "OLD_FILE_FORMAT": "Stary format pliku",
+    "OLD_FILE_FORMAT_DESCRIPTION": "Ten plik .pixi używa starego formatu, który nie jest już wspierany i nie można go otworzyć.",
+    "NOTHING_FOUND": "Nic nie znaleziono",
+    "EXPORT": "Eksportuj",
+    "EXPORT_IMAGE": "Eksportuj obraz",
+    "IMPORT": "Importuj",
+    "SHORTCUT_TEMPLATES": "Szablonu skrótów klawiszowych",
+    "RESET_ALL": "Resetuj wszystko",
+    "LAYER": "Warstwa",
+    "LAYER_DELETE_SELECTED": "Usuń aktywną warstwę/folder",
+    "LAYER_DELETE_SELECTED_DESCRIPTIVE": "Usuń aktywną warstwę lub folder",
+    "LAYER_DELETE_ALL_SELECTED": "Usuń wszystkie zaznaczone warstwy/foldery",
+    "LAYER_DELETE_ALL_SELECTED_DESCRIPTIVE": "Usuń wszystkie zaznaczone warstwy i/lub foldery",
+    "DELETE_SELECTED_PIXELS": "Usuń zaznaczone piksele",
+    "NEW_FOLDER": "Nowy folder",
+    "CREATE_NEW_FOLDER": "Stwórz nowy folder",
+    "NEW_LAYER": "Nowa warstwa",
+    "CREATE_NEW_LAYER": "Stwórz nową warstwę",
+    "NEW_IMAGE": "Nowy obraz",
+    "CREATE_NEW_IMAGE": "Stwórz nowy obraz",
+    "SAVE": "Zapisz",
+    "SAVE_AS": "Zapisz jako...",
+    "IMAGE": "Obraz",
+    "SAVE_IMAGE": "Zapisz obraz",
+    "SAVE_IMAGE_AS": "Zapisz obraz jako",
+    "DUPLICATE": "Duplikuj",
+    "DUPLICATE_SELECTED_LAYER": "Duplikuj zaznaczoną warstwę",
+    "CREATE_MASK": "Stwórz maskę",
+    "DELETE_MASK": "Usuń maskę",
+    "TOGGLE_MASK": "Przełącz maskę",
+    "APPLY_MASK": "Zastosuj maskę",
+    "TOGGLE_VISIBILITY": "Przełącz widoczność",
+    "MOVE_MEMBER_UP": "Przesuń obiekt wyżej",
+    "MOVE_MEMBER_UP_DESCRIPTIVE": "Przesuń zaznaczoną warstwę lub folder wyżej",
+    "MOVE_MEMBER_DOWN": "Przesuń obiekt niżej",
+    "MOVE_MEMBER_DOWN_DESCRIPTIVE": "Przesuń zaznaczoną warstwę lub folder niżej",
+    "MERGE_ALL_SELECTED_LAYERS": "Scal wszystkie warstwy",
+    "MERGE_WITH_ABOVE": "Scal zaznaczoną warstwę z obiektem wyżej",
+    "MERGE_WITH_ABOVE_DESCRIPTIVE": "Scal zaznaczoną warstwę z warstwą wyżej",
+    "MERGE_WITH_BELOW": "Scal zaznaczoną warstwę z obiektem niżej",
+    "MERGE_WITH_BELOW_DESCRIPTIVE": "Scal zaznaczoną warstwę z warstwą niżej",
+    "ADD_REFERENCE_LAYER": "Dodaj warstwę referencyjną",
+    "DELETE_REFERENCE_LAYER": "Usuń warstwę referencyjną",
+    "TRANSFORM_REFERENCE_LAYER": "Modyfikuj warstwę referencyjną",
+    "TOGGLE_REFERENCE_LAYER_POS": "Przełącz pozycję warstwy referencyjnej",
+    "TOGGLE_REFERENCE_LAYER_POS_DESCRIPTIVE": "Przełącz warstwę referencyjną pomiędzy górą a dołem",
+    "RESET_REFERENCE_LAYER_POS": "Resetuj pozycję warstwy referencyjnej",
+    "CLIP_CANVAS": "Dopasuj płótno do zawartości",
+    "FLIP_IMG_VERTICALLY": "Przerzuć obraz w pionie",
+    "FLIP_IMG_HORIZONTALLY": "Przerzuć obraz w poziomie",
+    "FLIP_LAYERS_VERTICALLY": "Przerzuć zaznaczone warstwy w pionie",
+    "FLIP_LAYERS_HORIZONTALLY": "Przerzuć zaznaczone warstwy w poziomie",
+    "ROT_IMG_90": "Obróć obraz 90 stopni",
+    "ROT_IMG_180": "Obróć obraz 180 stopni",
+    "ROT_IMG_-90": "Obróć obraz -90 stopni",
+    "ROT_LAYERS_90": "Obróć zaznaczone warstwy 90 stopni",
+    "ROT_LAYERS_180": "Obróć zaznaczone warstwy 180 stopni",
+    "ROT_LAYERS_-90": "Obróć zaznaczone warstwy -90 stopni",
+    "TOGGLE_VERT_SYMMETRY_AXIS": "Przełącz oś symetrii w pionie",
+    "TOGGLE_HOR_SYMMETRY_AXIS": "Przełącz oś symetrii w poziomie",
+    "DELETE_PIXELS": "Usuń piksele",
+    "DELETE_PIXELS_DESCRIPTIVE": "Usuń zaznaczone piksele",
+    "RESIZE_DOCUMENT": "Zmień rozmiar dokumentu",
+    "RESIZE_CANVAS": "Zmien rozmiar płótna",
+    "CENTER_CONTENT": "Wyśrodkuj zawartość",
+    "CUT": "Wytnij",
+    "CUT_DESCRIPTIVE": "Wytnij zaznaczony obszar/warstwę",
+    "PASTE": "Wklej",
+    "PASTE_DESCRIPTIVE": "Wklej zawartość schowka",
+    "PASTE_AS_NEW_LAYER": "Wklej jako nowa warstwa",
+    "PASTE_AS_NEW_LAYER_DESCRIPTIVE": "Wklej ze schowka jako nowa warstwa",
+    "PASTE_REFERENCE_LAYER": "Wklej warstwę referencyjną",
+    "PASTE_REFERENCE_LAYER_DESCRIPTIVE": "Wklej zawartość schowka jako warstwa referencyjna",
+    "PASTE_COLOR": "Wklej kolor",
+    "PASTE_COLOR_DESCRIPTIVE": "Wklej kolor ze schowka",
+    "PASTE_COLOR_SECONDARY": "Wklej kolor jako drugorzędny",
+    "PASTE_COLOR_SECONDARY_DESCRIPTIVE": "Wklej kolor ze schowka jako drugorzędny",
+    "CLIPBOARD": "Schowek",
+    "COPY": "Kopiuj",
+    "COPY_DESCRIPTIVE": "Kopiuj do schowka",
+    "COPY_COLOR_HEX": "Kopiuj pierwszorzędny kolor (HEX)",
+    "COPY_COLOR_HEX_DESCRIPTIVE": "Kopiuj pierwszorzędny kolor jako kod HEX",
+    "COPY_COLOR_RGB": "Kopiuj pierwszorzędny kolor (RGB)",
+    "COPY_COLOR_RGB_DESCRIPTIVE": "Kopiuj pierwszorzędny kolor jako kod RGB",
+    "COPY_COLOR_SECONDARY_HEX": "Kopiuj drugorzędny kolor (HEX)",
+    "COPY_COLOR_SECONDARY_HEX_DESCRIPTIVE": "Kopiuj drugorzędny kolor jako kod HEX",
+    "COPY_COLOR_SECONDARY_RGB": "Kopiuj drugorzędny kolor (RGB)",
+    "COPY_COLOR_SECONDARY_RGB_DESCRIPTIVE": "Kopiuj drugorzędny kolor jako kod RGB",
+    "PALETTE_COLORS": "Paleta Kolorów",
+    "REPLACE_SECONDARY_BY_PRIMARY": "Zastąp drugorzędny kolor pierwszorzędnym",
+    "REPLACE_SECONDARY_BY_PRIMARY_DESCRIPTIVE": "Zastąp drugorzędny kolor pierwszorzędnym",
+    "REPLACE_PRIMARY_BY_SECONDARY": "Zastąp pierwszorzędny kolor drugorzędnym",
+    "REPLACE_PRIMARY_BY_SECONDARY_DESCRIPTIVE": "Zastąp pierwszorzędny kolor drugorzędnym",
+    "OPEN_PALETTE_BROWSER": "Otwórz przeglądarkę palet",
+    "OVERWRITE_PALETTE_CONSENT": "Paleta '{0}' już istnieje, czy chcesz ją nadpisać?",
+    "PALETTE_EXISTS": "Paleta już istnieje",
+    "REPLACE_PALETTE_CONSENT": "Zastąpić aktywną paletę zaznaczoną?",
+    "REPLACE_PALETTE": "Zastąp aktywną paletę",
+    "SELECT_COLOR_1": "Wybierz kolor 1",
+    "SELECT_COLOR_2": "Wybierz kolor 2",
+    "SELECT_COLOR_3": "Wybierz kolor 3",
+    "SELECT_COLOR_4": "Wybierz kolor 4",
+    "SELECT_COLOR_5": "Wybierz kolor 5",
+    "SELECT_COLOR_6": "Wybierz kolor 6",
+    "SELECT_COLOR_7": "Wybierz kolor 7",
+    "SELECT_COLOR_8": "Wybierz kolor 8",
+    "SELECT_COLOR_9": "Wybierz kolor 9",
+    "SELECT_COLOR_10": "Wybierz kolor 10",
+    "SELECT_TOOL": "Zaznacz narzędzie {0}",
+    "SELECT_COLOR_1_DESCRIPTIVE": "Zaznacz pierwszy kolor w palecie",
+    "SELECT_COLOR_2_DESCRIPTIVE": "Zaznacz drugi kolor w palecie",
+    "SELECT_COLOR_3_DESCRIPTIVE": "Zaznacz trzeci kolor w palecie",
+    "SELECT_COLOR_4_DESCRIPTIVE": "Zaznacz czwarty kolor w palecie",
+    "SELECT_COLOR_5_DESCRIPTIVE": "Zaznacz piąty kolor w palecie",
+    "SELECT_COLOR_6_DESCRIPTIVE": "Zaznacz szósty kolor w palecie",
+    "SELECT_COLOR_7_DESCRIPTIVE": "Zaznacz siódmy kolor w palecie",
+    "SELECT_COLOR_8_DESCRIPTIVE": "Zaznacz ósmy kolor w palecie",
+    "SELECT_COLOR_9_DESCRIPTIVE": "Zaznacz dziewiąty kolor w palecie",
+    "SELECT_COLOR_10_DESCRIPTIVE": "Zaznacz dziesiąty kolor w palecie",
+    "SWAP_COLORS": "Zamień kolory",
+    "SWAP_COLORS_DESCRIPTIVE": "Zamień pierwszorzędny kolor z drugorzędnym",
+    "SEARCH": "Szukaj",
+    "COMMAND_SEARCH": "Wyszukiwanie komend",
+    "OPEN_COMMAND_SEARCH": "Otwórz okno wyszukiwania komend",
+    "SELECT": "Zaznacz",
+    "DESELECT": "Odznacz",
+    "INVERT": "Odwróć",
+    "SELECTION": "Zaznaczenie",
+    "SELECT_ALL": "Zaznacz wszystko",
+    "SELECT_ALL_DESCRIPTIVE": "Zaznacz wszystko",
+    "CLEAR_SELECTION": "Wyczyść zaznaczenie",
+    "INVERT_SELECTION": "Odwróć zaznaczenie",
+    "INVERT_SELECTION_DESCRIPTIVE": "Odwróć zaznaczony obszar",
+    "TRANSFORM_SELECTED_AREA": "Transformuj zaznaczony obszar",
+    "NUDGE_SELECTED_LEFT": "Pstryknij zaznaczony obiekt w lewo",
+    "NUDGE_SELECTED_RIGHT": "Pstryknij zaznaczony obiekt w prawo",
+    "NUDGE_SELECTED_UP": "Pstryknij zaznaczony obiekt w górę",
+    "NUDGE_SELECTED_DOWN": "Pstryknij zaznaczony obiekt w dół",
+    "MASK_FROM_SELECTION": "Nowa maska z zaznaczenia",
+    "MASK_FROM_SELECTION_DESCRIPTIVE": "Zrób nową maskę z zaznaczenia",
+    "ADD_SELECTION_TO_MASK": "Dodaj zaznaczenie do maski",
+    "SUBTRACT_SELECTION_FROM_MASK": "Odejmij zaznaczenie z maski",
+    "INTEREST_SELECTION_MASK": "Wykonaj intersekcję zaznaczenia z maską",
+    "SELECTION_TO_MASK": "Zaznaczenie do maski",
+    "TO_NEW_MASK": "do nowej maski",
+    "ADD_TO_MASK": "dodaj do maski",
+    "SUBTRACT_FROM_MASK": "odejmij z maski",
+    "INTERSECT_WITH_MASK": "wykonaj intersekcję z maską",
+    "STYLUS": "Rysik",
+    "TOGGLE_PEN_MODE": "Przełącz tryb długopisu",
+    "UNDO": "Cofnij",
+    "UNDO_DESCRIPTIVE": "Cofnij ostatnią akcję",
+    "REDO": "Ponów",
+    "REDO_DESCRIPTIVE": "Ponów ostatnią akcję",
+    "WINDOWS": "Okna",
+    "TOGGLE_GRIDLINES": "Przełącz linie siatki",
+    "ZOOM_IN": "Przybliż",
+    "ZOOM_OUT": "Oddal",
+    "NEW_WINDOW_FOR_IMG": "Nowe okno dla aktywnego obrazu",
+    "CENTER_ACTIVE_VIEWPORT": "Wyśrodkuj aktywny widok",
+    "FLIP_VIEWPORT_HORIZONTALLY": "Przerzuć widok w poziomie",
+    "FLIP_VIEWPORT_VERTICALLY": "Przerzuć widok w pionie",
+    "SETTINGS": "Ustawienia",
+    "OPEN_SETTINGS": "Otwórz ustawienia",
+    "OPEN_SETTINGS_DESCRIPTIVE": "Otwórz okno ustawień",
+    "OPEN_STARTUP_WINDOW": "Otwórz okno startowe",
+    "OPEN_SHORTCUT_WINDOW": "Otwórz okno ze skrótami klawiszowymi",
+    "OPEN_ABOUT_WINDOW": "Otwórz okno informacji",
+    "OPEN_NAVIGATION_WINDOW": "Otwórz okno nawigacji",
+    "ERROR": "Błąd",
+    "INTERNAL_ERROR": "Wewnętrzny błąd",
+    "ERROR_SAVE_LOCATION": "Nie udało się zapisać pliku do wskazanej lokalizacji",
+    "ERROR_WHILE_SAVING": "Wystąpił wewnętrzny błąd podczas zapisu. Spróbuj ponownie.",
+    "UNKNOWN_ERROR_SAVING": "Wystąpił błąd poczas zapisu.",
+    "FAILED_ASSOCIATE_LOSPEC": "Nie udało się powiązać protokołu palet serwisu Lospec.",
+    "REDDIT": "Reddit",
+    "GITHUB": "GitHub",
+    "YOUTUBE": "YouTube",
+    "DONATE": "Dotacja",
+    "YES": "Tak",
+    "NO": "Nie",
+    "CANCEL": "Anuluj",
+    "UNNAMED": "Bez nazwy",
+    "OPEN_COMMAND_DEBUG_WINDOW": "Otwórz okno debugowania komend",
+    "DELETE": "Usuń",
+    "USER_PREFS": "Preferencje użytkownika (Roaming)",
+    "SHORTCUT_FILE": "Plik skrótów klawiszowych (Roaming)",
+    "EDITOR_DATA": "Dane edytora (Local)",
+    "MOVE_VIEWPORT_TOOLTIP": "Przesuwa widok. ({0})",
+    "MOVE_VIEWPORT_ACTION_DISPLAY": "Kliknij i porusz myszką, aby przesunąć widok",
+    "MOVE_TOOL_TOOLTIP": "Przesuwa zaznaczone piksele ({0}). Przytrzymaj Ctrl aby ruszyć wszystkimi warstwami.",
+    "MOVE_TOOL_ACTION_DISPLAY": "Przytrzymaj myszkę, aby poruszyć zaznaczone piksele. Przytrzymaj Ctrl aby ruszyć wszystkimi warstwami.",
+    "PEN_TOOL_TOOLTIP": "Pióro. ({0})",
+    "PEN_TOOL_ACTION_DISPLAY": "Kliknij i porusz aby rysować.",
+    "PIXEL_PERFECT_SETTING": "Pixel perfect",
+    "RECTANGLE_TOOL_TOOLTIP": "Tworzy prostokąt na płótnie ({0}). Przytrzymaj Shift, żeby narysować kwadrat.",
+    "RECTANGLE_TOOL_ACTION_DISPLAY_DEFAULT": "Tworzy prostokąt na płótnie. Przytrzymaj Shift, żeby narysować kwadrat.",
+    "RECTANGLE_TOOL_ACTION_DISPLAY_SHIFT": "Kliknij i porusz aby narysować kwadrat.",
+    "KEEP_ORIGINAL_IMAGE_SETTING": "Zachowaj oryginalny obraz",
+    "ROTATE_VIEWPORT_TOOLTIP": "Obraca widok. ({0})",
+    "ROTATE_VIEWPORT_ACTION_DISPLAY": "Kliknij i porusz aby obrócić widok",
+    "SELECT_TOOL_TOOLTIP": "Zaznacza obszar. ({0})",
+    "SELECT_TOOL_ACTION_DISPLAY_DEFAULT": "Kliknij i porusz aby zaznaczyć obszar. Przytrzymaj Shift aby dodać do istniejącego zaznaczenia. Przytrzymaj Ctrl aby usunąć z niego.",
+    "SELECT_TOOL_ACTION_DISPLAY_SHIFT": "Kliknij i porusz aby dodać do aktywnego zaznaczenia.",
+    "SELECT_TOOL_ACTION_DISPLAY_CTRL": "Kliknij i porusz myszką aby usunąć z aktywnego zaznaczenia.",
+    "ZOOM_TOOL_TOOLTIP": "Przybliża lub oddala widok ({0}). Kliknij aby przybliżyć, przytrzymaj ctrl i kliknij aby oddalić.",
+    "ZOOM_TOOL_ACTION_DISPLAY_DEFAULT": "Kliknij i porusz myszką, aby zmienić oddalenie. Kliknij aby przybliżyć, przytrzymaj ctrl i kliknij aby oddalić.",
+    "ZOOM_TOOL_ACTION_DISPLAY_CTRL": "Kliknij i porusz myszką aby zmienić oddalenie. Kliknij aby oddalić, puść ctrl i kliknij aby przybliżyć.",
+    "BRIGHTNESS_TOOL_TOOLTIP": "Rozjaśnia lub przyciemnia piksele ({0}). Przytrzymaj Ctrl aby przyciemniać.",
+    "BRIGHTNESS_TOOL_ACTION_DISPLAY_DEFAULT": "Rysuj po pikselach aby je rozjaśnić. Przytrzymaj Ctrl aby przyciemnić.",
+    "BRIGHTNESS_TOOL_ACTION_DISPLAY_CTRL": "Rysuj po pikselach aby je przyciemnić. Puść Ctrl aby rozjaśnić.",
+    "COLOR_PICKER_TOOLTIP": "Pobiera kolor z płótna i ustawia go jako pierwszorzędny. ({0})",
+    "COLOR_PICKER_ACTION_DISPLAY_DEFAULT": "Kliknij aby pobrać kolor. Przytrzymaj Ctrl aby ukryć płótno. Przytrzymaj Shift aby ukryć warstwę referencyjną.",
+    "COLOR_PICKER_ACTION_DISPLAY_CTRL": "Kliknij aby pobrać kolory z warstwy referencyjnej.",
+    "COLOR_PICKER_ACTION_DISPLAY_SHIFT": "Kliknij aby pobrać kolory z płótna.",
+    "ELLIPSE_TOOL_TOOLTIP": "Rysuje elipsę na płótnie ({0}). Przytrzymaj Shift aby narysować koło.",
+    "ELLIPSE_TOOL_ACTION_DISPLAY_DEFAULT": "Kliknij i porusz myszką aby narysować elipsę. Przytrzymaj Shift aby narysować koło.",
+    "ELLIPSE_TOOL_ACTION_DISPLAY_SHIFT": "Kliknij i porusz myszką aby narysować koło.",
+    "ERASER_TOOL_TOOLTIP": "Wymazuje piksele z płótna. ({0})",
+    "ERASER_TOOL_ACTION_DISPLAY": "Kliknij i porusz myszką aby zmazywać.",
+    "FLOOD_FILL_TOOL_TOOLTIP": "Zapełnia obszar kolorem. ({0})",
+    "FLOOD_FILL_TOOL_ACTION_DISPLAY_DEFAULT": "Kliknij na obszar, aby go zapełnić. Przytrzymaj Ctrl aby zapełniać z uwzględnieniem wszystkich warstw.",
+    "FLOOD_FILL_TOOL_ACTION_DISPLAY_CTRL": "Kliknij na obszar aby go zapełnić. Puść Ctrl żeby aby zapełniać tylko z uwzględnieniem aktywnej warstwy.",
+    "LASSO_TOOL_TOOLTIP": "Lasso. ({0})",
+    "LASSO_TOOL_ACTION_DISPLAY_DEFAULT": "Kliknij i porusz myszką aby zaznaczyć piksele wewnątrz lassa. Przytrzymaj Shift aby dodać do istniejącego zaznaczenia. Przytrzymaj Ctrl aby usunąć z niego.",
+    "LASSO_TOOL_ACTION_DISPLAY_SHIFT": "Kliknij i porusz myszką aby dodać piksele wewnątrz lassa do zaznaczenia.",
+    "LASSO_TOOL_ACTION_DISPLAY_CTRL": "Kliknij i porusz myszką, aby usunąć piksele wewnątrz lassa z aktywnego zaznaczenia.",
+    "LINE_TOOL_TOOLTIP": "Rysuje linie na płótnie ({0}). Przytrzymaj Shift aby rysować równe linie.",
+    "LINE_TOOL_ACTION_DISPLAY_DEFAULT": "Kliknij i porusz myszką aby narysować linie. Przytrzymaj Shify aby rysować równe linie.",
+    "LINE_TOOL_ACTION_DISPLAY_SHIFT": "Kliknij i porusz myszką aby rysować równe linie.",
+    "MAGIC_WAND_TOOL_TOOLTIP": "Magiczna Różdżka ({0}). Zapełnia obszar zaznaczeniem",
+    "MAGIC_WAND_ACTION_DISPLAY": "Kliknij aby stworzyć zaznaczenie z obszaru.",
+    "PEN_TOOL": "Pióro",
+    "BRIGHTNESS_TOOL": "Rozświetlenie",
+    "COLOR_PICKER_TOOL": "Próbnik Kolorów",
+    "ELLIPSE_TOOL": "Elipsa",
+    "ERASER_TOOL": "Gumka",
+    "FLOOD_FILL_TOOL": "Wiadro",
+    "LASSO_TOOL": "Lasso",
+    "LINE_TOOL": "Linia",
+    "MAGIC_WAND_TOOL": "Magiczna Różdżka",
+    "MOVE_TOOL": "Przesuwanie",
+    "MOVE_VIEWPORT_TOOL": "Przesuwanie widoku",
+    "RECTANGLE_TOOL": "Prostokąt",
+    "ROTATE_VIEWPORT_TOOL": "Obracanie widoku",
+    "SELECT_TOOL_NAME": "Zaznaczenie",
+    "ZOOM_TOOL": "Powiększenie",
+    "SHAPE_LABEL": "Kształt",
+    "MODE_LABEL": "Tryb",
+    "SCOPE_LABEL": "Zakres",
+    "FILL_SHAPE_LABEL": "Zapełnij kształt",
+    "FILL_COLOR_LABEL": "Kolor zapełnienia",
+    "TOOL_SIZE_LABEL": "Wielkość narzędzia",
+    "STRENGTH_LABEL": "Siła",
+    "NEW": "Nowy",
+    "ADD": "Dodaj",
+    "SUBTRACT": "Odejmij",
+    "INTERSECT": "Intersekcja",
+    "RECTANGLE": "Prostokąt",
+    "CIRCLE": "Koło",
+    "ABOUT": "O nas",
+    "MINIMIZE": "Minimializuj",
+    "RESTORE": "Przywróć",
+    "MAXIMIZE": "Maksymalizuj",
+    "CLOSE": "Zamknij",
+    "EXPORT_SIZE_HINT": "Jeżeli chcesz udostępnić obraz, spróbuj {0}% dla najlepszej przejrzystości",
+    "CREATE": "Stwórz",
+    "BASE_LAYER_NAME": "Podstawowa warstwa",
+    "ENABLE_MASK": "Włącz maskę",
+    "SELECTED_AREA_EMPTY": "Zaznaczony obszar jest pusty",
+    "NOTHING_TO_COPY": "Nie ma nic do skopiowania",
+    "REFERENCE_LAYER_PATH": "Ścieżka warstwy referencyjnej",
+    "CLIP_LAYER_BELOW": "Dopasuj do warstwy niżej",
+    "FLIP": "Obróć",
+    "ROTATION": "Obrót",
+    "ROT_IMG_90_D": "Obróć obraz 90°",
+    "ROT_IMG_180_D": "Obróć obraz 180°",
+    "ROT_IMG_-90_D": "Obróć obraz -90°",
+    "ROT_LAYERS_90_D": "Obróć zaznaczone warstwy 90°",
+    "ROT_LAYERS_180_D": "Obróć zaznaczone warstwy 180°",
+    "ROT_LAYERS_-90_D": "Obróć zaznaczone warstwy -90°",
+    "UNNAMED_PALETTE": "Paleta bez nazwy",
+    "CLICK_SELECT_PRIMARY": "Kilknij aby ustawić jako kolor główny.",
+    "PEN_MODE": "Tryb pióra",
+    "VIEW": "Widok",
+    "HORIZONTAL_LINE_SYMMETRY": "Pozioma oś symetrii",
+    "VERTICAL_LINE_SYMMETRY": "Pionowa oś symetrii",
+    "COLOR_PICKER_TITLE": "Próbnik Kolorów",
+    "COLOR_SLIDERS_TITLE": "Suwaki Kolorów",
+    "PALETTE_TITLE": "Paleta",
+    "SWATCHES_TITLE": "Swatche",
+    "LAYERS_TITLE": "Warstwy",
+    "NAVIGATION_TITLE": "Nawigacja",
+    "NORMAL_BLEND_MODE": "Normalny",
+    "DARKEN_BLEND_MODE": "Przyciemnianie",
+    "MULTIPLY_BLEND_MODE": "Mnożenie",
+    "COLOR_BURN_BLEND_MODE": "Wypalenie koloru",
+    "LIGHTEN_BLEND_MODE": "Rozjaśnianie",
+    "SCREEN_BLEND_MODE": "Przesiewanie",
+    "COLOR_DODGE_BLEND_MODE": "Unikanie",
+    "OVERLAY_BLEND_MODE": "Narzuta",
+    "SOFT_LIGHT_BLEND_MODE": "Miękkie światło",
+    "HARD_LIGHT_BLEND_MODE": "Twarde światło",
+    "DIFFERENCE_BLEND_MODE": "Różnica",
+    "EXCLUSION_BLEND_MODE": "Wykluczenie",
+    "HUE_BLEND_MODE": "Odcień",
+    "SATURATION_BLEND_MODE": "Nasycenie",
+    "LUMINOSITY_BLEND_MODE": "Jasność",
+    "COLOR_BLEND_MODE": "Kolor",
+    "NOT_SUPPORTED_BLEND_MODE": "Nie wspierany",
+    "RESTART": "Restartuj",
+    "SORT_BY": "Sortuj po",
+    "NAME": "Nazwa",
+    "COLORS": "Kolory",
+    "DEFAULT": "Domyślnie",
+    "ALPHABETICAL": "Alfabetycznie",
+    "COLOR_COUNT": "Ilość kolorów",
+    "ANY": "Obojętnie",
+    "MAX": "Maksymalnie",
+    "MIN": "Minimalnie",
+    "EXACT": "Dokładnie",
+    "ASCENDING": "Rosnąco",
+    "DESCENDING": "Malejąco",
+    "NAME_IS_TOO_LONG": "Nazwa jest za długa",
+    "STOP_IT_TEXT1": "Wystarczy. Posprzątaj nazwy swoich plików.",
+    "STOP_IT_TEXT2": "Czy możesz proszę przestać kopiować te nazwy?",
+    "REPLACER_TOOLTIP": "Kliknij prawym przyciskiem myszy na kolor i wybierz 'Zamień' lub przeciągnij go tutaj.",
+    "CLICK_TO_CHOOSE_COLOR": "Kliknij aby wybrać kolor",
+    "REPLACE_COLOR": "Zastąp kolor",
+    "PALETTE_COLOR_TOOLTIP": "Kliknij aby ustawić jako główny kolor. Przeciągnij i upuść na inny kolor z palety, aby zamienić je miejscami.",
+    "ADD_FROM_SWATCHES": "Dodaj ze swatchy",
+    "ADD_COLOR_TO_PALETTE": "Dodaj kolor do palety",
+    "USE_IN_CURRENT_IMAGE": "Użyj w aktywnym obrazie",
+    "ADD_TO_FAVORITES": "Dodaj do ulubionych",
+    "BROWSE_PALETTES": "Przeglądaj palety",
+    "LOAD_PALETTE": "Załaduj paletę",
+    "SAVE_PALETTE": "Zapisz paletę",
+    "FAVORITES": "Ulubione",
+    "ADD_FROM_CURRENT_PALETTE": "Dodaj z aktywnej palety",
+    "OPEN_PALETTES_DIR_TOOLTIP": "Otwórz folder z paletami w explorerze",
+    "BROWSE_ON_LOSPEC_TOOLTIP": "Przeglądaj palety w serwisie Lospec",
+    "IMPORT_FROM_FILE_TOOLTIP": "Importuj z pliku",
+    "TOP_LEFT": "Lewy górny",
+    "TOP_CENTER": "Środkowy górny",
+    "TOP_RIGHT": "Prawy górny",
+    "MIDDLE_LEFT": "Lewy środkowy",
+    "MIDDLE_CENTER": "Środek",
+    "MIDDLE_RIGHT": "Prawy środkowy",
+    "BOTTOM_LEFT": "Lewy dolny",
+    "BOTTOM_CENTER": "Środkowy dolny",
+    "BOTTOM_RIGHT": "Prawy dolny",
+    "CLIP_TO_BELOW": "Dopasuj do warstwy niżej",
+    "MOVE_UPWARDS": "Przesuń w górę",
+    "MOVE_DOWNWARDS": "Przesuń w dół",
+    "MERGE_SELECTED": "Scal zaznaczone",
+    "LOCK_TRANSPARENCY": "Zablokuj przeźroczystość",
+    "COULD_NOT_LOAD_PALETTE": "Nie udało się pobrać palet kolorów",
+    "NO_PALETTES_FOUND": "Nie znaleziono żadnych palet.",
+    "LOSPEC_LINK_TEXT": "Słyszałem, że kilka palet możesz znaleźć tutaj: lospec.com/palette-list",
+    "PALETTE_BROWSER": "Przeglądarka Palet",
+    "DELETE_PALETTE_CONFIRMATION": "Czy jesteś pewien, że chcesz usunąć tę paletę? Tej akcji nie można cofnąć.",
+    "SHORTCUTS_IMPORTED": "Skróty klawiszowe z {0} zostały zaimportowane poprawnie.",
+    "SHORTCUT_PROVIDER_DETECTED": "Zauważyliśmy, że masz zainstalowane {0}. Czy chcesz zaimportować skróty z tego programu?",
+    "IMPORT_FROM_INSTALLATION": "Importuj z instalacji",
+    "IMPORT_INSTALLATION_OPTION1": "Importuj z instalacji",
+    "IMPORT_INSTALLATION_OPTION2": "Użyj domyślnych",
+    "IMPORT_FROM_TEMPLATE": "Importuj z szablonu",
+    "SHORTCUTS_IMPORTED_SUCCESS": "Skróty klawiszowe zostały zaimportowane poprawnie.",
+    "WARNING_RESET_SHORTCUTS_DEFAULT": "Czy na pewno chcesz zresetować skróty klawiszowe do ich domyślnych wartości?",
+    "SUCCESS": "Sukces",
+    "WARNING": "Ostrzeżenie",
+    "ERROR_IMPORTING_IMAGE": "Wystąpił błąd podczas importowania obrazu.",
+    "SHORTCUTS_CORRUPTED_TITLE": "Popsuty plik ze skrótami klawiszowymi",
+    "SHORTCUTS_CORRUPTED": "Plik skrótów klawiszowych jest popsuty, zresetowano do domyślnych wartości.",
+    "FAILED_DOWNLOAD_PALETTE": "Nie udało się pobrać palety",
+    "FILE_INCORRECT_FORMAT": "Plik nie jest w poprawnym formacie",
+    "INVALID_FILE": "Nieprawidłowy plik",
+    "SHORTCUTS_FILE_INCORRECT_FORMAT": "Plik ze skrótami klawiszowymi jest w niepoprawnym formacie",
+    "UNSUPPORTED_FILE_FORMAT": "Ten format plików nie jest wspierany",
+    "ALREADY_ASSIGNED": "Już przypisano",
+    "REPLACE": "Zastąp",
+    "SWAP": "Zamień",
+    "SHORTCUT_ALREADY_ASSIGNED_SWAP": "Ten skrót został już przypisany do '{0}'\nChcesz go zastąpić czy je zamienić?",
+    "SHORTCUT_ALREADY_ASSIGNED_OVERWRITE": "Ten skrót jest już przypisany do '{0}' \nCzy chcesz go zastąpić?",
+    "UNSAVED_CHANGES": "Niezapisane zmiany.",
+    "DOCUMENT_MODIFIED_SAVE": "Ten dokument został zmodyfikowany. Czy chcesz go zapisać?",
+    "SESSION_UNSAVED_DATA": "{0} ma niezapisane zmiany. Jesteś pewien?",
+    "PROJECT_MAINTAINERS": "Opiekunowie Projektu",
+    "OTHER_AWESOME_CONTRIBUTORS": "I inni świetni współtwórcy",
+    "HELP": "Pomoc",
+    "ALL LAYERS": "Wszystkie warstwy",
+    "SINGLE LAYER": "Pojedyńcza warstwa",
+    "STOP_IT_TEXT3": "Nie no, serio, przestań.",
+    "STOP_IT_TEXT4": "Nie masz nic lepszego do roboty?",
+    "LINEAR_DODGE_BLEND_MODE": "Liniowe unikanie (Dodatnie)",
+    "PRESS_ANY_KEY": "Wciśnij klawisz",
+    "NONE_SHORTCUT": "Brak"
 }

+ 0 - 7
src/PixiEditor/Localization/LocalizedString.cs

@@ -24,19 +24,12 @@ public struct LocalizedString
     public LocalizedString(string key)
     {
         Key = key;
-        ILocalizationProvider.Current.OnLanguageChanged += OnLanguageChanged;
     }
 
     public LocalizedString(string key, params object[] parameters)
     {
         Parameters = parameters;
         Key = key;
-        ILocalizationProvider.Current.OnLanguageChanged += OnLanguageChanged;
-    }
-
-    private void OnLanguageChanged(Language lang)
-    {
-        Value = GetValue(Key);
     }
 
     public override string ToString()

+ 1 - 1
src/PixiEditor/ViewModels/SettingsWindowViewModel.cs

@@ -68,7 +68,7 @@ internal class SettingsWindowViewModel : ViewModelBase
     [Command.Internal("PixiEditor.Shortcuts.Reset")]
     public static void ResetCommand()
     {
-        var dialog = new OptionsDialog<string>("ARE_YOU_SURE", "WARNING_RESET_SHORTCUTS_DEFAULT")
+        var dialog = new OptionsDialog<string>("ARE_YOU_SURE", new LocalizedString("WARNING_RESET_SHORTCUTS_DEFAULT"))
         {
             { new LocalizedString("YES"), x => CommandController.Current.ResetShortcuts() },
             new LocalizedString("CANCEL")

+ 5 - 6
src/PixiEditor/ViewModels/SubViewModels/Main/DiscordViewModel.cs

@@ -120,8 +120,7 @@ internal class DiscordViewModel : SubViewModel<ViewModelMain>, IDisposable
             richPresence.WithTimestamps(new Timestamps(document.OpenedUTC));
 
             richPresence.Details = ShowDocumentName
-                ? new LocalizedString("EDITING_IMG_DETAIL", document.FileName.Limit(128))
-                : new LocalizedString("EDITING_IMG");
+                ? $"Editing {document.FileName.Limit(128)}" : "Editing an image";
 
             string state = string.Empty;
 
@@ -170,15 +169,15 @@ internal class DiscordViewModel : SubViewModel<ViewModelMain>, IDisposable
     {
         return new RichPresence
         {
-            Details = new LocalizedString("DISCORD_DETAILS"),
-            State = new LocalizedString("DISCORD_STATE"),
+            Details = "Staring at absolutely",
+            State = "nothing",
 
             Assets = new Assets
             {
                 LargeImageKey = "editorlogo",
-                LargeImageText = new LocalizedString("DISCORD_LARGE_IMAGE"),
+                LargeImageText = "You've discovered PixiEditor's logo",
                 SmallImageKey = "github",
-                SmallImageText = new LocalizedString("DISCORD_SMALL_IMAGE")
+                SmallImageText = "Download PixiEditor (pixieditor.net/download)!"
             },
             Timestamps = new Timestamps()
             {

+ 5 - 1
src/PixiEditor/ViewModels/SubViewModels/Tools/Tools/PenToolViewModel.cs

@@ -18,7 +18,6 @@ namespace PixiEditor.ViewModels.SubViewModels.Tools.Tools
         public PenToolViewModel()
         {
             Cursor = Cursors.Pen;
-            ActionDisplay = "PEN_TOOL_TOOLTIP";
             Toolbar = ToolbarFactory.Create<PenToolViewModel, BasicToolbar>();
         }
 
@@ -30,6 +29,11 @@ namespace PixiEditor.ViewModels.SubViewModels.Tools.Tools
         [Settings.Bool("PIXEL_PERFECT_SETTING")]
         public bool PixelPerfectEnabled => GetValue<bool>();
 
+        public override void UpdateActionDisplay(bool ctrlIsDown, bool shiftIsDown, bool altIsDown)
+        {
+            ActionDisplay = new LocalizedString("PEN_TOOL_TOOLTIP", Shortcut);
+        }
+
         public override void OnLeftMouseButtonDown(VecD pos)
         {
             ViewModelMain.Current?.DocumentManagerSubViewModel.ActiveDocument?.Tools.UsePenTool();

+ 2 - 2
src/PixiEditor/ViewModels/SubViewModels/UserPreferences/Settings/DiscordSettings.cs

@@ -59,7 +59,7 @@ internal class DiscordSettings : SettingsGroup
     {
         get
         {
-            return ShowDocumentName ? new LocalizedString("EDITING_IMG_DETAIL", "coolPixelArt.pixi") : new LocalizedString("EDITING_IMG");
+            return ShowDocumentName ? $"Editing coolPixelArt.pixi" : "Editing an image";
         }
     }
 
@@ -81,7 +81,7 @@ internal class DiscordSettings : SettingsGroup
 
             if (ShowLayerCount)
             {
-                state += new LocalizedString("LAYERS", "2");
+                state += $"2 Layers";
             }
 
             return state;

+ 3 - 1
src/PixiEditor/Views/Dialogs/PalettesBrowser.xaml.cs

@@ -27,7 +27,9 @@ internal partial class PalettesBrowser : Window
     private readonly LocalizedString[] stopItTexts = new[]
     {
         new LocalizedString("STOP_IT_TEXT1"),
-        new LocalizedString("STOP_IT_TEXT2")
+        new LocalizedString("STOP_IT_TEXT2"),
+        new LocalizedString("STOP_IT_TEXT3"),
+        new LocalizedString("STOP_IT_TEXT4"),
     };
 
     public PaletteList PaletteList

+ 10 - 6
src/PixiEditor/Views/Translator.cs

@@ -10,18 +10,21 @@ namespace PixiEditor.Views;
 
 public class Translator : UIElement
 {
-    private static void OnLanguageChanged(DependencyObject obj, Language newLanguage)
+    private static void OnLanguageChangedKey(DependencyObject obj, Language newLanguage)
     {
         string key = GetKey(obj);
         if (key != null)
         {
-            obj.SetValue(ValueProperty, new LocalizedString(GetKey(obj)).Value);
+            obj.SetValue(ValueProperty, new LocalizedString(key).Value);
         }
-        
-        string tooltipKey = GetTooltipKey(obj);
+    }
+
+    private static void OnLanguageChangedTooltipKey(DependencyObject element, Language lang)
+    {
+        string tooltipKey = GetTooltipKey(element);
         if (tooltipKey != null)
         {
-            obj.SetValue(FrameworkElement.ToolTipProperty, new LocalizedString(GetTooltipKey(obj)).Value);
+            element.SetValue(FrameworkElement.ToolTipProperty, new LocalizedString(tooltipKey).Value);
         }
     }
 
@@ -38,6 +41,7 @@ public class Translator : UIElement
     private static void TooltipKeyPropertyChangedCallback(DependencyObject d, DependencyPropertyChangedEventArgs e)
     {
         d.SetValue(FrameworkElement.ToolTipProperty, new LocalizedString(GetTooltipKey(d)).Value);
+        ILocalizationProvider.Current.OnLanguageChanged += (lang) => OnLanguageChangedTooltipKey(d, lang);
     }
 
     public static void SetTooltipKey(DependencyObject element, string value)
@@ -87,7 +91,7 @@ public class Translator : UIElement
             }
 
             d.SetValue(ValueProperty, localizedString.Value);
-            ILocalizationProvider.Current.OnLanguageChanged += (lang) => OnLanguageChanged(d, lang);
+            ILocalizationProvider.Current.OnLanguageChanged += (lang) => OnLanguageChangedKey(d, lang);
         }
     }
 

+ 6 - 7
src/PixiEditor/Views/UserControls/DiscordRPPreview.xaml

@@ -47,29 +47,28 @@
                         <Grid Margin="0,5">
                             <StackPanel Orientation="Vertical">
                                 <Grid Margin="0,15" Background="#262729" Height="1"/>
-                                <TextBlock FontWeight="Black" FontSize="12" Foreground="White" Margin="0,0,0,10" views:Translator.Key="ABOUT_ME" d:Text="ABOUT ME"/>
-                                <TextBlock Foreground="White" d:Text="Use me to display your .pixi files in Discord. &#10;Start by sending a file in any appropriate channel" 
-                                           views:Translator.Key="BOT_DESCRIPTION"/>
+                                <TextBlock FontWeight="Black" FontSize="12" Foreground="White" Margin="0,0,0,10" Text="ABOUT ME"/>
+                                <TextBlock Foreground="White" Text="Use me to display your .pixi files in Discord. &#10;Start by sending a file in any appropriate channel" />
                             </StackPanel>
                         </Grid>
                         <Grid Margin="0,5">
                             <StackPanel Orientation="Vertical">
-                                <TextBlock FontWeight="Black" FontSize="12" Foreground="White" Margin="0,0,0,10" views:Translator.Key="MEMBER_SINCE" d:Text="DISCORD MEMBER SINCE"/>
+                                <TextBlock FontWeight="Black" FontSize="12" Foreground="White" Margin="0,0,0,10" Text="DISCORD MEMBER SINCE"/>
                                 <TextBlock Foreground="White" Text="Mar 24, 2023"></TextBlock>
                             </StackPanel>
                         </Grid>
                         <Grid Visibility="{Binding ElementName=uc, Path=IsPlaying, Converter={BoolToVisibilityConverter}}" Margin="0,5, 0, 0">
                             <StackPanel Orientation="Vertical">
-                                <TextBlock FontWeight="Black" FontSize="12" Foreground="White" Margin="0,0,0,10" views:Translator.Key="DISCORD_PLAYING" d:Text="PLAYING A GAME"/>
+                                <TextBlock FontWeight="Black" FontSize="12" Foreground="White" Margin="0,0,0,10" Text="PLAYING A GAME"/>
                                 <StackPanel Orientation="Horizontal">
                                     <Image Source="../../Images/PixiEditorLogo.png" Height="70"/>
                                     <StackPanel Margin="15,0,0,0" VerticalAlignment="Center">
                                         <TextBlock Foreground="White" FontSize="12" FontWeight="SemiBold">PixiEditor</TextBlock>
                                         <TextBlock Foreground="White" FontSize="12" Text="{Binding ElementName=uc, Path=Detail}" Visibility="{Binding ElementName=uc, 
                                         Path=Detail, Converter={converters:EmptyStringToVisibilityConverter}}"/>
-                                        <TextBlock Foreground="White" FontSize="12" Text="{Binding ElementName=uc, Path=State}" Visibility="{Binding ElementName=uc, 
+                                        <TextBlock Foreground="White" FontSize="12" Text="{Binding ElementName=uc, Path=State}" Visibility="{Binding ElementName=uc,
                                         Path=State, Converter={converters:EmptyStringToVisibilityConverter}}"/>
-                                        <TextBlock Foreground="White" FontSize="12" views:Translator.Key="DISCORD_ELAPSED" d:Text="00:00 elapsed"/>
+                                        <TextBlock Foreground="White" FontSize="12" Text="00:00 elapsed"/>
                                     </StackPanel>
                                 </StackPanel>
                             </StackPanel>

+ 3 - 2
src/PixiEditor/Views/UserControls/KeyCombinationBox.xaml.cs

@@ -3,6 +3,7 @@ using System.Windows.Controls;
 using System.Windows.Input;
 using PixiEditor.Helpers;
 using PixiEditor.Helpers.Behaviours;
+using PixiEditor.Localization;
 using PixiEditor.Models.DataHolders;
 
 namespace PixiEditor.Views.UserControls;
@@ -81,7 +82,7 @@ internal partial class KeyCombinationBox : UserControl
     private void TextBox_GotKeyboardFocus(object sender, KeyboardFocusChangedEventArgs e)
     {
         currentCombination = new();
-        textBox.Text = "Press any key";
+        textBox.Text = new LocalizedString("PRESS_ANY_KEY");
         UpdateButton();
     }
 
@@ -113,7 +114,7 @@ internal partial class KeyCombinationBox : UserControl
         }
     }
 
-    private void UpdateText() => textBox.Text = currentCombination != default ? currentCombination.ToString() : "None";
+    private void UpdateText() => textBox.Text = currentCombination != default ? currentCombination.ToString() : new LocalizedString("NONE_SHORTCUT");
 
     private void UpdateButton()
     {