JetBrains bổ sung hỗ trợ Wayland cho IntelliJ

Hỗ trợ Wayland

Hỗ trợ Wayland đến với một trong những sản phẩm của jetbrains

Vài ngày trước, JetBrains ra mắt thông qua một bài đăng trên blog đang thực hiện những thay đổi thích hợp để triển khai hỗ trợ cho giao thức Wayland trên nền tảng "IntelliJ" và các môi trường phát triển tích hợp được xây dựng trên nền tảng đó.

JetBrains đề cập trong ấn phẩm của bạn rằng "bản cập nhật này sẽ mang lại một loạt lợi ích" Và trong số những thay đổi mà việc bổ sung hỗ trợ Wayland cho IntelliJ đáng tự hào là giải pháp mở rộng quy mô theo tỷ lệ, cải tiến tích hợp với WSLg, cùng nhiều thay đổi khác.

Mặc dù hỗ trợ Wayland vẫn chưa hoàn thiện nhưng các tính năng hiện có cho phép chúng tôi chạy một số ứng dụng Java Swing và AWT trên Wayland. Trong bài đăng blog này, chúng ta sẽ đi sâu vào những tiến bộ này và khám phá một số thách thức kỹ thuật do cách tiếp cận mới lạ này đặt ra đối với máy chủ hiển thị.

Ngoài điều này, người ta lưu ý rằng Hỗ trợ Wayland sẽ mang lại một số thay đổi phát triển, sẽ phù hợp với tất cả các nhà phát triển ứng dụng đồ họa Java, vì đã đề cập rằng những điều này sẽ bao gồm việc bổ sung hỗ trợ Wayland cho OpenJDK.

Nó được đề cập rằng một khi những thay đổi đã chuẩn bị được đưa vào Trong phiên bản tương lai của OpenJDK, Các chương trình Java sẽ có thể chạy trực tiếp trong môi trường dựa trên Wayland mà không cần sử dụng lớp XWayland. Hiện có sẵn để thử nghiệm là JetBrainsRuntime 21, một nhánh của OpenJDK 21 có hỗ trợ Wayland tích hợp được sử dụng trong các sản phẩm JetBrains.

Tạo bản địa Java Wayland nói dễ hơn làm. Theo thuật ngữ của JDK, điều này tương đương với việc tạo một Bộ công cụ mới, là cái nôi của hầu hết mọi thứ liên quan đến GUI. Điều này bao gồm đồ họa, xử lý con trỏ chuột, dịch tổ hợp phím, hiển thị màn hình giật gân và cung cấp phương thức nhập liệu; tất cả điều này phải được thực hiện từ đầu. Ví dụ: bộ công cụ X11 có khoảng 50.000 dòng Java và 20.000 dòng mã gốc, trong đó chỉ một phần nhỏ có thể tái sử dụng được trong Wayland.

Từ quan điểm cấp cao, nhiệm vụ khá đơn giản: một API, Wayland, phải được dịch sang một API khác, Java và ngược lại.

Trong số các ưu điểm của việc hỗ trợ đầy đủ cho Wayland trong IntelliJ IDE là: giải quyết các vấn đề tồn tại lâu dài với XWayland liên quan đến văn bản bị mờ khi bật chia tỷ lệ phân đoạn, loại bỏ các vấn đề bảo mật vốn có của X11 (ví dụ: quyền truy cập vào tất cả các sự kiện đầu vào và cho phép thay thế các tổ hợp phím giả), tích hợp hoàn toàn với môi trường WSL (Hệ thống con Windows cho Linux) bằng Wayland, khả năng đạt được hiệu suất kết xuất cao hơn và khả năng phản hồi giao diện của người dùng.

Dự án Wakefield đang nỗ lực bổ sung hỗ trợ Wayland cho OpenJDK cùng với các kỹ sư của Oracle và dưới sự bảo trợ của cộng đồng OpenJDK. Ở giai đoạn phát triển hiện tại, bộ công cụ được phát triển hỗ trợ kết xuất phần mềm, trang trí cửa sổ tối thiểu, thay đổi kích thước, mở, thu nhỏ và di chuyển các cửa sổ, mở toàn màn hình, cửa sổ bật lên (dùng trong menu), mức thu phóng riêng cho từng màn hình, hoạt động trên Màn hình HiDPI, điều hướng thông qua đầu vào chuột và bàn phím.

Dự án vẫn chưa kết thúc giai đoạn phát triển, nhưng cần lưu ý rằng chức năng được triển khai đủ để chạy một số ứng dụng Java sử dụng khung Swing và AWT (Bộ công cụ cửa sổ trừu tượng) trong môi trường dựa trên Wayland.

Hiệu suất kết xuất của phần mềm hiện có khi sử dụng Wayland tương đương với hiệu suất khi chạy phiên bản X11 của IntelliJ. Trong số các nhiệm vụ ưu tiên được lên kế hoạch triển khai trong những tháng tới, có những nhiệm vụ sau: kết xuất được tăng tốc phần cứng với sự hỗ trợ cho API đồ họa Vulkan; hỗ trợ các phương thức nhập liệu, clipboard và các thao tác kéo và thả; khả năng hiển thị trình bảo vệ màn hình; có nghĩa là điều hướng giữa các cửa sổ bằng phím tắt.

Cuối cùng nếu bạn muốn biết thêm về nó, bạn có thể kiểm tra các chi tiết Trong liên kết sau đây.


Để lại bình luận của bạn

địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu bằng *

*

*

  1. Chịu trách nhiệm về dữ liệu: Miguel Ángel Gatón
  2. Mục đích của dữ liệu: Kiểm soát SPAM, quản lý bình luận.
  3. Hợp pháp: Sự đồng ý của bạn
  4. Truyền thông dữ liệu: Dữ liệu sẽ không được thông báo cho các bên thứ ba trừ khi có nghĩa vụ pháp lý.
  5. Lưu trữ dữ liệu: Cơ sở dữ liệu do Occentus Networks (EU) lưu trữ
  6. Quyền: Bất cứ lúc nào bạn có thể giới hạn, khôi phục và xóa thông tin của mình.