X410 version 3.8.1 fixes multi-monitor related bugs and improves the popup menu management on HiDPI screens.
Fixed the popup menu and tooltip location problem when a GUI app has multiple tool windows across multiple monitors.
IntelliJ IDEA and other JetBrains products should now correctly restore their window layout even when you have multiple monitors connected to your system.
Improved positioning sub-popup menus relative to their parent popup menu.
Tall popup menus are now automatically resized to ensure their visibility within the current monitor. Please note that X410 can only resize the menu window; X410 cannot add a scrollbar or buttons for viewing all the menu items. But modern apps usually recognize the new size and automatically adjust the UI that allows accessing all the menu items.
X410 version 3.8.0 brings a re-parenting window manager to Windows!
-
X410 now has a re-parenting window manager option for Windowed Apps mode.
Virtually all modern window managers for Linux GUI desktop environments such as Ubuntu, KDE, Xfce etc. are re-parenting the GUI apps; one or more extra outer windows are added to show window title and buttons as well as other visual decorations without actually affecting the GUI app itself.
Those extra parent windows are not technically needed for X410 as those window buttons and decorations are handled by Windows. However, as re-parenting window managers are so common on Linux desktop environments, some Linux GUI apps expect such outer parent window to always exist when they update their user interface or calculate their screen position (ex. Apache NetBeans 19).
The new reparenting mode in X410 should greatly improve the compatibility when running Linux GUI apps. You should no longer need to worry about setting up extra environment variables (ex.
_JAVA_AWT_WM_NONREPARENTING
) or tweaking configurations for your Linux GUI apps; just run them and they shall be ready!If you prefer the previous non-reparenting window manager, you can of course simply uncheck the 'Re-parenting window manager' option in X410.
-
X410 now more consistently and accurately selects a target window while drag-and-drop an item on HiDPI screens in Windowed Apps mode. You should also see fewer flickering screens for some apps (ex. Eclipse IDE) during their drag-and-drop operations.
-
Window decoration hints from Linux GUI apps are now interpreted more naturally logical to the management actions allowed for the window. For example, if a window is allowed to be resizable, maximize and minimize buttons are added regardless of its window decoration hints about those buttons (ex. KDE Dolphin).
-
X410 now tries to ensure the visibility of tooltips and popup menus within the current monitor. This should be handy for systems with multi-monitors and HiDPI screens. But please keep in mind that the final position of those tooltips and popup menus is determined by the app, not X410. Especially when you enable the scaling option in X410, popup menus might be placed outside of the current monitor and become unreachable as Linux GUI apps are not actually aware of their scaled size and position.
-
X410 now correctly detects the IP address for WSL2 version 2.0 and higher even when its experimental features are enabled. For your information, Microsoft added new experimental features to WSL2 in the recently released version 2.0. When you enable one of those features,
mirrored
networking mode orfirewall
, WSL2 replaces its existing virtual network adapter with a new one that has a different name, 'vEthernet (WSL (Hyper-V firewall))'. And that caused problems for X410.
JetBrains resurrects the title bar in its new UI for WSL users. Here is a workaround to remove it!
JetBrains added more hurdles to block WSL and SSH X11 forwarding users from enjoying the new UI. Please read the following post if you are interested in workarounds for using the new UI with X410.
Enabling the new UI in IntelliJ IDEA running on WSL or over SSH X11 forwardingStarting from version 3.7.0, X410 supports running JetBrains products such as IntelliJ IDEA in their new UI without the native Windows title bar. However, JetBrains recently released a new version 2023.2.1 for some of their products and the Windows title bar is brought back for WSL users. If you are running JetBrains products over SSH X11 forwarding from a regular Linux machine, they run cleanly without the title bar as expected.
It seems JetBrains was trying to fix the following problem and ended up penalizing WSL users.
Menu bar missing on all windows except one on tiling WM / under WSLg
While investigating the problem for X410, we found the following snippets in IntelliJ IDEA Community edition open-source codes.
internal val hideNativeLinuxTitleSupported: Boolean
get() = SystemInfoRt.isXWindow
&& ExperimentalUI.isNewUI()
&& JBR.isWindowMoveSupported()
&& !X11UiUtil.isWSL()
&& !X11UiUtil.isTileWM()
public static boolean isWSL() {
return SystemInfoRt.isXWindow && System.getenv("WSL_DISTRO_NAME") != null;
}
As you can see from the codes, IntelliJ IDEA specifically checks for WSL and disables its title bar hiding feature regardless of the X server it runs on. Hence, this issue cannot be fixed from X410. But fortunately, you should be able to trick IntelliJ IDEA by removing the environment variable it uses for identifying WSL, i.e., WSL_DISTRO_NAME
, before launching it. You can execute the following command to remove the variable.
unset WSL_DISTRO_NAME
Unsetting WSL_DISTRO_NAME
environment variable should also work for other JetBrains products as they share their source codes. Since WSL_DISTRO_NAME
is rarely used in WSL, removing it should have minimal impact on running other Linux GUI apps. You can of course also restore it back to its original value once your JetBrains product is started.
Happy coding!
Best regards,
X410 Team
Choung Networks
Fixed an annoying bug that unexpectedly made your Linux GUI app topmost! Get the new version 3.7.1!
When you use keyboard shortcuts in a Linux GUI app for switching among its floating tool windows, X410 now also synchronizes Windows visuals (ex. window title bar, taskbar icons etc.) accordingly.
X410 now tries to set the keyboard input focus to the main window when you first launch an app with additional floating tool windows.
If you are using multi-monitors or higher Windows display scaling settings, X410 now automatically adjusts the initial Linux GUI app window size and makes sure it is visible within the current monitor.
Fixed a bug that caused a Linux GUI app to unexpectedly become topmost when you click the main window while a tooltip or similar small window is shown.
Additional bug fixes and workarounds are also added to improve stability and consistency in managing Linux GUI app windows.
X410 now natively supports the new UI found in IntelliJ IDEA as well as other products from JetBrains. No more Windows title bar and buttons!
We have revamped the window management in Windowed Apps mode, and it now behaves more like the modern window managers in Linux GUI environments. For example, popup dialog windows are now always placed above the normal windows even if they do not have a parent window. Those popup dialog windows are also automatically added to the Windows taskbar for easier access.
Some legacy Java-based Linux GUI apps might have problems properly detecting the new window management module in X410 and show erratic behavior or rendering issues. In such case, please tell us about the app; we will definitely look into it and have it fixed as soon as possible. Meanwhile, please try updating the app to its most recent version. You can also try setting the following environment variable before starting your app.
export _JAVA_AWT_WM_NONREPARENTING=1
X410 now shows a more detailed taskbar icon for additional Linux GUI apps running in Windowed Apps mode.
NOW BEFORE VERSION 3.7.0 X410 Windowed Apps mode now natively supports the new UI found in the recent versions of products from JetBrains (ex. IntelliJ IDEA), no more Windows title bar and buttons!
JetBrains added more hurdles to block WSL and SSH X11 forwarding users from enjoying the new UI. Please read the following post if you are interested in workarounds for using the new UI with X410.
Enabling the new UI in IntelliJ IDEA running on WSL or over SSH X11 forwardingNOW BEFORE VERSION 3.7.0 X410 now shows the Windows native title bar according to the Windows light and dark app color theme setting.
Please note that this new feature does not change the color theme of the Linux GUI apps themselves. If you want to change the color theme for your Linux GUI apps, you need to check the available settings and options for each of them (ex. built-in color settings in each app, installing additional theme packages etc.).
For your information, some Linux GUI apps support centralized color theme settings and you just need to change those main settings. For example, if you have set up an Ubuntu desktop environment like the one outlined in our post, you should be able to set the color theme for all GTK based apps (ex. LibreOffice) simply by changing the Appearance options in Ubuntu Settings (you can access it by executing
gnome-control-center
) as shown in the following screenshot.CTRL+ALT+F1/F2/F3/F4/F5 can now be used for activating or deactivating X410 in Floating Desktop mode. CTRL+ALT+F1/F2/F3/F4/F5 correspond to the display number 0 through 4 respectively assigned to X410. Please note that these new keyboard shortcuts are available system wide. Hence, you can easily go back to X410 while working on other apps. When you are already interacting with X410, pressing the new keyboard shortcut pushes back X410 to the bottom and activates the first window that was below X410.
SHIFT+CTRL+ALT+BACKSPACE can now be used for always keeping X410 Floating Desktop on the bottommost. Pressing SHIFT+CTRL+ALT+BACKSPACE again while X410 Floating Desktop is active ends this bottommost behavior.
Starting from version 3.6.0, you can now purchase a subscription for X410 from Microsoft Store!
This release mainly focuses on implementing modules for the new subscription-based version of X410. There are only minor bug fixes for the core features.
As announced in our other post, X410 will only be available as a subscription in Microsoft Store. Unlike the previously available one-time purchase option, you should be able to find the new X410 subscription more approachable and manageable since it only requires minimal upfront payment and you can easily cancel or renew it via your Microsoft account. It also provides more consistent user experience and convenience as you will always get the most recent version of X410 automatically without any additional upgrading fee or switching to a different app package.
If you want to buy a perpetual licensing (one-time purchase) version instead of the new subscription-based, please consider purchasing the Standalone version directly from our website. Unlike the Microsoft Store version, the Standalone version does not require a Microsoft account and its license can be activated without the Internet.
X410 is now available only as a subscription in Microsoft Store
We have updated our app listing in Microsoft Store and X410 is now offered only as a monthly or yearly subscription starting from version 3.6.0. There are no changes for the Standalone version of X410 except for its pricing; it's adjusted to reflect the new subscription offerings.
X410 Subscription Plans | |
Paid monthly | USD $3.99 per month |
Paid yearly | USD $39.99 per year (2 months free) |
When you first install the subscription-based X410, it runs as a fully functional 7-days trial version. Hence, please feel free to test drive X410 and see if it meets your needs. For purchasing a subscription, you can simply click the Subscription
menu in X410 and follow the instruction. Your subscription to X410 is processed by Microsoft and you can manage or cancel it through your Microsoft account webpage.
The new subscription-based version of X410 is released as a separate product in Microsoft Store. Hence, if you already purchased X410 via the store, you should be able to continue using it without any interruption. We will also continue updating it exactly the same as the subscription-based version. However, starting from version 4, new features and updates will be only available to the subscription-based version.
Please also note that you will no longer be able to search or make a new purchase for the previously available non-subscription-based version in Microsoft Store. Hence, when you want to reinstall your previously purchased version, please use your Library
section in Microsoft Store app; it's listed as 'X410 (Version 3)'. When listing your apps, please make sure to uncheck the 'Show installed products only' option for the 'Sort and filter' setting.
If you want to buy a perpetual license (one-time purchase) instead of a monthly or yearly subscription, please purchase the Standalone version of X410 directly from our website. The following post summarizes the differences between the two versions.
Comparing Microsoft Store and Standalone versions of X410
Thank you.
Best regards,
X410 Team
Choung Networks
Shared clipboard weirdly stopped working? Update your X410 to the new version 3.5.1!
If you had experienced X410 becoming unresponsive after switching its server mode from Floating Desktop to Windowed Apps or vice versa, you should no longer see such problems in the new version.
A bug that prevented copying data from Linux GUI apps to Windows after changing the server mode or X410 is simply restarted via its menu is now fixed.
X410 should no longer randomly become unresponsive immediately after launching it (ex. enabling X410 via the Startup tab in Windows Task Manager).
X410 version 3.5.0 makes Linux GUI apps more indistinguishable from Windows apps
More visual effects and behavior enhancements are added for Linux GUI apps running in Windowed Apps mode. For example, you are now less likely to see the initial black background when you launch a Linux GUI app. Thick black border around popup menus in some apps should also no longer be visible.
NOWBEFORE VERSION 3.5.0
Popup menus in Linux GUI apps are now closed as expected when you change the input focus to a Windows app in Windowed Apps mode.
Fixed incorrect drag position within some GUI apps while performing a drag-and-drop operation in Windowed Apps mode.
Improved handling buggy Linux GUI apps that constantly generate redundant random events. Such apps should now be more responsive to mouse and keyboard input.