Comments (20)
Same on Debian with caja-dropbox 1.20, see this downstream report.
from caja-dropbox.
@sunweaver I fixed this bug in Debian and Ubuntu with my last update to caja-dropbox 1.20 in pkg-mate, so this closed in Debian.
@raveit65 @monsta Does this issue exist in other distros? If so, I can make a pull request here.
from caja-dropbox.
from caja-dropbox.
Just tested 1.20.0-2 on Debian Buster, bug exists:
On Debian Stretch caja-dropbox 1.16.0-1 has menu in place.
I have removed Ubuntu 17.10, but in 18.04 LTS menu is in place.
And please do not forget about caja-dropbox autostart
bug.
from caja-dropbox.
@flexiondotorg
here the symptoms are different with SNI support enabled.
with left-click on applet i see Qt-theme.
with right-click on applet i see gtk-theme + the issue with submenu.
I think a PR won't hurt for testing.
from caja-dropbox.
@alexarnaud @sunweaver The comment by @raveit65 above is one example of where SNI is not doing the right thing and why I choose to disable.
from caja-dropbox.
Why on earth would Caja-Dropbox ever show a QT menu or QT theme anywhere? How is QT getting into this? Find that and we might find the bug. I don't use Dropbox (or Google drive etc) so don't have this installed, but for a GTK app to ever use a QT theme strikes me as seriously odd. We should not even be loading QT unless another app has loaded it, and to my knowledge GTK does not read QT themes at all
from caja-dropbox.
This part of caja-dropbox comes from proprietary dropbox code itself, so we can't fix it directly.
We ship only the caja extension code and a binary for start dropbox.
One solution is that people also file out reports against dropbox.......
from caja-dropbox.
Btw. i think they switched from gtk+ to Qt 2 or 3 years ago.
from caja-dropbox.
I looked in some of the caja-dropbox soruce files, saw includes for GTK but not QT. Dependency checks in configure.ac are
CAJA_REQUIRED=1.17.1
GLIB_REQUIRED=2.50.0
again no QT in those
from caja-dropbox.
Ahh-now I see what you are saying. The indicator itself comes from Dropbox and not from Caja? If so, without even the source we have no idea what it is doing. That is not something I can fix myself.
from caja-dropbox.
The indicator itself comes from Dropbox and not from Caja?
Yes, same for this folder in home dir after installing the dropbox code.
[rave@mother ~]$ ls ~/.dropbox-dist/
dropboxd dropbox-lnx.x86_64-46.3.59 VERSION
from caja-dropbox.
OK, someone who has this installed (and probably a Dropbox account) will need to find this unless someone can duplicate this with another QT app, which would make this a more general QT bug that would be more easily fixed.
from caja-dropbox.
Wrong page comment, deleting...
from caja-dropbox.
from caja-dropbox.
With SNI disabled the menus use Qt Styles with left/right click and all menuitems displaying well.
@flexiondotorg
What fix did you proposed in you comment?
#27 (comment)
from caja-dropbox.
I'll file a pull request, but the fix makes copy of the environment then coerces XDG_DESKTOP_SESSION to report "Unity" and execs dropbox
by passing in the modified environment. This environment modification is only exposed to the dropbox process and works around an issue where the Indicator only works correctly on Unity. The same fix has been applied to Ubuntu for Unity users because the session name changed to "Unity7" recently and also for Budgie.
from caja-dropbox.
I don't know why but with latest mate-panel from master everything looks fine with using SNI.
from caja-dropbox.
This downstream patch by @flexiondotorg does the wrong thing when there are no indicators and SNI is disabled.
--- a/caja-dropbox.in 2017-03-28 02:00:33.223411568 +0100
+++ b/caja-dropbox.in 2017-03-28 02:03:34.637407866 +0100
@@ -728,8 +728,13 @@
if os.access(db_path, os.X_OK):
f = open("/dev/null", "w")
# we don't reap the child because we're gonna die anyway, let init do it
+
+ # Fix indicator icon and menu. (LP: #1559249)
+ new_env = os.environ.copy()
+ new_env['XDG_CURRENT_DESKTOP'] = 'Unity'
+
a = subprocess.Popen([db_path], preexec_fn=os.setsid, cwd=os.path.expanduser("~"),
- stderr=sys.stderr, stdout=f, close_fds=True)
+ stderr=sys.stderr, stdout=f, close_fds=True, env=new_env)
# in seconds
interval = 0.5
Here's how it looks in Mint 19.1:
Yes, this white block is the "menu".
If I enable SNI, the menu is back to normal.
If I revert the mentioned patch, the menu is also back to normal, this time with or without SNI. Actually, dropbox doesn't seem to use SNI if that patch is reverted. I get the same menu on left and right click, which would be impossible with SNI (left click would do nothing). (That was wrong guess - I just remembered that Qt apps can show menu with SNI on both left and right click)
NOTE: Mint 19.1 is based on Ubuntu 18.04 and uses MATE 1.20 from Ubuntu repos. I chose it for testing because it has no indicators by default. It was easier than trying to rip all the indicators from the default Ubuntu setup...
from caja-dropbox.
Ok, the ubuntu patch needs to be revert.
@flexiondotorg ping ^^^^^
from caja-dropbox.
Related Issues (18)
- Caja Dropbox (DEB) not working HOT 5
- making dropbox usable HOT 3
- Wrong library path on debian HOT 1
- .xsession-errors and slow performance HOT 2
- please add .caja-extension file
- caja-dropbox still requires doc-utils in MATE-1.9 HOT 2
- out-of-tree build is broken for ages HOT 1
- some errors: HOT 1
- caja-dropbox doesn't work when accessing Dropbox folder from link HOT 2
- cherry-pick Debian patches upstream HOT 3
- caja-dropbox 1.12 does not autostart on Ubuntu 16.04 LTS HOT 10
- caja-dropbox prevents screensaver HOT 1
- using right click menu in dropbox folder crashed caja HOT 18
- Autogen ends with "./ChangeLog not found" error HOT 1
- On Ubuntu MATE 21.10 caja-dropbox works, but shows wrong icon in tray/notification area Edit HOT 6
- No folder syncing icons? HOT 1
- Excess CPU usage when launching file manager HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from caja-dropbox.