Is there an easy way in Linux to change the default width of these windows? Some file that holds all the startup parameters?
Usually the widget toolkit (Gtk, WxWidgets, Qt) supports command-line arguments to set the location and/or width and/or height of the window.
When they do not, you can write a launcher script that uses
wmctrl to force the window dimensions and/or location. You then modify menu entry for the application to run the launcher script instead of the application directly.
(In Cinnamon, the menu editor is accessible by right-clicking the application menu icon, and picking Configure.., and then on the Menu tab, clicking Open the menu editor. Not sure about Mate.)
Even easier is to write a keyboard shortcut that resizes the currently active window. In Cinnamon, the keyboard shortcuts are in Preferences > Keyboard, in the Shortcut tab. Add a custom shortcut, giving it a descriptive name like "Resize to 512x384", with the command being
wmctrl -r :ACTIVE: -e 0,-1,-1,512,384Then, add a binding to it by double-clicking in the Keyboard bindings section, and pressing the desired key combination, for example Shift+F11. It works immediately.
If the USBDM windows are the only ones with USBDM in their title (in upper or lower case), then
wmctrl -r usbdm -e 0,-1,-1,512,-1will resize each of them to 512 pixels wide (unless they are maximized).
The argument to
wmctrl -e is
gravity,left,top,width,height in desktop coordinates.
In a launch script, I usually use
LANG=C LC_ALL=C wmctrl -lGp, so I can use the process ID in the third column (and
find /proc/process ID/exe -maxdepth 0 -printf '%l' to identify the executable that created that window), and a temporary child process that waits until the parent process creates the new window, then resizes/moves it, and exits. There is very little overhead, basically no latency, and no extra processes left over.
If anyone wants (and shows the
wmctrl -lGp line identifying the target windows, with the related
find /proc/third-column/exe -maxdepth 0 -printf '%l\n' output), I can easily write an example one you can easily edit yourself further.