Summary: | gtk+ 2.14.4: open/save dialog not centred | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | 123456 <mail123456> |
Component: | [OLD] GNOME | Assignee: | Gentoo Linux Gnome Desktop Team <gnome> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | ghepeu, mozilla, pacho |
Priority: | High | ||
Version: | unspecified | ||
Hardware: | x86 | ||
OS: | Linux | ||
URL: | http://bugzilla.gnome.org/show_bug.cgi?id=549403 | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | |||
Bug Blocks: | 253934 | ||
Attachments: |
xprop-2.14.3-r2.log
xprop-2.12.12.log small window opened initially gtkfilechooser.patch |
Description
123456
2008-10-02 18:37:49 UTC
emerge --info and emerge -pv of your firefox flavor please emerge -pv mozilla-firefox-bin These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild R ] www-client/mozilla-firefox-bin-3.0.3 USE="-restrict-javascript" LINGUAS="en en_US -af -ar -be -bn -bn_IN -ca -cs -da -de -el -en_GB -es -es_AR -es_ES -eu -fi -fr -fy -fy_NL -ga -ga_IE -gl -gu -gu_IN -he -hi -hi_IN -hu -id -is -it -ja -ka -kn -ko -ku -lt -mk -mn -mr -nb -nb_NO -nl -nn -nn_NO -pa -pa_IN -pl -pt -pt_BR -pt_PT -ro -ru -si -sk -sl -sq -sr -sv -sv_SE -th -tr -uk -zh -zh_CN -zh_TW" 0 kB emerge --info Portage 2.2_rc11 (default-linux/x86/2007.0/desktop, gcc-4.3.1, glibc-2.8_p20080602-r0, 2.6.26-gentoo-r1-dr i686) ================================================================= System uname: Linux-2.6.26-gentoo-r1-dr-i686-Intel-R-_Core-TM-2_CPU_T5500_@_1.66GHz-with-glibc2.0 Timestamp of tree: Fri, 03 Oct 2008 02:15:01 +0000 app-shells/bash: 3.2_p39 dev-java/java-config: 1.3.7, 2.1.6-r1 dev-lang/python: 2.5.2-r8 dev-python/pycrypto: 2.0.1-r5 sys-apps/baselayout: 2.0.0 sys-apps/openrc: 0.2.5 sys-apps/sandbox: 1.2.18.1-r3 sys-devel/autoconf: 2.13, 2.63 sys-devel/automake: 1.4_p6, 1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1-r1 sys-devel/binutils: 2.18-r3 sys-devel/gcc-config: 1.4.0-r4 sys-devel/libtool: 2.2.6a virtual/os-headers: 2.6.26 ACCEPT_KEYWORDS="x86 ~x86" CBUILD="i686-pc-linux-gnu" CFLAGS="-Os -march=native -mtune=native -fomit-frame-pointer -pipe -mmmx -msse2 -msse3" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /var/qmail/alias /var/qmail/control" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/udev/rules.d" CXXFLAGS="-Os -march=native -mtune=native -fomit-frame-pointer -pipe -mmmx -msse2 -msse3" DISTDIR="/usr/portage/distfiles" FEATURES="distlocks parallel-fetch preserve-libs protect-owned sandbox sfperms strict unmerge-orphans userfetch userpriv usersandbox" GENTOO_MIRRORS="http://mirrors.ludost.net/gentoo/" LANG="en_US" LDFLAGS="" LINGUAS="en_US bg en" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/etc/portage/overlays/dr" SYNC="rsync://192.168.1.3/gentoo-portage/" USE="7zip X a52 aac acl acpi additions alsa amr amrnb audacious automount avahi bash-completion bcmath berkdb bluetooth bogofilter bonjour bzip2 cairo calendar cdda cddb cdio cdr cgi chardet cli cluster compositor concurrentmodphp corba cracklib crypt cups curl curlwrappers cursors daab dbase dbus dc1394 devhelp dga dhcp disk-partition diskio dri dts dvb dvd dvdr dvdread dvi elf emboss encode epiphany evo exif extraengine extrafilters fam fastbuild fastcgi fat fcgi ffmpeg fftw filter firebird flac flatfile fontconfig force-cgi-redirect fortran freetds ftp fuse gadu gaim galago gd gdbm gdl gdm ggi gif glade glib glitz gmp gnome gnome-keyring gnomecd gnutls gpm graphviz groupwise gstreamer gtk gtkhtml hal hash hdaps hddtemp httpd icons iconv id3tag ieee1394 imap imlib inherit-graph inifile iproute2 ipv6 isdnlog java javascript jpeg jpeg2k json keyring laptop lcms libgcrypt libnotify live lm_sensors lzo mad matroska meanwhile midi mmx mng mod modplug mozdevelop moznopango mp2 mp3 mp3rtp mp4 mpeg mudflap musepack musicbrainz mysql mysqli nas nautilus ncurses network networking nls nntp nptl nptl-only nptlonly nsplugin ntfs objc objc++ objc-gc ogg openct opengl openmp optimisememory pam pch pcmcia pcntl pcre pcsc-lite pdf pdo perl perlsuid php pidgin png portaudio posix ppds pppd prediction python qmail qq qt3support quicktime readline reflection regex reiser4 reiserfs rrdcgi rtsp samba sasl scrobbler sdl sdl-image session sharedext shout silc simplexml slang slp smp smux sndfile soap sockets soundex sourceview speex spell spl sqlite sqlite3 sse sse2 ssl startup-notification stream subversion svg swat sysvipc t1lib taglib tcpd theora threads tidy tiff tokenizer totem truetype tta twolame type1 unicode usb v4l valgrind vcd vcdx vlm vorbis vorbis-psy wavpack wddx webdav wideband win32codecs winbind wma wmf wxwindows x264 x86 xattr xforms xml xmlreader xmlrpc xmlwriter xorg xosd xpm xprint xscreensaver xsl xulrunner xv xvid zip zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" FOO2ZJS_DEVICES="hp1018" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en_US bg en" LIRC_DEVICES="serial sir devinput userspace audio" USERLAND="GNU" VIDEO_CARDS="i810" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LC_ALL, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS A couple questions : 1) do you get the same behavior with other Gtk apps? (gedit, ...) 2) what window manager are you using? 3) if you still have gtk 2.12 somewhere, could you : 3a) run "xprop &> xprop.log" in a terminal 3b) click on the open/save dialog 3c) attach the log here (and if you could also do it with gtk 2.14, that'd be really cool Let's see who the real bad guy is, the WM, the toolkit, or firefox (which is known to do stupid stuff from time to time). Thanks 1. yes gedit, geany also are affected 2. xfwm4-4.4.2-r1 3. I attach for 2.14.3-r2 ... later will attach for 2.12 when I downgrade it ... another thing which I see is that when open save dialog is open initially it is open like small window and then resized to actual size ... may be this is the problem ... Created attachment 167089 [details]
xprop-2.14.3-r2.log
Created attachment 167090 [details]
xprop-2.12.12.log
(In reply to comment #4) > another thing which I see is that when open save dialog is open initially it is > open like small window and then resized to actual size ... may be this is the > problem ... While this is a big issue for any WM, it's not the only factor involved in window placement. ICCCM and EWMH are complicated specs and conformance by clients and WMs is unsure at best. :) Thanks gtk+ 2.14.4 make no difference only one dialog correctly opened is this in gimp, and this dialog is not initially opened as small window and then resized to actual size ... Created attachment 169096 [details]
small window opened initially
this is small window (actual size) open initially which is correctly centered and then resized to actual size of dialog which use top and left position of this small window so actual window is not centered as result ... and also sometimes this window is just not resized and stays small ...
I'm currently rummaging through gtk's code these days for work, and whenever I can, I try to take a look at what it would take to solve this bug (because it's a big PITA with Metisse's FVWM). So far, I can only say that fixing this is Gtk 3.0 material. The changes look far from trivial. I'll keep digging when I can though :) I must say that right now I switch to metacity and issue is still here ... this thing annoy me enough to start looking at code and after couple of minutes I figure how to fix it ... ugly but for now works for me: in gtk/gtkfilechooserdialog.c function gtk_file_chooser_dialog_constructor before: gtk_widget_show (priv->widget); force a resize: file_chooser_widget_default_size_changed(priv->widget, GTK_DIALOG(object)); so window is resized before show ... now my dialogs are OK it complains about invalid type of second argument but it works ... so anyone with knowledge please tell me how to do it correctly :) Same problem here. Just to make it clear: it's only me and 123456 who are seeing this problem or other people just don't care? As I said earlier, I can also see it too. It's a known bug. The problem is that until recently, xorg/gtk/metacity were all slow enough to hide the problem... Thanks (In reply to comment #14) > As I said earlier, I can also see it too. It's a known bug. > > The problem is that until recently, xorg/gtk/metacity were all slow enough to > hide the problem... > > Sorry, I wasn't sure of it from your answers here. I'm still trying to find out if this bug is triggered/papered over by some specific WMs (don't think so, it happens with both metacity and compiz), xorg releases, driver releases or settings Nope, if you trace the actual X11 protocol, you'll clearly see a Map message and then a Configure message which changes the size of the window. At best, you can tweak your WM to "delay" window appearances with a small timeout, say 200ms. That way, the WM has a good chance of catching the Configure message and resizing the window before displaying it. Cheers :) Rémi, please go upstream with your gathered information, it seems to lack similar details of the matter. Upstream bug URL in the URL field now. gtk+-2.14.7 still have same bug ... upstream *just* fixed it in svn trunk. Details are in the upstream bug report. Thanks As there are trunk patches, considering this as a gtk+-2.14 stabilization blocker. Just marking as such, so that when the time comes can see and decide if to proceed with stabilization or take care of this backporting right before - e.g, not guaranteeing this will be fixed before stabilization unless there's a strong reason and will not to Created attachment 178881 [details, diff]
gtkfilechooser.patch
This patch is taken from opensuse's package and seems to work ok, at least for me. ..
Fixed in 2.14.7-r1 |