Files
rustdesk/src/lang/tr.rs
Jonathan Gilbert 055826e26f Edge scrolling (#13247)
* Repurposed the MacOS-specific platform channel mechanism for all platforms:
- Renamed the channel from "org.rustdesk.rustdesk/macos" to "org.rustdesk.rustdesk/host".
- Renamed _osxMethodChannel in platform_channel.dart to _hostMethodChannel.
- Updated linux/my_application.cc to use the fl_* API to set up a Method Channel and to dispose it during my_application_dispose.
- Updated windows/runner/flutter_window.cpp to use the C++ API to set up a Method Channel.
- Updated the channel name in macos/Runner/MainFlutterWindow.swift.

Signed-off-by: Jonathan Gilbert <logic@deltaq.org>

* Added a method "bumpMouse" to the Platform Channel.
Added a thunk to call the method through the channel to platform_channel.dart.
Added implementation bump_mouse() in linux/my_application.cc using Gdk API calls. Updated host_channel_call_handler to process "bumpMouse" method call messages by calling bump_mouse.
Added implementation Win32Desktop::BumpMouse in windows/runner/win32_desktop.cpp/.h.  Updated the inline method call handler in flutter_window.cpp to handle "bumpMouse" method calls by calling Win32Desktop::BumpMouse.
Updated the method call handler in macos/Runner/MainFlutterWindow.swift to handle "bumpMouse" method call messages. Updated MainFlutterWindow to use a subclass of FlutterViewController exposing access to mouseLocationOutsideOfEventStream.

Signed-off-by: Jonathan Gilbert <logic@deltaq.org>

* Added message type kWindowBumpMouse to the multiwindow window event model:
- Added constant kWindowBumpMouse to consts.dart.
- Updated the method handler attached to rustDeskWinManager by DesktopHomePageState to recognize kWindowBumpMouse and translate it to a call to RdPlatformChannel.bumpMouse.

Signed-off-by: Jonathan Gilbert <logic@deltaq.org>

* Centralized serialization of ScrollStyle values, moving JSON and string conversions into methods toString/fromString and toJson/fromJson within the type.

Signed-off-by: Jonathan Gilbert <logic@deltaq.org>

* Added new scroll style for edge scrolling:
- Added ScrollStyle enum member "scrolledge". Added corresponding constant kRemoteScrollStyleEdge to consts.dart for the string serialized form.
- Updated sites checking specifically for ScrollStyle.scrollbar to instead check for NOT ScrollStyle.scrollauto.
- Added radio buttons for the new "ScrollEdge" style to desktop_setting_page.dart and remote_toolbar.dart. Added new string "ScrollEdge" to lang/template.rs.

Signed-off-by: Jonathan Gilbert <logic@deltaq.org>

* Implemented edge scrolling:
- Added methods edgeScrollMouse and pushScrollPositionToUI to class CanvasModel in model.dart.
- Added boolean parameter edgeScroll to handleMouse, handlePointerDevicePos and processEventToPeer in input_model.dart.
- Updated handlePointerDevicePos in input_model.dart to call edgeScrollMouse on move events when the edgeScroll parameter is true.
- Added convenience accessor useEdgeScroll to the InputModel class. Updated call sites to handleMouse to use it to supply the value for the edgeScroll parameter.

Signed-off-by: Jonathan Gilbert <logic@deltaq.org>

* Updated CanvasModel.edgeScrollMouse to be resilient to receiving events when _horizontal/_vertical aren't wired up to any UI.

* Updated CanvasModel to take notifications of resizes via method notifyResize and to suppress edge scrolling briefly after a resize.
Updated the onWindowResized handler in tabbar_widget.dart to call notifyResize on the canvasModel of any RemotePage tabs.

* Half a go at fixing MainFlutterWindow.swift.

* Copilot feedback.

* Applied fix suggested by Copilot in its explanation of the build error.

* Fixed a couple of silly errors in windows/runner/flutter_window.cpp.

* Fixed MainFlutterWindow.swift build errors.

Co-Authored-By: fufesou <linlong1266@gmail.com>
Signed-off-by: Jonathan Gilbert <logic@deltaq.org>

* Moved new translation to the end of template.rs.
Reran res/lang.py.

Signed-off-by: Jonathan Gilbert <logic@deltaq.org>

* Switched MainFlutterWindow.swift to use NSEvent.mouseLocation.

* Updated MainFlutterWindow.swift code based on build error.

* Fixed silly typo.

* Reintroduced the coordinate system translation in MainFlutterWindow.swift.

* Updated edgeScrollMouse in model.dart to add a "safe zone" around the window frame that doesn't trigger edge scrolling.

* Updated the bumpMouse handler in MainFlutterWindow.swift to call CGAssociateMouseAndMouseCursorPosition to cancel event suppression.

* Added debug annotation to the onWindowResized event in tabbar_widget.dart.

* Fix parameter type for CGAssociateMouseAndMouseCursorPosition in MainFlutterWindow.swift.

* tabbar_widget.dart: onWindowResized -> onWindowResize

* Removed temporary diagnostic debugPrint from tabbar_widget.dart.

* Updated MainFlutterWindow.swift to obtain the mouse position by creating a dummy CGEvent. The old NSEvent.mouseLocation code is left as a fallback.

* The documentation said to be sure to call CFRelease, but apparently it's a build error to do so. :-P

* Replaced CGEvent calls in MainFlutterWindow.swift with uses of the CGEvent wrapper struct.

* Added argument label to call to CGEvent.init.

* Changed mouseLoc from piecewise assignment to assignment of the whole structure, as it is not yet initialized at that point.

* Linux platform channel: Refactored bump_mouse, setting the stage for a future Wayland implementation.
- Made a new top-level bump_mouse method in bump_mouse.cc/.h.
- Moved the X11-specific implementation to bump_mouse_x11 in bump_mouse_x11.cc/h.
Reworked the bumpMouse operation to have a boolean return value:
- Updated bumpMouse in platform_channel.dart to return a Future<bool> instead of a Future<void>.
- Windows platform channel: Updated BumpMouse in win32_desktop.cpp to return a bool value. Updated the method call handler "bumpMouse" branch in flutter_window.cpp to propagate the BumpMouse return value back to the originating MethodCall.
- MacOS platform channel: Updated the "bumpMouse" branch in the method call handler in MainFlutterWindow.swift to pass true or false into the 'result()' call.
- Linux platform channel: Updated the bump_mouse top-level method and its underlying implementation bump_mouse_x11 to return bool values. Updated the "bumpMouse" branch of host_channel_call_handler in my_application.cc to propagate the result value back up the method channel.
- Updated the kWindowBumpMouse branch of the method handler registered in desktop_home_page.dart to propagate a return value from RdplatformChannel.bumpMouse.

* Reworked the edge scrolling computations in model.dart to use Vector2 from the vector_math package. Updated pubspec.yaml to declare a dependency on vector_math.

* Added an alternative edge scrolling mechanism for when "Bump Mouse" functionality is unavailable:
- Added methods setEdgeScrollTimer and cancelEdgeScrollTimer to model.dart, along with a few state fields.
- Updated edgeScrollMouse to latch the (x, y) coordinate of the last edge scroll event, in case it will be autorepeating.
- Updated edgeScrollMouse to check whether the call to the kWindowBumpMouse method of rustDeskWinManager (and thus the underlying bump_mouse method) succeeded, and to switch to timer-based autorepeat if it fails. Made edgeScrollMouse async to allow awaiting the result of the kWindowBumpMouse method call.
- Updated input_model.dart to call cancelEdgeScrollTimer when a new move event is being processed.
- Updated remote_page.dart to call cancelEdgeScrollTimer when the pointer exits the area represented by the view.

* Fixed scroll percentage math in edgeScrollMouse in model.dart.

* Fixed declared return value for Win32Desktop::BumpMouse in win32_desktop.h.

* Fixed vector_math dependency version in pubspec.yaml to be compatible with the codebase standard Flutter version.

* Added class EdgeScrollFallbackState to model.dart for tracking the state of the edge scroll fallback strategy. Factored out the actual edge scrolling action from CanvasModel.edgeScrollMouse to new method performEdgeScroll so that EdgeScrollFallbackState can call it. Updated edgeScrollMouse to not call performEdgeScroll when it's enabling the fallback strategy.
Updated CanvasModel to use EdgeScrollFallbackState instead of directly tracking the state. Removed method setEdgeScrollTimer.
Added method initializeEdgeScrollFallback to CanvasModel that takes a TickerProvider. Updated _RemotePageState to include the mixin TickerProviderStateMixin. Updated _RemotePageState.initState to call canvasModel.initializeEdgeScrollFallback.
Updated handlePointerDevicePos in input_model.dart to not call cancelEdgeScrollTimer before edgeScrollMouse.
Renamed CanvasModel.cancelEdgeScrollTimer to CanvasModel.cancelEdgeScroll.
Updated the calculations in CanvasModel.edgeScrollMouse to only factor in the safe zone if BumpMouse is working. (Otherwise the problem with resizing can't possibly occur.)

* Updated CanvasModel.edgeScrollMouse in model.dart to handle the situation where only one of the scrollbars is active. Factored extraction of scrollbar data into new function getScrollInfo.

* Updated onWindowResize in tabbar_widget.dart to be resilient to RemotePage instances that don't yet have an ffi reference. Added property hasFFI to remote_page.dart.

* Removed debug output from model.dart.

* PR feedback:
- Added filtering to diagnostic output in the method handler in desktop_home_page.dart to exclude the very chatty kWindowBumpMouse-related output.
- Removed the diagnostic output from bumpMouse in platform_channel.dart for the same reason.
- Updated setScrollPercent to coalesce NaN values for x and y to 0.
- Initialized the GError pointer variable passed into fl_method_call_respond_success in linux/my_application.cc to NULL.
- Added bounds checking of the argument values in the EncodableList branch of the "bumpMouse" method call handler in windows/runner/flutter_window.cpp.

* Added a latch mechanism that keeps edge scrolling disabled until the cursor is observed to be in the inner area bounded by the edge scroll areas:
- Added tristate enumerated type EdgeScrollState to model.dart. In addition to inactive and active states, there is state armed which behaves like inactive but can transition to active when conditions are met.
- Added a field to CanvasModel of type EdgeScrollState. Added methods disableEdgeScroll and rearmEdgeScroll.
- Updated enterView to call canvasModel.rearmEdgeScroll and leaveView to call canvasModel.disableEdgeScroll in remote_page.dart.
- Updated edgeScrollMouse to check the state, disabling edge scrolling when the state is not active and transitioning from armed to active when the mouse is in the interior space.
- Removed the notifyResize/_suppressEdgeScroll mechanism from CanvasModel in model.dart as it is no longer necessary.
- Removed the "safe zone" mechanism from CanvasModel.edgeScrollMouse in model.dart as it is no longer necessary.
- Switched the onWindowResize handler in DesktopTabState in tabbar_widget.dart back to onWindowResized, now that it is no longer delivering canvasModel.notifyResize to all RemotePage tabs.

* Fixed memory leak: Added call to free GError object returned by Flutter API in the event of an error.

* PR feedback:
- Copilot: Use type annotations.
- Copilot: Condition to stop edge scrolling when fallback strategy is in use and the mouse is moved back to the centre.
- Copilot: Check FLValue type before calling fl_value_get_int.
- Copilot: Support list-style method channel dispatch in "bumpMouse" handler for macos as the linux and windows implementations already do.
- Naming convention for constants.
- Left-over variable from previous strategy: _suppressEdgeScroll.
- Unnecessary extra parentheses in edge scroll area conditions.

* Removed property suppressEdgeScroll referencing now-removed field _suppressEdgeScroll in model.dart.
Removed accidental extra blank line in MainFlutterWindow.swift.

* Switched CanvasModel.setScrollPercent to use double.isFinite instead of double.isNaN to test for proper numerical values.

* PR feedback:
- Copilot: Use Vector2.length2 instead of Vector2.length to avoid an unnecessary sqrt in comparison with zero.
- Copilot: Baleet unnecessary semicolons from Swift code.

* PR feedback:
- Copilot: Check argList.count before indexing it

* Oops with the semicolons again.

* Edge scroll, active local cursor

Signed-off-by: fufesou <linlong1266@gmail.com>

* Remove duplicated condition checks

Signed-off-by: fufesou <linlong1266@gmail.com>

* Chore

Signed-off-by: fufesou <linlong1266@gmail.com>

* PR feedback:
- Copilot: Removed unused property hasFFI from remote_page.dart.
- Copilot: Updated updateScrollStyle in model.dart to be resilient to the possibility of bind.sessionGetScrollStyle returning null.

* Factored local cursor updates out of CanvasModel.moveDesktopMouse in model.dart, adding new methods activateLocalCursor and updateLocalCursor.
Updated handlePointerDevicePos in input_model.dart to call canvasModel.updateLocalCursor on every mouse event.
Updated initState in remote_page.dart to schedule a call to canvasModel.activateLocalCursor as a first-image callback.

* Updated the explanation for rounding away from 0 in edgeScrollMouse in model.dart.

---------

Signed-off-by: Jonathan Gilbert <logic@deltaq.org>
Signed-off-by: fufesou <linlong1266@gmail.com>
Co-authored-by: fufesou <linlong1266@gmail.com>
2025-10-30 19:54:11 +08:00

727 lines
37 KiB
Rust
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
lazy_static::lazy_static! {
pub static ref T: std::collections::HashMap<&'static str, &'static str> =
[
("Status", "Durum"),
("Your Desktop", "Sizin Masaüstünüz"),
("desk_tip", "Masaüstünüze bu ID ve şifre ile erişilebilir"),
("Password", "Şifre"),
("Ready", "Hazır"),
("Established", "Bağlantı sağlandı"),
("connecting_status", "Bağlanılıyor "),
("Enable service", "Servisi aktif et"),
("Start service", "Servisi başlat"),
("Service is running", "Servis çalışıyor"),
("Service is not running", "Servis çalışmıyor"),
("not_ready_status", "Hazır değil. Bağlantınızı kontrol edin"),
("Control Remote Desktop", "Bağlanılacak Uzak Bağlantı ID"),
("Transfer file", "Dosya transferi"),
("Connect", "Bağlan"),
("Recent sessions", "Son Bağlanılanlar"),
("Address book", "Adres Defteri"),
("Confirmation", "Onayla"),
("TCP tunneling", "TCP Tünelleri"),
("Remove", "Kaldır"),
("Refresh random password", "Yeni rastgele şifre oluştur"),
("Set your own password", "Kendi şifreni oluştur"),
("Enable keyboard/mouse", "Klavye ve Fareye izin ver"),
("Enable clipboard", "Kopyalanan geçici veriye izin ver"),
("Enable file transfer", "Dosya Transferine izin ver"),
("Enable TCP tunneling", "TCP Tüneline izin ver"),
("IP Whitelisting", "İzinli IP listesi"),
("ID/Relay Server", "ID/Relay Sunucusu"),
("Import server config", "Sunucu ayarlarını içe aktar"),
("Export Server Config", "Sunucu Yapılandırmasını Dışa Aktar"),
("Import server configuration successfully", "Sunucu ayarları başarıyla içe aktarıldı"),
("Export server configuration successfully", "Sunucu yapılandırmasını başarıyla dışa aktar"),
("Invalid server configuration", "Geçersiz sunucu ayarı"),
("Clipboard is empty", "Kopyalanan geçici veri boş"),
("Stop service", "Servisi Durdur"),
("Change ID", "ID Değiştir"),
("Your new ID", ""),
("length %min% to %max%", ""),
("starts with a letter", ""),
("allowed characters", ""),
("id_change_tip", "Yalnızca a-z, A-Z, 0-9, - (dash) ve _ (alt çizgi) karakterlerini kullanabilirsiniz. İlk karakter a-z veya A-Z olmalıdır. Uzunluk 6 ile 16 karakter arasında olmalıdır."),
("Website", "Website"),
("About", "Hakkında"),
("Slogan_tip", ""),
("Privacy Statement", ""),
("Mute", "Sustur"),
("Build Date", ""),
("Version", ""),
("Home", ""),
("Audio Input", "Ses Girişi"),
("Enhancements", "Geliştirmeler"),
("Hardware Codec", "Donanımsal Codec"),
("Adaptive bitrate", "Uyarlanabilir Bit Hızı"),
("ID Server", "ID Sunucu"),
("Relay Server", "Relay Sunucu"),
("API Server", "API Sunucu"),
("invalid_http", "http:// veya https:// ile başlamalıdır"),
("Invalid IP", "Geçersiz IP adresi"),
("Invalid format", "Hatalı Format"),
("server_not_support", "Henüz sunucu tarafından desteklenmiyor"),
("Not available", "Erişilebilir değil"),
("Too frequent", "Çok sık"),
("Cancel", "İptal"),
("Skip", "Geç"),
("Close", "Kapat"),
("Retry", "Tekrar Dene"),
("OK", "Tamam"),
("Password Required", "Şifre Gerekli"),
("Please enter your password", "Lütfen şifrenizi giriniz"),
("Remember password", "Şifreyi hatırla"),
("Wrong Password", "Hatalı şifre"),
("Do you want to enter again?", "Tekrar giriş yapmak ister misiniz?"),
("Connection Error", "Bağlantı Hatası"),
("Error", "Hata"),
("Reset by the peer", "Eş tarafında sıfırla"),
("Connecting...", "Bağlanılıyor..."),
("Connection in progress. Please wait.", "Bağlantı sağlanıyor. Lütfen bekleyiniz."),
("Please try 1 minute later", "Lütfen 1 dakika sonra tekrar deneyiniz"),
("Login Error", "Giriş Hatalı"),
("Successful", "Başarılı"),
("Connected, waiting for image...", "Bağlandı. Görüntü bekleniyor..."),
("Name", "Ad"),
("Type", "Tip"),
("Modified", "Değiştirildi"),
("Size", "Boyut"),
("Show Hidden Files", "Gizli Dosyaları Göster"),
("Receive", "Al"),
("Send", "Gönder"),
("Refresh File", "Dosyayı yenile"),
("Local", "Yerel"),
("Remote", "Uzak"),
("Remote Computer", "Uzak Bilgisayar"),
("Local Computer", "Yerel Bilgisayar"),
("Confirm Delete", "Silmeyi Onayla"),
("Delete", "Sil"),
("Properties", "Özellikler"),
("Multi Select", "Çoklu Seçim"),
("Select All", "Tümünü Seç"),
("Unselect All", "Tüm Seçimi Kaldır"),
("Empty Directory", "Boş Klasör"),
("Not an empty directory", "Klasör boş değil"),
("Are you sure you want to delete this file?", "Bu dosyayı silmek istediğinize emin misiniz?"),
("Are you sure you want to delete this empty directory?", "Bu boş klasörü silmek istediğinize emin misiniz?"),
("Are you sure you want to delete the file of this directory?", "Bu klasördeki dosyayı silmek istediğinize emin misiniz?"),
("Do this for all conflicts", "Bunu tüm çakışmalar için yap"),
("This is irreversible!", "Bu işlem geri döndürülemez!"),
("Deleting", "Siliniyor"),
("files", "dosyalar"),
("Waiting", "Bekleniyor"),
("Finished", "Tamamlandı"),
("Speed", "Hız"),
("Custom Image Quality", "Özel Görüntü Kalitesi"),
("Privacy mode", "Gizlilik modu"),
("Block user input", "Kullanıcı girişini engelle"),
("Unblock user input", "Kullanı girişine izin ver"),
("Adjust Window", "Pencereyi Ayarla"),
("Original", "Orjinal"),
("Shrink", "Küçült"),
("Stretch", "Uzat"),
("Scrollbar", "Kaydırma çubuğu"),
("ScrollAuto", "Otomatik Kaydır"),
("Good image quality", "İyi görüntü kalitesi"),
("Balanced", "Dengelenmiş"),
("Optimize reaction time", "Tepki süresini optimize et"),
("Custom", "Özel"),
("Show remote cursor", "Uzaktaki fare imlecini göster"),
("Show quality monitor", "Kalite monitörünü göster"),
("Disable clipboard", "Hafızadaki kopyalanmışları engelle"),
("Lock after session end", "Bağlantıdan sonra kilitle"),
("Insert Ctrl + Alt + Del", "Ctrl + Alt + Del Ekle"),
("Insert Lock", "Kilit Ekle"),
("Refresh", "Yenile"),
("ID does not exist", "ID bulunamadı"),
("Failed to connect to rendezvous server", "ID oluşturma sunucusuna bağlanılamadı"),
("Please try later", "Daha sonra tekrar deneyiniz"),
("Remote desktop is offline", "Uzak masaüstü kapalı"),
("Key mismatch", "Anahtar uyumlu değil"),
("Timeout", "Zaman aşımı"),
("Failed to connect to relay server", "Relay sunucusuna bağlanılamadı"),
("Failed to connect via rendezvous server", "ID oluşturma sunucusuna bağlanılamadı"),
("Failed to connect via relay server", "Relay oluşturma sunucusuna bağlanılamadı"),
("Failed to make direct connection to remote desktop", "Uzak masaüstüne doğrudan bağlantı kurulamadı"),
("Set Password", "Şifre ayarla"),
("OS Password", "İşletim Sistemi Şifresi"),
("install_tip", "Kullanıcı Hesabı Denetimi nedeniyle, RustDesk bir uzak masaüstü olarak düzgün çalışmayabilir. Bu sorunu önlemek için, RustDesk'i sistem seviyesinde kurmak için aşağıdaki butona tıklayın."),
("Click to upgrade", "Yükseltmek için tıklayınız"),
("Configure", "Ayarla"),
("config_acc", "Masaüstünüzü dışarıdan kontrol etmek için RustDesk'e \"Erişilebilirlik\""),
("config_screen", "Masaüstünüzü dışarıdan kontrol etmek için RustDesk'e \"Ekran Kaydı\" iznini vermeniz gerekir."),
("Installing ...", "Yükleniyor ..."),
("Install", "Yükle"),
("Installation", "Kurulum"),
("Installation Path", "Kurulacak olan konum"),
("Create start menu shortcuts", "Başlangıca kısayol oluştur"),
("Create desktop icon", "Masaüstüne kısayol oluştur"),
("agreement_tip", "Kurulumu başlatarak, lisans sözleşmesinin şartlarını kabul etmiş olursunuz."),
("Accept and Install", "Kabul Et ve Yükle"),
("End-user license agreement", "Son kullanıcı lisans anlaşması"),
("Generating ...", "Oluşturuluyor..."),
("Your installation is lower version.", "Kurulumunuz alt sürümdür."),
("not_close_tcp_tip", "Tüneli kullanırken bu pencereyi kapatmayın"),
("Listening ...", "Dinleniyor..."),
("Remote Host", "Uzak Sunucu"),
("Remote Port", "Uzak Port"),
("Action", "Eylem"),
("Add", "Ekle"),
("Local Port", "Yerel Port"),
("Local Address", "Yerel Adres"),
("Change Local Port", "Yerel Port'u Değiştir"),
("setup_server_tip", "Daha hızlı bağlantı için kendi sunucunuzu kurun"),
("Too short, at least 6 characters.", "Çok kısa en az 6 karakter gerekli."),
("The confirmation is not identical.", "Doğrulama yapılamadı."),
("Permissions", "İzinler"),
("Accept", "Kabul Et"),
("Dismiss", "Reddet"),
("Disconnect", "Bağlanıyı kes"),
("Enable file copy and paste", "Dosya kopyalamaya ve yapıştırmaya izin ver"),
("Connected", "Bağlandı"),
("Direct and encrypted connection", "Doğrudan ve şifreli bağlantı"),
("Relayed and encrypted connection", "Aktarmalı ve şifreli bağlantı"),
("Direct and unencrypted connection", "Doğrudan ve şifrelenmemiş bağlantı"),
("Relayed and unencrypted connection", "Aktarmalı ve şifrelenmemiş bağlantı"),
("Enter Remote ID", "Uzak ID'yi Girin"),
("Enter your password", "Şifrenizi girin"),
("Logging in...", "Giriş yapılıyor..."),
("Enable RDP session sharing", "RDP oturum paylaşımını etkinleştir"),
("Auto Login", "Otomatik giriş"),
("Enable direct IP access", "Doğrudan IP Erişimini Etkinleştir"),
("Rename", "Yeniden adlandır"),
("Space", "Boşluk"),
("Create desktop shortcut", "Masaüstü kısayolu oluşturun"),
("Change Path", "Yolu değiştir"),
("Create Folder", "Klasör oluşturun"),
("Please enter the folder name", "Lütfen klasör adını girin"),
("Fix it", "Düzenle"),
("Warning", "Uyarı"),
("Login screen using Wayland is not supported", "Wayland kullanan giriş ekranı desteklenmiyor"),
("Reboot required", "Yeniden başlatma gerekli"),
("Unsupported display server", "Desteklenmeyen görüntü sunucusu"),
("x11 expected", "x11 bekleniyor"),
("Port", "Port"),
("Settings", "Ayarlar"),
("Username", "Kullanıcı Adı"),
("Invalid port", "Geçersiz port"),
("Closed manually by the peer", "Eş tarafından manuel olarak kapatıldı"),
("Enable remote configuration modification", "Uzaktan yapılandırma değişikliğini etkinleştir"),
("Run without install", "Yüklemeden çalıştır"),
("Connect via relay", ""),
("Always connect via relay", "Always connect via relay"),
("whitelist_tip", "Bu masaüstüne yalnızca yetkili IP adresleri bağlanabilir"),
("Login", "Giriş yap"),
("Verify", ""),
("Remember me", ""),
("Trust this device", ""),
("Verification code", ""),
("verification_tip", ""),
("Logout", "Çıkış yap"),
("Tags", "Etiketler"),
("Search ID", "ID Arama"),
("whitelist_sep", "Virgül, noktalı virgül, boşluk veya yeni satır ile ayrılmış"),
("Add ID", "ID Ekle"),
("Add Tag", "Etiket Ekle"),
("Unselect all tags", "Tüm etiketlerin seçimini kaldır"),
("Network error", "Bağlantı hatası"),
("Username missed", "Kullanıcı adı boş"),
("Password missed", "Şifre boş"),
("Wrong credentials", "Yanlış kimlik bilgileri"),
("The verification code is incorrect or has expired", ""),
("Edit Tag", "Etiketi düzenle"),
("Forget Password", "Şifreyi Unut"),
("Favorites", "Favoriler"),
("Add to Favorites", "Favorilere ekle"),
("Remove from Favorites", "Favorilerden çıkar"),
("Empty", "Boş"),
("Invalid folder name", "Geçersiz klasör adı"),
("Socks5 Proxy", "Socks5 Proxy"),
("Socks5/Http(s) Proxy", "Socks5/Http(s) Proxy"),
("Discovered", "Keşfedilenler"),
("install_daemon_tip", "Başlangıçta başlamak için sistem hizmetini yüklemeniz gerekir."),
("Remote ID", "Uzak ID"),
("Paste", "Yapıştır"),
("Paste here?", "Buraya yapıştır?"),
("Are you sure to close the connection?", "Bağlantıyı kapatmak istediğinize emin misiniz?"),
("Download new version", "Yeni sürümü indir"),
("Touch mode", "Dokunmatik mod"),
("Mouse mode", "Fare modu"),
("One-Finger Tap", "Tek Parmakla Dokunma"),
("Left Mouse", "Sol Fare"),
("One-Long Tap", "Tek-Uzun Dokunma"),
("Two-Finger Tap", "İki-Parmak Dokunma"),
("Right Mouse", "Sağ Fare"),
("One-Finger Move", "Tek Parmakla Hareket"),
("Double Tap & Move", "Çift Dokun ve Taşı"),
("Mouse Drag", "Fare Sürükleme"),
("Three-Finger vertically", "Dikey olarak üç parmak"),
("Mouse Wheel", "Fare Tekerliği"),
("Two-Finger Move", "İki Parmakla Hareket"),
("Canvas Move", "Tuval Hareketi"),
("Pinch to Zoom", "İki parmakla yakınlaştır"),
("Canvas Zoom", "Tuval Yakınlaştırma"),
("Reset canvas", "Tuvali sıfırla"),
("No permission of file transfer", "Dosya aktarımı izni yok"),
("Note", "Not"),
("Connection", "Bağlantı"),
("Share screen", "Ekranı Paylaş"),
("Chat", "Mesajlaş"),
("Total", "Toplam"),
("items", "öğeler"),
("Selected", "Seçildi"),
("Screen Capture", "Ekran görüntüsü"),
("Input Control", "Giriş Kontrolü"),
("Audio Capture", "Ses Yakalama"),
("Do you accept?", "Kabul ediyor musun?"),
("Open System Setting", "Sistem Ayarını"),
("How to get Android input permission?", "Android giriş izni nasıl alınır?"),
("android_input_permission_tip1", "Uzak bir cihazın Android cihazınızı fare veya dokunma yoluyla kontrol edebilmesi için, RustDesk'in \"Erişilebilirlik\" özelliğini kullanmasına izin vermelisiniz."),
("android_input_permission_tip2", "Sonraki sistem ayarları sayfasına gidin, [Yüklü Hizmetler]'i bulun ve erişin, [RustDesk Girişi] hizmetini etkinleştirin."),
("android_new_connection_tip", "Yeni bir kontrol talebi alındı, cihazınızı kontrol etmesine izin verilsin mi."),
("android_service_will_start_tip", "Ekran Yakalamanın etkinleştirilmesi, hizmeti otomatik olarak başlatacak ve diğer cihazların bu cihazdan bağlantı talep etmesine izin verecektir."),
("android_stop_service_tip", "Hizmetin kapatılması, kurulan tüm bağlantıları otomatik olarak kapatacaktır."),
("android_version_audio_tip", "Mevcut Android sürümü ses yakalamayı desteklemiyor, lütfen Android 10 veya sonraki bir sürüme yükseltin."),
("android_start_service_tip", ""),
("android_permission_may_not_change_tip", ""),
("Account", "Hesap"),
("Overwrite", "üzerine yaz"),
("This file exists, skip or overwrite this file?", "Bu dosya var, bu dosya atlansın veya üzerine yazılsın mı?"),
("Quit", "Çıkış"),
("Help", "Yardım"),
("Failed", "Arızalı"),
("Succeeded", "başarılı"),
("Someone turns on privacy mode, exit", "Birisi gizlilik modunu açarsa, çık"),
("Unsupported", "desteklenmiyor"),
("Peer denied", "eş reddedildi"),
("Please install plugins", "Lütfen eklentileri yükleyin"),
("Peer exit", "eş çıkışı"),
("Failed to turn off", "kapatılamadı"),
("Turned off", "Kapatıldı"),
("Language", "Dil"),
("Keep RustDesk background service", "RustDesk arka plan hizmetini sürdürün"),
("Ignore Battery Optimizations", "Pil Optimizasyonlarını Yoksay"),
("android_open_battery_optimizations_tip", ""),
("Start on boot", ""),
("Start the screen sharing service on boot, requires special permissions", ""),
("Connection not allowed", "bağlantıya izin verilmedi"),
("Legacy mode", "Eski mod"),
("Map mode", "Haritalama modu"),
("Translate mode", "Çeviri modu"),
("Use permanent password", "Kalıcı şifre kullan"),
("Use both passwords", "İki şifreyide kullan"),
("Set permanent password", "Kalıcı şifre oluştur"),
("Enable remote restart", "Uzaktan yeniden başlatmayı aktif et"),
("Restart remote device", "Uzaktaki cihazı yeniden başlat"),
("Are you sure you want to restart", "Yeniden başlatmak istediğinize emin misin?"),
("Restarting remote device", "Uzaktan yeniden başlatılıyor"),
("remote_restarting_tip", "remote_restarting_tip"),
("Copied", "Kopyalandı"),
("Exit Fullscreen", "Tam ekrandan çık"),
("Fullscreen", "Tam ekran"),
("Mobile Actions", "Mobil İşlemler"),
("Select Monitor", "Monitörü Seç"),
("Control Actions", "Kontrol Eylemleri"),
("Display Settings", "Görüntü ayarları"),
("Ratio", "Oran"),
("Image Quality", "Görüntü kalitesi"),
("Scroll Style", "Kaydırma Stili"),
("Show Toolbar", ""),
("Hide Toolbar", ""),
("Direct Connection", "Doğrudan Bağlantı"),
("Relay Connection", "Röle Bağlantısı"),
("Secure Connection", "Güvenli bağlantı"),
("Insecure Connection", "Güvenli Bağlantı"),
("Scale original", "Orijinali ölçeklendir"),
("Scale adaptive", "Ölçek uyarlanabilir"),
("General", "Genel"),
("Security", "Güvenlik"),
("Theme", "Tema"),
("Dark Theme", "Koyu Tema"),
("Light Theme", ""),
("Dark", "Koyu"),
("Light", "ık"),
("Follow System", "Sisteme Uy"),
("Enable hardware codec", "Donanımsal codec aktif et"),
("Unlock Security Settings", "Güvenlik Ayarlarını"),
("Enable audio", "Sesi Aktif Et"),
("Unlock Network Settings", "Ağ Ayarlarını"),
("Server", "Sunucu"),
("Direct IP Access", "Direk IP Erişimi"),
("Proxy", "Vekil"),
("Apply", "Uygula"),
("Disconnect all devices?", "Tüm cihazların bağlantısını kes?"),
("Clear", "Temizle"),
("Audio Input Device", "Ses Giriş Aygıtı"),
("Use IP Whitelisting", "IP Beyaz Listeyi Kullan"),
("Network", ""),
("Pin Toolbar", ""),
("Unpin Toolbar", ""),
("Recording", "Kayıt Ediliyor"),
("Directory", "Klasör"),
("Automatically record incoming sessions", "Gelen oturumları otomatik olarak kayıt et"),
("Automatically record outgoing sessions", ""),
("Change", "Değiştir"),
("Start session recording", "Oturum kaydını başlat"),
("Stop session recording", "Oturum kaydını sonlandır"),
("Enable recording session", "Kayıt Oturumunu Aktif Et"),
("Enable LAN discovery", "Yerel Ağ Keşfine İzin Ver"),
("Deny LAN discovery", "Yerl Ağ Keşfine İzin Verme"),
("Write a message", "Bir mesaj yazın"),
("Prompt", "İstem"),
("Please wait for confirmation of UAC...", "UAC onayı için lütfen bekleyiniz..."),
("elevated_foreground_window_tip", "elevated_foreground_window_tip"),
("Disconnected", "Bağlantı Kesildi"),
("Other", "Diğer"),
("Confirm before closing multiple tabs", "Çoklu sekmeleri kapatmadan önce onayla"),
("Keyboard Settings", "Klavye Ayarları"),
("Full Access", "Tam Erişim"),
("Screen Share", "Ekran Paylaşımı"),
("Wayland requires Ubuntu 21.04 or higher version.", "Wayland, Ubuntu 21.04 veya daha yüksek bir sürüm gerektirir."),
("Wayland requires higher version of linux distro. Please try X11 desktop or change your OS.", "Wayland, linux dağıtımının daha yüksek bir sürümünü gerektirir. Lütfen X11 masaüstünü deneyin veya işletim sisteminizi değiştirin."),
("JumpLink", "View"),
("Please Select the screen to be shared(Operate on the peer side).", "Lütfen paylaşılacak ekranı seçiniz (Ekran tarafında çalıştırın)."),
("Show RustDesk", "RustDesk'i Göster"),
("This PC", "Bu PC"),
("or", "veya"),
("Continue with", "bununla devam et"),
("Elevate", "Yükseltme"),
("Zoom cursor", "Yakınlaştırma imleci"),
("Accept sessions via password", "Oturumları parola ile kabul etme"),
("Accept sessions via click", "Tıklama yoluyla oturumları kabul edin"),
("Accept sessions via both", "Her ikisi aracılığıyla oturumları kabul edin"),
("Please wait for the remote side to accept your session request...", "Lütfen uzak tarafın oturum isteğinizi kabul etmesini bekleyin..."),
("One-time Password", "Tek Kullanımlık Şifre"),
("Use one-time password", "Tek seferlik parola kullanın"),
("One-time password length", "Tek seferlik şifre uzunluğu"),
("Request access to your device", "Cihazınıza erişim talep edin"),
("Hide connection management window", "Bağlantı yönetimi penceresini gizle"),
("hide_cm_tip", "Oturumları yalnızca parola ile kabul edebilir ve kalıcı parola kullanıyorsanız gizlemeye izin verin"),
("wayland_experiment_tip", "Wayland desteği deneysel aşamada olduğundan, gerektiğinde X11'i kullanmanız önerilir"),
("Right click to select tabs", "Sekmeleri seçmek için sağ tıklayın"),
("Skipped", "Atlandı"),
("Add to address book", "Adres Defterine Ekle"),
("Group", "Grup"),
("Search", "Ara"),
("Closed manually by web console", "Web konsoluyla manuel olarak kapatıldı"),
("Local keyboard type", "Yerel klavye türü"),
("Select local keyboard type", "Yerel klavye türünü seçin"),
("software_render_tip", "Linux altında Nvidia grafik kartı kullanıyorsanız ve uzak pencere bağlandıktan hemen sonra kapanıyorsa, açık kaynaklı Nouveau sürücüsüne geçmeyi ve yazılım renderleme seçeneğini seçmeyi deneyin. Yazılımı yeniden başlatmanız gerekebilir."),
("Always use software rendering", "Her zaman yazılım renderleme kullan"),
("config_input", "Uzaktaki masaüstünü klavye ile kontrol etmek için RustDesk'e \"Giriş İzleme\" izinleri vermelisiniz."),
("config_microphone", "Uzaktan konuşmak için RustDesk'e \"Ses Kaydı\" izinleri vermelisiniz."),
("request_elevation_tip", "Ayrıca, uzak tarafta biri varsa yükseltme isteğinde bulunabilirsiniz."),
("Wait", "Bekle"),
("Elevation Error", "Yükseltme Hatası"),
("Ask the remote user for authentication", "Uzaktaki kullanıcıdan kimlik doğrulamasını isteyin"),
("Choose this if the remote account is administrator", "Uzak hesap yönetici ise bunu seçin"),
("Transmit the username and password of administrator", "Yönetici kullanıcı adı ve parolasını iletim yapın"),
("still_click_uac_tip", "Uzaktaki kullanıcının çalışan RustDesk'in UAC penceresinde hala Tamam'ı tıklaması gerekmektedir."),
("Request Elevation", "Yükseltme İsteği"),
("wait_accept_uac_tip", "Lütfen uzaktaki kullanıcının UAC iletişim kutusunu kabul etmesini bekleyin."),
("Elevate successfully", "Başarıyla yükseltildi"),
("uppercase", "büyük harf"),
("lowercase", "küçük harf"),
("digit", "rakam"),
("special character", "özel karakter"),
("length>=8", "uzunluk>=8"),
("Weak", "Zayıf"),
("Medium", "Orta"),
("Strong", "Güçlü"),
("Switch Sides", "Tarafları Değiştir"),
("Please confirm if you want to share your desktop?", "Masaüstünüzü paylaşmak isteyip istemediğinizi onaylayın?"),
("Display", "Görüntüle"),
("Default View Style", "Varsayılan Görünüm Stili"),
("Default Scroll Style", "Varsayılan Kaydırma Stili"),
("Default Image Quality", "Varsayılan Görüntü Kalitesi"),
("Default Codec", "Varsayılan Kodlayıcı"),
("Bitrate", "Bit Hızı"),
("FPS", "FPS"),
("Auto", "Otomatik"),
("Other Default Options", "Diğer Varsayılan Seçenekler"),
("Voice call", "Sesli görüşme"),
("Text chat", "Metin sohbeti"),
("Stop voice call", "Sesli görüşmeyi durdur"),
("relay_hint_tip", "Doğrudan bağlanmak mümkün olmayabilir; röle aracılığıyla bağlanmayı deneyebilirsiniz. Ayrıca, ilk denemenizde bir röle kullanmak istiyorsanız, ID'nin sonuna \"/r\" ekleyebilir veya son oturum kartındaki \"Her Zaman Röle Üzerinden Bağlan\" seçeneğini seçebilirsiniz."),
("Reconnect", "Yeniden Bağlan"),
("Codec", "Kodlayıcı"),
("Resolution", "Çözünürlük"),
("No transfers in progress", "Devam eden aktarımlar yok"),
("Set one-time password length", "Bir seferlik parola uzunluğunu ayarla"),
("RDP Settings", "RDP Ayarları"),
("Sort by", "Sırala"),
("New Connection", "Yeni Bağlantı"),
("Restore", "Geri Yükle"),
("Minimize", "Simge Durumuna Küçült"),
("Maximize", "Büyüt"),
("Your Device", "Cihazınız"),
("empty_recent_tip", "Üzgünüz, henüz son oturum yok!\nYeni bir plan yapma zamanı."),
("empty_favorite_tip", "Henüz favori cihazınız yok mu?\nBağlanacak ve favorilere eklemek için birini bulalım!"),
("empty_lan_tip", "Hayır, henüz hiçbir cihaz bulamadık gibi görünüyor."),
("empty_address_book_tip", "Üzgünüm, şu anda adres defterinizde kayıtlı cihaz yok gibi görünüyor."),
("Empty Username", "Boş Kullanıcı Adı"),
("Empty Password", "Boş Parola"),
("Me", "Ben"),
("identical_file_tip", "Bu dosya, cihazın dosyası ile aynıdır."),
("show_monitors_tip", "Monitörleri araç çubuğunda göster"),
("View Mode", "Görünüm Modu"),
("login_linux_tip", "X masaüstü oturumu başlatmak için uzaktaki Linux hesabına giriş yapmanız gerekiyor"),
("verify_rustdesk_password_tip", "RustDesk parolasını doğrulayın"),
("remember_account_tip", "Bu hesabı hatırla"),
("os_account_desk_tip", "Bu hesap, uzaktaki işletim sistemine giriş yapmak ve başsız masaüstü oturumunu etkinleştirmek için kullanılır."),
("OS Account", "İşletim Sistemi Hesabı"),
("another_user_login_title_tip", "Başka bir kullanıcı zaten oturum açtı"),
("another_user_login_text_tip", "Bağlantıyı Kapat"),
("xorg_not_found_title_tip", "Xorg bulunamadı"),
("xorg_not_found_text_tip", "Lütfen Xorg'u yükleyin"),
("no_desktop_title_tip", "Masaüstü mevcut değil"),
("no_desktop_text_tip", "Lütfen GNOME masaüstünü yükleyin"),
("No need to elevate", "Yükseltmeye gerek yok"),
("System Sound", "Sistem Ses"),
("Default", "Varsayılan"),
("New RDP", "Yeni RDP"),
("Fingerprint", "Parmak İzi"),
("Copy Fingerprint", "Parmak İzini Kopyala"),
("no fingerprints", "parmak izi yok"),
("Select a peer", "Bir cihaz seçin"),
("Select peers", "Cihazları seçin"),
("Plugins", "Eklentiler"),
("Uninstall", "Kaldır"),
("Update", "Güncelle"),
("Enable", "Etkinleştir"),
("Disable", "Devre Dışı Bırak"),
("Options", "Seçenekler"),
("resolution_original_tip", "Orijinal çözünürlük"),
("resolution_fit_local_tip", "Yerel çözünürlüğe sığdır"),
("resolution_custom_tip", "Özel çözünürlük"),
("Collapse toolbar", "Araç çubuğunu daralt"),
("Accept and Elevate", "Kabul et ve yükselt"),
("accept_and_elevate_btn_tooltip", "Bağlantıyı kabul et ve UAC izinlerini yükselt."),
("clipboard_wait_response_timeout_tip", "Kopyalama yanıtı için zaman aşımına uğradı."),
("Incoming connection", "Gelen bağlantı"),
("Outgoing connection", "Giden bağlantı"),
("Exit", "Çıkış"),
("Open", ""),
("logout_tip", "Çıkış yapmak istediğinizden emin misiniz?"),
("Service", "Hizmet"),
("Start", "Başlat"),
("Stop", "Durdur"),
("exceed_max_devices", "Yönetilen cihazların maksimum sayısına ulaştınız."),
("Sync with recent sessions", "Son oturumlarla senkronize et"),
("Sort tags", "Etiketleri sırala"),
("Open connection in new tab", "Bağlantıyı yeni sekmede aç"),
("Move tab to new window", "Sekmeyi yeni pencereye taşı"),
("Can not be empty", "Boş olamaz"),
("Already exists", "Zaten var"),
("Change Password", "Parolayı Değiştir"),
("Refresh Password", "Parolayı Yenile"),
("ID", "Kimlik"),
("Grid View", "Izgara Görünümü"),
("List View", "Liste Görünümü"),
("Select", "Seç"),
("Toggle Tags", "Etiketleri Değiştir"),
("pull_ab_failed_tip", "Adres defterini yenileyemedi"),
("push_ab_failed_tip", "Adres defterini sunucuya senkronize edemedi"),
("synced_peer_readded_tip", "Son oturumlar listesinde bulunan cihazlar adres defterine geri senkronize edilecektir."),
("Change Color", "Rengi Değiştir"),
("Primary Color", "Birincil Renk"),
("HSV Color", "HSV Rengi"),
("Installation Successful!", ""),
("Installation failed!", ""),
("Reverse mouse wheel", ""),
("{} sessions", ""),
("scam_title", ""),
("scam_text1", ""),
("scam_text2", ""),
("Don't show again", ""),
("I Agree", ""),
("Decline", ""),
("Timeout in minutes", ""),
("auto_disconnect_option_tip", ""),
("Connection failed due to inactivity", ""),
("Check for software update on startup", ""),
("upgrade_rustdesk_server_pro_to_{}_tip", ""),
("pull_group_failed_tip", ""),
("Filter by intersection", ""),
("Remove wallpaper during incoming sessions", ""),
("Test", ""),
("display_is_plugged_out_msg", ""),
("No displays", ""),
("Open in new window", ""),
("Show displays as individual windows", ""),
("Use all my displays for the remote session", ""),
("selinux_tip", ""),
("Change view", ""),
("Big tiles", ""),
("Small tiles", ""),
("List", ""),
("Virtual display", ""),
("Plug out all", ""),
("True color (4:4:4)", ""),
("Enable blocking user input", ""),
("id_input_tip", ""),
("privacy_mode_impl_mag_tip", ""),
("privacy_mode_impl_virtual_display_tip", ""),
("Enter privacy mode", ""),
("Exit privacy mode", ""),
("idd_not_support_under_win10_2004_tip", ""),
("input_source_1_tip", ""),
("input_source_2_tip", ""),
("Swap control-command key", ""),
("swap-left-right-mouse", ""),
("2FA code", ""),
("More", ""),
("enable-2fa-title", ""),
("enable-2fa-desc", ""),
("wrong-2fa-code", ""),
("enter-2fa-title", ""),
("Email verification code must be 6 characters.", ""),
("2FA code must be 6 digits.", ""),
("Multiple Windows sessions found", ""),
("Please select the session you want to connect to", ""),
("powered_by_me", ""),
("outgoing_only_desk_tip", ""),
("preset_password_warning", ""),
("Security Alert", ""),
("My address book", ""),
("Personal", ""),
("Owner", ""),
("Set shared password", ""),
("Exist in", ""),
("Read-only", ""),
("Read/Write", ""),
("Full Control", ""),
("share_warning_tip", ""),
("Everyone", ""),
("ab_web_console_tip", ""),
("allow-only-conn-window-open-tip", ""),
("no_need_privacy_mode_no_physical_displays_tip", ""),
("Follow remote cursor", ""),
("Follow remote window focus", ""),
("default_proxy_tip", ""),
("no_audio_input_device_tip", ""),
("Incoming", ""),
("Outgoing", ""),
("Clear Wayland screen selection", ""),
("clear_Wayland_screen_selection_tip", ""),
("confirm_clear_Wayland_screen_selection_tip", ""),
("android_new_voice_call_tip", ""),
("texture_render_tip", ""),
("Use texture rendering", ""),
("Floating window", ""),
("floating_window_tip", ""),
("Keep screen on", ""),
("Never", ""),
("During controlled", ""),
("During service is on", ""),
("Capture screen using DirectX", ""),
("Back", ""),
("Apps", ""),
("Volume up", ""),
("Volume down", ""),
("Power", ""),
("Telegram bot", ""),
("enable-bot-tip", ""),
("enable-bot-desc", ""),
("cancel-2fa-confirm-tip", ""),
("cancel-bot-confirm-tip", ""),
("About RustDesk", ""),
("Send clipboard keystrokes", ""),
("network_error_tip", ""),
("Unlock with PIN", ""),
("Requires at least {} characters", ""),
("Wrong PIN", ""),
("Set PIN", ""),
("Enable trusted devices", ""),
("Manage trusted devices", ""),
("Platform", ""),
("Days remaining", ""),
("enable-trusted-devices-tip", ""),
("Parent directory", ""),
("Resume", ""),
("Invalid file name", ""),
("one-way-file-transfer-tip", ""),
("Authentication Required", ""),
("Authenticate", ""),
("web_id_input_tip", ""),
("Download", ""),
("Upload folder", ""),
("Upload files", ""),
("Clipboard is synchronized", ""),
("Update client clipboard", ""),
("Untagged", ""),
("new-version-of-{}-tip", ""),
("Accessible devices", ""),
("upgrade_remote_rustdesk_client_to_{}_tip", ""),
("d3d_render_tip", ""),
("Use D3D rendering", ""),
("Printer", ""),
("printer-os-requirement-tip", ""),
("printer-requires-installed-{}-client-tip", ""),
("printer-{}-not-installed-tip", ""),
("printer-{}-ready-tip", ""),
("Install {} Printer", ""),
("Outgoing Print Jobs", ""),
("Incoming Print Jobs", ""),
("Incoming Print Job", ""),
("use-the-default-printer-tip", ""),
("use-the-selected-printer-tip", ""),
("auto-print-tip", ""),
("print-incoming-job-confirm-tip", ""),
("remote-printing-disallowed-tile-tip", ""),
("remote-printing-disallowed-text-tip", ""),
("save-settings-tip", ""),
("dont-show-again-tip", ""),
("Take screenshot", ""),
("Taking screenshot", ""),
("screenshot-merged-screen-not-supported-tip", ""),
("screenshot-action-tip", ""),
("Save as", ""),
("Copy to clipboard", ""),
("Enable remote printer", ""),
("Downloading {}", ""),
("{} Update", ""),
("{}-to-update-tip", ""),
("download-new-version-failed-tip", ""),
("Auto update", ""),
("update-failed-check-msi-tip", ""),
("websocket_tip", ""),
("Use WebSocket", ""),
("Trackpad speed", ""),
("Default trackpad speed", ""),
("Numeric one-time password", ""),
("Enable IPv6 P2P connection", ""),
("Enable UDP hole punching", ""),
("View camera", "Kamerayı görüntüle"),
("Enable camera", ""),
("No cameras", ""),
("view_camera_unsupported_tip", ""),
("Terminal", ""),
("Enable terminal", ""),
("New tab", ""),
("Keep terminal sessions on disconnect", ""),
("Terminal (Run as administrator)", ""),
("terminal-admin-login-tip", ""),
("Failed to get user token.", ""),
("Incorrect username or password.", ""),
("The user is not an administrator.", ""),
("Failed to check if the user is an administrator.", ""),
("Supported only in the installed version.", ""),
("elevation_username_tip", ""),
("Preparing for installation ...", ""),
("Show my cursor", ""),
("Scale custom", ""),
("Custom scale slider", ""),
("Decrease", ""),
("Increase", ""),
("Show virtual mouse", ""),
("Virtual mouse size", ""),
("Small", ""),
("Large", ""),
("Show virtual joystick", ""),
("Edit note", ""),
("Alias", ""),
("ScrollEdge", ""),
].iter().cloned().collect();
}