Commit Graph

499 Commits

Author SHA1 Message Date
foudfou 73f1f41ca4 rename command line option 'firetray-showHide' to 'firetrayShowHide' 2012-09-07 17:08:32 +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 08e6140312 oops, add prefpane icons 2012-09-06 19:39:02 +02:00
foudfou 126842e5b7 bump version to v0.4.3 2012-09-06 19:21:22 +02:00
foudfou 194894afd4 * convert tabbox/tabpanels to prefpanes (preference UI) (thx Tango for icons!)
* change order of menu items for mail apps
* fix hide chat prefs when non-chat app
2012-09-06 19:07:22 +02:00
foudfou f91bc8b039 fix icon update when changing icon preferences (continued) 2012-09-06 16:25:24 +02:00
foudfou 23975110a5 * isolate Chat from Messaging
* fix icon update when changing icon preferences
* prevent double observer registration
* add keyboard shortcut for debugging preference window
2012-09-06 16:07:52 +02:00
foudfou aa6b8a9080 slight pref UI re-work (mail pane) 2012-09-05 15:16:19 +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 ca39dec2de * add version check in Makefile
* fix openTab() onVersionChange
* cleaning
2012-09-04 14:33:43 +02:00
foudfou de2a756fc8 enable Chat only in Thunderbird (not Seamonkey!) 2012-09-04 10:50:17 +02:00
foudfou 97237aaffe update chat icon when (re-)initializing chat 2012-09-04 00:28:53 +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 1e4d51f64f Merge branch 'cybso-favorites'
Conflicts:
	src/chrome/content/options.js
	src/modules/FiretrayMessaging.jsm
2012-09-03 23:05:25 +02:00
foudfou c7b23ad718 Revert "attempt to asynchronously get addon version from AddonManager"
This reverts commit 747ab637d9.
2012-09-03 16:46:01 +02:00
foudfou 747ab637d9 attempt to asynchronously get addon version from AddonManager 2012-09-03 16:45:57 +02:00
foudfou 29dac883b9 ignore server type 'im' silently for message count 2012-09-03 08:23:37 +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 2d734f2422 Makefile for firetray.so more portable (thx simonbcn) 2012-09-02 17:31:09 +02:00
foudfou 934a67f93c * refactor FiretrayMessaging
* add favorites to the "Included accounts" tree in preference UI
2012-08-29 19:20:43 +02:00
foudfou aaef6a1544 experimental handling of Exquilla accounts 2012-08-29 11:46:12 +02:00
foudfou 693611c994 * add chat_icon_enable pref
* fix globaluserStatus with all IM accounts disconnected
* cleaning
2012-08-25 21:45:00 +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 3da01428a9 fix some gtk function definitions 2012-08-17 23:51:00 +02:00
foudfou 866bbc1a2e IM icon changes according to IM global status 2012-08-13 12:07:57 +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 ff7bcd4c91 destroy icons when shutting down IMStatusIcon 2012-08-07 22:34:02 +02:00
foudfou ceba669bcd display IM icon when IM enabled 2012-08-04 16:29:44 +02:00
foudfou 6f95421a2f fix shutdown so ctypes libs are close cleanly + cleaning 2012-08-04 15:22:10 +02:00
foudfou a9cc299259 extract from StatusIcon to GtkIcons code to share with IMStatusIcon 2012-08-04 14:58:58 +02:00
foudfou b3869630c2 * observe "account-added", "account-removed", at last ! (see 75636723 and 8d0917ab)
* auto-start InstantMessaging when needed
2012-08-04 14:02:42 +02:00
foudfou ee86eeed16 ignore 'im' server types for now, we'll be handling them later. 2012-08-03 23:52:38 +02:00
foudfou c608058971 add 'im' to mail server types and have VersionChange hooks applied synchronously
This forces us to hard code the addon version :(
2012-08-03 15:53:36 +02:00
foudfou d8448f421b refactor VersionChange handling 2012-08-03 13:53:40 +02:00
foudfou 5df98adf6a Makefile: target 'all' becomes 'build' 2012-08-01 13:15:22 +02:00
foudfou 5aac8c2592 cleaning 2012-07-28 15:25:33 +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 ee9f484b0d oops forgot libfiretray.jsm 2012-06-13 23:18:46 +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
Roland Tapken 906e64d253 Move check for excluded folders flag
The check for excluded_folders_flag was moved from countMessages
to unreadMsgCountIterate and newMsgCountIterate. This should fix
https://github.com/foudfou/FireTray/issues/44
2012-06-07 13:10:46 +02:00
Roland Tapken 5557e80939 Added preferences flag only_favorite_folders
If enabled, only folders marked as 'favorite' will be regarded.
2012-06-06 13:17:58 +02:00
foudfou 9b124d237f add menu item to reset the icon
TODO: might be interesting to add a mouse click handler also.
2012-06-01 13:05:41 +02:00
foudfou 13a76686f6 refactor firetray.PopupMenu.init() 2012-06-01 13:01:54 +02:00
foudfou 8c362f89f2 cleaning 2012-05-25 08:04:18 +02:00
foudfou de08f67324 * refactor SeniorSpielbergo's work
* keep only one mail trigger on msg count change
* refactor FiretrayMessaging.jsm
* cleaning
2012-05-25 01:18:28 +02:00
foudfou 5a591834cc Merge branch 'master' of https://github.com/SeniorSpielbergo/FireTray into SeniorSpielbergo-master 2012-05-24 19:21:38 +02:00
foudfou 701796855f nsIPrefBranch2 to be removed 2012-05-14 12:07:27 +02:00
David Wille 8cdb609369 run "no new script only" if old msg count > 0 2012-05-14 07:35:31 +02:00
David Wille 51edcf4377 added functions to run scripts on new / no new mail... should be working 2012-05-13 21:35:42 +02:00
David Wille 496dce296c added default values and prefs are stored and restored 2012-05-13 20:15:08 +02:00
David Wille 7834f1013a added new textboxes for new / no new mail scripts and functions stubs for update methods 2012-05-13 19:53:35 +02:00
foudfou b95f645653 fix Makefile 2012-05-13 17:44:11 +02:00
foudfou 89566bc9b6 fix cmd-line handler 2012-05-13 17:05:50 +02:00
foudfou 33a78716b4 remove hard-coded keyboard shortcut for hiding windows 2012-05-13 16:39:46 +02:00
foudfou dd4770a632 Merge branch 'cmd-line'
Conflicts:
	README.md
2012-05-13 16:24:47 +02:00
foudfou 137e6896ac complete command-line handling (show/hide windows) 2012-05-13 16:18:52 +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 8d0917ab62 fix cleanExcludedAccounts() 2012-04-21 16:15:43 +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 1f480af971 * fix pref UI: disable themed icon names if not selected
* refactoring
2012-04-09 01:01:01 +02:00
foudfou e679619f19 Merge branch 'themable-icons'
Conflicts:
	src/chrome/content/options.js
	src/chrome/content/options.xul
	src/modules/FiretrayHandler.jsm
	src/modules/commons.js
	src/modules/linux/FiretrayStatusIcon.jsm
2012-04-07 23:06:54 +02:00
foudfou b313970781 add ability to exclude virtual forlders from message count 2012-04-05 21:34:36 +02:00
foudfou d07c2a5ee5 bump *minVer* to 7.0
ctypes-utils.jsm was modified to handle Components.utils.unload, introduced in
Gecko 7.0. It would be too costly to try to mainain an addon that would work
for all versions from 4.0 to current. This could be achieved though with
multiple entries in chrome.manifest:
resource firetray modules-4.0/ appversion<7.0
resource firetray modules-7.0/ appversion>=7.0
but would force us to maintain 2 versions of the same files... (preprocessor
pointless)
2012-04-02 13:07:59 +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 13f9b31ed9 experimental command-line handling
will be useful to have a command for toggling windows that can be linked to the
wm keyboard shortcut mapping.

TODO: find out why helpInfo not working
2012-03-30 14:39:16 +02:00
foudfou 746ab759f7 fix tooltip warning 2012-03-28 19:37:08 +02:00
foudfou c0479d1683 fix MenuItem initialization 2012-03-28 17:57:02 +02:00
foudfou 756367230c periodically clean prefs by removing removed accounts from excludedAccounts 2012-03-20 22:06:19 +01:00
foudfou e19930b654 * refactoring
* fix consistence in preference UI (filepickers' disabling)

We still need to find out why the order in g_themed_icon_new_from_names is not
respected.
2012-03-15 18:24:38 +01:00
foudfou 2e65e07029 add ui preference functionality for new-mail themed icon
NOTES:
* we need to find out why for ex. ["glade", "mail-message-new"] gives
  "mail-message-new" where "glade" is expected (first in the list).
* we need to handle defaults better (avoid things like
  newMailIconNames.push("mail-unread")).
* be consistent in preference UI when disabling (or not) the filename inputs
  along with their related radio button.
2012-03-13 16:10:23 +01:00
foudfou 43bbfb09b6 fix libgio ABI 2012-03-13 12:57:29 +01:00
foudfou 175f48661e add themable icon names to options 2012-03-13 12:51:40 +01:00
foudfou f1960bbed8 fix path of emebedded new-mail icon 2012-03-12 01:07:28 +01:00
foudfou 095fa07c0c use themable icons (names still hard-coded) 2012-03-12 01:01:09 +01:00
foudfou b6b8d5dca0 * refactor appinfo initializations
* fix icon tooltip when unread messages
2012-03-09 13:27:49 +01:00
foudfou 98cfa3eee1 browser.tabs.warnOnClose set to false temporarily 2012-03-09 10:06:04 +01:00
foudfou d4c1da59fa remove warnings from VersionChange 2012-03-09 00:16:06 +01:00
foudfou 8763567ac3 bump to 0.4.1 2012-03-09 00:01:42 +01:00
foudfou bfb9f30b4a cleaning 2012-03-08 23:52:07 +01:00
foudfou c6be061070 document why browser.tabs.warnOnClose set to false 2012-03-08 23:40:26 +01:00
foudfou 508a002af4 * fix openBrowserTab
* make hides_single_window default to true, and remember_desktop to false
2012-03-08 23:16:44 +01:00
foudfou 1009fb9bab fix VersionChange 2012-03-08 22:11:17 +01:00
foudfou a7516e379e wrap "loose" variables and functions within a JavaScript object 2012-03-08 22:04:16 +01:00
foudfou 6c94d75dc2 better remember_desktop option description 2012-03-07 18:44:04 +01:00
foudfou b47e960755 activate window with gtk_window_present instead of
XSendClientMessgeEvent(_NET_ACTIVE_WINDOW)
2012-03-07 14:41:05 +01:00
foudfou 56b0fe6332 fix tooltip for count type 'new messages' 2012-03-06 23:28:52 +01:00
foudfou 45b56329c8 bump to v0.4.0 2012-03-05 21:27:51 +01:00
foudfou 9c39db6023 * fix Makefile to include themable icons
* drop 32x32 application icons
2012-03-05 15:00:20 +01:00
foudfou 8ac08dab9e set main status icon from Gtk theme (and add search path) 2012-03-05 13:58:08 +01:00
foudfou 1a41c25d2a typo 2012-03-05 00:12:30 +01:00
foudfou 3d89441747 add 'remember_desktop' option 2012-03-04 23:41:01 +01:00
foudfou 1b7aef50ce use built-in unread msg count 2012-03-04 23:16:57 +01:00
foudfou 354abdf32c * option to include subfolders (notably needed for new messages count)
* preference UI fixing
2012-03-04 22:19:35 +01:00
foudfou 6c6e267b40 cleaning 2012-03-04 15:31:58 +01:00
foudfou 69f9f312c4 drop use of bogus getNumNewMessages() in favor of folder.hasNewMessages 2012-03-04 15:29:12 +01:00
foudfou f9c81f0a84 fix declaration 2012-03-04 15:14:43 +01:00
foudfou da2c98633b when upgrading, correct mail_notification_type if msg count type is 'new messages' 2012-03-02 11:11:47 +01:00
foudfou 803143a535 Merge branch 'start_hidden' 2012-02-21 00:22:41 +01:00
foudfou 0fa7b30674 prevent usage of msg count with type 'new messages'
There seems to be no consistent way to count new messages. Tried with
'BiffState', 'NumNewBiffMessages', 'NewMessages'... either the proper event is
not fired, or the count is incorrect at a specific event... It was even
non-trivial to display an accurate biff.
2012-02-21 00:09:40 +01:00
foudfou 7efe604b9c showSingleWindow() and hideSingleWindow() now defined per window (needed for start_hidden) 2012-02-20 15:34:51 +01:00
foudfou 2789844b06 minor refactoring: firetray.Window.setVisibility() 2012-02-19 15:36:16 +01:00
foudfou c5a66ae05d fix getWindowInterface() for nsIXULWindow + revert to v0.4.0b3 2012-02-17 23:29:09 +01:00
foudfou ca9496d3e3 actually fix new message count update when biff becomes false
Looks like a Thunderbird bug: on an Imap folder, when switching to another
folder, that is after having visited that folder, "OnItemBoolPropertyChanged
NewMessages for folder Inbox was true became false" ...but getNumNewMessages
still returns 1 (?!)
2012-02-15 00:00:00 +01:00
foudfou d1e32bb8d7 fix new message count update when biff becomes false 2012-02-14 13:30:56 +01:00
foudfou 23cf34ea9f fix start_hidden: do not save+restore unrealized position and size.
NEEDS REFACTORING
2012-02-13 23:55:01 +01:00
foudfou ba674bf1e1 cleaning 2012-02-09 15:58:59 +01:00
foudfou 6daf73fe44 reorganize and clean 2012-02-09 15:39:33 +01:00
foudfou 868106ff61 bump to v0.4.0b3 + fix option cleaning 2012-02-09 12:44:00 +01:00
foudfou aec7766bb0 Merge branch 'new-messages' 2012-02-09 12:19:56 +01:00
foudfou 0e55f142d3 Merge branch 'screens' 2012-02-09 12:19:14 +01:00
foudfou 15dace0b32 * add 'message_count_type' option for counting unread or new messages.
* minor change to UI of mail preferences
* split pref 'mail_notification' into 'mail_notification_enabled',
  'mail_notification_type'

previous 'mail_notification' pref will be erased.
2012-02-09 00:03:29 +01:00
foudfou 35463b302c revert detection inexisting file in setIconImage()
we want the user to know that the path he provided is wrong.
2012-02-07 18:50:54 +01:00
foudfou 771d6df3b3 detect inexisting file in setIconImage() 2012-02-07 18:42:27 +01:00
foudfou e96699d530 fix restoreWindowPositionAndSize on dual-screen 2012-02-04 14:18:20 +01:00
foudfou c2203c063f Merge branch 'raised' 2012-02-04 12:28:58 +01:00
foudfou 616025d5de add option to activate windows when showing
This is the closest behaviour to "raise on top", because most window managers
do not honor XRaiseWindow()/gtd_window_raise().
http://sourceforge.net/tracker/?func=detail&aid=3020907&group_id=35398&atid=413960
2012-02-04 01:15:36 +01:00
foudfou e62b23acf8 typo + bump maxVersion for seamonkey 2012-02-03 22:25:40 +01:00
foudfou 2a313d907a option for ensuring windows are restored on top 2012-02-03 22:24:47 +01:00
foudfou 74f7f263d1 actually take the scroll_hides pref into account 2012-02-01 22:39:21 +01:00
foudfou 414bbf42aa begin attempt to restore windows to their correct screen (dual-head) 2012-01-30 22:07:21 +01:00
foudfou 61a307ad73 bump to v0.4.0b2 2012-01-30 21:40:54 +01:00
foudfou 11b60bf5d2 fix buggy options window (introduced in fc51dca3) 2012-01-30 21:22:56 +01:00
foudfou f45f8f08c3 refactor VersionChange 2012-01-30 21:10:26 +01:00
foudfou d116bdd473 onVersionChange, add version to URL of opened tab 2012-01-29 23:32:40 +01:00
foudfou 80e8f8caba bump maxVersion to 12.0a1 2012-01-28 15:52:52 +01:00
foudfou 2cbe738398 fix quit from popup menu actually everywhere 2012-01-26 12:00:10 +01:00
foudfou c3b3276348 fix: crash when quitting from popup menu 2012-01-26 11:37:41 +01:00
foudfou 9dcd5faa4a * rename pref 'scroll_to_hide' to 'scroll_hides'
* refactoring of FiretrayVersionChange.jsm
2012-01-26 07:37:08 +01:00
foudfou d0e1d072c6 fix keyboard shortcut 2012-01-23 13:15:54 +01:00
foudfou eb8ce310f4 * extract FiretrayPopupMenu.jsm from FiretrayStatusIcon.jsm
* fix visibilityRate
* fix: have only one prefListener
* refactor PopupMenu functions
* clean
2012-01-23 04:04:05 +01:00
foudfou fc51dca3fe * fix setPopupMenuWindowItemLabel call
* bump to v0.4.0b1
* refactoring
2012-01-23 01:13:27 +01:00
foudfou b4b9813d25 refactoring 2012-01-21 09:14:03 +01:00
foudfou a803ceff17 * fix UI updating when toggling hides_single_window, show_icon_on_hide
* add popup menu items for hidden windows to be shown individually

I'm not quite satisfied with the global design/partitioning of the code accross
namespaces. Some ideas to explore: extract code related to the popup menu,
don't "wrap" window-related function into the Handler.
2012-01-20 23:44:57 +01:00
foudfou d0b9d9e45f fix version change handling 2012-01-19 00:13:40 +01:00
foudfou 9d2c74ce13 handle version changes
For now, display a web page for release notes on install, upgrade and re-install.
2012-01-18 22:13:32 +01:00
foudfou 785f2dad77 oops... forgot to add pangocairo.jsm needed since ctypes-utils.jsm change 2012-01-18 15:29:08 +01:00
foudfou f6549e4211 handle scroll-event on icon 2012-01-16 23:53:27 +01:00
foudfou 2ee8fc1a91 * begin scroll-event handling on icon
* polish timer definitions
* set FIRETRAY_BROWSER_NEW_WINDOW_DELAY_MILLISECONDS = 0
2012-01-16 23:52:23 +01:00
foudfou 2d62194e86 add option for showing icon only when some windows are hidden to tray 2012-01-15 23:57:35 +01:00
foudfou 6fc5ff1a05 "Grab the latest iteration of ctypes-utils.jsm" from messagingmenu-extension 2012-01-15 22:47:00 +01:00
foudfou ec57aa0c8c * fix pref pane (UIOptions)
* addon shutdown (close ctypes libs) on xpcom-will-shutdown
* ctypes libs that import glib also export it so it can be closed later
2012-01-15 20:47:47 +01:00
foudfou 0952430996 add icons to new menu items 2012-01-15 11:11:23 +01:00
foudfou 24941550c0 * fix openBrowserWindow() when called from GtkMenuItem
* add openMailMessage() to popup menu
* add start_hidden option
* fix getXWindowDesktop()
2012-01-15 11:10:06 +01:00
foudfou 24a5344bbf attempt to add a popup menu item to open new browser window 2012-01-14 03:55:25 +01:00
foudfou 5e4eaea614 restore window to its previous virtual desktop 2012-01-09 22:13:27 +01:00
foudfou 4c3a1cfc89 better for loops
http://stackoverflow.com/questions/5349425/whats-the-fastest-way-to-loop-through-an-array-in-javascript
2012-01-07 22:16:17 +01:00
foudfou 8786fbf56b * refactoring in FiretrayWindow.jsm
* minor refactoring in options.js
2012-01-07 16:06:10 +01:00
foudfou 90e8d8e852 * fix .xpi packaging
* move ctypes related modules to modules/ctypes/
2012-01-02 18:35:02 +01:00
foudfou 075131f46c * add hides_on_minimize functionality
* fix options UI

Revert back to X11/EWMH to detect minimize event more accurately. Still have to
fix the incorrect saved window state (STATE_MINIMIZED) when hiding from another
virtual desktop.
2012-01-01 22:31:16 +01:00
foudfou 1e4254b26f * fix gdk declarations + typo in FiretrayWindow.jsm
* unsuccessful attempt to catch a real minimize event with Gtk
  'window-state-event'

The problem is that GDK_WINDOW_STATE_ICONIFIED is fired on virtual desktop
change... even both e->changed_mask and e->new_window_state get
GDK_WINDOW_STATE_ICONIFIED ! Gdk obviously relies on WM_STATE, which may not
be up-to-date. We better try to check _NET_WM_STATE at X11 level. See ex:
http://trac.wxwidgets.org/ticket/10973
2012-01-01 19:25:56 +01:00
foudfou 4cf525b692 * revert back to BaseWindow functionality (from pure Gdk) for show-/hiding
windows. Rationale: better visual results (surprisingly), and better
  portability (hopefully).
* restore window state when showing window
* help cursor only on pref window

Globally we're at the same stage we were before wanting to drop X11 and Gecko
window-cooking (f1789077), but with a much more robust/modular/cleaner design.
Hopefully.
2012-01-01 17:32:12 +01:00
foudfou 389bb317cc * catch RangeError when ctypesMap overflows
* store appName in its original form (not lower-cased)
2012-01-01 13:30:51 +01:00
foudfou 1d0c8ad6f7 display help cursor when tooltiptext 2012-01-01 03:33:28 +01:00
foudfou bdfdf5294c * cleaner fix to binding problem for options also
* improve "hides" options behaviour
2012-01-01 03:01:01 +01:00
foudfou aadf727816 * complete per-window registration and show/hide handeling
* fix storage of Gdk-/GtkWindows pointers (ctypesMap.jsm)
2012-01-01 01:45:48 +01:00
foudfou 6b4fd546d2 cleaner fix to binding (unload eventListeners) problem
« We need a separate namespace for the chrome because the chrome namespace
objects are repeated for each window, while the module namespace objects are
unique for all windows. » see:
https://developer.mozilla.org/en/XUL_School/JavaScript_Object_Management
Otherwise, by using firetray.Main=, we would be re-defining it with each
window, and for *all* other windows. So that, by closing the last window, we'd
remove objects attached to it (like the 'window' object), thus leaving other's
references pending. See:
https://groups.google.com/group/mozilla.dev.extensions/browse_thread/thread/e89e9c2a834ff2b6#
2011-12-29 23:49:06 +01:00
foudfou a050115a18 * another way to preserve unload eventListeners
* cleaning
2011-12-29 21:15:54 +01:00
foudfou 4c72b1fcbd * fix unload event listeners (and thus unregistration of windows)
* add hides_single_window preference
* revert to JS handeling of 'delete-event' (rely on onclose rather than GTK)

WORK IN PROGESS
2011-12-23 16:44:09 +01:00
foudfou 8ec4d995b8 * pass current window to onLoad() and onQuit() in order to register/unregister
window properly
* "delete-event" callbacks use GdkEventWindowState (not GdkEvent)
* begin implementation of window position/size/state save/restore

NOTE: this revision is *very* unstable. I think I should drop the GTK
"delete-event" handling and revert back to onClose().
2011-12-22 17:19:59 +01:00
foudfou 79e043e9a4 * add unregisterWindow()
* cleaning
2011-12-18 19:39:56 +01:00
foudfou 88bf1451e0 * extract FiretrayWindow.jsm out of FiretrayStatusIcon.jsm
* new windows get registered (onLoad)
* basic show/hide fonctionality

WORK IN PROGRESS
2011-12-17 04:15:02 +01:00
foudfou 6bf568bcc7 Firetray.IconLinux renamed to gtk2/Firetray.StatusIcon 2011-12-17 01:21:10 +01:00
foudfou bdb921bb78 fix typo 2011-12-17 01:14:42 +01:00
foudfou 02c4f1d769 cleaning 2011-12-16 18:08:18 +01:00
foudfou a13437891c MAJOR RE-DESIGN: drop X11 and Gecko window-cooking, and solely rely on GTK.
WORK IN PROGRESS
2011-12-15 19:43:26 +01:00
foudfou f178907781 isolate logging functionality into logging.jsm
LOG, WARN, ERROR still exported by commons.js for convenience
2011-12-14 22:00:01 +01:00
foudfou c00d69b1ad refactoring 2011-12-14 17:07:22 +01:00
foudfou 0ade38b267 successful interception of _NET_WM_STATE_HIDDEN
for minimize event interception (WORK IN PROGRESS)
2011-12-14 16:29:24 +01:00
foudfou f260c6bd0a cleaning 2011-12-14 02:24:05 +01:00
foudfou ec9a59af4d use a fixed-sized array in XGetWindowProperty() 2011-12-12 12:38:18 +01:00
foudfou 6dfc854293 cleaning 2011-12-11 22:12:24 +01:00
foudfou b3b6d77c5b another unsuccessful attempt to detect minimize event (failed interpreting
XGetWindowProperty result)
2011-12-11 21:44:39 +01:00
foudfou cced2289f6 * rename NOTIFICATION_* to FT_NOTIFICATION_* for disambiguation
* declare Cc,Ci,Cu locally instead of exporting them from common.js
  THIS BREAKS THE JS CONSOLE ! (among other things) as of Gecko-8 at least
2011-12-11 05:32:36 +01:00
foudfou 0acd053155 unsuccessful attempt to detect minimize event (XGetWindowProperty)
at this stage:
- we need to take the virtyal workspace into account
- JS console disappeared
2011-12-11 04:46:15 +01:00
foudfou 57b443037d * add x11.jsm + test code (NOW ABLE TO ADD A WINDOW FILTER !)
* use init() everywhere instead of enable()
* fix constant definitions in gdk.jsm, pango.jsm
* add testing/xtypes.c for displaying sizeof X types
2011-12-05 02:53:41 +01:00
foudfou 04c5f06142 update README/TODO about disbabling newmailalerts for excluded accounts 2011-11-28 03:52:41 +01:00
foudfou d1b05deb95 update README/TODO + bump maxVersion to 10.* for FF and TB 2011-11-24 23:12:13 +01:00
foudfou 27360545d3 * options UI: show folder exceptions as "not included"
* bump maxVersion for seamonkey to 2.6.*
2011-11-24 22:56:25 +01:00
foudfou e8556522b9 bump to v0.4.0a5 2011-11-24 21:36:27 +01:00
foudfou 052d813502 options UI: use boradcaster for disabling UI when notification disabled 2011-11-24 21:27:23 +01:00
foudfou 9718b72232 options UI: when notification disabled, disable excluded folders and accounts 2011-11-24 20:54:55 +01:00
foudfou 5e25025de3 * acutally incude *.gif during build
* fix typo
* updateUnreadMsgCount() does nothing if NOTIFICATION_DISABLED
2011-11-22 19:37:31 +01:00
foudfou f0b8b854d0 update version to v0.4.0a4 2011-11-22 02:15:09 +01:00
foudfou aac28deff7 keep only one pref for excluded_folders : flags 2011-11-22 01:56:57 +01:00
foudfou 9ffd3543f6 * make FLDR_UNINTERESTING customizable
* fix actual skipping of uninteresting folders
2011-11-22 01:37:52 +01:00
foudfou 04af43779e refactor fix buggy restore when window was maximized (restore size and
window state also)
2011-11-20 22:28:16 +01:00
foudfou ba864dbec8 temporary fix to buggy restore when window was maximized 2011-11-20 19:42:19 +01:00
foudfou dd718c16bd also remember size of windows when hiding/showing 2011-11-19 01:22:28 +01:00
foudfou c1b4bc8cb6 fix enum definitions + begin GdkFilterFunc implementation 2011-11-07 22:29:35 +01:00
foudfou 9242e07206 * options: ability to choose fixed 'newmail' icon
* fix actual color update after icon text color pick
2011-11-06 23:53:04 +01:00
foudfou 919d9fe3df option: ability to choose 'newmail' icon 2011-11-06 20:56:26 +01:00
foudfou 2fabe37d0c * refactoring: Icon management exposed only through firetray.Handler
* fix mailSessionListener removal
2011-11-06 19:32:46 +01:00
foudfou 3c881dbb9d * options: make icon text color a preference
* options: possibility to disable icon notification
2011-11-06 17:42:43 +01:00
foudfou 164c43453f options: UI for notification preferences 2011-11-06 16:28:39 +01:00
foudfou 8ec5451c94 * fixes in UIOptions (onQuit(), populateTreeAccountsOrServerTypes(), missing
cbox-disabled.gif)
* start implementing upcoming options
2011-11-04 01:02:36 +01:00
foudfou 61b8e305ad Merge branch 'UIOptions'
Conflicts:
	src/modules/FiretrayIconLinux.jsm
	src/modules/gdk.jsm
2011-11-03 22:49:52 +01:00
foudfou 96776fe9e5 options: cleaning more precise 2011-11-03 21:55:07 +01:00
foudfou 0d2017d410 options: fix unread message count when (un-)checking account 2011-11-03 21:04:03 +01:00
foudfou a9920de294 options: fix interaction btw. mail server types and accounts 2011-11-03 17:14:59 +01:00
foudfou 4646612fae * options: fix Order preference sync
* options: display server types according to Order
* cleaning
2011-11-03 02:51:43 +01:00
foudfou 903f99f006 options: finished interaction btw. mail server types and accounts 2011-11-03 01:32:46 +01:00
foudfou 92180a9146 * cleaning
* options: prepare disabling rows (styling)
2011-11-02 19:57:17 +01:00
foudfou 5ad5b3c3d4 * re-introduce dumpObj() useful for DOM elements
* merge server_types and excluded_accounts into one mail_accounts pref

This is visually more intuitive. So do we use the same tree for both. But we
store them into 2 different "branches" of the corresponding preference
object. We need to keep track of them separately because of account
creation/deletion.
2011-11-02 01:48:41 +01:00
foudfou 4d4c21b9f9 * drop dumpObj() in favour of LOG(JSON.stringify())
* UIoptions: add accounts to server types tree. WORK IN PROGRESS
2011-11-01 01:42:30 +01:00
foudfou 6607b641a6 options' UI light rework 2011-10-29 23:35:35 +02:00
foudfou d8ef0882cc options: remove static tree for mail_account_types_exclude 2011-10-29 22:42:21 +02:00
foudfou aa9e13a366 refactoring + make server_type a preference 2011-10-29 22:27:55 +02:00
foudfou b6a54fb005 refactoring + remove EventListeners on quitting options 2011-10-29 15:16:07 +02:00
foudfou 83ed4a34e1 cleaning 2011-10-29 14:10:56 +02:00
foudfou 143ca92fc0 tree for options: cleaning + limit input to digits. WORK IN PROGRESS 2011-10-22 19:47:25 +02:00
foudfou 1357e3a817 tree in option panel: SOMETHING WORKING ! but stil WORK IN PROGRESS 2011-10-22 14:10:54 +02:00
foudfou 8414d7a914 correct minVersion according to the provision of Services.jsm 2011-10-15 14:36:15 +02:00
foudfou 077528763b drop gdk_visual_get_depth() only available since GTK 2.22
As of 2011-09, Debian Squeeze shipped with GTK 2.20
2011-10-03 11:19:21 +02:00
foudfou 64a7e2f65d use TypeError() instead of custom cooking 2011-10-03 10:44:17 +02:00
foudfou 69746ffc86 option panel rework (trees...) WORK IN PROGRESS 2011-10-03 10:39:25 +02:00
foudfou 2c25e98d9a remove mail server type definition checks 2011-09-27 01:47:20 +02:00
foudfou 10e8bb01cf fix mail server sorting 2011-09-27 01:46:45 +02:00
foudfou 1aa9e809de add chatzilla icon for standalone chatzilla support (not tested yet) 2011-09-27 01:22:16 +02:00
foudfou f8a66ac2a5 minor refactoring for mail server types 2011-09-27 01:21:30 +02:00
foudfou 4acc9bcefc add order to mail server types 2011-09-27 00:55:13 +02:00
foudfou 9f324d18ff * add QueryInterfaces() helper
* add roadmap details in TODO
2011-09-26 10:02:51 +02:00
foudfou 1fff179304 dropped (planned) support for:
* Sunbird ("[Sunbird 1.0 beta1] is the last public Sunbird release by the
  Calendar Project. We recommend upgrading to [...] Lightening 1.0")
* Songbird (Linux support dropped since 2010:
  http://blog.songbirdnest.com/2010/04/02/songbird-singing-a-new-tune/)
2011-09-24 13:47:49 +02:00
foudfou ad680a6477 fix options' UI 2011-09-24 13:15:38 +02:00
foudfou d3b07c348d FireTray v0.4.0a2 2011-09-24 12:00:31 +02:00
foudfou 92e5a49a77 v0.1.2 2011-09-23 17:02:07 +02:00
foudfou dccc716af3 sort mail servers in accounts_to_exclude option 2011-09-23 16:18:44 +02:00
foudfou 3d0aaae494 drop overly complicated exludeCondition for Accounts iterator 2011-09-23 00:47:48 +02:00