annotate plugin draw interface not working (e.g. dbus method call)
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Compiz |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
Hi,
this is a problem that I've had for some time, but finally had some time to look into this.
Basically, the draw method exposed by the annotate plugin on DBus is not working. My use case is easystroke (https:/
How to reproduce:
1. Enable annotate and dbus plugins.
2. Make sure annotate is working normally with the keybinding associated.
3. Form a terminal run:
dbus-send --print-reply --type=method_call --dest=
Expected behavior:
A line is drawn in the top left corner in the screen.
Actual behavior:
Nothing happens.
(Note: optional parameters x1,x2,y1,y2 could be used to specify the coordinates to draw to, but these are not necessary for this example -- it should work without giving any coordinates as well.)
Cause of bug (in plugins/
-- "tool" variable in AnnoScreen::draw() gets overwritten between lines 305 and 322 (is it undefined behavior to save the c_str() of the value returned by CompOption:
-- AnnoScreen::draw() needs to call handleEventSetE
I'm attaching a diff (for plugins/
Note: I've tried this on compiz 0.9.13 on Ubuntu 18.04 and I did not try on 0.9.14. Nevertheless, annotate.cpp is the same for 0.9.13 and 0.9.14, so I'd be surprised if there was a difference.
Related branches
- Alberts Muktupāvels: Approve
- Dmitry Shachnev: Approve
-
Diff: 191 lines (+43/-35)2 files modifiedplugins/annotate/src/annotate.cpp (+41/-34)
plugins/annotate/src/annotate.h (+2/-1)
- Dmitry Shachnev: Needs Information
-
Diff: 48 lines (+6/-3)2 files modifiedcompizconfig/compizconfig-python/CMakeLists.txt (+1/-1)
plugins/annotate/src/annotate.cpp (+5/-2)
Changed in compiz: | |
status: | New → Fix Committed |
Can you please submit a merge proposal against lp:compiz git branch?