1
0
mirror of https://github.com/moparisthebest/FireTray synced 2024-08-13 15:53:47 -04:00
Commit Graph

330 Commits

Author SHA1 Message Date
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
25aa1f535b add testing C files 2012-01-01 19:51:31 +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