-
Notifications
You must be signed in to change notification settings - Fork 99
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update window title with (on <client_machine>)
if client is remote
#790
base: icewm-1-4-BRANCH
Are you sure you want to change the base?
Update window title with (on <client_machine>)
if client is remote
#790
Conversation
(on <WM_CLIENT_MACHINE>)
if the client is remote
(on <WM_CLIENT_MACHINE>)
if the client is remote(on <WM_CLIENT_MACHINE>)
if client is remote
(on <WM_CLIENT_MACHINE>)
if client is remote(on <client_machine>)
if client is remote
First impressions:
|
Thank you for the review, @gijsbers!
I'm honestly not sure - I am a long time XFCE User and they have this as a blessed default feature, which was very useful for me to not get crazy over multiple windows from a variety of remove servers, so I figured I'd put out the simpler version first (where it's just on) and gather feedback. The point is - I didn't even know I wanted such a feature because it had never crossed my mind (that such capability was possible or that we had this metadata coming in from a remote window), I was just exposed to it via XFwm4, and it was very helpful. If you feel strongly, we can definitely implement it as a config feature - I'd appreciate any pointers on that.
I'll look into using this specific function, if that's prefferable.
True! This is not ideal and adds additional protocol overhead. What do you think about fetching this property when the window is created, and then caching it in the instance, just like I did with
Yup, we need to improve that. Can you give me pointers or examples in the codebase that I could use as a starting point in my research? I'd like to point out that the feature in XFwm4 also lacks internationalization, and while this is a clear shortcoming that should be fixed, I feel that the feature enough brings so much value that I would not block it's implementation just on this specific basis (Working on a daily basis with remote windows is less common, that means any improvement for that specific, more niched user base is a boon). (I'm happy to agree to disagree and discuss - I just really like IceWM, I've been a user for 20+ years, and want to improve the tool as much as I'm able to. |
Study |
I'll look into the implementation for the RTL/internationalization stuff, which is clearly needed. Besides that, I'd appreciate a little more clarity on what specific bits, or techniques used, can be improved to attain what you consider as "maintainable over the long run with little cost". These statements, as they are put, are not actionable on my end without some additional context. I'm still waiting on your opinions for the questions further up, regarding on whether you feel this shouldn't be a "default on" feature, etc. Thanks! |
This is a tiny feature. Therefore any burden due to: 1. difficult to comprehend, 2. has unique implemention techniques unlike similar features, 3. has the risk of generating issues by users, 4. has the risk of causing bugs which need to be fixed urgently in a new release, are to be avoided. "Default on" I'd say no for now, so as not to disturb anyone unexpectedly, causing issues, which are to be avoided. |
@gijsbers agreed. I'll work on making the change modular/togglable |
This pull request introduces changes to display the client machine's hostname in the window title if it differs from the local machine's hostname. The most important changes include adding methods to fetch the client machine's hostname and updating the window title rendering logic.
Sample screenshot of Xephyr with a remote Google Chrome:
Enhancements to window title display:
src/wmtitle.cc
: UpdatedYFrameTitleBar::paint
method to append the client machine's hostname to the window title if it is different from the local machine's hostname.New methods for fetching client machine information:
src/ywindow.cc
: AddedYWindow::fetchClientMachine
method to retrieve the client machine's hostname usingXGetTextProperty
.src/ywindow.h
: Declared the newfetchClientMachine
method in theYWindow
class.Local hostname retrieval:
src/yxapp.h
: Included<unistd.h>
forgethostname
function and addedlocalHostname
member andgetLocalHostname
method toYXApplication
class to retrieve and cache the local machine's hostname. [1] [2]