Commit Graph

56 Commits

Author SHA1 Message Date
foudfou bd83ca9304 * display popup menu window items for all application, not only browsers
* cleaning
2013-03-10 22:21:02 +01:00
foudfou 6fb8a15f22 * more accurate startup event detection
* when start_hidden, hide window on first x11.MapNotify instead of hiding all
  windows short after the "startup event".

  This prevents having visibility falsely corrected for windows that are
  displayed after the "startup event", and thus having to click twice on the
  tray icon to actually restore windows.
2013-03-10 21:39:34 +01:00
foudfou d77724d46b yet another attempt to fix restore maximized window. This is tricky because it
can break restore minimized (hides_on_minimize off)
2013-01-16 23:48:25 +01:00
foudfou 6c4d21d4b3 attempt to fix restore maximized window 2012-12-20 13:36:24 +01:00
foudfou 7d0a22364c add -firetrayPresent command-line switch 2012-12-13 19:55:30 +01:00
foudfou 29de64e51f base the startup event on the first 'before-first-paint'
That lets the windows get well realized before we can hide them
(start_hidden). This is especially true for heavy configurations with numerous
addons (Lightning with multiple remote calendars for instance).
2012-12-13 19:11:58 +01:00
foudfou c622e61e9d fix start_hidden again.
The wisest seems to let the window get fully realized, before hiding it.
2012-12-10 23:02:05 +01:00
foudfou 18fb980d49 add gtk version check + revert to gdk_window_get_toplevel() 2012-10-15 13:25:28 +02:00
foudfou 90ee9f834b option to hide only last window (#24) 2012-09-10 15:00:25 +02:00
foudfou 97e488e232 fix comment about gnome-shell/mutter 2012-09-10 14:15:28 +02:00
foudfou 5d9e0b4ef8 fix chat icon blink forever with gnome-shell 3.4.1 (#61) 2012-09-10 13:34:48 +02:00
foudfou 8516409607 * fix TB crash when mail.chat.enabled is false (#58)
* fix item menu titles for Seamonkey
* fix middle-click (activate) to show window when hidden
2012-09-09 01:29:51 +02:00
foudfou 39f3c20fa8 correct visibility state when hidden application called from command line 2012-09-07 16:47:47 +02:00
foudfou 22de1d3fcc * fix Makefile for including .svg into xpi
* minor fixes
2012-09-07 15:06:01 +02:00
foudfou 78dc65c77e Merge branch 'ff17-missing-unmap' 2012-09-05 13:54:29 +02:00
foudfou c7562bdcdf cleaning 2012-09-05 13:48:27 +02:00
foudfou ee1eac01b3 fix wrong xid provision ("missing UnmapNotify") 2012-09-05 13:45:02 +02:00
foudfou d0e2259e96 restrict logging to our addon 2012-09-04 17:48:54 +02:00
foudfou de2a756fc8 enable Chat only in Thunderbird (not Seamonkey!) 2012-09-04 10:50:17 +02:00
foudfou ae0f41e1e4 Merge branch 'im'
Conflicts:
	src/defaults/preferences/prefs.js
	src/modules/FiretrayHandler.jsm
	src/modules/FiretrayMessaging.jsm
	src/modules/VersionChange.jsm
	src/modules/commons.js
	src/modules/linux/FiretrayStatusIcon.jsm
	src/modules/linux/FiretrayWindow.jsm
2012-09-04 00:25:29 +02:00
foudfou ebe8ee37ba address comments from last review by Kris Maglione, mainly:
* rename commande line flag '-showHide' to '-firetray-showHide'
* drop use of AddonLogging.jsm in variable F, and use log4moz instead
* do not remove String.prototype.trim

Regarding String.prototype.trim tough, it's unclear why its fallback definition
should be removed: MDN says it was introduced in JavaScript 1.8.1, but it seems
available in 1.7...
2012-09-03 01:51:32 +02:00
foudfou 06349f15f4 * rename all IM/Chat-related modules consistently with "Chat" keyword
* stopIconBlinkingMaybe() only when acknowledgeOnFocus.must
2012-08-25 19:18:33 +02:00
foudfou 5c12abb1ee * fix non-import of IM stuff in Firefox
* add minimal tooltip for Chat icon
* fix findActiveWindow() — gtk_window_is_active() not reliable
2012-08-25 19:02:14 +02:00
foudfou 9f46ef6343 IM icon blinking when private message or cited in channel 2012-08-21 22:10:56 +02:00
foudfou 9611f1443e cleaning 2012-08-21 15:44:47 +02:00
foudfou d81c0d51ac fix iconify-after-show trap 2012-08-21 15:40:40 +02:00
foudfou 525fdd96dd radical attempt to fix iconify-after-show trap 2012-08-20 16:07:46 +02:00
foudfou 83a11def65 (failed) attempt to fix iconify-after-show trap 2012-08-17 23:53:26 +02:00
foudfou 82fae974d1 ctypes libs are tracked by firetray.Handler.
(sub)modules using ctypes libs just need to declare opened libs, which will be
ultimately closed by the Handler. Not only is this fancier, but also useful in
situations where we want to init()/shutdown() modules without closing libs used
by others (ex: IMStatusIcon)
2012-08-07 23:37:32 +02:00
foudfou 3c572aa5fc Merge branch 'native-handle' 2012-07-28 15:19:04 +02:00
foudfou 2fe1c2b687 cleaning (Moz Bug 760802, our patch accepted into mainline 9dcd7470dc0b) 2012-07-27 02:15:59 +02:00
foudfou 4fb215ce82 fix start_hidden which was based on 'resize' events.
"Too small window" bug with Lightning installed.

start_hidden is not so easy to achieve since:
- we can't rely on appStarted (window displayed in between)
- we can't rely on 'load' event (window not fully realized - position, size)
- we can't rely on 'resize' event (window displayed/shown/resized a variable
  number of times)
Besides, nsIBaseWindow.visibility remains the surest way to hide windows at
startup.
2012-07-24 02:00:44 +02:00
foudfou 3bb6d15fbc show how to find GtkWindow from GdkWindow 2012-06-29 17:34:20 +02:00
foudfou 28f639d3d1 failed attempt to use baseWindow.nativeHandle (bug 760802 and bug760802.patch)
Although we can re-construct a gdk.GdkWindow.ptr from natvieHandle (address of
the actual GdkWindow), we can't seem to be able to use it. For ex.,
gdk_window_get_user_data(), which should return a pointer to the corresponding
GtkWindow, returns strange adresses with our re-constructed pointer (0x11,
0x19, 0x0, ...)

...and despite the fact that both the "original" gdk.GdkWindow.ptr and the
re-constructed one do point to the same address, and that GDK_IS_WINDOW (macro
here wrapped into an embedded lib) is returning true for both pointers...
2012-06-13 22:38:18 +02:00
foudfou e0f60f2981 cleaning 2012-06-13 22:24:07 +02:00
foudfou f443116088 if all windows visible, middle click on the tray icon activates last registered
window, shows all windows otherwise.

reverts 97dcbc8c
2012-05-13 16:01:41 +02:00
foudfou 767f9487d0 cleaning 2012-05-12 16:45:04 +02:00
foudfou 97dcbc8ca5 when clicking on the tray icon, if all windows visible, activate last
registered window
2012-05-12 16:36:51 +02:00
foudfou 776d3acddf bump to v0.4.2 2012-05-12 15:42:55 +02:00
foudfou 2b2ce871a0 fix start_hidden bug introduced in f86a3ac 2012-05-12 15:24:14 +02:00
foudfou 4174095780 Merge branch 'minimize-detect'
Conflicts:
	src/modules/linux/FiretrayWindow.jsm
2012-04-30 22:25:06 +03:00
foudfou f86a3ac794 use Gtk gtk_widget_show/hide instead of Moz BaseWindow.visibility. This ensures
Thunderbird to be shown, when launched from the command line, while already
running.

NOTE: gdk_window_show/hide also works, but we'd lose the ability to resize and
move the windows before showing it when restoring.
2012-04-23 00:32:01 +02:00
foudfou a1f0980b2a check window's event-masks with XGetWindowAttributes.
NOTE: if we'd need to *set* event-masks, it should be safer to do it with
gdk.gdk_window_set_events() to preserve the gdkWindow's state.
2012-04-21 15:27:36 +02:00
foudfou 31881fa3f5 make sure window is subscribed to mandatory event-masks
TODO: we should do this with xlib.
2012-04-18 00:51:50 +02:00
foudfou 229fd20b5e catch minimize event with PropertyNotify also.
TODO: maybe this is not needed, and we just need to be sure windows are
subscribed to StructureNotifyMask (UnmapNotify)
2012-04-11 11:50:25 +02:00
foudfou b2f270687d attempt to catch minimize event that would be issued in Ubuntu 11.10 2012-04-10 22:42:06 +02:00
foudfou f5e56dab81 * revert a7516e partly:
* support icedove/iceweasel/iceape (appId's are equivalent with FF, TB, SM)
  * have a nice "F" mandatory wrapper object (instead of the long "firetray")
* fix version anchor on the firetray splash page when opening a tab
2012-03-30 23:20:47 +02:00
foudfou b6b8d5dca0 * refactor appinfo initializations
* fix icon tooltip when unread messages
2012-03-09 13:27:49 +01:00
foudfou a7516e379e wrap "loose" variables and functions within a JavaScript object 2012-03-08 22:04:16 +01:00
foudfou b47e960755 activate window with gtk_window_present instead of
XSendClientMessgeEvent(_NET_ACTIVE_WINDOW)
2012-03-07 14:41:05 +01:00