brndnmtthws / conky

Light-weight system monitor for X, Wayland (sort of), and other things, too
https://conky.cc
GNU General Public License v3.0
7.17k stars 615 forks source link

how to make conky consistenly pass clicks to the root window #320 #654

Closed Lew-Rockwell-Fan closed 5 months ago

Lew-Rockwell-Fan commented 6 years ago

"how to make conky consistenly pass clicks to the root window #320" was closed, but the issue is unchanged, as far as I can see. Still fails in much the same way as I reported in the beginning about 2 years ago, under the same circumstances except for an updated environment to the current LTS version of Uubuntu. I've made more detailed comments in that thread.

lasers commented 6 years ago

320 was closed due to a month of inactivity after an inquiry. That and a possibly resolved PR.

I would suggest you to get familiar with git bisect and find the bad 1.10.0 commit to really get the ball rolling for this issue. I'm not sure if this is even feasible because you could be running into compilation issues, depreciation issues, etc between 1.9.0 to 1.10.0. You need to use pre-1.10.0 syntax config too.

If you can checkout + compile old 1.9.0 binary and clicks to root window feature worked for you there, then talk to me. We can try and git bisect this together if necessary. Otherwise, I will have no idea what I'm supposed to look for.

lasers commented 6 years ago

1.10.8-1 still fails for me in Ubuntu 18.04, bionic, the current LTS release, in an environment otherwise the same as I described above (plain Openbox under X, amd_64, etc.).

1.9.0-4 still works fine.

git clone https://github.com/brndnmtthws/conky
git checkout 1.9.0

Compiling from source 1.9 and earlier versions [link]

If you can compile 1.9 okay, try git bisect next to find a bad commit.

lasers commented 6 years ago

I just check this thread occasionally when I have some reason to suspect progress has been made.

No progress has been made for years. Only you can find the bad commit. :-)

Lew-Rockwell-Fan commented 6 years ago

Honestly, 1.9.0-4 works fine for me. If it quits working, or if I'm convinced it has horrible security weaknesses that will expose my plan for World Conquest or out me as a Russian Spy (there are 2 under every bed you know) I might do that. Sorry, but right now, there are other things that need my time more. This isn't really inconveniencing me much. I just dropped by because I had new information of a negative sort since I'm running 18.04 now, and nothing changed. I'm not cracking a whip at you, just dropping off info FYI.

sidambhire commented 4 years ago

Any progress on this bug guys? Does anyone has any idea what exactly is wrong so that it can be fixed?

lasers commented 4 years ago

Any progress on this bug guys?

No progress. It's up to anyone to look into this.

Does anyone has any idea what exactly is wrong so that it can be fixed?

I suggested trying git bisect to find a bad commit first before trying anything else. The offending commit could be something trivial. May have to use old distro where currently unsupported packages are available there... along with pre-1.0 conky... which could make it hard to git bisect.

Lew-Rockwell-Fan commented 4 years ago

May have to use old distro where currently unsupported packages are available there

In Ubuntu at least, the last version that worked correctly, 1.9.0-4, installs and works just fine in 18.04, which is still the current LTS version. Maybe I missed the point, but no ancient OS is required or I'd have just abandoned Conky by now. If it comes to that, I can probably convince yad in a 1 minute loop to do everything I'm doing with conky.

pre-1.0 conky Can't see why you'd need that, since 1.9.0-4 works.

I'm not being demanding, folks. Fix it or not, as you wish. But I won't be spending the time to track it down as you suggest, unless and until I have no alternative that seems easier - like using the old version or teaching yad some new tricks. I just dropped in because I saw there were new posts in the thread.

BTW, anyone who wants to work-around this should see the original thread #320. Toward the end I outlined how to get a working deb securely, with gpg signature checked. The method can probably be adapted to distros outside the Debian family that use different package systems. There's also a patch there, with statements implying it worked and another implying it was slated to be incorporated into the the official code. But one or the other apparently is false.

I found one additional work-around for Openbox specifically. You can set OB to leave a 1 pixel wide margin around windows by default. Then, if you haven't done anything fancy to over-ride the default (& I do have occasions to, so this is not a complete substitute for pinning the old conky - just a supplement), you can click to the root window by pushing the pointer to any screen edge.

Lew-Rockwell-Fan commented 4 years ago

One more odd datum that might possibly provide a hint if anyone wanted to look into this: While old* conky passes plain presses, lifts, and clicks from the right, left, or middle button, and almost all of those modified by any of the possible combinations of one or more of Ctrl, Shift, & Alt, on through to the root window, it will NOT pass alt-right or alt-left. Only a curiosity to me, but it might tell somebody something.

I don't expect to spend any time on this issue until my Ubuntu based system has new conky version to try, which might happen with the next LTS, due out in April I think. Or if I set up a PCLOS sytem, I might try on that. Old conky works fine for me.

*Old meaning 1.9.0 per "conky --version". Synaptic says conky-std is 1.9.0-4, and oddly won't give me properties on the 2 locked packages "conky" and "conky-all". I presume one of those is a meta.

freddii commented 3 years ago

i am also not able to click an icon behind conky on Xfce 4.16 with conky 1.11.6 compiled 2020-08-17 for Linux x86_64

Lew-Rockwell-Fan commented 3 years ago

Freddi, I don't think there is any interest in fixing this. I've moved on. I use a combination of osd-cat, yad, & some openbox-specific tricks with mouse binds in the rc file, to do everything I did with conky. For alphanumeric info, put the osd-cat in a loop in a script that writes the info you need to a text file on a RAM disk. Yad can be done similarly and info can be shown as button labels. if you need some graphical info, you'll need a script to make the image, but yad can show it. Yad has a zillion tricks. And it also has buttons.

trappedinspacetime commented 2 years ago

I can confirm that click-through feature works well. I am on Ubuntu 20.04 Mate distro. I installed conky from repository but click-through feature didn't work. Then I cloned this repository and built it with:

    git clone --single-branch --depth 1 https://github.com/brndnmtthws/conky
    mkdir build;  cd build ; cmake -D BUILD_XSHAPE=ON ..
    sudo make install

I use the following conky configs:

          own_window = true,
          own_window_class = 'conky',
          own_window_type = 'normal',
          own_window_transparent = true,
          own_window_hints = 'undecorated,above,sticky,skip_taskbar,skip_pager',
          own_window_argb_visual = true,
          own_window_argb_value = 50,
trappedinspacetime commented 1 year ago

I installed Ubuntu 22.04. Unfortunately click-through is not working with versions starting from v1.11.1. I am suspicious about my post above, I don't know how it worked; I think I was wrong then.

trappedinspacetime commented 1 year ago

I've found the offending commit. It's a0d4393826b9775fb7b4b4c6b51d54fd32a36b91

It appears to be this issue discussed in this thread https://github.com/brndnmtthws/conky/issues/709

brndnmtthws commented 1 year ago

I've found the offending commit. It's a0d4393826b9775fb7b4b4c6b51d54fd32a36b91

It appears to be this issue discussed in this thread #709

If you can test #1284, that would be great. The change is based on this comment, but whether or not it will work properly with all the different combinations of configurations is hard to tell.

trappedinspacetime commented 1 year ago

@brndnmtthws Thank you for responding. I also wondered if that suggested xshape would work. I've just built and run your new branch, unfortunately click-through fails. I'm on Ubuntu 22.04 Mate platform.

brndnmtthws commented 1 year ago

@brndnmtthws Thank you for responding. I also wondered if that suggested xshape would work. I've just built and run your new branch, unfortunately click-through fails. I'm on Ubuntu 22.04 Mate platform.

I made a couple more tweaks to the code, perhaps you can try it again.

trappedinspacetime commented 1 year ago

@brndnmtthws I've just tried the latest commit, it doesn't work. By the way my window manager is compiz.

brndnmtthws commented 1 year ago

@brndnmtthws I've just tried the latest commit, it doesn't work. By the way my window manager is compiz.

Bummer. I don't really have a proper way to test the code right now, which makes fixing this a bit tricky.

trappedinspacetime commented 1 year ago

@brndnmtthws XSHAPE extension is like Achilles' heel for X server. I don't know how to help you.

github-actions[bot] commented 10 months ago

This issue is stale because it has been open 365 days with no activity. Remove stale label or comment, or this issue will be closed in 30 days.

Lew-Rockwell-Fan commented 10 months ago

Well, github-actions bot, you sure are a prolific poster. Kind of like Professor Staff who teaches so many courses I don't know how he finds time to eat. I see y'all HAVE made some progress since I gave up on this. It does seem a shame to permanently lose one of the features that made Conky great. Meanwhile, for anyone looking for work-arounds, as I mentioned, I replaced conky with some scripts outputting to osd-cat and a yad in an endless loop, and some Openbox tricks with a multibutton mouse. With enough buttons you can map some to take the same action as right and left clicks on the root window no matter what 's in the way of it. For that matter you only need one extra button because you can put the right click menu IN the left click menu. At least in Openbox, and presumably in any of the 'box window managers. Another solution, not quite as absolute, but easier to implement, is to reserve a 1 pixel margin around normal windows and so be able to click on the root window at the screen edges. That won't work if you've moved a window under the edge or you have something going in full-screen though.

YatoVoid commented 8 months ago

What worked for me is setting max_size to smallest possible number, and setting height to 0. You should find your minimum size your self.

minimum_size 830 0
maximum_width 830

Here is my entire conky settings.


# -- Conky settings -- #
#background yes
update_interval 60.0

cpu_avg_samples 2
net_avg_samples 2
total_run_times 0

override_utf8_locale yes

double_buffer yes
no_buffers yes

text_buffer_size 2048
imlib_cache_size 0

# -- Window specifications -- #

#own_window_class Conky
own_window yes
own_window_type normal
own_window_argb_visual yes
own_window_argb_value 0
own_window_transparent no
own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager

border_inner_margin 0
border_outer_margin 0

minimum_size 830 0
maximum_width 830

alignment tr
gap_x 0
gap_y 0

# -- Graphics settings -- #
draw_shades no
draw_outline no
draw_borders no
draw_graph_borders no

# -- Text settings -- #
use_xft yes
xftfont Droid Sans:size=10
xftalpha 1
short_units yes

uppercase no

default_color FFFFFF

# -- Lua Load -- #
lua_load ~/conky-manager/themes/conky08-1/lua/rings.lua
lua_draw_hook_pre main_rings
lua_load ~/conky-manager/themes/conky08-1/lua/marks.lua
lua_draw_hook_post main

TEXT

${voffset 170}
${alignr 580}${font virgo 01:size=24}${time %d %B %Y}${font}
Caellian commented 5 months ago

Not completed, waiting for #1807 to work well with Gdk background apps (caja).