Merge lp:~cairo-dock-team/cairo-dock-plug-ins/ubuntu into lp:ubuntu/maverick/cairo-dock-plug-ins

Proposed by Matthieu Baerts
Status: Superseded
Proposed branch: lp:~cairo-dock-team/cairo-dock-plug-ins/ubuntu
Merge into: lp:ubuntu/maverick/cairo-dock-plug-ins
Diff against target: 122408 lines (+46114/-35437)
262 files modified
Animated-icons/data/messages (+0/-192)
CMakeLists.txt (+28/-15)
Cairo-Penguin/data/Cairo-Penguin.conf.in (+2/-2)
Cairo-Penguin/data/messages (+0/-28)
Cairo-Penguin/src/applet-notifications.c (+4/-5)
Clipper/data/Clipper.conf.in (+3/-5)
Clipper/data/messages (+0/-146)
Clipper/src/applet-init.c (+4/-1)
Clipper/src/applet-notifications.c (+6/-4)
Dbus/data/messages (+0/-26)
Dbus/src/applet-dbus.c (+14/-15)
Dbus/src/interface-applet-methods.c (+2/-2)
Dbus/src/interface-applet-signals.c (+1/-1)
Doncky/data/messages (+0/-140)
Folders/data/Folders.conf.in (+9/-8)
Folders/data/messages (+0/-124)
Folders/src/applet-config.c (+13/-4)
Folders/src/applet-notifications.c (+37/-27)
GMenu/data/messages (+0/-114)
GMenu/src/applet-menu.c (+14/-2)
GMenu/src/applet-notifications.c (+8/-75)
GMenu/src/applet-util.c (+1/-1)
Indicator-applet/indicator-applet.c (+1/-1)
MeMenu/data/messages (+0/-86)
MeMenu/src/applet-me.c (+4/-4)
MeMenu/src/applet-menu.c (+1/-1)
Messaging-Menu/data/messages (+0/-90)
Messaging-Menu/src/applet-menu.c (+4/-4)
Messaging-Menu/src/applet-messaging.c (+3/-3)
Network-Monitor/data/Network-Monitor.conf.in (+2/-2)
Network-Monitor/data/messages (+0/-258)
RSSreader/data/messages (+0/-204)
RSSreader/src/applet-notifications.c (+3/-3)
Remote-Control/CMakeLists.txt (+2/-0)
Remote-Control/data/CMakeLists.txt (+11/-0)
Remote-Control/data/Remote-Control.conf.in (+14/-0)
Remote-Control/data/arrows.svg (+289/-0)
Remote-Control/src/CMakeLists.txt (+40/-0)
Remote-Control/src/applet-config.c (+51/-0)
Remote-Control/src/applet-config.h (+30/-0)
Remote-Control/src/applet-icon-finder.c (+257/-0)
Remote-Control/src/applet-icon-finder.h (+40/-0)
Remote-Control/src/applet-init.c (+66/-0)
Remote-Control/src/applet-init.h (+31/-0)
Remote-Control/src/applet-notifications.c (+480/-0)
Remote-Control/src/applet-notifications.h (+45/-0)
Remote-Control/src/applet-session.c (+154/-0)
Remote-Control/src/applet-session.h (+38/-0)
Remote-Control/src/applet-struct.h (+51/-0)
Scooby-Do/data/CMakeLists.txt (+0/-1)
Scooby-Do/data/Scooby-Do.conf.in (+0/-3)
Scooby-Do/data/arrows.svg (+0/-289)
Scooby-Do/data/messages (+0/-118)
Scooby-Do/src/applet-appli-finder.h (+0/-2)
Scooby-Do/src/applet-config.c (+0/-9)
Scooby-Do/src/applet-draw.c (+3/-50)
Scooby-Do/src/applet-icon-finder.c (+9/-209)
Scooby-Do/src/applet-icon-finder.h (+0/-1)
Scooby-Do/src/applet-init.c (+10/-16)
Scooby-Do/src/applet-notifications.c (+85/-364)
Scooby-Do/src/applet-notifications.h (+0/-4)
Scooby-Do/src/applet-search.c (+1/-1)
Scooby-Do/src/applet-session.c (+51/-53)
Scooby-Do/src/applet-session.h (+3/-5)
Scooby-Do/src/applet-struct.h (+2/-33)
Status-Notifier/CMakeLists.txt (+0/-12)
Status-Notifier/data/Status-Notifier.conf.in (+28/-38)
Status-Notifier/data/messages (+0/-100)
Status-Notifier/src/CMakeLists.txt (+9/-11)
Status-Notifier/src/applet-config.c (+3/-3)
Status-Notifier/src/applet-draw.c (+242/-0)
Status-Notifier/src/applet-draw.h (+41/-0)
Status-Notifier/src/applet-host.c (+549/-574)
Status-Notifier/src/applet-host.h (+9/-3)
Status-Notifier/src/applet-init.c (+36/-12)
Status-Notifier/src/applet-item.c (+669/-0)
Status-Notifier/src/applet-item.h (+40/-0)
Status-Notifier/src/applet-notifications.c (+106/-61)
Status-Notifier/src/applet-struct.h (+35/-24)
System-Monitor/data/System-Monitor.conf.in (+1/-1)
System-Monitor/data/messages (+0/-208)
System-Monitor/src/applet-config.c (+0/-7)
System-Monitor/src/applet-init.c (+21/-5)
System-Monitor/src/applet-monitor.c (+5/-5)
System-Monitor/src/applet-monitor.h (+1/-1)
System-Monitor/src/applet-notifications.c (+5/-3)
System-Monitor/src/applet-struct.h (+12/-2)
Toons/data/Toons.conf.in (+1/-1)
Toons/data/messages (+0/-106)
Toons/src/applet-notifications.c (+0/-10)
Xgamma/data/messages (+0/-98)
Xgamma/src/applet-notifications.c (+3/-1)
alsaMixer/data/CMakeLists.txt (+1/-0)
alsaMixer/data/emblem-mute.svg (+461/-0)
alsaMixer/data/messages (+0/-146)
alsaMixer/src/applet-notifications.c (+7/-4)
clock/data/clock.conf.in (+3/-0)
clock/data/messages (+0/-162)
clock/src/CMakeLists.txt (+2/-1)
clock/src/applet-backend-default.c (+34/-6)
clock/src/applet-backend-ical.c (+5/-3)
clock/src/applet-calendar.c (+91/-0)
clock/src/applet-calendar.h (+2/-0)
clock/src/applet-config.c (+3/-0)
clock/src/applet-draw.c (+25/-396)
clock/src/applet-draw.h (+0/-12)
clock/src/applet-init.c (+3/-7)
clock/src/applet-notifications.c (+9/-4)
clock/src/applet-struct.h (+12/-1)
clock/src/applet-timer.c (+506/-0)
clock/src/applet-timer.h (+35/-0)
compiz-icon/data/compiz-icon.conf.in (+1/-3)
compiz-icon/data/messages (+0/-196)
compiz-icon/src/applet-notifications.c (+13/-9)
copyright (+24/-9)
debian/changelog (+33/-0)
debian/control (+2/-1)
debian/copyright (+10/-3)
desklet-rendering/src/rendering-desklet-slide.c (+3/-4)
desklet-rendering/src/rendering-desklet-viewport.c (+412/-430)
desklet-rendering/src/rendering-desklet-viewport.h (+22/-19)
desklet-rendering/src/rendering-init.c (+3/-1)
dialog-rendering/data/messages (+0/-50)
dialog-rendering/src/applet-decorator-tooltip.c (+2/-2)
dnd2share/data/messages (+0/-158)
dnd2share/src/applet-notifications.c (+84/-70)
dock-rendering/data/messages (+0/-114)
dock-rendering/src/rendering-3D-plane.c (+38/-98)
dock-rendering/src/rendering-caroussel.c (+2/-2)
dock-rendering/src/rendering-commons.c (+2/-2)
dock-rendering/src/rendering-curve.c (+4/-2)
dock-rendering/src/rendering-diapo-simple.c (+154/-101)
dock-rendering/src/rendering-init.c (+1/-1)
dock-rendering/src/rendering-panel.c (+5/-3)
dock-rendering/src/rendering-parabole.c (+4/-2)
dock-rendering/src/rendering-rainbow.c (+14/-12)
drop-indicator/data/messages (+0/-20)
dustbin/data/messages (+0/-110)
dustbin/src/applet-config.c (+0/-1)
dustbin/src/applet-init.c (+3/-3)
dustbin/src/applet-notifications.c (+70/-25)
dustbin/src/applet-struct.h (+5/-1)
dustbin/src/applet-trashes-manager.c (+13/-4)
gvfs-integration/cairo-dock-gio-vfs.c (+9/-3)
icon-effect/data/messages (+0/-218)
illusion/data/messages (+0/-84)
kde-integration/src/applet-vfs.c (+2/-1)
keyboard-indicator/data/messages (+0/-114)
keyboard-indicator/src/applet-notifications.c (+14/-9)
logout/data/messages (+0/-102)
logout/src/applet-notifications.c (+6/-4)
mail/data/mail.conf.in (+3/-3)
mail/data/messages (+0/-136)
mail/src/cd-mail-applet-accounts.c (+8/-8)
mail/src/cd-mail-applet-etpan.c (+1/-1)
mail/src/cd-mail-applet-notifications.c (+32/-12)
motion-blur/data/messages (+0/-6)
musicPlayer/data/messages (+0/-190)
musicPlayer/data/musicPlayer.conf.in (+2/-2)
musicPlayer/src/CMakeLists.txt (+2/-0)
musicPlayer/src/applet-config.c (+1/-1)
musicPlayer/src/applet-cover.c (+1/-0)
musicPlayer/src/applet-draw.c (+5/-5)
musicPlayer/src/applet-gmusicbrowser.c (+43/-0)
musicPlayer/src/applet-gmusicbrowser.h (+32/-0)
musicPlayer/src/applet-init.c (+2/-0)
musicPlayer/src/applet-mpris.c (+1/-1)
musicPlayer/src/applet-notifications.c (+29/-9)
musicPlayer/src/applet-rhythmbox.c (+1/-1)
musicPlayer/src/applet-struct.h (+1/-0)
netspeed/data/messages (+0/-150)
netspeed/data/netspeed.conf.in (+2/-2)
netspeed/src/applet-init.c (+10/-4)
netspeed/src/applet-netspeed.c (+39/-23)
netspeed/src/applet-netspeed.h (+2/-0)
netspeed/src/applet-notifications.c (+7/-1)
po/ar.po (+973/-1050)
po/cairo-dock.pot (+865/-954)
po/cs.po (+1387/-1288)
po/de.po (+1225/-1205)
po/en.po (+1302/-1201)
po/es.po (+1425/-1371)
po/et.po (+7581/-0)
po/fr.po (+1065/-1514)
po/hu.po (+1019/-1103)
po/it.po (+1199/-1113)
po/ja.po (+1272/-1180)
po/nl.po (+1420/-1365)
po/pt.po (+1174/-1216)
po/pt_BR.po (+1363/-1350)
po/ru.po (+1287/-1204)
po/sk.po (+1363/-1323)
po/sr.po (+7544/-0)
po/sv.po (+995/-1049)
po/tr.po (+917/-1012)
po/uk.po (+1194/-1112)
po/zh_CN.po (+1290/-1203)
po/zh_TW.po (+1885/-1909)
powermanager/data/messages (+0/-198)
powermanager/data/powermanager.conf.in (+4/-6)
powermanager/src/powermanager-dbus.c (+5/-1)
powermanager/src/powermanager-draw.c (+31/-2)
powermanager/src/powermanager-draw.h (+3/-1)
powermanager/src/powermanager-init.c (+7/-1)
powermanager/src/powermanager-menu-functions.c (+3/-2)
quick-browser/data/messages (+0/-124)
quick-browser/src/applet-menu.c (+1/-1)
quick-browser/src/applet-notifications.c (+0/-2)
shortcuts/data/messages (+0/-134)
shortcuts/data/shortcuts.conf.in (+3/-4)
shortcuts/src/applet-bookmarks.c (+4/-4)
shortcuts/src/applet-drives.c (+9/-9)
shortcuts/src/applet-load-icons.c (+7/-7)
shortcuts/src/applet-notifications.c (+22/-19)
show-mouse/data/messages (+0/-36)
show-mouse/data/show_mouse.conf.in (+1/-1)
showDesktop/data/messages (+0/-128)
showDesktop/src/applet-notifications.c (+10/-4)
slider/data/messages (+0/-158)
slider/src/applet-notifications.c (+14/-10)
stack/data/messages (+0/-138)
stack/data/stack.conf.in (+6/-9)
stack/src/applet-config.c (+2/-2)
stack/src/applet-notifications.c (+24/-17)
stacks/CMakeLists.txt (+0/-14)
stacks/data/CMakeLists.txt (+0/-7)
stacks/data/messages (+0/-118)
stacks/data/stacks.conf.in (+0/-118)
stacks/src/CMakeLists.txt (+0/-75)
stacks/src/applet-config.c (+0/-64)
stacks/src/applet-config.h (+0/-30)
stacks/src/applet-init.c (+0/-77)
stacks/src/applet-init.h (+0/-31)
stacks/src/applet-load-icons.c (+0/-383)
stacks/src/applet-load-icons.h (+0/-33)
stacks/src/applet-notifications.c (+0/-56)
stacks/src/applet-notifications.h (+0/-37)
stacks/src/applet-stacks.c (+0/-148)
stacks/src/applet-stacks.h (+0/-34)
stacks/src/applet-struct.h (+0/-48)
switcher/data/messages (+0/-148)
switcher/src/applet-desktops.c (+1/-1)
switcher/src/applet-draw.c (+1/-1)
switcher/src/applet-notifications.c (+17/-20)
systray/data/messages (+0/-92)
template/data/messages (+0/-100)
template/data/template.conf.in (+3/-4)
template/src/applet-init.c (+1/-1)
terminal/data/messages (+0/-114)
terminal/src/terminal-menu-functions.c (+5/-4)
terminal/src/terminal-widget.c (+16/-10)
tomboy/data/messages (+0/-144)
tomboy/data/tomboy.conf.in (+1/-1)
tomboy/src/tomboy-notifications.c (+29/-12)
weather/data/messages (+0/-128)
weather/data/weather.conf.in (+2/-2)
weather/src/applet-notifications.c (+7/-5)
weblets/data/messages (+0/-118)
weblets/src/applet-notifications.c (+4/-1)
wifi/data/messages (+0/-190)
wifi/data/wifi.conf.in (+1/-1)
wifi/src/applet-notifications.c (+4/-2)
To merge this branch: bzr merge lp:~cairo-dock-team/cairo-dock-plug-ins/ubuntu
Reviewer Review Type Date Requested Status
Cairo-Dock Devs Pending
Review via email: mp+34712@code.launchpad.net

This proposal has been superseded by a proposal from 2010-09-16.

To post a comment you must log in.
15. By Matthieu Baerts

* New Upstream Version (LP: #638529)
* Fixed a few bugs on LP:
 - Fixed a crash in rainbow view when the cone is completely opened
 - Installed in lib directory by default even in 64bits arch
 - Status-Notifier: fixed few bugs
 - Clock applet:
   - Notify of missed tasks (moved some functions to a new file)
   - Fixed a little memory leak
 - Removed some 'g_print' (LP: #500677: xsession-errors log)
* Updated translations

16. By Matthieu Baerts

Status-Notifier: Fixed a typo

17. By Matthieu Baerts

 - Fixed a crash in rainbow view if the subdock is empty
* debian/control
 - Updated the version of cairo-dock-dev and cairo-dock-core

18. By Didier Roche-Tolomelli

debian/control: depends on latest libindicator-dev (LP: #637692)

19. By Matthieu Baerts

* New Upstream Version (LP: #653702)
* Fixed a few bugs:
 - All .mo files aren't installed into the right directory (LP: #653336)
 - Dbus: Fixed a crash when exiting Cairo-Dock
 - Indicator: Some modifications needed for the latest
               version of libindicator
 - RSSreader: Prevented a crash if myDrawContext != NULL
 - Clock: Prevented a crash if myDrawContext != NULL
 - Switcher:
  - Prevented a crash if myDrawContext != NULL
  - Fixed a crash if the plugin is launched much time before the WM
 - musicPlayer:
  - Used the right image set from the config panel
  - MPRIS plugin: fixed a bug with the tracknumber
 - Systray: not drawn outside the screen.
 - tomboy: not popup a dialogue inside the screen
 - xfce-integration: displayed a window when logout applet is launched
* debian/control:
 - Updated the version of cairo-dock-dev and cairo-dock-core

20. By Matthieu Baerts

* debian/control:
 - Replaced libwebkit-dev by libwebkitgtk-dev (LP: #704032)
* No change rebuild for libindicator1 > libindicator2 transition
* No change rebuild for libdbusmenu-gtk1 > libdbusmenu-gtk2 transition

21. By Matthieu Baerts

* New Upstream Version (LP: #723995)
* Added debian/source/format: 3.0
* debian/cairo-dock-plug-ins.install:
 - Added new files (interfaces for python, ruby, vala and mono)
* debian/control:
 - Added new dependences for new applets (sensors and zeitgeist)
    and new interfaces (python, valac, ruby and mono)
 - Updated the version of cairo-dock build-dependences
* debian/rules:
 - Added a new CMake flag to install python interface in debian/tmp
* Updated debian/watch

Unmerged revisions

21. By Matthieu Baerts

* New Upstream Version (LP: #723995)
* Added debian/source/format: 3.0
* debian/cairo-dock-plug-ins.install:
 - Added new files (interfaces for python, ruby, vala and mono)
* debian/control:
 - Added new dependences for new applets (sensors and zeitgeist)
    and new interfaces (python, valac, ruby and mono)
 - Updated the version of cairo-dock build-dependences
* debian/rules:
 - Added a new CMake flag to install python interface in debian/tmp
* Updated debian/watch

20. By Matthieu Baerts

* debian/control:
 - Replaced libwebkit-dev by libwebkitgtk-dev (LP: #704032)
* No change rebuild for libindicator1 > libindicator2 transition
* No change rebuild for libdbusmenu-gtk1 > libdbusmenu-gtk2 transition

19. By Matthieu Baerts

* New Upstream Version (LP: #653702)
* Fixed a few bugs:
 - All .mo files aren't installed into the right directory (LP: #653336)
 - Dbus: Fixed a crash when exiting Cairo-Dock
 - Indicator: Some modifications needed for the latest
               version of libindicator
 - RSSreader: Prevented a crash if myDrawContext != NULL
 - Clock: Prevented a crash if myDrawContext != NULL
 - Switcher:
  - Prevented a crash if myDrawContext != NULL
  - Fixed a crash if the plugin is launched much time before the WM
 - musicPlayer:
  - Used the right image set from the config panel
  - MPRIS plugin: fixed a bug with the tracknumber
 - Systray: not drawn outside the screen.
 - tomboy: not popup a dialogue inside the screen
 - xfce-integration: displayed a window when logout applet is launched
* debian/control:
 - Updated the version of cairo-dock-dev and cairo-dock-core

18. By Didier Roche-Tolomelli

debian/control: depends on latest libindicator-dev (LP: #637692)

17. By Matthieu Baerts

 - Fixed a crash in rainbow view if the subdock is empty
* debian/control
 - Updated the version of cairo-dock-dev and cairo-dock-core

16. By Matthieu Baerts

Status-Notifier: Fixed a typo

15. By Matthieu Baerts

* New Upstream Version (LP: #638529)
* Fixed a few bugs on LP:
 - Fixed a crash in rainbow view when the cone is completely opened
 - Installed in lib directory by default even in 64bits arch
 - Status-Notifier: fixed few bugs
 - Clock applet:
   - Notify of missed tasks (moved some functions to a new file)
   - Fixed a little memory leak
 - Removed some 'g_print' (LP: #500677: xsession-errors log)
* Updated translations

14. By Matthieu Baerts

* New Upstream Version (LP: #632054)
* Fixed a few bugs on LP:
 - LP: #616176 Dust Bin Hang and Incorrect Configuration
 - LP: #604034 Change terminal tab's name lost the color
 - LP: #582452 GMenu does not contain any applications
* Fixed a few bugs on glx-dock forum:
 - Fixed support of GMusicBrowser.
 - AlsaMixer has no emblem.
 - Status-Notifier doesn't be drawed into the dock.
* Updated translations
* debian/control:
 - Added cairo-dock-core as build-depends in order to prevent
   some builds errors.

13. By Didier Roche-Tolomelli

fix versionning

12. By Fabounet

applied Matttbe's patch on changelog and control files

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== removed file 'Animated-icons/data/messages'
--- Animated-icons/data/messages 2010-08-07 01:43:25 +0000
+++ Animated-icons/data/messages 1970-01-01 00:00:00 +0000
@@ -1,192 +0,0 @@
1_("Global")
2
3_("Animations are triggered when hovering an icon only in OpenGL mode.")
4
5_("when hovering over an icon")
6
7_("Effects used:")
8
9_("Bounce")
10
11_("Rotate")
12
13_("Blink")
14
15_("Pulse")
16
17_("Wobbly")
18
19_("Wave")
20
21_("Spot")
22
23_("when clicking on an launcher")
24
25_("Effects used on launcher:")
26
27_("Bounce")
28
29_("Rotate")
30
31_("Blink")
32
33_("Pulse")
34
35_("Wobbly")
36
37_("Wave")
38
39_("Number of times the animation will play:")
40
41_("when clicking on an application")
42
43_("Effects used on applications:")
44
45_("Bounce")
46
47_("Rotate")
48
49_("Blink")
50
51_("Pulse")
52
53_("Wobbly")
54
55_("Wave")
56
57_("Number of times the animation will play:")
58
59_("when clicking on an applet")
60
61_("Effects used on applets:")
62
63_("Bounce")
64
65_("Rotate")
66
67_("Blink")
68
69_("Pulse")
70
71_("Wobbly")
72
73_("Wave")
74
75_("Number of times the animation will play:")
76
77_("Rotation")
78
79_("In ms.")
80
81_("Duration of the animation:")
82
83_("Repeat while icon is pointed to?")
84
85_("Type of mesh:")
86
87_("Normal")
88
89_("Cube")
90
91_("Capsule")
92
93_("Colour of the sheen:")
94
95_("Spot")
96
97_("In ms.")
98
99_("Duration of the animation:")
100
101_("Repeat while icon is pointed to?")
102
103_("Spot")
104
105_("Leave empty to use the default one.")
106
107_("Image for the spotlight:")
108
109_("Leave empty to use the default one.")
110
111_("Image for the front spotlight:")
112
113_("Spot colour:")
114
115_("Halo colour:")
116
117_("Rays")
118
119_("st color of gradation :")
120
121_("nd color of gradation :")
122
123_("Random colours?")
124
125_("Number of rays:")
126
127_("Ray size:")
128
129_("Ray speed:")
130
131_("Wobbly")
132
133_("Initial stretch:")
134
135_("Horizontal stretch")
136
137_("Vertical stretch")
138
139_("Corner stretch")
140
141_("Spring constant:")
142
143_("Friction:")
144
145_("Number of points on the grid in each direction:")
146
147_("Wave")
148
149_("In ms.")
150
151_("Duration of the animation:")
152
153_("Repeat while icon is pointed to?")
154
155_("Wave width:")
156
157_("Wave amplitude:")
158
159_("Pulse")
160
161_("In ms.")
162
163_("Pulse duration:")
164
165_("Repeat while icon is pointed to?")
166
167_("Pulse max zoom:")
168
169_("Pulse follows icon shape?")
170
171_("Bounce")
172
173_("In ms.")
174
175_("Bounce duration:")
176
177_("Repeat while icon is pointed to?")
178
179_("When bouncing, resize the icon by:")
180
181_("the lower the value, the more it will flatten.")
182
183_("How much the icon will flatten when hitting the ground:")
184
185_("Blink")
186
187_("In ms.")
188
189_("Blink duration:")
190
191_("Repeat while icon is pointed to?")
192
1930
=== modified file 'CMakeLists.txt'
--- CMakeLists.txt 2010-08-07 01:43:25 +0000
+++ CMakeLists.txt 2010-09-16 01:10:06 +0000
@@ -10,7 +10,7 @@
10########### project ###############10########### project ###############
1111
12project ("cairo-dock-plugins")12project ("cairo-dock-plugins")
13set (VERSION "2.2.0-0beta4")13set (VERSION "2.2.0-1")
1414
15add_definitions (-std=c99 -Wstrict-prototypes -Wextra -Wwrite-strings -Wuninitialized -Werror-implicit-function-declaration) #-Wunreachable-code -Wno-unused-parameter -Wall15add_definitions (-std=c99 -Wstrict-prototypes -Wextra -Wwrite-strings -Wuninitialized -Werror-implicit-function-declaration) #-Wunreachable-code -Wno-unused-parameter -Wall
16if (NOT ${CMAKE_BUILD_TYPE})16if (NOT ${CMAKE_BUILD_TYPE})
@@ -23,7 +23,7 @@
23set (CPACK_SOURCE_GENERATOR "TGZ")23set (CPACK_SOURCE_GENERATOR "TGZ")
24set (CPACK_SOURCE_PACKAGE_FILE_NAME "${CMAKE_PROJECT_NAME}-${VERSION}")24set (CPACK_SOURCE_PACKAGE_FILE_NAME "${CMAKE_PROJECT_NAME}-${VERSION}")
25set (CPACK_SOURCE_IGNORE_FILES 25set (CPACK_SOURCE_IGNORE_FILES
26 "/build/;/.bzr/;bzrignore$;/misc/;/en_GB.po$;~$;${CPACK_SOURCE_IGNORE_FILES}")26 "/build/;/.bzr/;bzrignore$;/misc/;~$;${CPACK_SOURCE_IGNORE_FILES}")
27include (CPack)27include (CPack)
2828
29add_custom_target( dist29add_custom_target( dist
@@ -62,12 +62,10 @@
62endif()62endif()
63set (GETTEXT_PLUGINS "cairo-dock-plugins")63set (GETTEXT_PLUGINS "cairo-dock-plugins")
6464
65if( CMAKE_SIZEOF_VOID_P EQUAL 8 AND "${LIB_SUFFIX}" STREQUAL "" AND "${FORCE_NOT_LIB64}" STREQUAL "" )65if( CMAKE_SIZEOF_VOID_P EQUAL 8 AND NOT "${FORCE_LIB64}" STREQUAL "") # 64bits and force install in lib64
66 set (libdir lib64/cairo-dock)66 set (libdir ${prefix}/lib64)
67elseif( CMAKE_SIZEOF_VOID_P EQUAL 8 AND NOT "${FORCE_NOT_LIB64}" STREQUAL "" )
68 set (libdir lib${LIB_SUFFIX}/cairo-dock)
69else()67else()
70 set (libdir lib${LIB_SUFFIX}/cairo-dock)68 set (libdir ${prefix}/lib${LIB_SUFFIX})
71endif()69endif()
7270
73if (NOT "${pluginsdir}" STREQUAL "${CMAKE_INSTALL_PREFIX}/${libdir}")71if (NOT "${pluginsdir}" STREQUAL "${CMAKE_INSTALL_PREFIX}/${libdir}")
@@ -509,12 +507,17 @@
509507
510############# STATUS NOTIFIER #################508############# STATUS NOTIFIER #################
511if ("${enable-status-notifier}" STREQUAL "yes")509if ("${enable-status-notifier}" STREQUAL "yes")
512 set (GETTEXT_STATUS_NOTIFIER ${GETTEXT_PLUGINS})510 pkg_check_modules (STATUS_NOTIFIER dbusmenu-gtk)
513 set (VERSION_STATUS_NOTIFIER "0.0.1")511 if ("${STATUS_NOTIFIER_FOUND}" STREQUAL "")
514 set (PACKAGE_STATUS_NOTIFIER "cd-status-notifier")512 message (STATUS "Could not find Status-Notifier libs; Cairo-Dock won't be built with Status-Notifier support.")
515 set (status_notifierdatadir "${pluginsdatadir}/Status-Notifier")513 else()
516 configure_file (${CMAKE_CURRENT_SOURCE_DIR}/Status-Notifier/data/Status-Notifier.conf.in ${CMAKE_CURRENT_BINARY_DIR}/Status-Notifier/data/Status-Notifier.conf)514 set (GETTEXT_STATUS_NOTIFIER ${GETTEXT_PLUGINS})
517 add_subdirectory (Status-Notifier)515 set (VERSION_STATUS_NOTIFIER "0.1.0")
516 set (PACKAGE_STATUS_NOTIFIER "cd-status-notifier")
517 set (status_notifierdatadir "${pluginsdatadir}/Status-Notifier")
518 configure_file (${CMAKE_CURRENT_SOURCE_DIR}/Status-Notifier/data/Status-Notifier.conf.in ${CMAKE_CURRENT_BINARY_DIR}/Status-Notifier/data/Status-Notifier.conf)
519 add_subdirectory (Status-Notifier)
520 endif()
518endif()521endif()
519522
520############# SWITCHER #################523############# SWITCHER #################
@@ -527,7 +530,7 @@
527530
528############# SYSTEM MONITOR #################531############# SYSTEM MONITOR #################
529set (GETTEXT_SYSTEM_MONITOR ${GETTEXT_PLUGINS})532set (GETTEXT_SYSTEM_MONITOR ${GETTEXT_PLUGINS})
530set (VERSION_SYSTEM_MONITOR "1.0.4")533set (VERSION_SYSTEM_MONITOR "1.0.5")
531set (PACKAGE_SYSTEM_MONITOR "cd-system-monitor")534set (PACKAGE_SYSTEM_MONITOR "cd-system-monitor")
532set (system_monitordatadir "${pluginsdatadir}/System-monitor")535set (system_monitordatadir "${pluginsdatadir}/System-monitor")
533configure_file (${CMAKE_CURRENT_SOURCE_DIR}/System-Monitor/data/System-Monitor.conf.in ${CMAKE_CURRENT_BINARY_DIR}/System-Monitor/data/System-Monitor.conf)536configure_file (${CMAKE_CURRENT_SOURCE_DIR}/System-Monitor/data/System-Monitor.conf.in ${CMAKE_CURRENT_BINARY_DIR}/System-Monitor/data/System-Monitor.conf)
@@ -554,7 +557,7 @@
554 add_subdirectory (terminal)557 add_subdirectory (terminal)
555endif()558endif()
556559
557############# OY #################560############# TOMBOY #################
558set (GETTEXT_TOMBOY ${GETTEXT_PLUGINS})561set (GETTEXT_TOMBOY ${GETTEXT_PLUGINS})
559set (VERSION_TOMBOY "1.3.0")562set (VERSION_TOMBOY "1.3.0")
560set (PACKAGE_TOMBOY "cd-tomboy")563set (PACKAGE_TOMBOY "cd-tomboy")
@@ -631,3 +634,13 @@
631endif()634endif()
632635
633add_subdirectory (po)636add_subdirectory (po)
637
638############# REMOTE_CONTROL #################
639if ("${enable_remote_control}" STREQUAL "yes")
640 set (GETTEXT_REMOTE_CONTROL ${GETTEXT_PLUGINS})
641 set (VERSION_REMOTE_CONTROL "0.0.1")
642 set (PACKAGE_REMOTE_CONTROL "cd-Remote-Control")
643 set (remote_controldatadir "${pluginsdatadir}/Remote-Control")
644 configure_file (${CMAKE_CURRENT_SOURCE_DIR}/Remote-Control/data/Remote-Control.conf.in ${CMAKE_CURRENT_BINARY_DIR}/Remote-Control/data/Remote-Control.conf)
645 add_subdirectory (Remote-Control)
646endif()
634647
=== modified file 'Cairo-Penguin/data/Cairo-Penguin.conf.in'
--- Cairo-Penguin/data/Cairo-Penguin.conf.in 2010-08-07 01:43:25 +0000
+++ Cairo-Penguin/data/Cairo-Penguin.conf.in 2010-09-16 01:10:06 +0000
@@ -7,7 +7,7 @@
7icon size = 0;07icon size = 0;0
88
9#s Icon name for busy penguin:9#s Icon name for busy penguin:
10name = Tux10name =
1111
12#d Name of the dock it belongs to:12#d Name of the dock it belongs to:
13dock name = 13dock name =
@@ -26,7 +26,7 @@
26theme = Classic26theme = Classic
2727
28#i Delay between animation changes :28#i Delay between animation changes :
29#{in seconds.29#{in seconds.}
30change delay = 830change delay = 8
3131
32#e[0;1] Penguin transparency:32#e[0;1] Penguin transparency:
3333
=== removed file 'Cairo-Penguin/data/messages'
--- Cairo-Penguin/data/messages 2010-08-07 01:43:25 +0000
+++ Cairo-Penguin/data/messages 1970-01-01 00:00:00 +0000
@@ -1,28 +0,0 @@
1_("Icon")
2
3_("Set to 0 to use the default applet size")
4
5_("Icon size for busy penguin:")
6
7_("Icon name for busy penguin:")
8
9_("Name of the dock it belongs to:")
10
11_("Applet's Handbook")
12
13_("Configuration")
14
15_("Choose one of the available themes:")
16
17_("in seconds.")
18
19_("Delay between animation changes :")
20
21_("Penguin transparency:")
22
23_("Let the penguin wander everywhere in the dock?")
24
25_("in pixels.")
26
27_("Ground offset:")
28
290
=== modified file 'Cairo-Penguin/src/applet-notifications.c'
--- Cairo-Penguin/src/applet-notifications.c 2010-08-07 01:43:25 +0000
+++ Cairo-Penguin/src/applet-notifications.c 2010-09-16 01:10:06 +0000
@@ -105,7 +105,7 @@
105{105{
106 PenguinAnimation *pAnimation = penguin_get_current_animation ();106 PenguinAnimation *pAnimation = penguin_get_current_animation ();
107 if(pAnimation == NULL)107 if(pAnimation == NULL)
108 return CAIRO_DOCK_LET_PASS_NOTIFICATION;108 CD_APPLET_LEAVE (CAIRO_DOCK_LET_PASS_NOTIFICATION);
109 109
110 if ((myConfig.bFree && pClickedContainer == myContainer && myDock->container.iMouseX > (myDock->container.iWidth - myDock->fFlatDockWidth) / 2 + myData.iCurrentPositionX && myDock->container.iMouseX < (myDock->container.iWidth - myDock->fFlatDockWidth) / 2 + myData.iCurrentPositionX + pAnimation->iFrameWidth && myDock->container.iMouseY > myContainer->iHeight - myData.iCurrentPositionY - pAnimation->iFrameHeight && myDock->container.iMouseY < myContainer->iHeight - myData.iCurrentPositionY) || (! myConfig.bFree && pClickedIcon == myIcon))110 if ((myConfig.bFree && pClickedContainer == myContainer && myDock->container.iMouseX > (myDock->container.iWidth - myDock->fFlatDockWidth) / 2 + myData.iCurrentPositionX && myDock->container.iMouseX < (myDock->container.iWidth - myDock->fFlatDockWidth) / 2 + myData.iCurrentPositionX + pAnimation->iFrameWidth && myDock->container.iMouseY > myContainer->iHeight - myData.iCurrentPositionY - pAnimation->iFrameHeight && myDock->container.iMouseY < myContainer->iHeight - myData.iCurrentPositionY) || (! myConfig.bFree && pClickedIcon == myIcon))
111 {111 {
@@ -113,15 +113,14 @@
113 {113 {
114 cd_debug ("%s\n", myApplet->cConfFilePath);114 cd_debug ("%s\n", myApplet->cConfFilePath);
115 cairo_dock_notify (CAIRO_DOCK_BUILD_ICON_MENU, myIcon, myContainer, CD_APPLET_MY_MENU);115 cairo_dock_notify (CAIRO_DOCK_BUILD_ICON_MENU, myIcon, myContainer, CD_APPLET_MY_MENU);
116 return CAIRO_DOCK_INTERCEPT_NOTIFICATION;116 CD_APPLET_LEAVE (CAIRO_DOCK_INTERCEPT_NOTIFICATION);
117 }117 }
118 118
119 GtkWidget *pMenuItem, *image;119 GtkWidget *pMenuItem, *image;
120 120
121 CD_APPLET_ADD_SEPARATOR_IN_MENU (CD_APPLET_MY_MENU);121 CD_APPLET_ADD_SEPARATOR_IN_MENU (CD_APPLET_MY_MENU);
122 122
123 GtkWidget *pModuleSubMenu = CD_APPLET_ADD_SUB_MENU (D_("Hey, you there!"), CD_APPLET_MY_MENU);123 GtkWidget *pModuleSubMenu = CD_APPLET_CREATE_MY_SUB_MENU ();
124 //GtkWidget *pModuleSubMenu = CD_APPLET_CREATE_MY_SUB_MENU ();
125 if (penguin_is_resting (pAnimation))124 if (penguin_is_resting (pAnimation))
126 {125 {
127 CD_APPLET_ADD_IN_MENU(D_("Wake up"), _wake_up, pModuleSubMenu);126 CD_APPLET_ADD_IN_MENU(D_("Wake up"), _wake_up, pModuleSubMenu);
@@ -170,7 +169,7 @@
170 else if (iRandom == 1 && ! myConfig.bFree)169 else if (iRandom == 1 && ! myConfig.bFree)
171 {170 {
172 CD_APPLET_ANIMATE_MY_ICON ("bounce", 3);171 CD_APPLET_ANIMATE_MY_ICON ("bounce", 3);
173 myData.pDialog = cairo_dock_show_temporary_dialog ("Olllééééé !", myIcon, myContainer, 2500);172 myData.pDialog = cairo_dock_show_temporary_dialog ("Olll����� !", myIcon, myContainer, 2500);
174 }173 }
175 else174 else
176 {175 {
177176
=== modified file 'Clipper/data/Clipper.conf.in'
--- Clipper/data/Clipper.conf.in 2010-08-07 01:43:25 +0000
+++ Clipper/data/Clipper.conf.in 2010-09-16 01:10:06 +0000
@@ -59,9 +59,6 @@
59#b Should be visible on all desktops?59#b Should be visible on all desktops?
60sticky=true60sticky=true
6161
62
63
64
65#F[Decorations;gtk-orientation-portrait]62#F[Decorations;gtk-orientation-portrait]
66frame_deco=63frame_deco=
6764
@@ -95,6 +92,7 @@
95#e+[0;1] Foreground tansparency:92#e+[0;1] Foreground tansparency:
96fg alpha = 193fg alpha = 1
9794
95
98#[gtk-preferences]96#[gtk-preferences]
99[Configuration]97[Configuration]
10098
@@ -132,7 +130,7 @@
132shortkey = <Control>F8130shortkey = <Control>F8
133131
134#b Pop-up menus at mouse position?132#b Pop-up menus at mouse position?
135menu on mouse = true133menu on mouse = false
136134
137135
138#F[Actions;gtk-execute]136#F[Actions;gtk-execute]
@@ -140,7 +138,7 @@
140138
141#b Enable actions?139#b Enable actions?
142#{If some actions are associated with an item, they will be proposed when the item is created.}140#{If some actions are associated with an item, they will be proposed when the item is created.}
143enable actions = true141enable actions = false
144142
145#b Replay actions?143#b Replay actions?
146#{Display actions when selecting an item in the history.}144#{Display actions when selecting an item in the history.}
147145
=== removed file 'Clipper/data/messages'
--- Clipper/data/messages 2010-08-07 01:43:25 +0000
+++ Clipper/data/messages 1970-01-01 00:00:00 +0000
@@ -1,146 +0,0 @@
1_("Icon")
2
3_("Set to 0 to use the default applet size")
4
5_("Desired icon size for this applet")
6
7_("Name of the icon as it will appear in its caption in the dock:")
8
9_("Leave empty to use the default one.")
10
11_("Image filename:")
12
13_("Name of the dock it belongs to:")
14
15_("Applet's Handbook")
16
17_("Desklet")
18
19_("Position")
20
21_("If locked, the desklet cannot be moved by simply dragging it with the left mouse button. It can still be moved with ALT + left-click.")
22
23_("Lock position?")
24
25_("Depending on your WindowManager, you may be able to resize this with ALT + middle-click or ALT + left-click.")
26
27_("Desklet dimensions (width x height):")
28
29_("Depending on your WindowManager, you may be able to move this with ALT + left-click.")
30
31_("Desklet position (x, y):")
32
33_("You can quickly rotate the desklet with the mouse, by dragging the little buttons on its left and top sides.")
34
35_("Rotation:")
36
37_("Visibility")
38
39_("Is detached from the dock")
40
41_("for CompizFusion's \"widget layer\", set behaviour in Compiz to: (class=Cairo-dock & type=utility)")
42
43_("Visibility:")
44
45_("Normal")
46
47_("Keep above")
48
49_("Keep below")
50
51_("Keep on widget layer")
52
53_("Reserve space")
54
55_("Should be visible on all desktops?")
56
57_("Decorations")
58
59_("Choose 'Custom decorations' to define your own decorations below.")
60
61_("Choose a decoration theme for this desklet:")
62
63_("Image to be displayed below drawings, e.g. a frame. Leave empty for no image.")
64
65_("Background image:")
66
67_("Background transparency:")
68
69_("in pixels. Use this to adjust the left position of drawings.")
70
71_("Left offset:")
72
73_("in pixels. Use this to adjust the top position of drawings.")
74
75_("Top offset:")
76
77_("in pixels. Use this to adjust the right position of drawings.")
78
79_("Right offset:")
80
81_("in pixels. Use this to adjust the bottom position of drawings.")
82
83_("Bottom offset:")
84
85_("Image to be displayed above the drawings, e.g. a reflection. Leave empty for no image.")
86
87_("Foreground image:")
88
89_("Foreground tansparency:")
90
91_("Configuration")
92
93_("Items")
94
95_("Clipboard items are those you get with CTRL+c. Selection items are those you get by selecting some text with the mouse.")
96
97_("Which items should be remembered?")
98
99_("None")
100
101_("Clipboard")
102
103_("Selection")
104
105_("Both")
106
107_("Number of items:")
108
109_("Remember items between 2 sessions ?")
110
111_("It is especially useful if you often select text with the mouse and don't want to loose your clipboard items due to too many items in the selection.")
112
113_("Separate clipboard and selection?")
114
115_("If so, number of selection items:")
116
117_("When you click on an item, its content will become accessible with CTRL+v")
118
119_("Paste into Clipboard?")
120
121_("When you click on an item, its content will become accessible with the middle-click")
122
123_("Paste into Selection?")
124
125_("Shortkey to pop-up the items menu:")
126
127_("Pop-up menus at mouse position?")
128
129_("Actions")
130
131_("If some actions are associated with an item, they will be proposed when the item is created.")
132
133_("Enable actions?")
134
135_("Display actions when selecting an item in the history.")
136
137_("Replay actions?")
138
139_("in seconds.")
140
141_("Duration of the action menu:")
142
143_("Persistent items")
144
145_("A list of persistent items which can be accessed with middle-click:")
146
1470
=== modified file 'Clipper/src/applet-init.c'
--- Clipper/src/applet-init.c 2010-08-07 01:43:25 +0000
+++ Clipper/src/applet-init.c 2010-09-16 01:10:06 +0000
@@ -26,7 +26,7 @@
26#include "applet-init.h"26#include "applet-init.h"
2727
2828
29CD_APPLET_DEFINITION (N_("Clipper"),29CD_APPLET_DEFINE_BEGIN ("Clipper",
30 1, 6, 3,30 1, 6, 3,
31 CAIRO_DOCK_CATEGORY_APPLET_ACCESSORY,31 CAIRO_DOCK_CATEGORY_APPLET_ACCESSORY,
32 N_("This applet keeps a trace of the clipboard and mouse selection,\n"32 N_("This applet keeps a trace of the clipboard and mouse selection,\n"
@@ -35,6 +35,9 @@
35 "Left-click to popup the clipboard and mouse selection history,\n"35 "Left-click to popup the clipboard and mouse selection history,\n"
36 "Drop text on the icon to create persistent items, and middle-clck to recall them."),36 "Drop text on the icon to create persistent items, and middle-clck to recall them."),
37 "Fabrice Rey (Fabounet)")37 "Fabrice Rey (Fabounet)")
38 CD_APPLET_DEFINE_COMMON_APPLET_INTERFACE
39 CD_APPLET_REDEFINE_TITLE (N_("Clipboard history"))
40CD_APPLET_DEFINE_END
3841
3942
40//\___________ Here is where you initiate your applet. myConfig is already set at this point, and also myIcon, myContainer, myDock, myDesklet (and myDrawContext if you're in dock mode). The macro CD_APPLET_MY_CONF_FILE and CD_APPLET_MY_KEY_FILE can give you access to the applet's conf-file and its corresponding key-file (also available during reload). If you're in desklet mode, myDrawContext is still NULL, and myIcon's buffers has not been filled, because you may not need them then (idem when reloading).43//\___________ Here is where you initiate your applet. myConfig is already set at this point, and also myIcon, myContainer, myDock, myDesklet (and myDrawContext if you're in dock mode). The macro CD_APPLET_MY_CONF_FILE and CD_APPLET_MY_KEY_FILE can give you access to the applet's conf-file and its corresponding key-file (also available during reload). If you're in desklet mode, myDrawContext is still NULL, and myIcon's buffers has not been filled, because you may not need them then (idem when reloading).
4144
=== modified file 'Clipper/src/applet-notifications.c'
--- Clipper/src/applet-notifications.c 2010-08-07 01:43:25 +0000
+++ Clipper/src/applet-notifications.c 2010-09-16 01:10:06 +0000
@@ -35,7 +35,7 @@
35 else35 else
36 {36 {
37 GtkWidget *pMenu = cd_clipper_build_items_menu ();37 GtkWidget *pMenu = cd_clipper_build_items_menu ();
38 cairo_dock_popup_menu_on_container (pMenu, myContainer);38 cairo_dock_popup_menu_on_icon (pMenu, myIcon, myContainer);
39 }39 }
40CD_APPLET_ON_CLICK_END40CD_APPLET_ON_CLICK_END
4141
@@ -85,9 +85,11 @@
85 CD_APPLET_LEAVE();85 CD_APPLET_LEAVE();
86}86}
87CD_APPLET_ON_BUILD_MENU_BEGIN87CD_APPLET_ON_BUILD_MENU_BEGIN
88 // Sub-Menu
88 GtkWidget *pSubMenu = CD_APPLET_CREATE_MY_SUB_MENU ();89 GtkWidget *pSubMenu = CD_APPLET_CREATE_MY_SUB_MENU ();
89 CD_APPLET_ADD_IN_MENU_WITH_STOCK ("Clear clipboard History", "gtk-clear", _cd_clipper_clear_history, pSubMenu);90 CD_APPLET_ADD_IN_MENU_WITH_STOCK ("Clear clipboard History", GTK_STOCK_CLEAR, _cd_clipper_clear_history, pSubMenu);
90 CD_APPLET_ADD_IN_MENU_WITH_STOCK ("Paste all copied items", "gtk-paste", _cd_clipper_paste_all, pSubMenu);91 CD_APPLET_ADD_IN_MENU_WITH_STOCK ("Paste all copied items", GTK_STOCK_PASTE, _cd_clipper_paste_all, pSubMenu);
92 CD_APPLET_ADD_SEPARATOR_IN_MENU (pSubMenu);
91 CD_APPLET_ADD_ABOUT_IN_MENU (pSubMenu);93 CD_APPLET_ADD_ABOUT_IN_MENU (pSubMenu);
92CD_APPLET_ON_BUILD_MENU_END94CD_APPLET_ON_BUILD_MENU_END
9395
@@ -101,7 +103,7 @@
101 else103 else
102 {104 {
103 GtkWidget *pMenu = cd_clipper_build_persistent_items_menu ();105 GtkWidget *pMenu = cd_clipper_build_persistent_items_menu ();
104 cairo_dock_popup_menu_on_container (pMenu, myContainer);106 cairo_dock_popup_menu_on_icon (pMenu, myIcon, myContainer);
105 }107 }
106CD_APPLET_ON_MIDDLE_CLICK_END108CD_APPLET_ON_MIDDLE_CLICK_END
107109
108110
=== removed file 'Dbus/data/messages'
--- Dbus/data/messages 2010-08-07 01:43:25 +0000
+++ Dbus/data/messages 1970-01-01 00:00:00 +0000
@@ -1,26 +0,0 @@
1_("Configuration")
2
3_("Let external applications pop up dialogs in the dock?")
4
5_("Let external applications reboot the dock?")
6
7_("Let external applications quit the dock?")
8
9_("Let external applications show/hide desklets?")
10
11_("Let external applications reload applets?")
12
13_("Let external applications show/hide docks?")
14
15_("Let extern applications add launchers to the docks?")
16
17_("Let external applications modify the labels of icons?")
18
19_("Let extern applications modify the quick-infos on icons?")
20
21_("Let extern applications modify the icons' image?")
22
23_("Let extern applications animate icons?")
24
25_("Let extern applications register new module?")
26
270
=== modified file 'Dbus/src/applet-dbus.c'
--- Dbus/src/applet-dbus.c 2010-08-07 01:43:25 +0000
+++ Dbus/src/applet-dbus.c 2010-09-16 01:10:06 +0000
@@ -146,7 +146,7 @@
146 gchar *cUserPackagesDir = g_strdup_printf ("%s/%s", g_cCairoDockDataDir, CD_DBUS_APPLETS_FOLDER);146 gchar *cUserPackagesDir = g_strdup_printf ("%s/%s", g_cCairoDockDataDir, CD_DBUS_APPLETS_FOLDER);
147 gchar *cDistantPackagesDir = g_strdup_printf ("%s/%d.%d.%d", CD_DBUS_APPLETS_FOLDER, g_iMajorVersion, g_iMinorVersion, g_iMicroVersion);147 gchar *cDistantPackagesDir = g_strdup_printf ("%s/%d.%d.%d", CD_DBUS_APPLETS_FOLDER, g_iMajorVersion, g_iMinorVersion, g_iMicroVersion);
148 gchar *cPath = cairo_dock_get_package_path (cModuleName, cSharePackagesDir, cUserPackagesDir, cDistantPackagesDir, CAIRO_DOCK_UPDATED_PACKAGE);148 gchar *cPath = cairo_dock_get_package_path (cModuleName, cSharePackagesDir, cUserPackagesDir, cDistantPackagesDir, CAIRO_DOCK_UPDATED_PACKAGE);
149 g_print ("*** update of the applet '%s' -> got '%s'\n", cModuleName, cPath);149 cd_debug ("*** update of the applet '%s' -> got '%s'\n", cModuleName, cPath);
150 g_free (cPath);150 g_free (cPath);
151 g_free (cSharePackagesDir);151 g_free (cSharePackagesDir);
152 g_free (cUserPackagesDir);152 g_free (cUserPackagesDir);
@@ -161,7 +161,7 @@
161 161
162 if (pModule->pInstancesList != NULL) // applet active => on la recharge.162 if (pModule->pInstancesList != NULL) // applet active => on la recharge.
163 {163 {
164 g_print ("*** applet '%s' is active, reload it\n", cModuleName);164 cd_debug ("*** applet '%s' is active, reload it", cModuleName);
165 CairoDockModuleInstance *pModuleInstance = pModule->pInstancesList->data;165 CairoDockModuleInstance *pModuleInstance = pModule->pInstancesList->data;
166 Icon *pIcon = pModuleInstance->pIcon;166 Icon *pIcon = pModuleInstance->pIcon;
167 CairoContainer *pContainer = pModuleInstance->pContainer;167 CairoContainer *pContainer = pModuleInstance->pContainer;
@@ -193,15 +193,15 @@
193 //cairo_dock_free_task (pUpdateTask);193 //cairo_dock_free_task (pUpdateTask);
194 return TRUE;194 return TRUE;
195}195}
196static void _check_update_theme (const gchar *cModuleName, CairoDockPackage *pPackage, gpointer data)196static void _check_update_package (const gchar *cModuleName, CairoDockPackage *pPackage, gpointer data)
197{197{
198 g_print ("*** %s (%s, %d)\n", __func__, cModuleName, pPackage->iType);198 cd_message ("*** %s (%s, %d)", __func__, cModuleName, pPackage->iType);
199 if (pPackage->iType == CAIRO_DOCK_UPDATED_PACKAGE)199 if (pPackage->iType == CAIRO_DOCK_UPDATED_PACKAGE)
200 {200 {
201 gchar *cUserDirPath = g_strdup_printf ("%s/%s/%s", g_cCairoDockDataDir, CD_DBUS_APPLETS_FOLDER, cModuleName);201 gchar *cUserDirPath = g_strdup_printf ("%s/%s/%s", g_cCairoDockDataDir, CD_DBUS_APPLETS_FOLDER, cModuleName);
202 if (g_file_test (cUserDirPath, G_FILE_TEST_EXISTS))202 if (g_file_test (cUserDirPath, G_FILE_TEST_EXISTS))
203 {203 {
204 g_print ("*** the applet '%s' needs to be updated\n", cModuleName);204 cd_message ("*** the applet '%s' needs to be updated", cModuleName);
205 CairoDockTask *pUpdateTask = cairo_dock_new_task_full (0, (CairoDockGetDataAsyncFunc) _get_package_path, (CairoDockUpdateSyncFunc) _apply_package_update, (GFreeFunc) g_free, g_strdup (cModuleName));205 CairoDockTask *pUpdateTask = cairo_dock_new_task_full (0, (CairoDockGetDataAsyncFunc) _get_package_path, (CairoDockUpdateSyncFunc) _apply_package_update, (GFreeFunc) g_free, g_strdup (cModuleName));
206 myData.pUpdateTasksList = g_list_prepend (myData.pUpdateTasksList, pUpdateTask);206 myData.pUpdateTasksList = g_list_prepend (myData.pUpdateTasksList, pUpdateTask);
207 cairo_dock_launch_task (pUpdateTask);207 cairo_dock_launch_task (pUpdateTask);
@@ -212,7 +212,7 @@
212{212{
213 if (pThemesTable != NULL)213 if (pThemesTable != NULL)
214 {214 {
215 g_hash_table_foreach (pThemesTable, (GHFunc) _check_update_theme, NULL);215 g_hash_table_foreach (pThemesTable, (GHFunc) _check_update_package, NULL);
216 }216 }
217 cairo_dock_free_task (myData.pGetListTask);217 cairo_dock_free_task (myData.pGetListTask);
218 myData.pGetListTask = NULL;218 myData.pGetListTask = NULL;
@@ -240,11 +240,10 @@
240 g_idle_add ((GSourceFunc) _cd_dbus_launch_third_party_applets, NULL); // on les lance avec un delai, car si l'applet DBus est lancee au demarrage du dock, on est dans la fonction cairo_dock_activate_modules_from_list(), et donc si on enregistre des applets pendant ce temps, le dock risque de recharger certaines des applets distantes (celles qui seront actives en conf et qui viendront apres DBus).240 g_idle_add ((GSourceFunc) _cd_dbus_launch_third_party_applets, NULL); // on les lance avec un delai, car si l'applet DBus est lancee au demarrage du dock, on est dans la fonction cairo_dock_activate_modules_from_list(), et donc si on enregistre des applets pendant ce temps, le dock risque de recharger certaines des applets distantes (celles qui seront actives en conf et qui viendront apres DBus).
241 241
242 // on telecharge en tache de fond la liste des applets.242 // on telecharge en tache de fond la liste des applets.
243 gchar *cSharePackagesDir = g_strdup_printf ("%s/%s", MY_APPLET_SHARE_DATA_DIR, CD_DBUS_APPLETS_FOLDER);243 const gchar *cSharePackagesDir = NULL; // MY_APPLET_SHARE_DATA_DIR"/"CD_DBUS_APPLETS_FOLDER;
244 gchar *cUserPackagesDir = g_strdup_printf ("%s/%s", g_cCairoDockDataDir, CD_DBUS_APPLETS_FOLDER);244 gchar *cUserPackagesDir = g_strdup_printf ("%s/%s", g_cCairoDockDataDir, CD_DBUS_APPLETS_FOLDER);
245 gchar *cDistantPackagesDir = g_strdup_printf ("%s/%d.%d.%d", CD_DBUS_APPLETS_FOLDER, g_iMajorVersion, g_iMinorVersion, g_iMicroVersion);245 gchar *cDistantPackagesDir = g_strdup_printf ("%s/%d.%d.%d", CD_DBUS_APPLETS_FOLDER, g_iMajorVersion, g_iMinorVersion, g_iMicroVersion);
246 myData.pGetListTask = cairo_dock_list_packages_async (cSharePackagesDir, cUserPackagesDir, cDistantPackagesDir, (CairoDockGetPackagesFunc) _on_got_list, NULL);246 myData.pGetListTask = cairo_dock_list_packages_async (cSharePackagesDir, cUserPackagesDir, cDistantPackagesDir, (CairoDockGetPackagesFunc) _on_got_list, NULL);
247 g_free (cSharePackagesDir);
248 g_free (cUserPackagesDir);247 g_free (cUserPackagesDir);
249 g_free (cDistantPackagesDir);248 g_free (cDistantPackagesDir);
250}249}
@@ -345,7 +344,7 @@
345{344{
346 if (! myConfig.bEnableNewModule)345 if (! myConfig.bEnableNewModule)
347 return FALSE;346 return FALSE;
348 g_print ("%s (%s)\n", __func__, cModuleName);347 cd_message ("%s (%s)", __func__, cModuleName);
349 348
350 //\____________ on cree et on enregistre un nouveau module s'il n'existe pas deja.349 //\____________ on cree et on enregistre un nouveau module s'il n'existe pas deja.
351 CairoDockModule *pModule = cairo_dock_find_module_from_name (cModuleName);350 CairoDockModule *pModule = cairo_dock_find_module_from_name (cModuleName);
@@ -435,7 +434,7 @@
435 gpointer invocation_hint G_GNUC_UNUSED,434 gpointer invocation_hint G_GNUC_UNUSED,
436 gpointer marshal_data)435 gpointer marshal_data)
437{436{
438 g_print ("%s ()\n", __func__);437 //g_print ("%s ()\n", __func__);
439 typedef void (*GMarshalFunc_VOID__INT_STRING) (gpointer data1,438 typedef void (*GMarshalFunc_VOID__INT_STRING) (gpointer data1,
440 gint arg_1,439 gint arg_1,
441 gchar *arg_2,440 gchar *arg_2,
@@ -469,7 +468,7 @@
469 gpointer invocation_hint G_GNUC_UNUSED,468 gpointer invocation_hint G_GNUC_UNUSED,
470 gpointer marshal_data)469 gpointer marshal_data)
471{470{
472 g_print ("%s ()\n", __func__);471 //g_print ("%s ()\n", __func__);
473 typedef void (*GMarshalFunc_VOID__BOOLEAN_STRING) (gpointer data1,472 typedef void (*GMarshalFunc_VOID__BOOLEAN_STRING) (gpointer data1,
474 gboolean arg_1,473 gboolean arg_1,
475 gchar *arg_2,474 gchar *arg_2,
@@ -503,7 +502,7 @@
503 gpointer invocation_hint G_GNUC_UNUSED,502 gpointer invocation_hint G_GNUC_UNUSED,
504 gpointer marshal_data)503 gpointer marshal_data)
505{504{
506 g_print ("%s ()\n", __func__);505 //g_print ("%s ()\n", __func__);
507 typedef void (*GMarshalFunc_VOID__STRING_STRING) (gpointer data1,506 typedef void (*GMarshalFunc_VOID__STRING_STRING) (gpointer data1,
508 gchar *arg_1,507 gchar *arg_1,
509 gchar *arg_2,508 gchar *arg_2,
@@ -537,7 +536,7 @@
537 gpointer invocation_hint G_GNUC_UNUSED,536 gpointer invocation_hint G_GNUC_UNUSED,
538 gpointer marshal_data)537 gpointer marshal_data)
539{538{
540 g_print ("%s ()\n", __func__);539 //g_print ("%s ()\n", __func__);
541 typedef void (*GMarshalFunc_VOID__VALUE) (gpointer data1,540 typedef void (*GMarshalFunc_VOID__VALUE) (gpointer data1,
542 GValue *arg_1,541 GValue *arg_1,
543 gpointer data2);542 gpointer data2);
@@ -569,7 +568,7 @@
569 gpointer invocation_hint G_GNUC_UNUSED,568 gpointer invocation_hint G_GNUC_UNUSED,
570 gpointer marshal_data)569 gpointer marshal_data)
571{570{
572 g_print ("%s ()\n", __func__);571 //g_print ("%s ()\n", __func__);
573 typedef void (*GMarshalFunc_VOID__INT_VALUE) (gpointer data1,572 typedef void (*GMarshalFunc_VOID__INT_VALUE) (gpointer data1,
574 gint arg_1,573 gint arg_1,
575 GValue *arg_2,574 GValue *arg_2,
@@ -603,7 +602,7 @@
603 gpointer invocation_hint G_GNUC_UNUSED,602 gpointer invocation_hint G_GNUC_UNUSED,
604 gpointer marshal_data)603 gpointer marshal_data)
605{604{
606 g_print ("%s ()\n", __func__);605 //g_print ("%s ()\n", __func__);
607 typedef void (*GMarshalFunc_VOID__VALUE_STRING) (gpointer data1,606 typedef void (*GMarshalFunc_VOID__VALUE_STRING) (gpointer data1,
608 GValue *arg_1,607 GValue *arg_1,
609 gchar *arg_2,608 gchar *arg_2,
610609
=== modified file 'Dbus/src/interface-applet-methods.c'
--- Dbus/src/interface-applet-methods.c 2010-08-07 01:43:25 +0000
+++ Dbus/src/interface-applet-methods.c 2010-09-16 01:10:06 +0000
@@ -1145,7 +1145,7 @@
1145 }1145 }
1146 if (! cShortkeys[i]) // raccourci non trouve dans la nouvelle liste => on l'enleve1146 if (! cShortkeys[i]) // raccourci non trouve dans la nouvelle liste => on l'enleve
1147 {1147 {
1148 g_print (" shortkey '%s' not wanted anymore\n", key);1148 //g_print (" shortkey '%s' not wanted anymore\n", key);
1149 cd_keybinder_unbind (key, (CDBindkeyHandler) cd_dbus_applet_emit_on_shortkey);1149 cd_keybinder_unbind (key, (CDBindkeyHandler) cd_dbus_applet_emit_on_shortkey);
1150 pDbusApplet->pShortkeyList = g_list_delete_link (pDbusApplet->pShortkeyList, sk);1150 pDbusApplet->pShortkeyList = g_list_delete_link (pDbusApplet->pShortkeyList, sk);
1151 }1151 }
@@ -1165,7 +1165,7 @@
1165 }1165 }
1166 if (! sk) // raccourci non encore lie => on lie.1166 if (! sk) // raccourci non encore lie => on lie.
1167 {1167 {
1168 g_print (" shortkey '%s' wanted\n", cShortkey);1168 //g_print (" shortkey '%s' wanted\n", cShortkey);
1169 bCouldBind = cd_keybinder_bind (cShortkey, (CDBindkeyHandler) cd_dbus_applet_emit_on_shortkey, pDbusApplet);1169 bCouldBind = cd_keybinder_bind (cShortkey, (CDBindkeyHandler) cd_dbus_applet_emit_on_shortkey, pDbusApplet);
1170 if (bCouldBind)1170 if (bCouldBind)
1171 pDbusApplet->pShortkeyList = g_list_prepend (pDbusApplet->pShortkeyList, g_strdup (cShortkey));1171 pDbusApplet->pShortkeyList = g_list_prepend (pDbusApplet->pShortkeyList, g_strdup (cShortkey));
11721172
=== modified file 'Dbus/src/interface-applet-signals.c'
--- Dbus/src/interface-applet-signals.c 2010-08-07 01:43:25 +0000
+++ Dbus/src/interface-applet-signals.c 2010-09-16 01:10:06 +0000
@@ -632,7 +632,7 @@
632 }632 }
633 633
634 const gchar *cText = gtk_entry_get_text (GTK_ENTRY (pEntry));634 const gchar *cText = gtk_entry_get_text (GTK_ENTRY (pEntry));
635 g_print (" -> %s\n", cText);635 //g_print (" -> %s\n", cText);
636 g_value_set_string (&v, cText);636 g_value_set_string (&v, cText);
637 _emit_answer_dialog (pDbusApplet, pDialog, iClickedButton, &v);637 _emit_answer_dialog (pDbusApplet, pDialog, iClickedButton, &v);
638}638}
639639
=== removed file 'Doncky/data/messages'
--- Doncky/data/messages 2010-08-07 01:43:25 +0000
+++ Doncky/data/messages 1970-01-01 00:00:00 +0000
@@ -1,140 +0,0 @@
1_("Icon")
2
3_("Set to 0 to use the default applet size")
4
5_("Desired icon size for this applet")
6
7_("Name of the icon as it will appear in its caption in the dock:")
8
9_("Leave empty to use the default one.")
10
11_("Image filename:")
12
13_("Name of the dock it belongs to:")
14
15_("Desklet")
16
17_("Position")
18
19_("If locked, the desklet cannot be moved by simply dragging it with the left mouse button. It can still be moved with ALT + left-click.")
20
21_("Lock position?")
22
23_("Depending on your WindowManager, you may be able to resize this with ALT + middle-click or ALT + left-click.")
24
25_("Desklet dimensions (width x height):")
26
27_("Depending on your WindowManager, you may be able to move this with ALT + left-click.")
28
29_("Desklet position (x, y):")
30
31_("You can quickly rotate the desklet with the mouse, by dragging the little buttons on its left and top sides.")
32
33_("Rotation:")
34
35_("Visibility")
36
37_("Is detached from the dock")
38
39_("for CompizFusion's \"widget layer\", set behaviour in Compiz to: (class=Cairo-dock & type=utility)")
40
41_("Visibility:")
42
43_("Normal")
44
45_("Keep above")
46
47_("Keep below")
48
49_("Keep on widget layer")
50
51_("Reserve space")
52
53_("Should be visible on all desktops?")
54
55_("Decorations")
56
57_("Choose 'Custom decorations' to define your own decorations below.")
58
59_("Choose a decoration theme for this desklet:")
60
61_("Image to be displayed below drawings, e.g. a frame. Leave empty for no image.")
62
63_("Background image:")
64
65_("Background transparency:")
66
67_("in pixels. Use this to adjust the left position of drawings.")
68
69_("Left offset:")
70
71_("in pixels. Use this to adjust the top position of drawings.")
72
73_("Top offset:")
74
75_("in pixels. Use this to adjust the right position of drawings.")
76
77_("Right offset:")
78
79_("in pixels. Use this to adjust the bottom position of drawings.")
80
81_("Bottom offset:")
82
83_("Image to be displayed above the drawings, e.g. a reflection. Leave empty for no image.")
84
85_("Foreground image:")
86
87_("Foreground tansparency:")
88
89_("Configuration")
90
91_("Leave empty to use the default one.")
92
93_("Specify the xml file to be used :")
94
95_("Appearance")
96
97_("Text")
98
99_("Font to be used by default if none is specify in the .xml")
100
101_("Default Font:")
102
103_("Color to be used by default if none is specify in the .xml")
104
105_("Default colour:")
106
107_("Margin to be used on left, right and top of the desklet")
108
109_("Margin all around the desklet:")
110
111_("Use this to increase the space between the lines")
112
113_("Space between lines:")
114
115_("Background")
116
117_("You can have more attractive backgrounds using the Desklet decorations")
118
119_("Display a simple background?")
120
121_("first colour of the gradation")
122
123_("Background first colour :")
124
125_("second colour of the gradation")
126
127_("Background second colour:")
128
129_("Set the radius corner to 0 for no radius")
130
131_("Background radius corner:")
132
133_("Set the thickness to 0 for no border")
134
135_("Border thickness:")
136
137_("Border colour")
138
139_("Border colour :")
140
1410
=== modified file 'Folders/data/Folders.conf.in'
--- Folders/data/Folders.conf.in 2010-08-07 01:43:25 +0000
+++ Folders/data/Folders.conf.in 2010-09-16 01:10:06 +0000
@@ -11,6 +11,12 @@
11#{Let empty to use the name of the folder.}11#{Let empty to use the name of the folder.}
12name =12name =
1313
14#d Name of the dock it belongs to:
15dock name =
16
17#v
18sep_icon=
19
14#Y[Use an image;1;1;Draw sub-dock's content as emblems;0;0;Draw sub-dock's content as stack;0;0;Draw sub-dock's content inside a box;0;0] How to render the icon :20#Y[Use an image;1;1;Draw sub-dock's content as emblems;0;0;Draw sub-dock's content as stack;0;0;Draw sub-dock's content inside a box;0;0] How to render the icon :
15view type = 321view type = 3
1622
@@ -18,9 +24,6 @@
18#{Leave empty to use the default one.}24#{Leave empty to use the default one.}
19image file = 25image file =
2026
21#d Name of the dock it belongs to:
22dock name =
23
24icon =27icon =
25order=28order=
2629
@@ -29,6 +32,7 @@
29#A32#A
30handbook=Folders33handbook=Folders
3134
35
32#[gtk-convert]36#[gtk-convert]
33[Desklet]37[Desklet]
3438
@@ -39,9 +43,9 @@
39#{If locked, the desklet cannot be moved by simply dragging it with the left mouse button. It can still be moved with ALT + left-click.}43#{If locked, the desklet cannot be moved by simply dragging it with the left mouse button. It can still be moved with ALT + left-click.}
40locked = false44locked = false
4145
42#j+[48;512] Desklet dimensions (width x height):46#j+[96;640] Desklet dimensions (width x height):
43#{Depending on your WindowManager, you may be able to resize this with ALT + middle-click or ALT + left-click.}47#{Depending on your WindowManager, you may be able to resize this with ALT + middle-click or ALT + left-click.}
44size = 256;19648size = 400;200
4549
46#i[-2048;2048] Desklet position (x, y):50#i[-2048;2048] Desklet position (x, y):
47#{Depending on your WindowManager, you may be able to move this with ALT + left-click.}51#{Depending on your WindowManager, you may be able to move this with ALT + left-click.}
@@ -64,9 +68,6 @@
64#b Should be visible on all desktops?68#b Should be visible on all desktops?
65sticky=true69sticky=true
6670
67
68
69
70#F[Decorations;gtk-orientation-portrait]71#F[Decorations;gtk-orientation-portrait]
71frame_deco=72frame_deco=
7273
7374
=== removed file 'Folders/data/messages'
--- Folders/data/messages 2010-08-07 01:43:25 +0000
+++ Folders/data/messages 1970-01-01 00:00:00 +0000
@@ -1,124 +0,0 @@
1_("Icon")
2
3_("Set to 0 to use the default applet size")
4
5_("Desired icon size for this applet")
6
7_("Let empty to use the name of the folder.")
8
9_("Name of the icon as it will appear in its caption in the dock:")
10
11_("How to render the icon :")
12
13_("Use an image")
14
15_("Draw sub-dock's content as emblems")
16
17_("Draw sub-dock's content as stack")
18
19_("Draw sub-dock's content inside a box")
20
21_("Leave empty to use the default one.")
22
23_("Image filename:")
24
25_("Name of the dock it belongs to:")
26
27_("Applet's Handbook")
28
29_("Desklet")
30
31_("Position")
32
33_("If locked, the desklet cannot be moved by simply dragging it with the left mouse button. It can still be moved with ALT + left-click.")
34
35_("Lock position?")
36
37_("Depending on your WindowManager, you may be able to resize this with ALT + middle-click or ALT + left-click.")
38
39_("Desklet dimensions (width x height):")
40
41_("Depending on your WindowManager, you may be able to move this with ALT + left-click.")
42
43_("Desklet position (x, y):")
44
45_("You can quickly rotate the desklet with the mouse, by dragging the little buttons on its left and top sides.")
46
47_("Rotation:")
48
49_("Visibility")
50
51_("Is detached from the dock")
52
53_("for CompizFusion's \"widget layer\", set behaviour in Compiz to: (class=Cairo-dock & type=utility)")
54
55_("Visibility:")
56
57_("Normal")
58
59_("Keep above")
60
61_("Keep below")
62
63_("Keep on widget layer")
64
65_("Reserve space")
66
67_("Should be visible on all desktops?")
68
69_("Decorations")
70
71_("Choose 'Custom decorations' to define your own decorations below.")
72
73_("Choose a decoration theme for this desklet:")
74
75_("Image to be displayed below drawings, e.g. a frame. Leave empty for no image.")
76
77_("Background image:")
78
79_("Background transparency:")
80
81_("in pixels. Use this to adjust the left position of drawings.")
82
83_("Left offset:")
84
85_("in pixels. Use this to adjust the top position of drawings.")
86
87_("Top offset:")
88
89_("in pixels. Use this to adjust the right position of drawings.")
90
91_("Right offset:")
92
93_("in pixels. Use this to adjust the bottom position of drawings.")
94
95_("Bottom offset:")
96
97_("Image to be displayed above the drawings, e.g. a reflection. Leave empty for no image.")
98
99_("Foreground image:")
100
101_("Foreground tansparency:")
102
103_("Configuration")
104
105_("Folder's path:")
106
107_("Maximum number of files to list:")
108
109_("Sort files by :")
110
111_("Name")
112
113_("Date")
114
115_("Size")
116
117_("Sort folders before files?")
118
119_("Show hidden files?")
120
121_("Leave empty to use default sub-dock view.")
122
123_("Sub-dock view name:")
124
1250
=== modified file 'Folders/src/applet-config.c'
--- Folders/src/applet-config.c 2010-08-07 01:43:25 +0000
+++ Folders/src/applet-config.c 2010-09-16 01:10:06 +0000
@@ -30,11 +30,20 @@
30 myConfig.cDefaultTitle = CD_CONFIG_GET_STRING ("Icon", "name");30 myConfig.cDefaultTitle = CD_CONFIG_GET_STRING ("Icon", "name");
31 myConfig.cImageFile = CD_CONFIG_GET_STRING ("Icon", "image file");31 myConfig.cImageFile = CD_CONFIG_GET_STRING ("Icon", "image file");
32 myConfig.cDirPath = CD_CONFIG_GET_STRING ("Configuration", "dir path");32 myConfig.cDirPath = CD_CONFIG_GET_STRING ("Configuration", "dir path");
33 if (myConfig.cDirPath && *myConfig.cDirPath == '/')33 if (myConfig.cDirPath)
34 {34 {
35 gchar *tmp = myConfig.cDirPath;35 if (*myConfig.cDirPath == '~')
36 myConfig.cDirPath = g_filename_to_uri (myConfig.cDirPath, NULL, NULL);36 {
37 g_free (tmp);37 gchar *tmp = myConfig.cDirPath;
38 myConfig.cDirPath = g_strdup_printf ("%s/%s", g_getenv ("HOME"), myConfig.cDirPath);
39 g_free (tmp);
40 }
41 if (*myConfig.cDirPath == '/')
42 {
43 gchar *tmp = myConfig.cDirPath;
44 myConfig.cDirPath = g_filename_to_uri (myConfig.cDirPath, NULL, NULL);
45 g_free (tmp);
46 }
38 }47 }
39 myConfig.cRenderer = CD_CONFIG_GET_STRING ("Configuration", "renderer");48 myConfig.cRenderer = CD_CONFIG_GET_STRING ("Configuration", "renderer");
40 //myConfig.iNbIcons = CD_CONFIG_GET_INTEGER ("Configuration", "nb icons");49 //myConfig.iNbIcons = CD_CONFIG_GET_INTEGER ("Configuration", "nb icons");
4150
=== modified file 'Folders/src/applet-notifications.c'
--- Folders/src/applet-notifications.c 2010-08-07 01:43:25 +0000
+++ Folders/src/applet-notifications.c 2010-09-16 01:10:06 +0000
@@ -47,14 +47,14 @@
47 D_("Empty or unreadable folder."));47 D_("Empty or unreadable folder."));
48 }48 }
49 else49 else
50 return CAIRO_DOCK_LET_PASS_NOTIFICATION; // on laisse passer la notification (pour ouvrir le sous-dock au clic).50 CD_APPLET_LEAVE (CAIRO_DOCK_LET_PASS_NOTIFICATION); // on laisse passer la notification (pour ouvrir le sous-dock au clic).
51 }51 }
52 else if (CD_APPLET_CLICKED_ICON != NULL)52 else if (CD_APPLET_CLICKED_ICON != NULL)
53 {53 {
54 g_print ("clic on %s\n", CD_APPLET_CLICKED_ICON->cBaseURI);54 //g_print ("clic on %s\n", CD_APPLET_CLICKED_ICON->cBaseURI);
55 if (CD_APPLET_CLICKED_ICON->iVolumeID == -1)55 if (CD_APPLET_CLICKED_ICON->iVolumeID == -1)
56 {56 {
57 g_print ("folder\n");57 //g_print ("folder\n");
58 58
59 /// lister le repertoire dans un thread.59 /// lister le repertoire dans un thread.
60 60
@@ -257,13 +257,13 @@
257 gtk_widget_destroy (pFileChooserDialog);257 gtk_widget_destroy (pFileChooserDialog);
258}258}
259259
260static void _cd_folders_new_file (GtkMenuItem *pMenuItem, CairoDockModuleInstance *myApplet)260static inline void _create_new_file (CairoDockModuleInstance *myApplet, gboolean bFolder)
261{261{
262 gchar *cNewName = cairo_dock_show_demand_and_wait (D_("Enter a file name:"), myIcon, myContainer, NULL);262 gchar *cNewName = cairo_dock_show_demand_and_wait (D_("Enter a file name:"), myIcon, myContainer, NULL);
263 if (cNewName != NULL && *cNewName != '\0')263 if (cNewName != NULL && *cNewName != '\0')
264 {264 {
265 gchar *cURI = g_strdup_printf ("%s/%s", myConfig.cDirPath, cNewName);265 gchar *cURI = g_strdup_printf ("%s/%s", myConfig.cDirPath, cNewName);
266 gboolean bSuccess = cairo_dock_fm_create_file (cURI, FALSE); // FALSE <=> file266 gboolean bSuccess = cairo_dock_fm_create_file (cURI, bFolder);
267 if (! bSuccess)267 if (! bSuccess)
268 {268 {
269 cd_warning ("couldn't create this file.\nCheck that you have writing rights, and that the new name does not already exist.");269 cd_warning ("couldn't create this file.\nCheck that you have writing rights, and that the new name does not already exist.");
@@ -271,10 +271,18 @@
271 }271 }
272 }272 }
273}273}
274static void _cd_folders_new_file (GtkMenuItem *pMenuItem, CairoDockModuleInstance *myApplet)
275{
276 _create_new_file (myApplet, FALSE);
277}
278static void _cd_folders_new_folder (GtkMenuItem *pMenuItem, CairoDockModuleInstance *myApplet)
279{
280 _create_new_file (myApplet, TRUE);
281}
274282
275static void _cd_folders_open_folder (GtkMenuItem *pMenuItem, CairoDockModuleInstance *myApplet)283static void _cd_folders_open_folder (GtkMenuItem *pMenuItem, CairoDockModuleInstance *myApplet)
276{284{
277 285 cairo_dock_fm_launch_uri (myConfig.cDirPath);
278}286}
279287
280static void _cd_folders_launch_with (GtkMenuItem *pMenuItem, gpointer *app)288static void _cd_folders_launch_with (GtkMenuItem *pMenuItem, gpointer *app)
@@ -308,21 +316,30 @@
308 data[1] = CD_APPLET_CLICKED_CONTAINER;316 data[1] = CD_APPLET_CLICKED_CONTAINER;
309 data[2] = myApplet;317 data[2] = myApplet;
310 318
311 GtkWidget *pSubMenu = CD_APPLET_CREATE_MY_SUB_MENU ();319 if (CD_APPLET_CLICKED_ICON == myIcon || CD_APPLET_CLICKED_ICON == NULL) // click on main icon or on the container.
312 CD_APPLET_ADD_ABOUT_IN_MENU (pSubMenu);320 {
313 321 GtkWidget *pSubMenu = CD_APPLET_CREATE_MY_SUB_MENU ();
314 if (CD_APPLET_CLICKED_ICON != NULL && CD_APPLET_CLICKED_ICON != myIcon) // clic sur un des fichiers322 CD_APPLET_ADD_IN_MENU_WITH_STOCK_AND_DATA (D_("Open the folder (middle-click)"), GTK_STOCK_OPEN, _cd_folders_open_folder, CD_APPLET_MY_MENU, myApplet);
315 {323 CD_APPLET_ADD_SEPARATOR_IN_MENU (CD_APPLET_MY_MENU);
324 CD_APPLET_ADD_ABOUT_IN_MENU (pSubMenu);
325 }
326 else // clic on a file.
327 {
328 CD_APPLET_ADD_IN_MENU_WITH_STOCK_AND_DATA (D_("Rename this file"), GTK_STOCK_SAVE_AS, _cd_folders_rename_file, CD_APPLET_MY_MENU, data);
329 CD_APPLET_ADD_IN_MENU_WITH_STOCK_AND_DATA (D_("Delete this file"), GTK_STOCK_REMOVE, _cd_folders_delete_file, CD_APPLET_MY_MENU, data);
330 CD_APPLET_ADD_IN_MENU_WITH_STOCK_AND_DATA (D_("Move this file"), GTK_STOCK_JUMP_TO, _cd_folders_move_file, CD_APPLET_MY_MENU, data);
331
316 GList *pApps = cairo_dock_fm_list_apps_for_file (CD_APPLET_CLICKED_ICON->cBaseURI);332 GList *pApps = cairo_dock_fm_list_apps_for_file (CD_APPLET_CLICKED_ICON->cBaseURI);
317 if (pApps != NULL)333 if (pApps != NULL)
318 {334 {
335 CD_APPLET_ADD_SEPARATOR_IN_MENU (CD_APPLET_MY_MENU);
319 GtkWidget *pSubMenu = CD_APPLET_ADD_SUB_MENU_WITH_IMAGE (D_("Open with"), CD_APPLET_MY_MENU, GTK_STOCK_OPEN);336 GtkWidget *pSubMenu = CD_APPLET_ADD_SUB_MENU_WITH_IMAGE (D_("Open with"), CD_APPLET_MY_MENU, GTK_STOCK_OPEN);
320 337
321 cd_folders_free_apps_list (myApplet);338 cd_folders_free_apps_list (myApplet);
322 339
323 GList *a;340 GList *a;
324 gchar **pAppInfo;341 gchar **pAppInfo;
325 gchar *cIconPath; 342 gchar *cIconPath;
326 gpointer *app;343 gpointer *app;
327 for (a = pApps; a != NULL; a = a->next)344 for (a = pApps; a != NULL; a = a->next)
328 {345 {
@@ -333,7 +350,7 @@
333 app[1] = CD_APPLET_CLICKED_CONTAINER;350 app[1] = CD_APPLET_CLICKED_CONTAINER;
334 app[2] = myApplet;351 app[2] = myApplet;
335 app[3] = g_strdup (pAppInfo[1]);352 app[3] = g_strdup (pAppInfo[1]);
336 g_print (" + %s (%s ; %s)\n", pAppInfo[0], pAppInfo[1], pAppInfo[2]);353 //g_print (" + %s (%s ; %s)\n", pAppInfo[0], pAppInfo[1], pAppInfo[2]);
337 myData.pAppList = g_list_prepend (myData.pAppList, app);354 myData.pAppList = g_list_prepend (myData.pAppList, app);
338 355
339 if (pAppInfo[2] != NULL)356 if (pAppInfo[2] != NULL)
@@ -347,21 +364,14 @@
347 g_list_free (pApps);364 g_list_free (pApps);
348 }365 }
349 else366 else
350 g_print ("no apps list for '%s'\n", CD_APPLET_CLICKED_ICON->cBaseURI);367 //g_print ("no apps list for '%s'\n", CD_APPLET_CLICKED_ICON->cBaseURI);
351 368
352 CD_APPLET_ADD_IN_MENU_WITH_STOCK_AND_DATA (D_("Delete this file"), GTK_STOCK_REMOVE, _cd_folders_delete_file, CD_APPLET_MY_MENU, data);369 CD_APPLET_ADD_SEPARATOR_IN_MENU (CD_APPLET_MY_MENU);
353
354 CD_APPLET_ADD_IN_MENU_WITH_STOCK_AND_DATA (D_("Rename this file"), GTK_STOCK_EDIT, _cd_folders_rename_file, CD_APPLET_MY_MENU, data);
355
356 CD_APPLET_ADD_IN_MENU_WITH_STOCK_AND_DATA (D_("Move this file"), GTK_STOCK_JUMP_TO, _cd_folders_move_file, CD_APPLET_MY_MENU, data);
357
358 CD_APPLET_ADD_IN_MENU_WITH_STOCK_AND_DATA (D_("Properties"), GTK_STOCK_PROPERTIES, _cd_folders_show_file_properties, CD_APPLET_MY_MENU, data);370 CD_APPLET_ADD_IN_MENU_WITH_STOCK_AND_DATA (D_("Properties"), GTK_STOCK_PROPERTIES, _cd_folders_show_file_properties, CD_APPLET_MY_MENU, data);
359 371
372 CD_APPLET_ADD_SEPARATOR_IN_MENU (CD_APPLET_MY_MENU);
360 CD_APPLET_ADD_IN_MENU_WITH_STOCK_AND_DATA (D_("Create a new file"), GTK_STOCK_NEW, _cd_folders_new_file, CD_APPLET_MY_MENU, myApplet);373 CD_APPLET_ADD_IN_MENU_WITH_STOCK_AND_DATA (D_("Create a new file"), GTK_STOCK_NEW, _cd_folders_new_file, CD_APPLET_MY_MENU, myApplet);
361 }374 CD_APPLET_ADD_IN_MENU_WITH_STOCK_AND_DATA (D_("Create a new folder"), GTK_STOCK_NEW, _cd_folders_new_folder, CD_APPLET_MY_MENU, myApplet);
362 else
363 {
364 CD_APPLET_ADD_IN_MENU_WITH_STOCK_AND_DATA (D_("Open the folder (middle-click)"), GTK_STOCK_OPEN, _cd_folders_open_folder, CD_APPLET_MY_MENU, myApplet);
365 }375 }
366 376
367 if (CD_APPLET_CLICKED_ICON != NULL && CD_APPLET_CLICKED_ICON != myIcon)377 if (CD_APPLET_CLICKED_ICON != NULL && CD_APPLET_CLICKED_ICON != myIcon)
@@ -371,7 +381,7 @@
371381
372gboolean cd_folders_on_drop_data (gpointer data, const gchar *cReceivedData, Icon *icon, double fOrder, CairoContainer *pContainer)382gboolean cd_folders_on_drop_data (gpointer data, const gchar *cReceivedData, Icon *icon, double fOrder, CairoContainer *pContainer)
373{383{
374 g_print ("Folders received '%s'\n", cReceivedData);384 //g_print ("Folders received '%s'\n", cReceivedData);
375 385
376 if (fOrder == CAIRO_DOCK_LAST_ORDER) // lachage sur une icone.386 if (fOrder == CAIRO_DOCK_LAST_ORDER) // lachage sur une icone.
377 return CAIRO_DOCK_LET_PASS_NOTIFICATION;387 return CAIRO_DOCK_LET_PASS_NOTIFICATION;
@@ -384,7 +394,7 @@
384 394
385 if (g_file_test (cPath, G_FILE_TEST_IS_DIR))395 if (g_file_test (cPath, G_FILE_TEST_IS_DIR))
386 {396 {
387 g_print (" ajout d'un repertoire...\n");397 //g_print (" ajout d'un repertoire...\n");
388 CairoDockModule *pModule = cairo_dock_find_module_from_name ("Folders");398 CairoDockModule *pModule = cairo_dock_find_module_from_name ("Folders");
389 g_return_val_if_fail (pModule != NULL, CAIRO_DOCK_LET_PASS_NOTIFICATION);399 g_return_val_if_fail (pModule != NULL, CAIRO_DOCK_LET_PASS_NOTIFICATION);
390 400
391401
=== removed file 'GMenu/data/messages'
--- GMenu/data/messages 2010-08-07 01:43:25 +0000
+++ GMenu/data/messages 1970-01-01 00:00:00 +0000
@@ -1,114 +0,0 @@
1_("Icon")
2
3_("Set to 0 to use the default applet size")
4
5_("Desired icon size for this applet")
6
7_("Name of the icon as it will appear in its caption in the dock:")
8
9_("Leave empty to use the default one.")
10
11_("Image filename:")
12
13_("Name of the dock it belongs to:")
14
15_("Applet's Handbook")
16
17_("Desklet")
18
19_("Position")
20
21_("If locked, the desklet cannot be moved by simply dragging it with the left mouse button. It can still be moved with ALT + left-click.")
22
23_("Lock position?")
24
25_("Depending on your WindowManager, you may be able to resize this with ALT + middle-click or ALT + left-click.")
26
27_("Desklet dimensions (width x height):")
28
29_("Depending on your WindowManager, you may be able to move this with ALT + left-click.")
30
31_("Desklet position (x, y):")
32
33_("You can quickly rotate the desklet with the mouse, by dragging the little buttons on its left and top sides.")
34
35_("Rotation:")
36
37_("Visibility")
38
39_("Is detached from the dock")
40
41_("for CompizFusion's \"widget layer\", set behaviour in Compiz to: (class=Cairo-dock & type=utility)")
42
43_("Visibility:")
44
45_("Normal")
46
47_("Keep above")
48
49_("Keep below")
50
51_("Keep on widget layer")
52
53_("Reserve space")
54
55_("Should be visible on all desktops?")
56
57_("Decorations")
58
59_("Choose 'Custom decorations' to define your own decorations below.")
60
61_("Choose a decoration theme for this desklet:")
62
63_("Image to be displayed below drawings, e.g. a frame. Leave empty for no image.")
64
65_("Background image:")
66
67_("Background transparency:")
68
69_("in pixels. Use this to adjust the left position of drawings.")
70
71_("Left offset:")
72
73_("in pixels. Use this to adjust the top position of drawings.")
74
75_("Top offset:")
76
77_("in pixels. Use this to adjust the right position of drawings.")
78
79_("Right offset:")
80
81_("in pixels. Use this to adjust the bottom position of drawings.")
82
83_("Bottom offset:")
84
85_("Image to be displayed above the drawings, e.g. a reflection. Leave empty for no image.")
86
87_("Foreground image:")
88
89_("Foreground tansparency:")
90
91_("Configuration")
92
93_("Display icons in the menu?")
94
95_("Shortkey to show/hide the menu:")
96
97_("Shortkey to show/hide the quick-launch dialog:")
98
99_("Leave empty to use the default one.")
100
101_("Command to use for configuring the menu:")
102
103_("Recent documents")
104
105_("Show recent documents?")
106
107_("Leave blank if filter is not needed.")
108
109_("Only show files that are under this folder or its sub-folder:")
110
111_("in days. Set 0 if unsued.")
112
113_("Only show files whose last modification date is less than ;")
114
1150
=== modified file 'GMenu/src/applet-menu.c'
--- GMenu/src/applet-menu.c 2010-08-07 01:43:25 +0000
+++ GMenu/src/applet-menu.c 2010-09-16 01:10:06 +0000
@@ -690,8 +690,20 @@
690GtkWidget * create_main_menu (CairoDockModuleInstance *myApplet)690GtkWidget * create_main_menu (CairoDockModuleInstance *myApplet)
691{691{
692 GtkWidget *main_menu;692 GtkWidget *main_menu;
693693
694 main_menu = create_applications_menu ("applications.menu", NULL, NULL);694 // workaround pour KDE, qui ne loupe pas une occasion de se distinguer.
695 const gchar *cMenuFileName = NULL;
696 if (! g_file_test ("/etc/xdg/menus/applications.menu", G_FILE_TEST_EXISTS)) // on pourrait aussi aller lire le start-here.menu, mais je suis pas sur que ce soit standard.
697 {
698 if (g_file_test ("/etc/xdg/menus/kde-applications.menu", G_FILE_TEST_EXISTS))
699 cMenuFileName = "kde-applications.menu";
700 else if (g_file_test ("/etc/xdg/menus/xfce-applications.menu", G_FILE_TEST_EXISTS))
701 cMenuFileName = "xfce-applications.menu";
702 }
703 if (cMenuFileName == NULL)
704 cMenuFileName = "applications.menu";
705
706 main_menu = create_applications_menu (cMenuFileName, NULL, NULL);
695 707
696 g_object_set_data (G_OBJECT (main_menu),708 g_object_set_data (G_OBJECT (main_menu),
697 "panel-menu-append-callback",709 "panel-menu-append-callback",
698710
=== modified file 'GMenu/src/applet-notifications.c'
--- GMenu/src/applet-notifications.c 2010-08-07 01:43:25 +0000
+++ GMenu/src/applet-notifications.c 2010-09-16 01:10:06 +0000
@@ -30,7 +30,7 @@
30{30{
31 if (myData.pMenu != NULL)31 if (myData.pMenu != NULL)
32 {32 {
33 cairo_dock_popup_menu_on_container (myData.pMenu, myContainer);33 cairo_dock_popup_menu_on_icon (myData.pMenu, myIcon, myContainer);
34 }34 }
35}35}
3636
@@ -48,79 +48,8 @@
48}48}
4949
50//\___________ Define here the action to be taken when the user left-clicks on your icon or on its subdock or your desklet. The icon and the container that were clicked are available through the macros CD_APPLET_CLICKED_ICON and CD_APPLET_CLICKED_CONTAINER. CD_APPLET_CLICKED_ICON may be NULL if the user clicked in the container but out of icons.50//\___________ Define here the action to be taken when the user left-clicks on your icon or on its subdock or your desklet. The icon and the container that were clicked are available through the macros CD_APPLET_CLICKED_ICON and CD_APPLET_CLICKED_CONTAINER. CD_APPLET_CLICKED_ICON may be NULL if the user clicked in the container but out of icons.
51static void _on_activate_item (GtkWidget *pMenuItem, gpointer *data);
52static void _fill_menu_with_dir (gchar *cDirPath, GtkWidget *pMenu)
53{
54 GError *erreur = NULL;
55 GDir *dir = g_dir_open (cDirPath, 0, &erreur);
56 if (erreur != NULL)
57 {
58 return ;
59 }
60
61 const gchar *cFileName;
62 gchar *cPath;
63 gpointer *data;
64 GtkWidget *pMenuItem;
65 do
66 {
67 cFileName = g_dir_read_name (dir);
68 if (cFileName == NULL)
69 break ;
70
71 cPath = g_strdup_printf ("%s/%s", cDirPath, cFileName);
72 pMenuItem = gtk_menu_item_new_with_label (cFileName);
73 data = g_new (gpointer, 2);
74 data[0] = cPath;
75
76 gtk_menu_shell_append (GTK_MENU_SHELL (pMenu), pMenuItem);
77 g_signal_connect (G_OBJECT (pMenuItem), "activate", G_CALLBACK(_on_activate_item), data);
78
79 if (g_file_test (cPath, G_FILE_TEST_IS_DIR))
80 {
81 GtkWidget *pSubMenu = gtk_menu_new ();
82 gtk_menu_item_set_submenu (GTK_MENU_ITEM (pMenuItem), pSubMenu);
83 data[1] = pSubMenu;
84 }
85 }
86 while (1);
87 g_dir_close (dir);
88}
89static void _on_activate_item (GtkWidget *pMenuItem, gpointer *data)
90{
91 gchar *cPath = data[0];
92 cd_debug ("%s (%s)\n", __func__, cPath);
93
94 if (g_file_test (cPath, G_FILE_TEST_IS_DIR))
95 {
96 cd_debug ("c'est un repertoire\n");
97 GtkWidget *pSubMenu = data[1];
98 _fill_menu_with_dir (cPath, pSubMenu);
99 gtk_widget_show_all (pSubMenu);
100 }
101 else
102 {
103 cairo_dock_fm_launch_uri (cPath);
104 }
105}
106CD_APPLET_ON_CLICK_BEGIN51CD_APPLET_ON_CLICK_BEGIN
107 cd_menu_show_menu ();52 cd_menu_show_menu ();
108
109 /*gchar *cDirPath = g_getenv ("HOME");
110 GtkWidget *pMenu = gtk_menu_new ();
111
112 _fill_menu_with_dir (cDirPath, pMenu);
113
114 gtk_widget_show_all (pMenu);
115
116 gtk_menu_popup (GTK_MENU (pMenu),
117 NULL,
118 NULL,
119 NULL,
120 NULL,
121 1,
122 gtk_get_current_event_time ());*/
123
124CD_APPLET_ON_CLICK_END53CD_APPLET_ON_CLICK_END
12554
12655
@@ -143,10 +72,14 @@
143}72}
144CD_APPLET_ON_BUILD_MENU_BEGIN73CD_APPLET_ON_BUILD_MENU_BEGIN
145 GtkWidget *pSubMenu = CD_APPLET_CREATE_MY_SUB_MENU ();74 GtkWidget *pSubMenu = CD_APPLET_CREATE_MY_SUB_MENU ();
75 CD_APPLET_ADD_IN_MENU_WITH_STOCK (D_("Quick launch (Middle-click)"), GTK_STOCK_EXECUTE, cd_menu_show_hide_quick_launch, CD_APPLET_MY_MENU);
76 CD_APPLET_ADD_SEPARATOR_IN_MENU (CD_APPLET_MY_MENU);
77 CD_APPLET_ADD_IN_MENU_WITH_STOCK (D_("Configure menu"), GTK_STOCK_PREFERENCES, _cd_menu_configure_menu, CD_APPLET_MY_MENU);
78
79 CD_APPLET_ADD_SEPARATOR_IN_MENU (pSubMenu);
80 CD_APPLET_ADD_IN_MENU_WITH_STOCK (D_("Clear recent"), GTK_STOCK_CLEAR, cd_menu_clear_recent, CD_APPLET_MY_MENU);
81
146 CD_APPLET_ADD_ABOUT_IN_MENU (pSubMenu);82 CD_APPLET_ADD_ABOUT_IN_MENU (pSubMenu);
147 CD_APPLET_ADD_IN_MENU_WITH_STOCK (D_("Quick launch"), GTK_STOCK_EXECUTE, cd_menu_show_hide_quick_launch, pSubMenu);
148 CD_APPLET_ADD_IN_MENU_WITH_STOCK (D_("Configure menu"), GTK_STOCK_PREFERENCES, _cd_menu_configure_menu, pSubMenu);
149 CD_APPLET_ADD_IN_MENU_WITH_STOCK (D_("Clear recent"), GTK_STOCK_CLEAR, cd_menu_clear_recent, pSubMenu);
150CD_APPLET_ON_BUILD_MENU_END83CD_APPLET_ON_BUILD_MENU_END
15184
15285
15386
=== modified file 'GMenu/src/applet-util.c'
--- GMenu/src/applet-util.c 2010-08-07 01:43:25 +0000
+++ GMenu/src/applet-util.c 2010-09-16 01:10:06 +0000
@@ -188,7 +188,7 @@
188 else188 else
189 cCommandExpanded = g_strdup (cCommand);189 cCommandExpanded = g_strdup (cCommand);
190#endif //CD_EXPAND_FIELD_CODES190#endif //CD_EXPAND_FIELD_CODES
191 g_print ("cCommandExpanded : %s\n", cCommandExpanded);191 //g_print ("cCommandExpanded : %s\n", cCommandExpanded);
192 return cCommandExpanded;192 return cCommandExpanded;
193}193}
194static void _launch_from_file (const gchar *cDesktopFilePath)194static void _launch_from_file (const gchar *cDesktopFilePath)
195195
=== modified file 'Indicator-applet/indicator-applet.c'
--- Indicator-applet/indicator-applet.c 2010-08-07 01:43:25 +0000
+++ Indicator-applet/indicator-applet.c 2010-09-16 01:10:06 +0000
@@ -164,7 +164,7 @@
164 _cd_indicator_make_menu (pIndicator);164 _cd_indicator_make_menu (pIndicator);
165 if (pIndicator->pMenu != NULL)165 if (pIndicator->pMenu != NULL)
166 {166 {
167 cairo_dock_popup_menu_on_container (GTK_WIDGET (pIndicator->pMenu), myContainer);167 cairo_dock_popup_menu_on_icon (GTK_WIDGET (pIndicator->pMenu), myIcon, myContainer);
168 return TRUE;168 return TRUE;
169 }169 }
170 return FALSE;170 return FALSE;
171171
=== removed file 'MeMenu/data/messages'
--- MeMenu/data/messages 2010-08-07 01:43:25 +0000
+++ MeMenu/data/messages 1970-01-01 00:00:00 +0000
@@ -1,86 +0,0 @@
1_("Icon")
2
3_("Set to 0 to use the default applet size")
4
5_("Desired icon size for this applet")
6
7_("Name of the dock it belongs to:")
8
9_("Applet's Handbook")
10
11_("Desklet")
12
13_("Position")
14
15_("If locked, the desklet cannot be moved by simply dragging it with the left mouse button. It can still be moved with ALT + left-click.")
16
17_("Lock position?")
18
19_("Depending on your WindowManager, you may be able to resize this with ALT + middle-click or ALT + left-click.")
20
21_("Desklet dimensions (width x height):")
22
23_("Depending on your WindowManager, you may be able to move this with ALT + left-click.")
24
25_("Desklet position (x, y):")
26
27_("You can quickly rotate the desklet with the mouse, by dragging the little buttons on its left and top sides.")
28
29_("Rotation:")
30
31_("Visibility")
32
33_("Is detached from the dock")
34
35_("for CompizFusion's \"widget layer\", set behaviour in Compiz to: (class=Cairo-dock & type=utility)")
36
37_("Visibility:")
38
39_("Normal")
40
41_("Keep above")
42
43_("Keep below")
44
45_("Keep on widget layer")
46
47_("Reserve space")
48
49_("Should be visible on all desktops?")
50
51_("Decorations")
52
53_("Choose 'Custom decorations' to define your own decorations below.")
54
55_("Choose a decoration theme for this desklet:")
56
57_("Image to be displayed below drawings, e.g. a frame. Leave empty for no image.")
58
59_("Background image:")
60
61_("Background transparency:")
62
63_("in pixels. Use this to adjust the left position of drawings.")
64
65_("Left offset:")
66
67_("in pixels. Use this to adjust the top position of drawings.")
68
69_("Top offset:")
70
71_("in pixels. Use this to adjust the right position of drawings.")
72
73_("Right offset:")
74
75_("in pixels. Use this to adjust the bottom position of drawings.")
76
77_("Bottom offset:")
78
79_("Image to be displayed above the drawings, e.g. a reflection. Leave empty for no image.")
80
81_("Foreground image:")
82
83_("Foreground tansparency:")
84
85_("Configuration")
86
870
=== modified file 'MeMenu/src/applet-me.c'
--- MeMenu/src/applet-me.c 2010-08-07 01:43:25 +0000
+++ MeMenu/src/applet-me.c 2010-09-16 01:10:06 +0000
@@ -46,14 +46,14 @@
46static void46static void
47username_cb (DBusGProxy * proxy, const char * username, GError *error, CairoDockModuleInstance *myApplet)47username_cb (DBusGProxy * proxy, const char * username, GError *error, CairoDockModuleInstance *myApplet)
48{48{
49 g_print (" + new username: '%s'\n", username);49 //g_print (" + new username: '%s'\n", username);
50 CD_APPLET_SET_NAME_FOR_MY_ICON (username); // username peut etre NULL ou vide, c'est pas genant.50 CD_APPLET_SET_NAME_FOR_MY_ICON (username); // username peut etre NULL ou vide, c'est pas genant.
51}51}
5252
53static void53static void
54username_changed (DBusGProxy * proxy, gchar * username, CairoDockModuleInstance *myApplet)54username_changed (DBusGProxy * proxy, gchar * username, CairoDockModuleInstance *myApplet)
55{55{
56 g_print ("Changing username: '%s'\n", username);56 //g_print ("Changing username: '%s'\n", username);
57 57
58 return username_cb(proxy, username, NULL, myApplet);58 return username_cb(proxy, username, NULL, myApplet);
59}59}
@@ -63,7 +63,7 @@
63{63{
64 g_return_if_fail(icons != NULL);64 g_return_if_fail(icons != NULL);
65 g_return_if_fail(icons[0] != '\0');65 g_return_if_fail(icons[0] != '\0');
66 g_print (" + new icon: '%s'\n", icons);66 //g_print (" + new icon: '%s'\n", icons);
67 67
68 cd_indicator_set_icon (myData.pIndicator, icons);68 cd_indicator_set_icon (myData.pIndicator, icons);
69 CD_APPLET_REDRAW_MY_ICON;69 CD_APPLET_REDRAW_MY_ICON;
@@ -74,7 +74,7 @@
74static void74static void
75status_icon_changed (DBusGProxy * proxy, gchar * icon, CairoDockModuleInstance *myApplet)75status_icon_changed (DBusGProxy * proxy, gchar * icon, CairoDockModuleInstance *myApplet)
76{76{
77 g_print ("Changing status icon: '%s'\n", icon);77 //g_print ("Changing status icon: '%s'\n", icon);
78 78
79 return status_icon_cb(proxy, icon, NULL, myApplet);79 return status_icon_cb(proxy, icon, NULL, myApplet);
80}80}
8181
=== modified file 'MeMenu/src/applet-menu.c'
--- MeMenu/src/applet-menu.c 2010-08-07 01:43:25 +0000
+++ MeMenu/src/applet-menu.c 2010-09-16 01:10:06 +0000
@@ -56,7 +56,7 @@
56 g_value_init (&value, G_TYPE_STRING);56 g_value_init (&value, G_TYPE_STRING);
57 g_value_set_static_string (&value, gtk_entry_get_text (entry));57 g_value_set_static_string (&value, gtk_entry_get_text (entry));
5858
59 g_print ("user typed: %s\n", g_value_get_string (&value));59 //g_print ("user typed: %s\n", g_value_get_string (&value));
60 dbusmenu_menuitem_handle_event (mi, "send", &value, gtk_get_current_event_time());60 dbusmenu_menuitem_handle_event (mi, "send", &value, gtk_get_current_event_time());
61}61}
6262
6363
=== removed file 'Messaging-Menu/data/messages'
--- Messaging-Menu/data/messages 2010-08-07 01:43:25 +0000
+++ Messaging-Menu/data/messages 1970-01-01 00:00:00 +0000
@@ -1,90 +0,0 @@
1_("Icon")
2
3_("Set to 0 to use the default applet size")
4
5_("Desired icon size for this applet")
6
7_("Name of the icon as it will appear in its caption in the dock:")
8
9_("Name of the dock it belongs to:")
10
11_("Applet's Handbook")
12
13_("Desklet")
14
15_("Position")
16
17_("If locked, the desklet cannot be moved by simply dragging it with the left mouse button. It can still be moved with ALT + left-click.")
18
19_("Lock position?")
20
21_("Depending on your WindowManager, you may be able to resize this with ALT + middle-click or ALT + left-click.")
22
23_("Desklet dimensions (width x height):")
24
25_("Depending on your WindowManager, you may be able to move this with ALT + left-click.")
26
27_("Desklet position (x, y):")
28
29_("You can quickly rotate the desklet with the mouse, by dragging the little buttons on its left and top sides.")
30
31_("Rotation:")
32
33_("Visibility")
34
35_("Is detached from the dock")
36
37_("for CompizFusion's \"widget layer\", set behaviour in Compiz to: (class=Cairo-dock & type=utility)")
38
39_("Visibility:")
40
41_("Normal")
42
43_("Keep above")
44
45_("Keep below")
46
47_("Keep on widget layer")
48
49_("Reserve space")
50
51_("Should be visible on all desktops?")
52
53_("Decorations")
54
55_("Choose 'Custom decorations' to define your own decorations below.")
56
57_("Choose a decoration theme for this desklet:")
58
59_("Image to be displayed below drawings, e.g. a frame. Leave empty for no image.")
60
61_("Background image:")
62
63_("Background transparency:")
64
65_("in pixels. Use this to adjust the left position of drawings.")
66
67_("Left offset:")
68
69_("in pixels. Use this to adjust the top position of drawings.")
70
71_("Top offset:")
72
73_("in pixels. Use this to adjust the right position of drawings.")
74
75_("Right offset:")
76
77_("in pixels. Use this to adjust the bottom position of drawings.")
78
79_("Bottom offset:")
80
81_("Image to be displayed above the drawings, e.g. a reflection. Leave empty for no image.")
82
83_("Foreground image:")
84
85_("Foreground tansparency:")
86
87_("Configuration")
88
89_("Animation of the icon when one of the application demands your attention :")
90
910
=== modified file 'Messaging-Menu/src/applet-menu.c'
--- Messaging-Menu/src/applet-menu.c 2010-08-07 01:43:25 +0000
+++ Messaging-Menu/src/applet-menu.c 2010-09-16 01:10:06 +0000
@@ -67,7 +67,7 @@
67static gboolean67static gboolean
68new_application_item (DbusmenuMenuitem * newitem, DbusmenuMenuitem * parent, DbusmenuClient * client)68new_application_item (DbusmenuMenuitem * newitem, DbusmenuMenuitem * parent, DbusmenuClient * client)
69{69{
70 g_print ("%s ()\n", __func__);70 //g_print ("%s ()\n", __func__);
71 GtkMenuItem * gmi = GTK_MENU_ITEM(gtk_image_menu_item_new());71 GtkMenuItem * gmi = GTK_MENU_ITEM(gtk_image_menu_item_new());
7272
73 gint padding = 4;73 gint padding = 4;
@@ -86,7 +86,7 @@
86 gtk_widget_show(icon);86 gtk_widget_show(icon);
8787
88 /* Application name in a label */88 /* Application name in a label */
89 g_print (" name : %s\n", dbusmenu_menuitem_property_get(newitem, APPLICATION_MENUITEM_PROP_NAME));89 //g_print (" name : %s\n", dbusmenu_menuitem_property_get(newitem, APPLICATION_MENUITEM_PROP_NAME));
90 GtkWidget * label = gtk_label_new(dbusmenu_menuitem_property_get(newitem, APPLICATION_MENUITEM_PROP_NAME));90 GtkWidget * label = gtk_label_new(dbusmenu_menuitem_property_get(newitem, APPLICATION_MENUITEM_PROP_NAME));
91 gtk_misc_set_alignment(GTK_MISC(label), 0.0, 0.5);91 gtk_misc_set_alignment(GTK_MISC(label), 0.0, 0.5);
92 gtk_box_pack_start(GTK_BOX(hbox), label, TRUE, TRUE, padding);92 gtk_box_pack_start(GTK_BOX(hbox), label, TRUE, TRUE, padding);
@@ -131,7 +131,7 @@
131static void131static void
132indicator_prop_change_cb (DbusmenuMenuitem * mi, gchar * prop, GValue * value, indicator_item_t * mi_data)132indicator_prop_change_cb (DbusmenuMenuitem * mi, gchar * prop, GValue * value, indicator_item_t * mi_data)
133{133{
134 g_print ("%s (%s)\n", __func__, prop);134 //g_print ("%s (%s)\n", __func__, prop);
135 if (!g_strcmp0(prop, INDICATOR_MENUITEM_PROP_LABEL)) {135 if (!g_strcmp0(prop, INDICATOR_MENUITEM_PROP_LABEL)) {
136 /* Set the main label */136 /* Set the main label */
137 gtk_label_set_text(GTK_LABEL(mi_data->label), g_value_get_string(value));137 gtk_label_set_text(GTK_LABEL(mi_data->label), g_value_get_string(value));
@@ -180,7 +180,7 @@
180static gboolean180static gboolean
181new_indicator_item (DbusmenuMenuitem * newitem, DbusmenuMenuitem * parent, DbusmenuClient * client)181new_indicator_item (DbusmenuMenuitem * newitem, DbusmenuMenuitem * parent, DbusmenuClient * client)
182{182{
183 g_print ("%s ()\n", __func__);183 //g_print ("%s ()\n", __func__);
184 g_return_val_if_fail(DBUSMENU_IS_MENUITEM(newitem), FALSE);184 g_return_val_if_fail(DBUSMENU_IS_MENUITEM(newitem), FALSE);
185 g_return_val_if_fail(DBUSMENU_IS_GTKCLIENT(client), FALSE);185 g_return_val_if_fail(DBUSMENU_IS_GTKCLIENT(client), FALSE);
186 /* Note: not checking parent, it's reasonable for it to be NULL */186 /* Note: not checking parent, it's reasonable for it to be NULL */
187187
=== modified file 'Messaging-Menu/src/applet-messaging.c'
--- Messaging-Menu/src/applet-messaging.c 2010-08-07 01:43:25 +0000
+++ Messaging-Menu/src/applet-messaging.c 2010-09-16 01:10:06 +0000
@@ -38,7 +38,7 @@
38static void38static void
39attention_changed_cb (DBusGProxy * proxy, gboolean dot, CairoDockModuleInstance *myApplet)39attention_changed_cb (DBusGProxy * proxy, gboolean dot, CairoDockModuleInstance *myApplet)
40{40{
41 g_print ("%s (attention : %d)\n", __func__, dot);41 //g_print ("%s (attention : %d)\n", __func__, dot);
42 if (dot)42 if (dot)
43 {43 {
44 cd_indicator_set_icon (myData.pIndicator, "indicator-messages-new");44 cd_indicator_set_icon (myData.pIndicator, "indicator-messages-new");
@@ -58,7 +58,7 @@
58static void58static void
59icon_changed_cb (DBusGProxy * proxy, gboolean hidden, CairoDockModuleInstance *myApplet)59icon_changed_cb (DBusGProxy * proxy, gboolean hidden, CairoDockModuleInstance *myApplet)
60{60{
61 g_print ("%s (hidden : %d)\n", __func__, hidden);61 //g_print ("%s (hidden : %d)\n", __func__, hidden);
62 if (hidden)62 if (hidden)
63 {63 {
64 myIcon->fAlpha = .5;64 myIcon->fAlpha = .5;
@@ -116,7 +116,7 @@
116116
117void cd_messaging_on_disconnect (CairoDockModuleInstance *myApplet)117void cd_messaging_on_disconnect (CairoDockModuleInstance *myApplet)
118{118{
119 g_print ("disconnected\n");119 //g_print ("disconnected\n");
120 cd_indicator_set_icon (myData.pIndicator, DEFAULT_ICON); // If we're disconnecting, go back to offline.120 cd_indicator_set_icon (myData.pIndicator, DEFAULT_ICON); // If we're disconnecting, go back to offline.
121}121}
122122
123123
=== modified file 'Network-Monitor/data/Network-Monitor.conf.in'
--- Network-Monitor/data/Network-Monitor.conf.in 2010-08-07 01:43:25 +0000
+++ Network-Monitor/data/Network-Monitor.conf.in 2010-09-16 01:10:06 +0000
@@ -140,7 +140,7 @@
140#X[Gauge;gtk-dialog-info]140#X[Gauge;gtk-dialog-info]
141frame_gauge=141frame_gauge=
142142
143#h+[@gaugesdir@;gauges;gauges] Choose one of the available themes:/143#h+[@gaugesdir@;gauges;gauges2] Choose one of the available themes:/
144theme = turbo-night-fuel144theme = turbo-night-fuel
145145
146#X[Graph;gtk-dialog-info]146#X[Graph;gtk-dialog-info]
@@ -179,7 +179,7 @@
179#X[Gauge;gtk-dialog-info]179#X[Gauge;gtk-dialog-info]
180frame_gauge=180frame_gauge=
181181
182#h+[@gaugesdir@;gauges;gauges] Choose one of the available themes:/182#h+[@gaugesdir@;gauges;gauges2] Choose one of the available themes:/
183theme = turbo-night-fuel183theme = turbo-night-fuel
184184
185185
186186
=== removed file 'Network-Monitor/data/messages'
--- Network-Monitor/data/messages 2010-08-07 01:43:25 +0000
+++ Network-Monitor/data/messages 1970-01-01 00:00:00 +0000
@@ -1,258 +0,0 @@
1_("Icon")
2
3_("Set to 0 to use the default applet size")
4
5_("Desired icon size for this applet")
6
7_("Leave empty to use the connection name.")
8
9_("Name of the icon as it will appear in its caption in the dock:")
10
11_("Name of the dock it belongs to:")
12
13_("Always display the icon, even when the dock is hidden?")
14
15_("Applet's Handbook")
16
17_("Desklet")
18
19_("Position")
20
21_("If locked, the desklet cannot be moved by simply dragging it with the left mouse button. It can still be moved with ALT + left-click.")
22
23_("Lock position?")
24
25_("Depending on your WindowManager, you may be able to resize this with ALT + middle-click or ALT + left-click.")
26
27_("Desklet dimensions (width x height):")
28
29_("Depending on your WindowManager, you may be able to move this with ALT + left-click.")
30
31_("Desklet position (x, y):")
32
33_("You can quickly rotate the desklet with the mouse, by dragging the little buttons on its left and top sides.")
34
35_("Rotation:")
36
37_("Visibility")
38
39_("Is detached from the dock")
40
41_("for CompizFusion's \"widget layer\", set behaviour in Compiz to: (class=Cairo-dock & type=utility)")
42
43_("Visibility:")
44
45_("Normal")
46
47_("Keep above")
48
49_("Keep below")
50
51_("Keep on widget layer")
52
53_("Reserve space")
54
55_("Should be visible on all desktops?")
56
57_("Decorations")
58
59_("Choose 'Custom decorations' to define your own decorations below.")
60
61_("Choose a decoration theme for this desklet:")
62
63_("Image to be displayed below drawings, e.g. a frame. Leave empty for no image.")
64
65_("Background image:")
66
67_("Background transparency:")
68
69_("in pixels. Use this to adjust the left position of drawings.")
70
71_("Left offset:")
72
73_("in pixels. Use this to adjust the top position of drawings.")
74
75_("Top offset:")
76
77_("in pixels. Use this to adjust the right position of drawings.")
78
79_("Right offset:")
80
81_("in pixels. Use this to adjust the bottom position of drawings.")
82
83_("Bottom offset:")
84
85_("Image to be displayed above the drawings, e.g. a reflection. Leave empty for no image.")
86
87_("Foreground image:")
88
89_("Foreground tansparency:")
90
91_("Configuration")
92
93_("Parameters")
94
95_("You can quickly switch to the other mode by scrolling on the icon.")
96
97_("Info displayed by the icon:")
98
99_("Wifi signal")
100
101_("Connexion speed")
102
103_("By default the first active interface is used.")
104
105_("Connection interface to monitor:")
106
107_("Display numeric values:")
108
109_("No")
110
111_("On icon")
112
113_("On label")
114
115_("You need OpenGL for this option. Set it to 0 means not used, 1 means the movement is continue.")
116
117_("Fluidity of the transition animation between 2 values:")
118
119_("Animation of the icon when connecting:")
120
121_("Allow you to overwrite applet's default command line and launch your preferred wireless configuration interface.")
122
123_("User command to show Wireless Configuration:")
124
125_("Leave empty to use the default.")
126
127_("User command to display a system monitor:")
128
129_("Net Speed")
130
131_("Choose the style of the display: ")
132
133_("Gauge")
134
135_("Graph")
136
137_("Gauge")
138
139_("Choose one of the available themes:")
140
141_("Graph")
142
143_("Type of graphic :")
144
145_("Line")
146
147_("Plain")
148
149_("Bar")
150
151_("Circle")
152
153_("Plain Circle")
154
155_("It's the colour of the graphic for high quality signal.")
156
157_("High value's colour :")
158
159_("It's the colour of the graphic for low quality signal.")
160
161_("Low value's colour :")
162
163_("Background colour of the graphic :")
164
165_("Parameters")
166
167_("in seconds.")
168
169_("Delays between net speed checks:")
170
171_("Wifi")
172
173_("Choose the style of the display:")
174
175_("Gauge")
176
177_("Graph")
178
179_("Icons")
180
181_("Gauge")
182
183_("Choose one of the available themes:")
184
185_("Graph")
186
187_("Type of graphic :")
188
189_("Line")
190
191_("Plain")
192
193_("Bar")
194
195_("Circle")
196
197_("Plain Circle")
198
199_("It's the colour of the graphic for high quality signal.")
200
201_("High value's colour :")
202
203_("It's the colour of the graphic for low quality signal.")
204
205_("Low value's colour :")
206
207_("Background colour of the graphic :")
208
209_("Icons")
210
211_("Effect to apply on the icon according to strength :")
212
213_("None")
214
215_("Zoom")
216
217_("Transparency")
218
219_("Draw Bar")
220
221_("Leave empty to use the default icon.")
222
223_("Name of the image for the 'No signal' icon :")
224
225_("Leave empty to use the default icon.")
226
227_("Name of the image for the 'Very low' icon :")
228
229_("Leave empty to use the default icon.")
230
231_("Name of the image for the 'Low' icon :")
232
233_("Leave empty to use the default icon.")
234
235_("Name of the image for the 'Middle' icon :")
236
237_("Leave empty to use the default icon.")
238
239_("Name of an image for the 'Good' icon :")
240
241_("Leave empty to use the default icon.")
242
243_("Name of the image for the 'Excellent' icon :")
244
245_("Leave empty to use the default icon.")
246
247_("Name of the image for the 'Not connected' icon :")
248
249_("Leave empty to use the default icon.")
250
251_("Name of the image for the 'Wired connection' icon :")
252
253_("Parameters")
254
255_("in seconds. if you don't have Network-Manager.")
256
257_("Delays between wifi signal checks:")
258
2590
=== removed file 'RSSreader/data/messages'
--- RSSreader/data/messages 2010-08-07 01:43:25 +0000
+++ RSSreader/data/messages 1970-01-01 00:00:00 +0000
@@ -1,204 +0,0 @@
1_("Icon")
2
3_("Set to 0 to use the default applet size")
4
5_("Desired icon size for this applet")
6
7_("Leave empty to use the title of the RSS feed.")
8
9_("Name of the icon as it will appear in its caption in the dock:")
10
11_("Leave empty to use the default one.")
12
13_("Image filename:")
14
15_("Name of the dock it belongs to:")
16
17_("Applet's Handbook")
18
19_("Desklet")
20
21_("Position")
22
23_("If locked, the desklet cannot be moved by simply dragging it with the left mouse button. It can still be moved with ALT + left-click.")
24
25_("Lock position?")
26
27_("Depending on your WindowManager, you may be able to resize this with ALT + middle-click or ALT + left-click.")
28
29_("Desklet dimensions (width x height):")
30
31_("Depending on your WindowManager, you may be able to move this with ALT + left-click.")
32
33_("Desklet position (x, y):")
34
35_("You can quickly rotate the desklet with the mouse, by dragging the little buttons on its left and top sides.")
36
37_("Rotation:")
38
39_("Visibility")
40
41_("Is detached from the dock")
42
43_("for CompizFusion's \"widget layer\", set behaviour in Compiz to: (class=Cairo-dock & type=utility)")
44
45_("Visibility:")
46
47_("Normal")
48
49_("Keep above")
50
51_("Keep below")
52
53_("Keep on widget layer")
54
55_("Reserve space")
56
57_("Should be visible on all desktops?")
58
59_("Decorations")
60
61_("Choose 'Custom decorations' to define your own decorations below.")
62
63_("Choose a decoration theme for this desklet:")
64
65_("Image to be displayed below drawings, e.g. a frame. Leave empty for no image.")
66
67_("Background image:")
68
69_("Background transparency:")
70
71_("in pixels. Use this to adjust the left position of drawings.")
72
73_("Left offset:")
74
75_("in pixels. Use this to adjust the top position of drawings.")
76
77_("Top offset:")
78
79_("in pixels. Use this to adjust the right position of drawings.")
80
81_("Right offset:")
82
83_("in pixels. Use this to adjust the bottom position of drawings.")
84
85_("Bottom offset:")
86
87_("Image to be displayed above the drawings, e.g. a reflection. Leave empty for no image.")
88
89_("Foreground image:")
90
91_("Foreground tansparency:")
92
93_("Configuration")
94
95_("RSS Feed")
96
97_("Enter a valid atom/rss feed")
98
99_("URL:")
100
101_("RSS login (optional):")
102
103_("RSS password (optional):")
104
105_("Behaviour")
106
107_("In minutes.")
108
109_("Refresh time:")
110
111_("Notify about feed updates:")
112
113_("No")
114
115_("Icon animation")
116
117_("Dialog bubble")
118
119_("Icon animation + Dialog bubble")
120
121_("Let empty to use the default notification animation.")
122
123_("Animation of the icon:")
124
125_("In seconds. Set to 0 for infinite time (need to click on dialog to close it).")
126
127_("Duration of the notification:")
128
129_("Leave empty to use the default one.")
130
131_("Open the feed with the following program:")
132
133_("Appearance")
134
135_("Title")
136
137_("Font to be used for the title")
138
139_("Title font:")
140
141_("Colour to be used for the title")
142
143_("Title colour:")
144
145_("Alignment of the title:")
146
147_("left")
148
149_("right")
150
151_("Text")
152
153_("Font to be used for the feed lines")
154
155_("Feed lines font:")
156
157_("Colour to be used for the feed lines")
158
159_("Feed lines colour:")
160
161_("Left margin for the feed lines:")
162
163_("Space between 2 feed lines:")
164
165_("Logo")
166
167_("The default logo is the applet's icon")
168
169_("Display the logo?")
170
171_("Adjust to increase/decrease the logo's size")
172
173_("Logo size:")
174
175_("normal")
176
177_("big")
178
179_("Background")
180
181_("You can have more attractive backgrounds using the Desklet decorations")
182
183_("Display a simple background?")
184
185_("first colour of the gradation")
186
187_("Background first colour :")
188
189_("second colour of the gradation")
190
191_("Background second colour:")
192
193_("Set the radius corner to 0 for no radius")
194
195_("Background radius corner:")
196
197_("Set the thickness to 0 for no border")
198
199_("Border thickness:")
200
201_("Border colour")
202
203_("Border colour :")
204
2050
=== modified file 'RSSreader/src/applet-notifications.c'
--- RSSreader/src/applet-notifications.c 2010-08-07 01:43:25 +0000
+++ RSSreader/src/applet-notifications.c 2010-09-16 01:10:06 +0000
@@ -137,13 +137,13 @@
137}137}
138CD_APPLET_ON_SCROLL_BEGIN138CD_APPLET_ON_SCROLL_BEGIN
139 if (! myDesklet)139 if (! myDesklet)
140 return CAIRO_DOCK_LET_PASS_NOTIFICATION;140 CD_APPLET_LEAVE (CAIRO_DOCK_LET_PASS_NOTIFICATION);
141 141
142 myData.iFirstDisplayedItem += (CD_APPLET_SCROLL_UP ? -1 : 1);142 myData.iFirstDisplayedItem += (CD_APPLET_SCROLL_UP ? -1 : 1);
143 if (myData.iFirstDisplayedItem < 0) // on a scrolle trop haut.143 if (myData.iFirstDisplayedItem < 0) // on a scrolle trop haut.
144 {144 {
145 myData.iFirstDisplayedItem = 0;145 myData.iFirstDisplayedItem = 0;
146 return CAIRO_DOCK_LET_PASS_NOTIFICATION;146 CD_APPLET_LEAVE (CAIRO_DOCK_LET_PASS_NOTIFICATION);
147 }147 }
148 else148 else
149 {149 {
@@ -151,7 +151,7 @@
151 if (myData.iFirstDisplayedItem > n - 1) // on a scrolle trop bas.151 if (myData.iFirstDisplayedItem > n - 1) // on a scrolle trop bas.
152 {152 {
153 myData.iFirstDisplayedItem = n - 1;153 myData.iFirstDisplayedItem = n - 1;
154 return CAIRO_DOCK_LET_PASS_NOTIFICATION;154 CD_APPLET_LEAVE (CAIRO_DOCK_LET_PASS_NOTIFICATION);
155 }155 }
156 }156 }
157 if (myData.iSidRedrawIdle == 0) // on planifie un redessin pour quand la boucle principale sera accessible, de facon a éviter de la surcharger en cas de scroll rapide.157 if (myData.iSidRedrawIdle == 0) // on planifie un redessin pour quand la boucle principale sera accessible, de facon a éviter de la surcharger en cas de scroll rapide.
158158
=== added directory 'Remote-Control'
=== added file 'Remote-Control/CMakeLists.txt'
--- Remote-Control/CMakeLists.txt 1970-01-01 00:00:00 +0000
+++ Remote-Control/CMakeLists.txt 2010-09-16 01:10:06 +0000
@@ -0,0 +1,2 @@
1add_subdirectory(src)
2add_subdirectory(data)
03
=== added directory 'Remote-Control/data'
=== added file 'Remote-Control/data/CMakeLists.txt'
--- Remote-Control/data/CMakeLists.txt 1970-01-01 00:00:00 +0000
+++ Remote-Control/data/CMakeLists.txt 2010-09-16 01:10:06 +0000
@@ -0,0 +1,11 @@
1########### subdirs if any ###############
2
3
4########### install files ###############
5
6install (FILES ${CMAKE_CURRENT_BINARY_DIR}/Remote-Control.conf
7 preview.jpg
8 icon.png
9 arrows.svg
10 DESTINATION ${remote_controldatadir})
11
012
=== added file 'Remote-Control/data/Remote-Control.conf.in'
--- Remote-Control/data/Remote-Control.conf.in 1970-01-01 00:00:00 +0000
+++ Remote-Control/data/Remote-Control.conf.in 2010-09-16 01:10:06 +0000
@@ -0,0 +1,14 @@
1#!en;@VERSION_REMOTE_CONTROL@
2
3#[gtk-preferences]
4[Configuration]
5
6#k Shortkey to trigger the applet:
7shortkey = <Control>F9
8
9#a+ Animation of the current icon :
10animation=pulse
11
12#I[0;2000] Duration of the stop animation :
13#{In ms.}
14stop duration = 800
015
=== added file 'Remote-Control/data/arrows.svg'
--- Remote-Control/data/arrows.svg 1970-01-01 00:00:00 +0000
+++ Remote-Control/data/arrows.svg 2010-09-16 01:10:06 +0000
@@ -0,0 +1,289 @@
1<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2<!-- Created with Inkscape (http://www.inkscape.org/) -->
3<svg
4 xmlns:dc="http://purl.org/dc/elements/1.1/"
5 xmlns:cc="http://creativecommons.org/ns#"
6 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
7 xmlns:svg="http://www.w3.org/2000/svg"
8 xmlns="http://www.w3.org/2000/svg"
9 xmlns:xlink="http://www.w3.org/1999/xlink"
10 xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
11 xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
12 width="128"
13 height="128"
14 id="svg2391"
15 sodipodi:version="0.32"
16 inkscape:version="0.46"
17 version="1.0"
18 sodipodi:docname="arrows.svg"
19 inkscape:output_extension="org.inkscape.output.svg.inkscape">
20 <defs
21 id="defs2393">
22 <linearGradient
23 id="linearGradient2076">
24 <stop
25 id="stop2078"
26 offset="0.0000000"
27 style="stop-color:#afd9ed;stop-opacity:1.0000000;" />
28 <stop
29 id="stop2080"
30 offset="1.0000000"
31 style="stop-color:#cfc3db;stop-opacity:1.0000000;" />
32 </linearGradient>
33 <linearGradient
34 gradientTransform="matrix(-1.186331,0,0,-0.780016,61.16353,67.13542)"
35 gradientUnits="userSpaceOnUse"
36 id="linearGradient2082"
37 x1="12.615197"
38 x2="48.374069"
39 xlink:href="#linearGradient2076"
40 y1="25.909756"
41 y2="62.720371" />
42 <linearGradient
43 id="linearGradient2088">
44 <stop
45 id="stop2090"
46 offset="0.0000000"
47 style="stop-color:#87a8b7;stop-opacity:1.0000000;" />
48 <stop
49 id="stop2092"
50 offset="1.0000000"
51 style="stop-color:#7f718e;stop-opacity:1.0000000;" />
52 </linearGradient>
53 <linearGradient
54 gradientTransform="matrix(-1.186331,0,0,-0.780016,63.3302,67.13542)"
55 gradientUnits="userSpaceOnUse"
56 id="linearGradient2086"
57 x1="12.615197"
58 x2="48.374069"
59 xlink:href="#linearGradient2088"
60 y1="25.909756"
61 y2="62.720371" />
62 <inkscape:perspective
63 sodipodi:type="inkscape:persp3d"
64 inkscape:vp_x="0 : 526.18109 : 1"
65 inkscape:vp_y="0 : 1000 : 0"
66 inkscape:vp_z="744.09448 : 526.18109 : 1"
67 inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
68 id="perspective2399" />
69 <linearGradient
70 inkscape:collect="always"
71 xlink:href="#linearGradient2088"
72 id="linearGradient2420"
73 gradientUnits="userSpaceOnUse"
74 gradientTransform="matrix(-1.186331,0,0,-0.780016,63.3302,67.13542)"
75 x1="12.615197"
76 y1="25.909756"
77 x2="48.374069"
78 y2="62.720371" />
79 <linearGradient
80 inkscape:collect="always"
81 xlink:href="#linearGradient2076"
82 id="linearGradient2422"
83 gradientUnits="userSpaceOnUse"
84 gradientTransform="matrix(-1.186331,0,0,-0.780016,61.16353,67.13542)"
85 x1="12.615197"
86 y1="25.909756"
87 x2="48.374069"
88 y2="62.720371" />
89 <linearGradient
90 inkscape:collect="always"
91 xlink:href="#linearGradient2088"
92 id="linearGradient2434"
93 gradientUnits="userSpaceOnUse"
94 gradientTransform="matrix(-1.186331,0,0,-0.780016,63.3302,67.13542)"
95 x1="12.615197"
96 y1="25.909756"
97 x2="48.374069"
98 y2="62.720371" />
99 <linearGradient
100 inkscape:collect="always"
101 xlink:href="#linearGradient2076"
102 id="linearGradient2436"
103 gradientUnits="userSpaceOnUse"
104 gradientTransform="matrix(-1.186331,0,0,-0.780016,61.16353,67.13542)"
105 x1="12.615197"
106 y1="25.909756"
107 x2="48.374069"
108 y2="62.720371" />
109 <linearGradient
110 inkscape:collect="always"
111 xlink:href="#linearGradient2088"
112 id="linearGradient2448"
113 gradientUnits="userSpaceOnUse"
114 gradientTransform="matrix(-1.186331,0,0,-0.780016,63.3302,67.13542)"
115 x1="12.615197"
116 y1="25.909756"
117 x2="48.374069"
118 y2="62.720371" />
119 <linearGradient
120 inkscape:collect="always"
121 xlink:href="#linearGradient2076"
122 id="linearGradient2450"
123 gradientUnits="userSpaceOnUse"
124 gradientTransform="matrix(-1.186331,0,0,-0.780016,61.16353,67.13542)"
125 x1="12.615197"
126 y1="25.909756"
127 x2="48.374069"
128 y2="62.720371" />
129 <linearGradient
130 inkscape:collect="always"
131 xlink:href="#linearGradient2088"
132 id="linearGradient2462"
133 gradientUnits="userSpaceOnUse"
134 gradientTransform="matrix(-1.186331,0,0,-0.780016,63.3302,67.13542)"
135 x1="12.615197"
136 y1="25.909756"
137 x2="48.374069"
138 y2="62.720371" />
139 <linearGradient
140 inkscape:collect="always"
141 xlink:href="#linearGradient2076"
142 id="linearGradient2464"
143 gradientUnits="userSpaceOnUse"
144 gradientTransform="matrix(-1.186331,0,0,-0.780016,61.16353,67.13542)"
145 x1="12.615197"
146 y1="25.909756"
147 x2="48.374069"
148 y2="62.720371" />
149 </defs>
150 <sodipodi:namedview
151 id="base"
152 pagecolor="#ffffff"
153 bordercolor="#666666"
154 borderopacity="1.0"
155 inkscape:pageopacity="0.0"
156 inkscape:pageshadow="2"
157 inkscape:zoom="1.3277206"
158 inkscape:cx="117.47785"
159 inkscape:cy="-15.977159"
160 inkscape:document-units="px"
161 inkscape:current-layer="layer1"
162 showgrid="false"
163 showguides="true"
164 inkscape:guide-bbox="true"
165 inkscape:window-width="641"
166 inkscape:window-height="719"
167 inkscape:window-x="293"
168 inkscape:window-y="0" />
169 <metadata
170 id="metadata2396">
171 <rdf:RDF>
172 <cc:Work
173 rdf:about="">
174 <dc:format>image/svg+xml</dc:format>
175 <dc:type
176 rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
177 </cc:Work>
178 </rdf:RDF>
179 </metadata>
180 <g
181 inkscape:label="Calque 1"
182 inkscape:groupmode="layer"
183 id="layer1">
184 <g
185 id="g2409"
186 transform="matrix(0,0.8161651,-1.764176,0,125.43391,77.398373)">
187 <path
188 d="M 32.186126,52.104166 C 32.931029,52.568927 46.362619,43.287677 47.107522,42.822916 C 47.852425,42.358155 62,34.471188 62,33.541666 C 62,32.612144 47.852425,24.693927 47.107522,24.229166 C 46.362619,23.764405 32.931028,14.483154 32.186126,14.947916 C 31.736229,15.228616 31.839046,20.824428 31.983704,26.041666 L 5.900179,26.041666 C 5.643855,26.041666 5.4375,26.264666 5.4375,26.541666 L 5.4375,40.541666 C 5.4375,40.818666 5.643855,41.041666 5.900179,41.041666 L 31.983704,41.041666 C 31.839045,46.258903 31.73623,51.823466 32.186126,52.104166 z"
189 id="path2084"
190 style="fill:url(#linearGradient2420);fill-opacity:1;stroke:none;stroke-width:0.375;stroke-miterlimit:4;stroke-opacity:1" />
191 <path
192 d="M 30.019459,52.104166 C 30.764362,52.568927 44.195952,43.287677 44.940855,42.822916 C 45.685758,42.358155 59.833333,34.471188 59.833333,33.541666 C 59.833333,32.612144 45.685758,24.693927 44.940855,24.229166 C 44.195952,23.764405 30.764361,14.483154 30.019459,14.947916 C 29.569562,15.228616 29.672379,20.824428 29.817037,26.041666 L 3.733512,26.041666 C 3.477188,26.041666 3.270833,26.264666 3.270833,26.541666 L 3.270833,40.541666 C 3.270833,40.818666 3.477188,41.041666 3.733512,41.041666 L 29.817037,41.041666 C 29.672378,46.258903 29.569563,51.823466 30.019459,52.104166 z"
193 id="rect1303"
194 style="fill:url(#linearGradient2422);fill-opacity:1;stroke:none;stroke-width:0.375;stroke-miterlimit:4;stroke-opacity:1" />
195 <path
196 d="M 56,32.498092 C 56,32.498092 46.143163,28.758884 45.393163,27.459846 C 44.643163,26.160808 31.765602,20.067541 32.131627,18.701516 C 32.497652,17.33549 43.893163,24.86177 43.893163,24.86177 C 43.893163,24.86177 52.611644,28.295956 56,32.498092 z"
197 id="path2096"
198 style="fill:#d0f1fc;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
199 <rect
200 height="1"
201 id="rect2098"
202 rx="0.5"
203 ry="0.5"
204 style="fill:#d0f1fc;fill-opacity:1;stroke:none;stroke-width:0.375;stroke-miterlimit:4;stroke-opacity:1"
205 transform="scale(-1,-1)"
206 width="23"
207 x="-27.270832"
208 y="-28" />
209 </g>
210 <g
211 id="g2424"
212 transform="matrix(0,-0.8161651,-1.6782543,0,122.04356,52.382073)">
213 <path
214 d="M 32.186126,52.104166 C 32.931029,52.568927 46.362619,43.287677 47.107522,42.822916 C 47.852425,42.358155 62,34.471188 62,33.541666 C 62,32.612144 47.852425,24.693927 47.107522,24.229166 C 46.362619,23.764405 32.931028,14.483154 32.186126,14.947916 C 31.736229,15.228616 31.839046,20.824428 31.983704,26.041666 L 5.900179,26.041666 C 5.643855,26.041666 5.4375,26.264666 5.4375,26.541666 L 5.4375,40.541666 C 5.4375,40.818666 5.643855,41.041666 5.900179,41.041666 L 31.983704,41.041666 C 31.839045,46.258903 31.73623,51.823466 32.186126,52.104166 z"
215 id="path2426"
216 style="fill:url(#linearGradient2434);fill-opacity:1;stroke:none;stroke-width:0.375;stroke-miterlimit:4;stroke-opacity:1" />
217 <path
218 d="M 30.019459,52.104166 C 30.764362,52.568927 44.195952,43.287677 44.940855,42.822916 C 45.685758,42.358155 59.833333,34.471188 59.833333,33.541666 C 59.833333,32.612144 45.685758,24.693927 44.940855,24.229166 C 44.195952,23.764405 30.764361,14.483154 30.019459,14.947916 C 29.569562,15.228616 29.672379,20.824428 29.817037,26.041666 L 3.733512,26.041666 C 3.477188,26.041666 3.270833,26.264666 3.270833,26.541666 L 3.270833,40.541666 C 3.270833,40.818666 3.477188,41.041666 3.733512,41.041666 L 29.817037,41.041666 C 29.672378,46.258903 29.569563,51.823466 30.019459,52.104166 z"
219 id="path2428"
220 style="fill:url(#linearGradient2436);fill-opacity:1;stroke:none;stroke-width:0.375;stroke-miterlimit:4;stroke-opacity:1" />
221 <path
222 d="M 56,32.498092 C 56,32.498092 46.143163,28.758884 45.393163,27.459846 C 44.643163,26.160808 31.765602,20.067541 32.131627,18.701516 C 32.497652,17.33549 43.893163,24.86177 43.893163,24.86177 C 43.893163,24.86177 52.611644,28.295956 56,32.498092 z"
223 id="path2430"
224 style="fill:#d0f1fc;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
225 <rect
226 height="1"
227 id="rect2432"
228 rx="0.5"
229 ry="0.5"
230 style="fill:#d0f1fc;fill-opacity:1;stroke:none;stroke-width:0.375;stroke-miterlimit:4;stroke-opacity:1"
231 transform="scale(-1,-1)"
232 width="23"
233 x="-27.270832"
234 y="-28" />
235 </g>
236 <g
237 id="g2438"
238 transform="matrix(-0.8161651,0,0,-1.6496137,51.134197,122.05924)">
239 <path
240 d="M 32.186126,52.104166 C 32.931029,52.568927 46.362619,43.287677 47.107522,42.822916 C 47.852425,42.358155 62,34.471188 62,33.541666 C 62,32.612144 47.852425,24.693927 47.107522,24.229166 C 46.362619,23.764405 32.931028,14.483154 32.186126,14.947916 C 31.736229,15.228616 31.839046,20.824428 31.983704,26.041666 L 5.900179,26.041666 C 5.643855,26.041666 5.4375,26.264666 5.4375,26.541666 L 5.4375,40.541666 C 5.4375,40.818666 5.643855,41.041666 5.900179,41.041666 L 31.983704,41.041666 C 31.839045,46.258903 31.73623,51.823466 32.186126,52.104166 z"
241 id="path2440"
242 style="fill:url(#linearGradient2448);fill-opacity:1;stroke:none;stroke-width:0.375;stroke-miterlimit:4;stroke-opacity:1" />
243 <path
244 d="M 30.019459,52.104166 C 30.764362,52.568927 44.195952,43.287677 44.940855,42.822916 C 45.685758,42.358155 59.833333,34.471188 59.833333,33.541666 C 59.833333,32.612144 45.685758,24.693927 44.940855,24.229166 C 44.195952,23.764405 30.764361,14.483154 30.019459,14.947916 C 29.569562,15.228616 29.672379,20.824428 29.817037,26.041666 L 3.733512,26.041666 C 3.477188,26.041666 3.270833,26.264666 3.270833,26.541666 L 3.270833,40.541666 C 3.270833,40.818666 3.477188,41.041666 3.733512,41.041666 L 29.817037,41.041666 C 29.672378,46.258903 29.569563,51.823466 30.019459,52.104166 z"
245 id="path2442"
246 style="fill:url(#linearGradient2450);fill-opacity:1;stroke:none;stroke-width:0.375;stroke-miterlimit:4;stroke-opacity:1" />
247 <path
248 d="M 56,32.498092 C 56,32.498092 46.143163,28.758884 45.393163,27.459846 C 44.643163,26.160808 31.765602,20.067541 32.131627,18.701516 C 32.497652,17.33549 43.893163,24.86177 43.893163,24.86177 C 43.893163,24.86177 52.611644,28.295956 56,32.498092 z"
249 id="path2444"
250 style="fill:#d0f1fc;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
251 <rect
252 height="1"
253 id="rect2446"
254 rx="0.5"
255 ry="0.5"
256 style="fill:#d0f1fc;fill-opacity:1;stroke:none;stroke-width:0.375;stroke-miterlimit:4;stroke-opacity:1"
257 transform="scale(-1,-1)"
258 width="23"
259 x="-27.270832"
260 y="-28" />
261 </g>
262 <g
263 id="g2452"
264 transform="matrix(0.8161651,0,0,-1.6496137,77.748214,121.52667)">
265 <path
266 d="M 32.186126,52.104166 C 32.931029,52.568927 46.362619,43.287677 47.107522,42.822916 C 47.852425,42.358155 62,34.471188 62,33.541666 C 62,32.612144 47.852425,24.693927 47.107522,24.229166 C 46.362619,23.764405 32.931028,14.483154 32.186126,14.947916 C 31.736229,15.228616 31.839046,20.824428 31.983704,26.041666 L 5.900179,26.041666 C 5.643855,26.041666 5.4375,26.264666 5.4375,26.541666 L 5.4375,40.541666 C 5.4375,40.818666 5.643855,41.041666 5.900179,41.041666 L 31.983704,41.041666 C 31.839045,46.258903 31.73623,51.823466 32.186126,52.104166 z"
267 id="path2454"
268 style="fill:url(#linearGradient2462);fill-opacity:1;stroke:none;stroke-width:0.375;stroke-miterlimit:4;stroke-opacity:1" />
269 <path
270 d="M 30.019459,52.104166 C 30.764362,52.568927 44.195952,43.287677 44.940855,42.822916 C 45.685758,42.358155 59.833333,34.471188 59.833333,33.541666 C 59.833333,32.612144 45.685758,24.693927 44.940855,24.229166 C 44.195952,23.764405 30.764361,14.483154 30.019459,14.947916 C 29.569562,15.228616 29.672379,20.824428 29.817037,26.041666 L 3.733512,26.041666 C 3.477188,26.041666 3.270833,26.264666 3.270833,26.541666 L 3.270833,40.541666 C 3.270833,40.818666 3.477188,41.041666 3.733512,41.041666 L 29.817037,41.041666 C 29.672378,46.258903 29.569563,51.823466 30.019459,52.104166 z"
271 id="path2456"
272 style="fill:url(#linearGradient2464);fill-opacity:1;stroke:none;stroke-width:0.375;stroke-miterlimit:4;stroke-opacity:1" />
273 <path
274 d="M 56,32.498092 C 56,32.498092 46.143163,28.758884 45.393163,27.459846 C 44.643163,26.160808 31.765602,20.067541 32.131627,18.701516 C 32.497652,17.33549 43.893163,24.86177 43.893163,24.86177 C 43.893163,24.86177 52.611644,28.295956 56,32.498092 z"
275 id="path2458"
276 style="fill:#d0f1fc;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
277 <rect
278 height="1"
279 id="rect2460"
280 rx="0.5"
281 ry="0.5"
282 style="fill:#d0f1fc;fill-opacity:1;stroke:none;stroke-width:0.375;stroke-miterlimit:4;stroke-opacity:1"
283 transform="scale(-1,-1)"
284 width="23"
285 x="-27.270832"
286 y="-28" />
287 </g>
288 </g>
289</svg>
0290
=== added file 'Remote-Control/data/icon.png'
1Binary files Remote-Control/data/icon.png 1970-01-01 00:00:00 +0000 and Remote-Control/data/icon.png 2010-09-16 01:10:06 +0000 differ291Binary files Remote-Control/data/icon.png 1970-01-01 00:00:00 +0000 and Remote-Control/data/icon.png 2010-09-16 01:10:06 +0000 differ
=== added file 'Remote-Control/data/preview.jpg'
2Binary files Remote-Control/data/preview.jpg 1970-01-01 00:00:00 +0000 and Remote-Control/data/preview.jpg 2010-09-16 01:10:06 +0000 differ292Binary files Remote-Control/data/preview.jpg 1970-01-01 00:00:00 +0000 and Remote-Control/data/preview.jpg 2010-09-16 01:10:06 +0000 differ
=== added directory 'Remote-Control/src'
=== added file 'Remote-Control/src/CMakeLists.txt'
--- Remote-Control/src/CMakeLists.txt 1970-01-01 00:00:00 +0000
+++ Remote-Control/src/CMakeLists.txt 2010-09-16 01:10:06 +0000
@@ -0,0 +1,40 @@
1
2########### sources ###############
3
4SET(MODULE_SRCS
5 applet-struct.h
6 applet-init.c applet-init.h
7 applet-config.c applet-config.h
8 applet-session.c applet-session.h
9 applet-icon-finder.c applet-icon-finder.h
10 applet-notifications.c applet-notifications.h
11)
12
13add_library(${PACKAGE_REMOTE_CONTROL} SHARED ${MODULE_SRCS})
14
15########### compil ###############
16add_definitions (-DMY_APPLET_SHARE_DATA_DIR="${remote_controldatadir}")
17add_definitions (-DMY_APPLET_PREVIEW_FILE="preview.jpg")
18add_definitions (-DMY_APPLET_CONF_FILE="Remote-Control.conf")
19add_definitions (-DMY_APPLET_USER_DATA_DIR="Remote-Control")
20add_definitions (-DMY_APPLET_VERSION="${VERSION_REMOTE_CONTROL}")
21add_definitions (-DMY_APPLET_GETTEXT_DOMAIN="${GETTEXT_REMOTE_CONTROL}")
22add_definitions (-DMY_APPLET_DOCK_VERSION="${dock_version}")
23add_definitions (-DMY_APPLET_ICON_FILE="icon.png")
24### uncomment the following line to allow multi-instance applet.
25#add_definitions (-DCD_APPLET_MULTI_INSTANCE="1")
26### uncomment the following line to allow extended OpenGL drawing.
27#add_definitions (-DGL_GLEXT_PROTOTYPES="1")
28
29include_directories (
30 ${PACKAGE_INCLUDE_DIRS})
31
32link_directories (
33 ${PACKAGE_LIBRARY_DIRS})
34
35target_link_libraries (${PACKAGE_REMOTE_CONTROL}
36 ${PACKAGE_LIBRARIES})
37
38########### install files ###############
39
40install(TARGETS ${PACKAGE_REMOTE_CONTROL} DESTINATION ${pluginsdir})
041
=== added file 'Remote-Control/src/applet-config.c'
--- Remote-Control/src/applet-config.c 1970-01-01 00:00:00 +0000
+++ Remote-Control/src/applet-config.c 2010-09-16 01:10:06 +0000
@@ -0,0 +1,51 @@
1/**
2* This file is a part of the Cairo-Dock project
3*
4* Copyright : (C) see the 'copyright' file.
5* E-mail : see the 'copyright' file.
6*
7* This program is free software; you can redistribute it and/or
8* modify it under the terms of the GNU General Public License
9* as published by the Free Software Foundation; either version 3
10* of the License, or (at your option) any later version.
11*
12* This program is distributed in the hope that it will be useful,
13* but WITHOUT ANY WARRANTY; without even the implied warranty of
14* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15* GNU General Public License for more details.
16* You should have received a copy of the GNU General Public License
17* along with this program. If not, see <http://www.gnu.org/licenses/>.
18*/
19
20#include <string.h>
21#include <cairo-dock.h>
22
23#include "applet-struct.h"
24#include "applet-notifications.h"
25#include "applet-config.h"
26
27
28//\_________________ Here you have to get all your parameters from the conf file. Use the macros CD_CONFIG_GET_BOOLEAN, CD_CONFIG_GET_INTEGER, CD_CONFIG_GET_STRING, etc. myConfig has been reseted to 0 at this point. This function is called at the beginning of init and reload.
29CD_APPLET_GET_CONFIG_BEGIN
30 myConfig.cShortkeyNav = CD_CONFIG_GET_STRING ("Configuration", "shortkey");
31 myConfig.iCloseDuration = CD_CONFIG_GET_INTEGER ("Configuration", "stop duration");
32 myConfig.cIconAnimation = CD_CONFIG_GET_STRING ("Configuration", "animation");
33
34CD_APPLET_GET_CONFIG_END
35
36
37//\_________________ Here you have to free all ressources allocated for myConfig. This one will be reseted to 0 at the end of this function. This function is called right before you get the applet's config, and when your applet is stopped, in the end.
38CD_APPLET_RESET_CONFIG_BEGIN
39 if (myConfig.cShortkeyNav)
40 {
41 cd_keybinder_unbind (myConfig.cShortkeyNav, (CDBindkeyHandler) cd_do_on_shortkey_nav);
42 g_free (myConfig.cShortkeyNav);
43 }
44
45CD_APPLET_RESET_CONFIG_END
46
47
48//\_________________ Here you have to free all ressources allocated for myData. This one will be reseted to 0 at the end of this function. This function is called when your applet is stopped, in the very end.
49CD_APPLET_RESET_DATA_BEGIN
50
51CD_APPLET_RESET_DATA_END
052
=== added file 'Remote-Control/src/applet-config.h'
--- Remote-Control/src/applet-config.h 1970-01-01 00:00:00 +0000
+++ Remote-Control/src/applet-config.h 2010-09-16 01:10:06 +0000
@@ -0,0 +1,30 @@
1/**
2* This file is a part of the Cairo-Dock project
3*
4* Copyright : (C) see the 'copyright' file.
5* E-mail : see the 'copyright' file.
6*
7* This program is free software; you can redistribute it and/or
8* modify it under the terms of the GNU General Public License
9* as published by the Free Software Foundation; either version 3
10* of the License, or (at your option) any later version.
11*
12* This program is distributed in the hope that it will be useful,
13* but WITHOUT ANY WARRANTY; without even the implied warranty of
14* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15* GNU General Public License for more details.
16* You should have received a copy of the GNU General Public License
17* along with this program. If not, see <http://www.gnu.org/licenses/>.
18*/
19
20
21#ifndef __APPLET_CONFIG__
22#define __APPLET_CONFIG__
23
24#include <cairo-dock.h>
25
26
27CD_APPLET_CONFIG_H
28
29
30#endif
031
=== added file 'Remote-Control/src/applet-icon-finder.c'
--- Remote-Control/src/applet-icon-finder.c 1970-01-01 00:00:00 +0000
+++ Remote-Control/src/applet-icon-finder.c 2010-09-16 01:10:06 +0000
@@ -0,0 +1,257 @@
1/**
2* This file is a part of the Cairo-Dock project
3*
4* Copyright : (C) see the 'copyright' file.
5* E-mail : see the 'copyright' file.
6*
7* This program is free software; you can redistribute it and/or
8* modify it under the terms of the GNU General Public License
9* as published by the Free Software Foundation; either version 3
10* of the License, or (at your option) any later version.
11*
12* This program is distributed in the hope that it will be useful,
13* but WITHOUT ANY WARRANTY; without even the implied warranty of
14* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15* GNU General Public License for more details.
16* You should have received a copy of the GNU General Public License
17* along with this program. If not, see <http://www.gnu.org/licenses/>.
18*/
19
20#include <stdlib.h>
21#include <string.h>
22
23#include "applet-struct.h"
24#include "applet-session.h"
25#include "applet-notifications.h"
26#include "applet-icon-finder.h"
27
28static inline gboolean _cd_do_icon_match (Icon *pIcon, const gchar *cCommandPrefix, int length)
29{
30 gboolean bMatch = FALSE;
31 if (pIcon->cBaseURI != NULL)
32 {
33 gchar *cFile = g_path_get_basename (pIcon->cCommand);
34 bMatch = (cFile && g_ascii_strncasecmp (cCommandPrefix, cFile, length) == 0);
35 g_free (cFile);
36 }
37 else if (pIcon->cCommand)
38 {
39 bMatch = (g_ascii_strncasecmp (cCommandPrefix, pIcon->cCommand, length) == 0);
40 if (!bMatch)
41 {
42 gchar *str = strchr (pIcon->cCommand, '-'); // on se limite au 1er tiret.
43 if (str && *(str-1) != ' ') // on verifie qu'il n'est pas un tiret d'option
44 {
45 str ++;
46 bMatch = (g_strncasecmp (str, cCommandPrefix, length) == 0);
47 }
48 if (!bMatch && pIcon->cName)
49 bMatch = (g_ascii_strncasecmp (cCommandPrefix, pIcon->cName, length) == 0);
50 }
51 }
52 return bMatch;
53}
54
55static void _find_icon_in_dock_with_command (Icon *pIcon, CairoDock *pDock, gpointer *data)
56{
57 gchar *cCommandPrefix = data[0];
58 int length = GPOINTER_TO_INT (data[1]);
59 Icon *pAfterIcon = data[2];
60 Icon **pFoundIcon = data[3];
61 CairoDock **pFoundDock = data[4];
62 Icon **pFirstIcon = data[5];
63 CairoDock **pFirstParentDock = data[6];
64 if (pDock == g_pMainDock || *pFoundIcon != NULL) // on a deja cherche dans le main dock, ou deja trouve ce qu'on cherchait.
65 return ;
66
67 gboolean bFound = _cd_do_icon_match (pIcon, cCommandPrefix, length);
68 if (bFound)
69 {
70 if (pAfterIcon == NULL)
71 {
72 *pFoundIcon = pIcon;
73 *pFoundDock = pDock;
74 }
75 else
76 {
77 if (*pFirstIcon == NULL) // on garde une trace de la 1ere icone pour boucler dans la liste.
78 {
79 *pFirstIcon = pIcon;
80 *pFirstParentDock = g_pMainDock;
81 }
82 if (pIcon == pAfterIcon)
83 {
84 data[2] = NULL;
85 }
86 }
87 }
88}
89Icon *cd_do_search_icon_by_command (const gchar *cCommandPrefix, Icon *pAfterIcon, CairoDock **pDock)
90{
91 g_return_val_if_fail (cCommandPrefix != NULL, NULL);
92
93 //\_________________ on cherche en premier dans le main dock, car il est deja visible.
94 int length = strlen (cCommandPrefix);
95 Icon *pIcon, *pFirstIcon = NULL;
96 CairoDock *pParentDock, *pFirstParentDock = NULL;
97 GList *ic;
98 for (ic = g_pMainDock->icons; ic != NULL; ic = ic->next)
99 {
100 pIcon = ic->data;
101 if (pIcon->cCommand && g_ascii_strncasecmp (cCommandPrefix, pIcon->cCommand, length) == 0)
102 {
103 if (pAfterIcon == NULL)
104 {
105 *pDock = g_pMainDock;
106 return pIcon;
107 }
108 else
109 {
110 if (pFirstIcon == NULL) // on garde une trace de la 1ere icone pour boucler dans la liste.
111 {
112 pFirstIcon = pIcon;
113 pFirstParentDock = g_pMainDock;
114 }
115 if (pIcon == pAfterIcon)
116 {
117 pAfterIcon = NULL;
118 }
119 }
120 }
121 }
122
123 //\_________________ si on a rien trouve on cherche dans tous les docks.
124 pIcon = NULL;
125 *pDock = NULL;
126 gpointer data[7];
127 data[0] = (gchar *)cCommandPrefix;
128 data[1] = GINT_TO_POINTER (length);
129 data[2] = pAfterIcon;
130 data[3] = &pIcon;
131 data[4] = pDock;
132 data[5] = &pFirstIcon;
133 data[6] = &pFirstParentDock;
134 cairo_dock_foreach_icons_in_docks ((CairoDockForeachIconFunc) _find_icon_in_dock_with_command, data);
135
136 if (pIcon == NULL)
137 {
138 pIcon = pFirstIcon;
139 *pDock = pFirstParentDock;
140 }
141 return pIcon;
142}
143
144
145void cd_do_change_current_icon (Icon *pIcon, CairoDock *pDock)
146{
147 //\_________________ on gere le cachage et le montrage du dock precedent et actuel.
148 if (myData.pCurrentDock != NULL && pDock != myData.pCurrentDock) // on remet au repos le dock precedemment anime.
149 {
150 cairo_dock_emit_leave_signal (CAIRO_CONTAINER (myData.pCurrentDock));
151 cairo_dock_remove_notification_func_on_container (CAIRO_CONTAINER (myData.pCurrentDock), CAIRO_DOCK_RENDER_DOCK, (CairoDockNotificationFunc) cd_do_render, NULL);
152 cairo_dock_remove_notification_func_on_container (CAIRO_CONTAINER (myData.pCurrentDock), CAIRO_DOCK_UPDATE_DOCK, (CairoDockNotificationFunc) cd_do_update_container, NULL);
153 }
154 if (pDock != NULL && pDock != myData.pCurrentDock) // on montre le nouveau dock
155 {
156 if (pDock != NULL)
157 {
158 if (pDock->iRefCount > 0)
159 {
160 CairoDock *pParentDock = NULL;
161 Icon *pPointingIcon = cairo_dock_search_icon_pointing_on_dock (pDock, &pParentDock);
162 if (pPointingIcon != NULL)
163 {
164 cairo_dock_show_subdock (pPointingIcon, pParentDock); // utile pour le montrage des sous-docks au clic.
165 }
166 }
167 else
168 {
169 /// utile de faire ca si on entre dedans ?...
170 if (pDock->bAutoHide)
171 cairo_dock_start_showing (pDock);
172 if (pDock->iVisibility == CAIRO_DOCK_VISI_KEEP_BELOW)
173 cairo_dock_pop_up (pDock);
174 }
175 cairo_dock_emit_enter_signal (CAIRO_CONTAINER (pDock));
176 }
177
178 cairo_dock_register_notification_on_container (CAIRO_CONTAINER (pDock),
179 CAIRO_DOCK_UPDATE_DOCK,
180 (CairoDockNotificationFunc) cd_do_update_container,
181 CAIRO_DOCK_RUN_AFTER, NULL);
182 cairo_dock_register_notification_on_container (CAIRO_CONTAINER (pDock),
183 CAIRO_DOCK_RENDER_DOCK,
184 (CairoDockNotificationFunc) cd_do_render,
185 CAIRO_DOCK_RUN_AFTER, NULL);
186 }
187 if (pDock != NULL)
188 {
189 gtk_window_present (GTK_WINDOW (pDock->container.pWidget));
190 }
191
192 //\_________________ on gere l'allumage et l'eteignage de l'icone precedente et actuelle.
193 if (myData.pCurrentIcon != NULL && pIcon != myData.pCurrentIcon) // on remet au repos l'icone precedemment anime.
194 {
195 myData.bIgnoreIconState = TRUE;
196 cairo_dock_stop_icon_animation (myData.pCurrentIcon);
197 myData.bIgnoreIconState = FALSE;
198 cairo_dock_redraw_icon (myData.pCurrentIcon, CAIRO_CONTAINER (myData.pCurrentDock)); /// utile ?...
199 }
200 if (pIcon != NULL && myData.pCurrentIcon != pIcon) // on anime la nouvelle icone.
201 {
202 int x = pIcon->fXAtRest + pIcon->fWidth/2 + (- pDock->fFlatDockWidth + pDock->iMaxDockWidth)/2;
203 int y = pIcon->fDrawY + pIcon->fHeight/2 * pIcon->fScale;
204 if (1||myData.pCurrentDock != pDock)
205 {
206 cairo_dock_emit_motion_signal (pDock,
207 x,
208 y);
209 }
210 else
211 {
212 myData.iPrevMouseX = myData.iMouseX;
213 myData.iPrevMouseY = myData.iMouseY;
214 myData.iMotionCount = 10;
215 }
216 myData.iMouseX = x;
217 myData.iMouseY = y;
218 cairo_dock_request_icon_animation (pIcon, pDock, myConfig.cIconAnimation, 1e6); // interrompt l'animation de "mouse over".
219 cairo_dock_launch_animation (CAIRO_CONTAINER (pDock));
220 //if (myAccessibility.bShowSubDockOnClick)
221 // cairo_dock_show_subdock (pIcon, pDock, FALSE);
222 }
223
224 myData.pCurrentDock = pDock;
225 myData.pCurrentIcon = pIcon;
226 if (myData.pCurrentDock == NULL)
227 gtk_window_present (GTK_WINDOW (g_pMainDock->container.pWidget));
228}
229
230
231void cd_do_search_current_icon (gboolean bLoopSearch)
232{
233 //\_________________ on cherche un lanceur correspondant.
234 CairoDock *pDock;
235 Icon *pIcon = cd_do_search_icon_by_command (myData.sCurrentText->str, (bLoopSearch ? myData.pCurrentIcon : NULL), &pDock);
236 cd_debug ("found icon : %s\n", pIcon ? pIcon->cName : "none");
237
238 //\_________________ on gere le changement d'icone/dock.
239 cd_do_change_current_icon (pIcon, pDock);
240}
241
242
243gboolean cairo_dock_emit_motion_signal (CairoDock *pDock, int iMouseX, int iMouseY)
244{
245 static gboolean bReturn;
246 static GdkEventMotion motion;
247 motion.state = 0;
248 motion.x = iMouseX;
249 motion.y = iMouseY;
250 motion.x_root = pDock->container.iWindowPositionX + pDock->container.iMouseX;
251 motion.y_root = pDock->container.iWindowPositionY + pDock->container.iMouseY;
252 motion.time = 0;
253 motion.window = pDock->container.pWidget->window;
254 motion.device = gdk_device_get_core_pointer ();
255 g_signal_emit_by_name (pDock->container.pWidget, "motion-notify-event", &motion, &bReturn);
256 return FALSE;
257}
0258
=== added file 'Remote-Control/src/applet-icon-finder.h'
--- Remote-Control/src/applet-icon-finder.h 1970-01-01 00:00:00 +0000
+++ Remote-Control/src/applet-icon-finder.h 2010-09-16 01:10:06 +0000
@@ -0,0 +1,40 @@
1/**
2* This file is a part of the Cairo-Dock project
3*
4* Copyright : (C) see the 'copyright' file.
5* E-mail : see the 'copyright' file.
6*
7* This program is free software; you can redistribute it and/or
8* modify it under the terms of the GNU General Public License
9* as published by the Free Software Foundation; either version 3
10* of the License, or (at your option) any later version.
11*
12* This program is distributed in the hope that it will be useful,
13* but WITHOUT ANY WARRANTY; without even the implied warranty of
14* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15* GNU General Public License for more details.
16* You should have received a copy of the GNU General Public License
17* along with this program. If not, see <http://www.gnu.org/licenses/>.
18*/
19
20
21#ifndef __APPLET_ICON_FINDER__
22#define __APPLET_ICON_FINDER__
23
24#include <cairo-dock.h>
25#include "applet-struct.h"
26
27
28Icon *cd_do_search_icon_by_command (const gchar *cCommandPrefix, Icon *pAfterIcon, CairoDock **pDock);
29
30
31void cd_do_change_current_icon (Icon *pIcon, CairoDock *pDock);
32
33
34void cd_do_search_current_icon (gboolean bLoopSearch);
35
36
37gboolean cairo_dock_emit_motion_signal (CairoDock *pDock, int iMouseX, int iMouseY);
38
39
40#endif
041
=== added file 'Remote-Control/src/applet-init.c'
--- Remote-Control/src/applet-init.c 1970-01-01 00:00:00 +0000
+++ Remote-Control/src/applet-init.c 2010-09-16 01:10:06 +0000
@@ -0,0 +1,66 @@
1/**
2* This file is a part of the Cairo-Dock project
3*
4* Copyright : (C) see the 'copyright' file.
5* E-mail : see the 'copyright' file.
6*
7* This program is free software; you can redistribute it and/or
8* modify it under the terms of the GNU General Public License
9* as published by the Free Software Foundation; either version 3
10* of the License, or (at your option) any later version.
11*
12* This program is distributed in the hope that it will be useful,
13* but WITHOUT ANY WARRANTY; without even the implied warranty of
14* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15* GNU General Public License for more details.
16* You should have received a copy of the GNU General Public License
17* along with this program. If not, see <http://www.gnu.org/licenses/>.
18*/
19
20#include "stdlib.h"
21
22#include "applet-struct.h"
23#include "applet-config.h"
24#include "applet-notifications.h"
25#include "applet-session.h"
26#include "applet-init.h"
27
28
29CD_APPLET_DEFINE_BEGIN (("Remote-Control"),
30 2, 2, 0,
31 CAIRO_DOCK_CATEGORY_APPLET_FUN,
32 ("This plug-in lets you control your dock from the keyboard,\n"
33 " or even a remote controller.\n"
34 "Press the shortcut (by default CTRL + F9),\n"
35 " then use the arrows to navigate into the docks and sub-docks,\n"
36 " or type the name of a launcher and press Tab to automatically jump to the next suitable launcher\n"
37 "Press Enter to click on the icon, Shift+Enter for Shift+click, Alt+Enter for middle click, and Ctrl+Enter for left click\n"
38 "Escape or the same shortkey will cancel."),
39 "Fabounet (Fabrice Rey)")
40 CD_APPLET_DEFINE_COMMON_APPLET_INTERFACE
41 CD_APPLET_SET_CONTAINER_TYPE (CAIRO_DOCK_MODULE_IS_PLUGIN);
42CD_APPLET_DEFINE_END
43
44
45//\___________ Here is where you initiate your applet. myConfig is already set at this point, and also myIcon, myContainer, myDock, myDesklet (and myDrawContext if you're in dock mode). The macro CD_APPLET_MY_CONF_FILE and CD_APPLET_MY_KEY_FILE can give you access to the applet's conf-file and its corresponding key-file (also available during reload). If you're in desklet mode, myDrawContext is still NULL, and myIcon's buffers has not been filled, because you may not need them then (idem when reloading).
46CD_APPLET_INIT_BEGIN
47 cd_keybinder_bind (myConfig.cShortkeyNav, (CDBindkeyHandler) cd_do_on_shortkey_nav, myApplet);
48
49CD_APPLET_INIT_END
50
51
52//\___________ Here is where you stop your applet. myConfig and myData are still valid, but will be reseted to 0 at the end of the function. In the end, your applet will go back to its original state, as if it had never been activated.
53CD_APPLET_STOP_BEGIN
54 cd_do_exit_session ();
55
56CD_APPLET_STOP_END
57
58
59//\___________ The reload occurs in 2 occasions : when the user changes the applet's config, and when the user reload the cairo-dock's config or modify the desklet's size. The macro CD_APPLET_MY_CONFIG_CHANGED can tell you this. myConfig has already been reloaded at this point if you're in the first case, myData is untouched. You also have the macro CD_APPLET_MY_CONTAINER_TYPE_CHANGED that can tell you if you switched from dock/desklet to desklet/dock mode.
60CD_APPLET_RELOAD_BEGIN
61 if (CD_APPLET_MY_CONFIG_CHANGED)
62 {
63 cd_keybinder_bind (myConfig.cShortkeyNav, (CDBindkeyHandler) cd_do_on_shortkey_nav, myApplet); // shortkey were unbinded during reset_config.
64
65 }
66CD_APPLET_RELOAD_END
067
=== added file 'Remote-Control/src/applet-init.h'
--- Remote-Control/src/applet-init.h 1970-01-01 00:00:00 +0000
+++ Remote-Control/src/applet-init.h 2010-09-16 01:10:06 +0000
@@ -0,0 +1,31 @@
1/**
2* This file is a part of the Cairo-Dock project
3*
4* Copyright : (C) see the 'copyright' file.
5* E-mail : see the 'copyright' file.
6*
7* This program is free software; you can redistribute it and/or
8* modify it under the terms of the GNU General Public License
9* as published by the Free Software Foundation; either version 3
10* of the License, or (at your option) any later version.
11*
12* This program is distributed in the hope that it will be useful,
13* but WITHOUT ANY WARRANTY; without even the implied warranty of
14* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15* GNU General Public License for more details.
16* You should have received a copy of the GNU General Public License
17* along with this program. If not, see <http://www.gnu.org/licenses/>.
18*/
19
20
21#ifndef __APPLET_INIT__
22#define __APPLET_INIT__
23
24
25#include <cairo-dock.h>
26
27
28CD_APPLET_H
29
30
31#endif
032
=== added file 'Remote-Control/src/applet-notifications.c'
--- Remote-Control/src/applet-notifications.c 1970-01-01 00:00:00 +0000
+++ Remote-Control/src/applet-notifications.c 2010-09-16 01:10:06 +0000
@@ -0,0 +1,480 @@
1/**
2* This file is a part of the Cairo-Dock project
3*
4* Copyright : (C) see the 'copyright' file.
5* E-mail : see the 'copyright' file.
6*
7* This program is free software; you can redistribute it and/or
8* modify it under the terms of the GNU General Public License
9* as published by the Free Software Foundation; either version 3
10* of the License, or (at your option) any later version.
11*
12* This program is distributed in the hope that it will be useful,
13* but WITHOUT ANY WARRANTY; without even the implied warranty of
14* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15* GNU General Public License for more details.
16* You should have received a copy of the GNU General Public License
17* along with this program. If not, see <http://www.gnu.org/licenses/>.
18*/
19
20#include <stdlib.h>
21#include <string.h>
22#include <math.h>
23#include <gdk/gdkkeysyms.h>
24
25#include "applet-struct.h"
26#include "applet-icon-finder.h"
27#include "applet-session.h"
28#include "applet-notifications.h"
29
30#define _alpha_prompt(k,n) cos (G_PI/2*fabs ((double) ((k % (2*n)) - n) / n));
31
32const int s_iNbPromptAnimationSteps = 40;
33
34
35static inline int _orient_arrow (CairoContainer *pContainer, int iKeyVal)
36{
37 switch (iKeyVal)
38 {
39 case GDK_Up :
40 if (pContainer->bIsHorizontal)
41 {
42 if (!pContainer->bDirectionUp)
43 iKeyVal = GDK_Down;
44 }
45 else
46 {
47 iKeyVal = GDK_Left;
48 }
49 break;
50
51 case GDK_Down :
52 if (pContainer->bIsHorizontal)
53 {
54 if (!pContainer->bDirectionUp)
55 iKeyVal = GDK_Up;
56 }
57 else
58 {
59 iKeyVal = GDK_Right;
60 }
61 break;
62
63 case GDK_Left :
64 if (!pContainer->bIsHorizontal)
65 {
66 if (pContainer->bDirectionUp)
67 iKeyVal = GDK_Up;
68 else
69 iKeyVal = GDK_Down;
70 }
71 break;
72
73 case GDK_Right :
74 if (!pContainer->bIsHorizontal)
75 {
76 if (pContainer->bDirectionUp)
77 iKeyVal = GDK_Down;
78 else
79 iKeyVal = GDK_Up;
80 }
81 break;
82 default:
83 break;
84
85 }
86 return iKeyVal;
87}
88static void _find_next_dock (CairoDock *pDock, gpointer *data)
89{
90 if (data[3] == NULL) // first root dock in the list.
91 data[3] = pDock;
92 if (data[0] == pDock) // this dock is the current one, we'll take the next one.
93 data[2] = GINT_TO_POINTER (TRUE);
94 else if (data[2]) // we take this one.
95 data[1] = pDock;
96}
97gboolean cd_do_key_pressed (gpointer pUserData, CairoContainer *pContainer, guint iKeyVal, guint iModifierType, const gchar *string)
98{
99 g_return_val_if_fail (cd_do_session_is_running (), CAIRO_DOCK_LET_PASS_NOTIFICATION);
100
101 const gchar *cKeyName = gdk_keyval_name (iKeyVal);
102 guint32 iUnicodeChar = gdk_keyval_to_unicode (iKeyVal);
103 cd_debug ("+ cKeyName : %s (%c, %s)\n", cKeyName, iUnicodeChar, string);
104
105 if (iKeyVal == GDK_Escape) // on clot la session.
106 {
107 cd_do_close_session ();
108 }
109 else if (iKeyVal == GDK_space && myData.sCurrentText->len == 0) // pas d'espace en debut de chaine.
110 {
111 // on rejette.
112 }
113 else if (iKeyVal >= GDK_Shift_L && iKeyVal <= GDK_Hyper_R) // on n'ecrit pas les modificateurs.
114 {
115 // on rejette.
116 }
117 else if (iKeyVal == GDK_Menu) // emulation du clic droit.
118 {
119 if (myData.pCurrentIcon != NULL && myData.pCurrentDock != NULL)
120 {
121 myData.bIgnoreIconState = TRUE;
122 cairo_dock_stop_icon_animation (myData.pCurrentIcon); // car on va perdre le focus.
123 myData.bIgnoreIconState = FALSE;
124
125 GtkWidget *menu = cairo_dock_build_menu (myData.pCurrentIcon, CAIRO_CONTAINER (myData.pCurrentDock));
126 cairo_dock_popup_menu_on_icon (menu, myData.pCurrentIcon, CAIRO_CONTAINER (myData.pCurrentDock));
127 }
128 }
129 else if (iKeyVal == GDK_BackSpace) // on efface la derniere lettre.
130 {
131 if (myData.sCurrentText->len > 0)
132 {
133 cd_debug ("on efface la derniere lettre de %s (%d)\n", myData.sCurrentText->str, myData.sCurrentText->len);
134
135 g_string_truncate (myData.sCurrentText, myData.sCurrentText->len-1);
136
137 // on relance la recherche.
138 if (myData.pCurrentIcon == NULL) // sinon l'icone actuelle convient toujours.
139 cd_do_search_current_icon (FALSE);
140 }
141 }
142 else if (iKeyVal == GDK_Tab) // jump to next icon.
143 {
144 if (myData.sCurrentText->len > 0)
145 {
146 gboolean bPrevious = iModifierType & GDK_SHIFT_MASK;
147 // on cherche l'icone suivante.
148 cd_do_search_current_icon (TRUE); // pCurrentIcon peut etre NULL si elle s'est faite detruire pendant la recherche, auquel cas on cherchera juste normalement.
149 }
150 }
151 else if (iKeyVal == GDK_Return)
152 {
153 if (myData.pCurrentIcon != NULL && myData.pCurrentDock != NULL)
154 {
155 cd_debug ("on clique sur l'icone '%s' [%d, %d]\n", myData.pCurrentIcon->cName, iModifierType, GDK_SHIFT_MASK);
156
157 myData.bIgnoreIconState = TRUE;
158 if (iModifierType & GDK_MOD1_MASK) // ALT
159 {
160 myData.bIgnoreIconState = TRUE;
161 cairo_dock_stop_icon_animation (myData.pCurrentIcon); // car aucune animation ne va la remplacer.
162 myData.bIgnoreIconState = FALSE;
163 cairo_dock_notify (CAIRO_DOCK_MIDDLE_CLICK_ICON, myData.pCurrentIcon, myData.pCurrentDock);
164 }
165 else if (iModifierType & GDK_CONTROL_MASK) // CTRL
166 {
167 myData.bIgnoreIconState = TRUE;
168 cairo_dock_stop_icon_animation (myData.pCurrentIcon); // car on va perdre le focus.
169 myData.bIgnoreIconState = FALSE;
170
171 myData.pCurrentDock->bMenuVisible = TRUE;
172 GtkWidget *menu = cairo_dock_build_menu (myData.pCurrentIcon, CAIRO_CONTAINER (myData.pCurrentDock));
173 cairo_dock_popup_menu_on_icon (menu, myData.pCurrentIcon, CAIRO_CONTAINER (myData.pCurrentDock));
174 }
175 else if (myData.pCurrentIcon != NULL)
176 {
177 cairo_dock_notify (CAIRO_DOCK_CLICK_ICON, myData.pCurrentIcon, myData.pCurrentDock, iModifierType);
178 if (CAIRO_DOCK_IS_APPLI (myData.pCurrentIcon))
179 myData.iPreviouslyActiveWindow = 0;
180 }
181 if (myData.pCurrentIcon != NULL)
182 cairo_dock_start_icon_animation (myData.pCurrentIcon, myData.pCurrentDock);
183 myData.bIgnoreIconState = FALSE;
184 myData.pCurrentIcon = NULL; // sinon on va interrompre l'animation en fermant la session.
185 }
186 cd_do_close_session ();
187 }
188 else if (iKeyVal == GDK_Left || iKeyVal == GDK_Right || iKeyVal == GDK_Up || iKeyVal == GDK_Down)
189 {
190 iKeyVal = _orient_arrow (pContainer, iKeyVal);
191 if (iKeyVal == GDK_Up)
192 {
193 if (myData.pCurrentIcon != NULL && myData.pCurrentIcon->pSubDock != NULL)
194 {
195 cd_debug ("on monte dans le sous-dock %s\n", myData.pCurrentIcon->cName);
196 Icon *pIcon = cairo_dock_get_first_icon (myData.pCurrentIcon->pSubDock->icons);
197 cd_do_change_current_icon (pIcon, myData.pCurrentIcon->pSubDock);
198 }
199 }
200 else if (iKeyVal == GDK_Down)
201 {
202 if (myData.pCurrentDock != NULL && myData.pCurrentDock->iRefCount > 0)
203 {
204 CairoDock *pParentDock = NULL;
205 Icon *pPointingIcon = cairo_dock_search_icon_pointing_on_dock (myData.pCurrentDock, &pParentDock);
206 if (pPointingIcon != NULL)
207 {
208 cd_debug ("on redescend dans le dock parent via %s\n", pPointingIcon->cName);
209 cd_do_change_current_icon (pPointingIcon, pParentDock);
210 }
211 }
212 }
213 else if (iKeyVal == GDK_Left)
214 {
215 if (myData.pCurrentDock == NULL) // on initialise le deplacement.
216 {
217 myData.pCurrentDock = g_pMainDock;
218 int n = g_list_length (g_pMainDock->icons);
219 if (n > 0)
220 {
221 myData.pCurrentIcon = g_list_nth_data (g_pMainDock->icons, (n-1) / 2);
222 if (CAIRO_DOCK_IS_SEPARATOR (myData.pCurrentIcon) && n > 1)
223 myData.pCurrentIcon = g_list_nth_data (g_pMainDock->icons, (n+1) / 2);
224 }
225 }
226 if (myData.pCurrentDock->icons != NULL)
227 {
228 Icon *pPrevIcon = cairo_dock_get_previous_icon (myData.pCurrentDock->icons, myData.pCurrentIcon);
229 if (CAIRO_DOCK_IS_SEPARATOR (pPrevIcon))
230 pPrevIcon = cairo_dock_get_previous_icon (myData.pCurrentDock->icons, pPrevIcon);
231 if (pPrevIcon == NULL) // pas trouve ou bien 1ere icone.
232 {
233 pPrevIcon = cairo_dock_get_last_icon (myData.pCurrentDock->icons);
234 }
235
236 cd_debug ("on se deplace a gauche sur %s\n", pPrevIcon ? pPrevIcon->cName : "none");
237 cd_do_change_current_icon (pPrevIcon, myData.pCurrentDock);
238 }
239 }
240 else // Gdk_Right.
241 {
242 if (myData.pCurrentDock == NULL) // on initialise le deplacement.
243 {
244 myData.pCurrentDock = g_pMainDock;
245 int n = g_list_length (g_pMainDock->icons);
246 if (n > 0)
247 {
248 myData.pCurrentIcon = g_list_nth_data (g_pMainDock->icons, (n-1) / 2);
249 if (CAIRO_DOCK_IS_SEPARATOR (myData.pCurrentIcon) && n > 1)
250 myData.pCurrentIcon = g_list_nth_data (g_pMainDock->icons, (n+1) / 2);
251 }
252 }
253 if (myData.pCurrentDock->icons != NULL)
254 {
255 Icon *pNextIcon = cairo_dock_get_next_icon (myData.pCurrentDock->icons, myData.pCurrentIcon);
256 if (CAIRO_DOCK_IS_SEPARATOR (pNextIcon))
257 pNextIcon = cairo_dock_get_next_icon (myData.pCurrentDock->icons, pNextIcon);
258 if (pNextIcon == NULL) // pas trouve ou bien 1ere icone.
259 {
260 pNextIcon = cairo_dock_get_first_icon (myData.pCurrentDock->icons);
261 }
262
263 cd_debug ("on se deplace a gauche sur %s\n", pNextIcon ? pNextIcon->cName : "none");
264 cd_do_change_current_icon (pNextIcon, myData.pCurrentDock);
265 }
266 }
267 }
268 else if (iKeyVal == GDK_Page_Down || iKeyVal == GDK_Page_Up || iKeyVal == GDK_Home || iKeyVal == GDK_End)
269 {
270 if (iModifierType & GDK_CONTROL_MASK) // changement de dock principal
271 {
272 gpointer data[4] = {myData.pCurrentDock, NULL, GINT_TO_POINTER (FALSE), NULL};
273 cairo_dock_foreach_root_docks ((GFunc) _find_next_dock, data);
274 CairoDock *pNextDock = data[1];
275 if (pNextDock == NULL)
276 pNextDock = data[3];
277 if (pNextDock != NULL)
278 {
279 Icon *pNextIcon = NULL;
280 int n = g_list_length (pNextDock->icons);
281 if (n > 0)
282 {
283 pNextIcon = g_list_nth_data (pNextDock->icons, (n-1) / 2);
284 if (CAIRO_DOCK_IS_SEPARATOR (pNextIcon) && n > 1)
285 pNextIcon = g_list_nth_data (pNextDock->icons, (n+1) / 2);
286 }
287 cd_do_change_current_icon (pNextIcon, pNextDock);
288 }
289 }
290
291 Icon *pIcon = (iKeyVal == GDK_Page_Up || iKeyVal == GDK_Home ? cairo_dock_get_first_icon (myData.pCurrentDock->icons) : cairo_dock_get_last_icon (myData.pCurrentDock->icons));
292 cd_debug ("on se deplace a l'extremite sur %s\n", pIcon ? pIcon->cName : "none");
293 cd_do_change_current_icon (pIcon, myData.pCurrentDock);
294 }
295 else if (string) /// utiliser l'unichar ...
296 {
297 cd_debug ("string:'%s'\n", string);
298 g_string_append_c (myData.sCurrentText, *string);
299
300 cd_do_search_current_icon (FALSE);
301 }
302
303 return CAIRO_DOCK_INTERCEPT_NOTIFICATION;
304}
305
306
307void cd_do_on_shortkey_nav (const char *keystring, gpointer data)
308{
309 if (! cd_do_session_is_running ())
310 {
311 cd_do_open_session ();
312 }
313 else
314 {
315 cd_do_close_session ();
316 }
317}
318
319
320gboolean cd_do_update_container (gpointer pUserData, CairoContainer *pContainer, gboolean *bContinueAnimation)
321{
322 g_return_val_if_fail (!cd_do_session_is_off (), CAIRO_DOCK_LET_PASS_NOTIFICATION);
323
324 if (myData.iMotionCount != 0)
325 {
326 myData.iMotionCount --;
327 double f = (double) myData.iMotionCount / 10;
328 cairo_dock_emit_motion_signal (CAIRO_DOCK (pContainer),
329 f * myData.iPrevMouseX + (1-f) * myData.iMouseX,
330 f * myData.iPrevMouseY + (1-f) * myData.iMouseY);
331 *bContinueAnimation = TRUE;
332 }
333
334 int iDeltaT = cairo_dock_get_animation_delta_t (pContainer);
335 if (cd_do_session_is_closing ())
336 {
337 //\___________________ animation de fermeture de la session (disparition des lettres ou du prompt).
338 myData.iCloseTime -= iDeltaT;
339 if (myData.iCloseTime <= 0)
340 cd_do_exit_session ();
341 else
342 *bContinueAnimation = TRUE;
343 cairo_dock_redraw_container (pContainer);
344 }
345 else if (cd_do_session_is_running ())
346 {
347 //\___________________ animation du prompt.
348 myData.iPromptAnimationCount ++;
349 *bContinueAnimation = TRUE;
350
351 cairo_dock_redraw_container (pContainer);
352 }
353
354 return CAIRO_DOCK_LET_PASS_NOTIFICATION;
355}
356
357
358gboolean cd_do_check_icon_stopped (gpointer pUserData, Icon *pIcon)
359{
360 if (pIcon == myData.pCurrentIcon && ! myData.bIgnoreIconState)
361 {
362 cd_debug ("notre icone vient de se faire stopper\n");
363 myData.pCurrentIcon = NULL;
364 myData.pCurrentDock = NULL;
365
366 // eventuellement emuler un TAB pour trouver la suivante ...
367 }
368
369 return CAIRO_DOCK_LET_PASS_NOTIFICATION;
370}
371
372
373static void _check_dock_is_active (gchar *cDockName, CairoDock *pDock, Window *data)
374{
375 Window xActiveWindow = data[0];
376 if (GDK_WINDOW_XID (pDock->container.pWidget->window) == xActiveWindow)
377 data[1] = 1;
378}
379gboolean cd_do_check_active_dock (gpointer pUserData, Window *XActiveWindow)
380{
381 if (myData.sCurrentText == NULL || XActiveWindow == NULL)
382 return CAIRO_DOCK_LET_PASS_NOTIFICATION;
383 Window data[2] = {*XActiveWindow, 0};
384 cairo_dock_foreach_docks ((GHFunc) _check_dock_is_active, data);
385
386 if (data[1] == 0)
387 gtk_window_present (GTK_WINDOW (g_pMainDock->container.pWidget));
388 return CAIRO_DOCK_LET_PASS_NOTIFICATION;
389}
390
391
392static void _render_cairo (CairoContainer *pContainer, cairo_t *pCairoContext)
393{
394 double fAlpha;
395 if (myData.iCloseTime != 0) // animation de fin
396 fAlpha = (double) myData.iCloseTime / myConfig.iCloseDuration;
397 else
398 fAlpha = 1.;
399
400 if (myData.pArrowImage->pSurface != NULL)
401 {
402 double fFrameWidth = myData.pArrowImage->iWidth;
403 double fFrameHeight = myData.pArrowImage->iHeight;
404
405 double fDockOffsetX, fDockOffsetY; // Offset du coin haut gauche du prompt.
406 if (pContainer->bIsHorizontal)
407 {
408 fDockOffsetX = (pContainer->iWidth - fFrameWidth) / 2;
409 fDockOffsetY = (pContainer->iHeight - fFrameHeight) / 2;
410 }
411 else
412 {
413 fDockOffsetY = (pContainer->iWidth - fFrameWidth) / 2;
414 fDockOffsetX = (pContainer->iHeight - fFrameHeight) / 2;
415 }
416
417 fAlpha *= _alpha_prompt (myData.iPromptAnimationCount, s_iNbPromptAnimationSteps);
418
419 if (fAlpha != 0)
420 {
421 cairo_translate (pCairoContext, fDockOffsetX, fDockOffsetY);
422 cairo_dock_draw_surface (pCairoContext, myData.pArrowImage->pSurface, fFrameWidth, fFrameHeight, pContainer->bDirectionUp, pContainer->bIsHorizontal, fAlpha);
423 }
424 }
425}
426
427static void _render_opengl (CairoContainer *pContainer)
428{
429 double fAlpha;
430 if (myData.iCloseTime != 0) // animation de fin
431 fAlpha = (double) myData.iCloseTime / myConfig.iCloseDuration;
432 else
433 fAlpha = 1.;
434
435 if (myData.pArrowImage->iTexture != 0)
436 {
437 double fFrameWidth = myData.pArrowImage->iWidth;
438 double fFrameHeight = myData.pArrowImage->iHeight;
439
440 double fDockOffsetX, fDockOffsetY; // Offset du coin haut gauche du prompt.
441 fDockOffsetX = (pContainer->iWidth - fFrameWidth) / 2;
442 fDockOffsetY = (pContainer->iHeight - fFrameHeight) / 2;
443
444 fAlpha *= _alpha_prompt (myData.iPromptAnimationCount, s_iNbPromptAnimationSteps);
445
446 if (fAlpha != 0)
447 {
448 glPushMatrix ();
449
450 cairo_dock_set_container_orientation_opengl (pContainer);
451
452 glTranslatef (pContainer->iWidth/2, pContainer->iHeight/2, 0.);
453
454 _cairo_dock_enable_texture ();
455 _cairo_dock_set_blend_alpha ();
456
457 _cairo_dock_apply_texture_at_size_with_alpha (myData.pArrowImage->iTexture, fFrameWidth, fFrameHeight, fAlpha);
458
459 _cairo_dock_disable_texture ();
460
461 glPopMatrix();
462 }
463 }
464}
465
466gboolean cd_do_render (gpointer pUserData, CairoContainer *pContainer, cairo_t *pCairoContext)
467{
468 g_return_val_if_fail (!cd_do_session_is_off (), CAIRO_DOCK_LET_PASS_NOTIFICATION);
469
470 if (pCairoContext != NULL)
471 {
472 _render_cairo (pContainer, pCairoContext);
473 }
474 else
475 {
476 _render_opengl (pContainer);
477 }
478
479 return CAIRO_DOCK_LET_PASS_NOTIFICATION;
480}
0481
=== added file 'Remote-Control/src/applet-notifications.h'
--- Remote-Control/src/applet-notifications.h 1970-01-01 00:00:00 +0000
+++ Remote-Control/src/applet-notifications.h 2010-09-16 01:10:06 +0000
@@ -0,0 +1,45 @@
1/**
2* This file is a part of the Cairo-Dock project
3*
4* Copyright : (C) see the 'copyright' file.
5* E-mail : see the 'copyright' file.
6*
7* This program is free software; you can redistribute it and/or
8* modify it under the terms of the GNU General Public License
9* as published by the Free Software Foundation; either version 3
10* of the License, or (at your option) any later version.
11*
12* This program is distributed in the hope that it will be useful,
13* but WITHOUT ANY WARRANTY; without even the implied warranty of
14* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15* GNU General Public License for more details.
16* You should have received a copy of the GNU General Public License
17* along with this program. If not, see <http://www.gnu.org/licenses/>.
18*/
19
20
21#ifndef __APPLET_NOTIFICATIONS__
22#define __APPLET_NOTIFICATIONS__
23
24#include <cairo-dock.h>
25
26
27gboolean cd_do_key_pressed (gpointer pUserData, CairoContainer *pContainer, guint iKeyVal, guint iModifierType, const gchar *string);
28
29
30void cd_do_on_shortkey_nav (const char *keystring, gpointer data);
31
32
33gboolean cd_do_update_container (gpointer pUserData, CairoContainer *pContainer, gboolean *bContinueAnimation);
34
35
36gboolean cd_do_check_icon_stopped (gpointer pUserData, Icon *pIcon);
37
38
39gboolean cd_do_check_active_dock (gpointer pUserData, Window *XActiveWindow);
40
41
42gboolean cd_do_render (gpointer pUserData, CairoContainer *pContainer, cairo_t *pCairoContext);
43
44
45#endif
046
=== added file 'Remote-Control/src/applet-session.c'
--- Remote-Control/src/applet-session.c 1970-01-01 00:00:00 +0000
+++ Remote-Control/src/applet-session.c 2010-09-16 01:10:06 +0000
@@ -0,0 +1,154 @@
1/**
2* This file is a part of the Cairo-Dock project
3*
4* Copyright : (C) see the 'copyright' file.
5* E-mail : see the 'copyright' file.
6*
7* This program is free software; you can redistribute it and/or
8* modify it under the terms of the GNU General Public License
9* as published by the Free Software Foundation; either version 3
10* of the License, or (at your option) any later version.
11*
12* This program is distributed in the hope that it will be useful,
13* but WITHOUT ANY WARRANTY; without even the implied warranty of
14* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15* GNU General Public License for more details.
16* You should have received a copy of the GNU General Public License
17* along with this program. If not, see <http://www.gnu.org/licenses/>.
18*/
19
20#include <stdlib.h>
21#include <string.h>
22
23#include "applet-struct.h"
24#include "applet-notifications.h"
25#include "applet-icon-finder.h"
26#include "applet-session.h"
27
28
29void cd_do_open_session (void)
30{
31 if (cd_do_session_is_running ()) // session already running
32 return;
33
34 // register to draw on dock.
35 /**if (cd_do_session_is_off ())
36 {
37 cairo_dock_register_notification_on_container (CAIRO_CONTAINER (g_pMainDock),
38 CAIRO_DOCK_UPDATE_DOCK,
39 (CairoDockNotificationFunc) cd_do_update_container,
40 CAIRO_DOCK_RUN_AFTER, NULL);
41 cairo_dock_register_notification_on_container (CAIRO_CONTAINER (g_pMainDock),
42 CAIRO_DOCK_RENDER_DOCK,
43 (CairoDockNotificationFunc) cd_do_render,
44 CAIRO_DOCK_RUN_AFTER, NULL);
45 }*/
46
47 // wait for keyboard input.
48 cairo_dock_register_notification (CAIRO_DOCK_KEY_PRESSED, (CairoDockNotificationFunc) cd_do_key_pressed, CAIRO_DOCK_RUN_AFTER, NULL);
49 cairo_dock_register_notification (CAIRO_DOCK_STOP_ICON, (CairoDockNotificationFunc) cd_do_check_icon_stopped, CAIRO_DOCK_RUN_AFTER, NULL);
50 cairo_dock_register_notification (CAIRO_DOCK_WINDOW_ACTIVATED, (CairoDockNotificationFunc) cd_do_check_active_dock, CAIRO_DOCK_RUN_AFTER, NULL);
51
52 myData.sCurrentText = g_string_sized_new (20);
53 myData.iPromptAnimationCount = 0;
54 if (myData.pArrowImage == NULL)
55 {
56 myData.pArrowImage = cairo_dock_create_image_buffer (MY_APPLET_SHARE_DATA_DIR"/arrows.svg",
57 g_pMainDock->iMaxDockHeight,
58 g_pMainDock->iMaxDockHeight,
59 CAIRO_DOCK_KEEP_RATIO);
60 }
61
62 // set initial position.
63 myData.pCurrentDock = NULL;
64 myData.pCurrentIcon = NULL;
65
66 CairoDock *pDock = g_pMainDock;
67 Icon *pIcon = NULL;
68 int n = g_list_length (g_pMainDock->icons);
69 if (n > 0)
70 {
71 pIcon = g_list_nth_data (pDock->icons, (n-1) / 2);
72 if (CAIRO_DOCK_IS_SEPARATOR (pIcon) && n > 1)
73 pIcon = g_list_nth_data (pDock->icons, (n+1) / 2);
74 }
75 cd_do_change_current_icon (pIcon, pDock);
76
77 // show main dock.
78 myData.bIgnoreIconState = TRUE;
79 cairo_dock_emit_enter_signal (CAIRO_CONTAINER (g_pMainDock));
80 myData.bIgnoreIconState = FALSE;
81
82 // give focus to main dock for inputs.
83 myData.iPreviouslyActiveWindow = cairo_dock_get_active_xwindow ();
84
85 ///gtk_window_present (GTK_WINDOW (g_pMainDock->container.pWidget));
86 gtk_window_present_with_time (GTK_WINDOW (g_pMainDock->container.pWidget), gdk_x11_get_server_time (g_pMainDock->container.pWidget->window)); // pour eviter la prevention du vol de focus.
87 cairo_dock_freeze_docks (TRUE);
88
89 // launch animation.
90 cairo_dock_launch_animation (CAIRO_CONTAINER (g_pMainDock));
91
92 myData.iSessionState = 2;
93}
94
95void cd_do_close_session (void)
96{
97 if (! cd_do_session_is_running ()) // session not running
98 return;
99
100 // no more keyboard input.
101 cairo_dock_remove_notification_func (CAIRO_DOCK_KEY_PRESSED, (CairoDockNotificationFunc) cd_do_key_pressed, NULL);
102 cairo_dock_remove_notification_func (CAIRO_DOCK_STOP_ICON, (CairoDockNotificationFunc) cd_do_check_icon_stopped, NULL);
103 cairo_dock_remove_notification_func (CAIRO_DOCK_WINDOW_ACTIVATED, (CairoDockNotificationFunc) cd_do_check_active_dock, NULL);
104
105 g_string_free (myData.sCurrentText, TRUE);
106 myData.sCurrentText = NULL;
107
108 // give back focus.
109 if (myData.iPreviouslyActiveWindow != 0)
110 {
111 // ne le faire que si on a encore le focus, sinon c'est que l'utilisateur a change lui-meme de fenetre...
112 Window iActiveWindow = cairo_dock_get_active_xwindow ();
113 if (myData.pCurrentDock && iActiveWindow == GDK_WINDOW_XID (myData.pCurrentDock->container.pWidget->window))
114 cairo_dock_show_xwindow (myData.iPreviouslyActiveWindow);
115
116 myData.iPreviouslyActiveWindow = 0;
117 }
118
119 // reset session state.
120 if (myData.pCurrentIcon != NULL)
121 {
122 myData.bIgnoreIconState = TRUE;
123 cairo_dock_stop_icon_animation (myData.pCurrentIcon);
124 myData.bIgnoreIconState = FALSE;
125 myData.pCurrentIcon = NULL;
126 }
127
128 if (myData.pCurrentDock != NULL)
129 {
130 cairo_dock_emit_leave_signal (CAIRO_CONTAINER (myData.pCurrentDock));
131 }
132
133 // launch closing animation.
134 myData.iCloseTime = myConfig.iCloseDuration;
135 cairo_dock_launch_animation (CAIRO_CONTAINER (g_pMainDock));
136 cairo_dock_freeze_docks (FALSE);
137
138 myData.iSessionState = 1;
139}
140
141
142void cd_do_exit_session (void)
143{
144 if (cd_do_session_is_off ()) // session already off
145 return;
146
147 cd_do_close_session ();
148
149 myData.iCloseTime = 0;
150
151 cd_do_change_current_icon (NULL, NULL);
152
153 myData.iSessionState = 0;
154}
0155
=== added file 'Remote-Control/src/applet-session.h'
--- Remote-Control/src/applet-session.h 1970-01-01 00:00:00 +0000
+++ Remote-Control/src/applet-session.h 2010-09-16 01:10:06 +0000
@@ -0,0 +1,38 @@
1/**
2* This file is a part of the Cairo-Dock project
3*
4* Copyright : (C) see the 'copyright' file.
5* E-mail : see the 'copyright' file.
6*
7* This program is free software; you can redistribute it and/or
8* modify it under the terms of the GNU General Public License
9* as published by the Free Software Foundation; either version 3
10* of the License, or (at your option) any later version.
11*
12* This program is distributed in the hope that it will be useful,
13* but WITHOUT ANY WARRANTY; without even the implied warranty of
14* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15* GNU General Public License for more details.
16* You should have received a copy of the GNU General Public License
17* along with this program. If not, see <http://www.gnu.org/licenses/>.
18*/
19
20#ifndef __APPLET_SESSION__
21#define __APPLET_SESSION__
22
23#include <cairo-dock.h>
24#include "applet-struct.h"
25
26
27void cd_do_open_session (void);
28
29void cd_do_close_session (void);
30
31void cd_do_exit_session (void);
32
33#define cd_do_session_is_running(...) (myData.iSessionState == 2)
34#define cd_do_session_is_closing(...) (myData.iSessionState == 1)
35#define cd_do_session_is_off(...) (myData.iSessionState == 0)
36
37
38#endif
039
=== added file 'Remote-Control/src/applet-struct.h'
--- Remote-Control/src/applet-struct.h 1970-01-01 00:00:00 +0000
+++ Remote-Control/src/applet-struct.h 2010-09-16 01:10:06 +0000
@@ -0,0 +1,51 @@
1/**
2* This file is a part of the Cairo-Dock project
3*
4* Copyright : (C) see the 'copyright' file.
5* E-mail : see the 'copyright' file.
6*
7* This program is free software; you can redistribute it and/or
8* modify it under the terms of the GNU General Public License
9* as published by the Free Software Foundation; either version 3
10* of the License, or (at your option) any later version.
11*
12* This program is distributed in the hope that it will be useful,
13* but WITHOUT ANY WARRANTY; without even the implied warranty of
14* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15* GNU General Public License for more details.
16* You should have received a copy of the GNU General Public License
17* along with this program. If not, see <http://www.gnu.org/licenses/>.
18*/
19
20
21#ifndef __CD_APPLET_STRUCT__
22#define __CD_APPLET_STRUCT__
23
24#include <cairo-dock.h>
25
26//\___________ structure containing the applet's configuration parameters.
27struct _AppletConfig {
28 gchar *cShortkeyNav;
29 gchar *cIconAnimation;
30 gint iCloseDuration;
31 } ;
32
33//\___________ structure containing the applet's data, like surfaces, dialogs, results of calculus, etc.
34struct _AppletData {
35 gint iSessionState; // 0:no session, 1: session closing, 2: session running
36 GString *sCurrentText;
37 CairoDockImageBuffer *pArrowImage;
38 gint iPromptAnimationCount;
39 gint iCloseTime;
40 Window iPreviouslyActiveWindow;
41 Icon *pCurrentIcon;
42 CairoDock *pCurrentDock;
43 gboolean bIgnoreIconState;
44
45 int iPrevMouseX, iPrevMouseY;
46 int iMouseX, iMouseY;
47 int iMotionCount;
48 } ;
49
50
51#endif
052
=== modified file 'Scooby-Do/data/CMakeLists.txt'
--- Scooby-Do/data/CMakeLists.txt 2010-08-07 01:43:25 +0000
+++ Scooby-Do/data/CMakeLists.txt 2010-09-16 01:10:06 +0000
@@ -9,7 +9,6 @@
9install (FILES ${CMAKE_CURRENT_BINARY_DIR}/Scooby-Do.conf9install (FILES ${CMAKE_CURRENT_BINARY_DIR}/Scooby-Do.conf
10 preview.jpg10 preview.jpg
11 icon.png11 icon.png
12 arrows.svg
13 active-button.svg12 active-button.svg
14 inactive-button.svg13 inactive-button.svg
15 internet.png14 internet.png
1615
=== modified file 'Scooby-Do/data/Scooby-Do.conf.in'
--- Scooby-Do/data/Scooby-Do.conf.in 2010-08-07 01:43:25 +0000
+++ Scooby-Do/data/Scooby-Do.conf.in 2010-09-16 01:10:06 +0000
@@ -6,9 +6,6 @@
6#k Shortkey to enable/disable the finder mode:6#k Shortkey to enable/disable the finder mode:
7shortkey search = <Control>Return7shortkey search = <Control>Return
88
9#k Shortkey to enable/disable the navigation mode:
10shortkey = <Control>F9
11
12#i[10;200] Maximum number of results :9#i[10;200] Maximum number of results :
13#{Maximum number of mails that will be previewed. Put -1 to show the maximum possible.}10#{Maximum number of mails that will be previewed. Put -1 to show the maximum possible.}
14nb results = 8011nb results = 80
1512
=== removed file 'Scooby-Do/data/arrows.svg'
--- Scooby-Do/data/arrows.svg 2009-10-05 19:27:17 +0000
+++ Scooby-Do/data/arrows.svg 1970-01-01 00:00:00 +0000
@@ -1,289 +0,0 @@
1<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2<!-- Created with Inkscape (http://www.inkscape.org/) -->
3<svg
4 xmlns:dc="http://purl.org/dc/elements/1.1/"
5 xmlns:cc="http://creativecommons.org/ns#"
6 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
7 xmlns:svg="http://www.w3.org/2000/svg"
8 xmlns="http://www.w3.org/2000/svg"
9 xmlns:xlink="http://www.w3.org/1999/xlink"
10 xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
11 xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
12 width="128"
13 height="128"
14 id="svg2391"
15 sodipodi:version="0.32"
16 inkscape:version="0.46"
17 version="1.0"
18 sodipodi:docname="arrows.svg"
19 inkscape:output_extension="org.inkscape.output.svg.inkscape">
20 <defs
21 id="defs2393">
22 <linearGradient
23 id="linearGradient2076">
24 <stop
25 id="stop2078"
26 offset="0.0000000"
27 style="stop-color:#afd9ed;stop-opacity:1.0000000;" />
28 <stop
29 id="stop2080"
30 offset="1.0000000"
31 style="stop-color:#cfc3db;stop-opacity:1.0000000;" />
32 </linearGradient>
33 <linearGradient
34 gradientTransform="matrix(-1.186331,0,0,-0.780016,61.16353,67.13542)"
35 gradientUnits="userSpaceOnUse"
36 id="linearGradient2082"
37 x1="12.615197"
38 x2="48.374069"
39 xlink:href="#linearGradient2076"
40 y1="25.909756"
41 y2="62.720371" />
42 <linearGradient
43 id="linearGradient2088">
44 <stop
45 id="stop2090"
46 offset="0.0000000"
47 style="stop-color:#87a8b7;stop-opacity:1.0000000;" />
48 <stop
49 id="stop2092"
50 offset="1.0000000"
51 style="stop-color:#7f718e;stop-opacity:1.0000000;" />
52 </linearGradient>
53 <linearGradient
54 gradientTransform="matrix(-1.186331,0,0,-0.780016,63.3302,67.13542)"
55 gradientUnits="userSpaceOnUse"
56 id="linearGradient2086"
57 x1="12.615197"
58 x2="48.374069"
59 xlink:href="#linearGradient2088"
60 y1="25.909756"
61 y2="62.720371" />
62 <inkscape:perspective
63 sodipodi:type="inkscape:persp3d"
64 inkscape:vp_x="0 : 526.18109 : 1"
65 inkscape:vp_y="0 : 1000 : 0"
66 inkscape:vp_z="744.09448 : 526.18109 : 1"
67 inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
68 id="perspective2399" />
69 <linearGradient
70 inkscape:collect="always"
71 xlink:href="#linearGradient2088"
72 id="linearGradient2420"
73 gradientUnits="userSpaceOnUse"
74 gradientTransform="matrix(-1.186331,0,0,-0.780016,63.3302,67.13542)"
75 x1="12.615197"
76 y1="25.909756"
77 x2="48.374069"
78 y2="62.720371" />
79 <linearGradient
80 inkscape:collect="always"
81 xlink:href="#linearGradient2076"
82 id="linearGradient2422"
83 gradientUnits="userSpaceOnUse"
84 gradientTransform="matrix(-1.186331,0,0,-0.780016,61.16353,67.13542)"
85 x1="12.615197"
86 y1="25.909756"
87 x2="48.374069"
88 y2="62.720371" />
89 <linearGradient
90 inkscape:collect="always"
91 xlink:href="#linearGradient2088"
92 id="linearGradient2434"
93 gradientUnits="userSpaceOnUse"
94 gradientTransform="matrix(-1.186331,0,0,-0.780016,63.3302,67.13542)"
95 x1="12.615197"
96 y1="25.909756"
97 x2="48.374069"
98 y2="62.720371" />
99 <linearGradient
100 inkscape:collect="always"
101 xlink:href="#linearGradient2076"
102 id="linearGradient2436"
103 gradientUnits="userSpaceOnUse"
104 gradientTransform="matrix(-1.186331,0,0,-0.780016,61.16353,67.13542)"
105 x1="12.615197"
106 y1="25.909756"
107 x2="48.374069"
108 y2="62.720371" />
109 <linearGradient
110 inkscape:collect="always"
111 xlink:href="#linearGradient2088"
112 id="linearGradient2448"
113 gradientUnits="userSpaceOnUse"
114 gradientTransform="matrix(-1.186331,0,0,-0.780016,63.3302,67.13542)"
115 x1="12.615197"
116 y1="25.909756"
117 x2="48.374069"
118 y2="62.720371" />
119 <linearGradient
120 inkscape:collect="always"
121 xlink:href="#linearGradient2076"
122 id="linearGradient2450"
123 gradientUnits="userSpaceOnUse"
124 gradientTransform="matrix(-1.186331,0,0,-0.780016,61.16353,67.13542)"
125 x1="12.615197"
126 y1="25.909756"
127 x2="48.374069"
128 y2="62.720371" />
129 <linearGradient
130 inkscape:collect="always"
131 xlink:href="#linearGradient2088"
132 id="linearGradient2462"
133 gradientUnits="userSpaceOnUse"
134 gradientTransform="matrix(-1.186331,0,0,-0.780016,63.3302,67.13542)"
135 x1="12.615197"
136 y1="25.909756"
137 x2="48.374069"
138 y2="62.720371" />
139 <linearGradient
140 inkscape:collect="always"
141 xlink:href="#linearGradient2076"
142 id="linearGradient2464"
143 gradientUnits="userSpaceOnUse"
144 gradientTransform="matrix(-1.186331,0,0,-0.780016,61.16353,67.13542)"
145 x1="12.615197"
146 y1="25.909756"
147 x2="48.374069"
148 y2="62.720371" />
149 </defs>
150 <sodipodi:namedview
151 id="base"
152 pagecolor="#ffffff"
153 bordercolor="#666666"
154 borderopacity="1.0"
155 inkscape:pageopacity="0.0"
156 inkscape:pageshadow="2"
157 inkscape:zoom="1.3277206"
158 inkscape:cx="117.47785"
159 inkscape:cy="-15.977159"
160 inkscape:document-units="px"
161 inkscape:current-layer="layer1"
162 showgrid="false"
163 showguides="true"
164 inkscape:guide-bbox="true"
165 inkscape:window-width="641"
166 inkscape:window-height="719"
167 inkscape:window-x="293"
168 inkscape:window-y="0" />
169 <metadata
170 id="metadata2396">
171 <rdf:RDF>
172 <cc:Work
173 rdf:about="">
174 <dc:format>image/svg+xml</dc:format>
175 <dc:type
176 rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
177 </cc:Work>
178 </rdf:RDF>
179 </metadata>
180 <g
181 inkscape:label="Calque 1"
182 inkscape:groupmode="layer"
183 id="layer1">
184 <g
185 id="g2409"
186 transform="matrix(0,0.8161651,-1.764176,0,125.43391,77.398373)">
187 <path
188 d="M 32.186126,52.104166 C 32.931029,52.568927 46.362619,43.287677 47.107522,42.822916 C 47.852425,42.358155 62,34.471188 62,33.541666 C 62,32.612144 47.852425,24.693927 47.107522,24.229166 C 46.362619,23.764405 32.931028,14.483154 32.186126,14.947916 C 31.736229,15.228616 31.839046,20.824428 31.983704,26.041666 L 5.900179,26.041666 C 5.643855,26.041666 5.4375,26.264666 5.4375,26.541666 L 5.4375,40.541666 C 5.4375,40.818666 5.643855,41.041666 5.900179,41.041666 L 31.983704,41.041666 C 31.839045,46.258903 31.73623,51.823466 32.186126,52.104166 z"
189 id="path2084"
190 style="fill:url(#linearGradient2420);fill-opacity:1;stroke:none;stroke-width:0.375;stroke-miterlimit:4;stroke-opacity:1" />
191 <path
192 d="M 30.019459,52.104166 C 30.764362,52.568927 44.195952,43.287677 44.940855,42.822916 C 45.685758,42.358155 59.833333,34.471188 59.833333,33.541666 C 59.833333,32.612144 45.685758,24.693927 44.940855,24.229166 C 44.195952,23.764405 30.764361,14.483154 30.019459,14.947916 C 29.569562,15.228616 29.672379,20.824428 29.817037,26.041666 L 3.733512,26.041666 C 3.477188,26.041666 3.270833,26.264666 3.270833,26.541666 L 3.270833,40.541666 C 3.270833,40.818666 3.477188,41.041666 3.733512,41.041666 L 29.817037,41.041666 C 29.672378,46.258903 29.569563,51.823466 30.019459,52.104166 z"
193 id="rect1303"
194 style="fill:url(#linearGradient2422);fill-opacity:1;stroke:none;stroke-width:0.375;stroke-miterlimit:4;stroke-opacity:1" />
195 <path
196 d="M 56,32.498092 C 56,32.498092 46.143163,28.758884 45.393163,27.459846 C 44.643163,26.160808 31.765602,20.067541 32.131627,18.701516 C 32.497652,17.33549 43.893163,24.86177 43.893163,24.86177 C 43.893163,24.86177 52.611644,28.295956 56,32.498092 z"
197 id="path2096"
198 style="fill:#d0f1fc;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
199 <rect
200 height="1"
201 id="rect2098"
202 rx="0.5"
203 ry="0.5"
204 style="fill:#d0f1fc;fill-opacity:1;stroke:none;stroke-width:0.375;stroke-miterlimit:4;stroke-opacity:1"
205 transform="scale(-1,-1)"
206 width="23"
207 x="-27.270832"
208 y="-28" />
209 </g>
210 <g
211 id="g2424"
212 transform="matrix(0,-0.8161651,-1.6782543,0,122.04356,52.382073)">
213 <path
214 d="M 32.186126,52.104166 C 32.931029,52.568927 46.362619,43.287677 47.107522,42.822916 C 47.852425,42.358155 62,34.471188 62,33.541666 C 62,32.612144 47.852425,24.693927 47.107522,24.229166 C 46.362619,23.764405 32.931028,14.483154 32.186126,14.947916 C 31.736229,15.228616 31.839046,20.824428 31.983704,26.041666 L 5.900179,26.041666 C 5.643855,26.041666 5.4375,26.264666 5.4375,26.541666 L 5.4375,40.541666 C 5.4375,40.818666 5.643855,41.041666 5.900179,41.041666 L 31.983704,41.041666 C 31.839045,46.258903 31.73623,51.823466 32.186126,52.104166 z"
215 id="path2426"
216 style="fill:url(#linearGradient2434);fill-opacity:1;stroke:none;stroke-width:0.375;stroke-miterlimit:4;stroke-opacity:1" />
217 <path
218 d="M 30.019459,52.104166 C 30.764362,52.568927 44.195952,43.287677 44.940855,42.822916 C 45.685758,42.358155 59.833333,34.471188 59.833333,33.541666 C 59.833333,32.612144 45.685758,24.693927 44.940855,24.229166 C 44.195952,23.764405 30.764361,14.483154 30.019459,14.947916 C 29.569562,15.228616 29.672379,20.824428 29.817037,26.041666 L 3.733512,26.041666 C 3.477188,26.041666 3.270833,26.264666 3.270833,26.541666 L 3.270833,40.541666 C 3.270833,40.818666 3.477188,41.041666 3.733512,41.041666 L 29.817037,41.041666 C 29.672378,46.258903 29.569563,51.823466 30.019459,52.104166 z"
219 id="path2428"
220 style="fill:url(#linearGradient2436);fill-opacity:1;stroke:none;stroke-width:0.375;stroke-miterlimit:4;stroke-opacity:1" />
221 <path
222 d="M 56,32.498092 C 56,32.498092 46.143163,28.758884 45.393163,27.459846 C 44.643163,26.160808 31.765602,20.067541 32.131627,18.701516 C 32.497652,17.33549 43.893163,24.86177 43.893163,24.86177 C 43.893163,24.86177 52.611644,28.295956 56,32.498092 z"
223 id="path2430"
224 style="fill:#d0f1fc;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
225 <rect
226 height="1"
227 id="rect2432"
228 rx="0.5"
229 ry="0.5"
230 style="fill:#d0f1fc;fill-opacity:1;stroke:none;stroke-width:0.375;stroke-miterlimit:4;stroke-opacity:1"
231 transform="scale(-1,-1)"
232 width="23"
233 x="-27.270832"
234 y="-28" />
235 </g>
236 <g
237 id="g2438"
238 transform="matrix(-0.8161651,0,0,-1.6496137,51.134197,122.05924)">
239 <path
240 d="M 32.186126,52.104166 C 32.931029,52.568927 46.362619,43.287677 47.107522,42.822916 C 47.852425,42.358155 62,34.471188 62,33.541666 C 62,32.612144 47.852425,24.693927 47.107522,24.229166 C 46.362619,23.764405 32.931028,14.483154 32.186126,14.947916 C 31.736229,15.228616 31.839046,20.824428 31.983704,26.041666 L 5.900179,26.041666 C 5.643855,26.041666 5.4375,26.264666 5.4375,26.541666 L 5.4375,40.541666 C 5.4375,40.818666 5.643855,41.041666 5.900179,41.041666 L 31.983704,41.041666 C 31.839045,46.258903 31.73623,51.823466 32.186126,52.104166 z"
241 id="path2440"
242 style="fill:url(#linearGradient2448);fill-opacity:1;stroke:none;stroke-width:0.375;stroke-miterlimit:4;stroke-opacity:1" />
243 <path
244 d="M 30.019459,52.104166 C 30.764362,52.568927 44.195952,43.287677 44.940855,42.822916 C 45.685758,42.358155 59.833333,34.471188 59.833333,33.541666 C 59.833333,32.612144 45.685758,24.693927 44.940855,24.229166 C 44.195952,23.764405 30.764361,14.483154 30.019459,14.947916 C 29.569562,15.228616 29.672379,20.824428 29.817037,26.041666 L 3.733512,26.041666 C 3.477188,26.041666 3.270833,26.264666 3.270833,26.541666 L 3.270833,40.541666 C 3.270833,40.818666 3.477188,41.041666 3.733512,41.041666 L 29.817037,41.041666 C 29.672378,46.258903 29.569563,51.823466 30.019459,52.104166 z"
245 id="path2442"
246 style="fill:url(#linearGradient2450);fill-opacity:1;stroke:none;stroke-width:0.375;stroke-miterlimit:4;stroke-opacity:1" />
247 <path
248 d="M 56,32.498092 C 56,32.498092 46.143163,28.758884 45.393163,27.459846 C 44.643163,26.160808 31.765602,20.067541 32.131627,18.701516 C 32.497652,17.33549 43.893163,24.86177 43.893163,24.86177 C 43.893163,24.86177 52.611644,28.295956 56,32.498092 z"
249 id="path2444"
250 style="fill:#d0f1fc;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
251 <rect
252 height="1"
253 id="rect2446"
254 rx="0.5"
255 ry="0.5"
256 style="fill:#d0f1fc;fill-opacity:1;stroke:none;stroke-width:0.375;stroke-miterlimit:4;stroke-opacity:1"
257 transform="scale(-1,-1)"
258 width="23"
259 x="-27.270832"
260 y="-28" />
261 </g>
262 <g
263 id="g2452"
264 transform="matrix(0.8161651,0,0,-1.6496137,77.748214,121.52667)">
265 <path
266 d="M 32.186126,52.104166 C 32.931029,52.568927 46.362619,43.287677 47.107522,42.822916 C 47.852425,42.358155 62,34.471188 62,33.541666 C 62,32.612144 47.852425,24.693927 47.107522,24.229166 C 46.362619,23.764405 32.931028,14.483154 32.186126,14.947916 C 31.736229,15.228616 31.839046,20.824428 31.983704,26.041666 L 5.900179,26.041666 C 5.643855,26.041666 5.4375,26.264666 5.4375,26.541666 L 5.4375,40.541666 C 5.4375,40.818666 5.643855,41.041666 5.900179,41.041666 L 31.983704,41.041666 C 31.839045,46.258903 31.73623,51.823466 32.186126,52.104166 z"
267 id="path2454"
268 style="fill:url(#linearGradient2462);fill-opacity:1;stroke:none;stroke-width:0.375;stroke-miterlimit:4;stroke-opacity:1" />
269 <path
270 d="M 30.019459,52.104166 C 30.764362,52.568927 44.195952,43.287677 44.940855,42.822916 C 45.685758,42.358155 59.833333,34.471188 59.833333,33.541666 C 59.833333,32.612144 45.685758,24.693927 44.940855,24.229166 C 44.195952,23.764405 30.764361,14.483154 30.019459,14.947916 C 29.569562,15.228616 29.672379,20.824428 29.817037,26.041666 L 3.733512,26.041666 C 3.477188,26.041666 3.270833,26.264666 3.270833,26.541666 L 3.270833,40.541666 C 3.270833,40.818666 3.477188,41.041666 3.733512,41.041666 L 29.817037,41.041666 C 29.672378,46.258903 29.569563,51.823466 30.019459,52.104166 z"
271 id="path2456"
272 style="fill:url(#linearGradient2464);fill-opacity:1;stroke:none;stroke-width:0.375;stroke-miterlimit:4;stroke-opacity:1" />
273 <path
274 d="M 56,32.498092 C 56,32.498092 46.143163,28.758884 45.393163,27.459846 C 44.643163,26.160808 31.765602,20.067541 32.131627,18.701516 C 32.497652,17.33549 43.893163,24.86177 43.893163,24.86177 C 43.893163,24.86177 52.611644,28.295956 56,32.498092 z"
275 id="path2458"
276 style="fill:#d0f1fc;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
277 <rect
278 height="1"
279 id="rect2460"
280 rx="0.5"
281 ry="0.5"
282 style="fill:#d0f1fc;fill-opacity:1;stroke:none;stroke-width:0.375;stroke-miterlimit:4;stroke-opacity:1"
283 transform="scale(-1,-1)"
284 width="23"
285 x="-27.270832"
286 y="-28" />
287 </g>
288 </g>
289</svg>
2900
=== removed file 'Scooby-Do/data/messages'
--- Scooby-Do/data/messages 2010-08-07 01:43:25 +0000
+++ Scooby-Do/data/messages 1970-01-01 00:00:00 +0000
@@ -1,118 +0,0 @@
1_("Configuration")
2
3_("Shortkey to enable/disable the finder mode:")
4
5_("Shortkey to enable/disable the navigation mode:")
6
7_("Maximum number of mails that will be previewed. Put -1 to show the maximum possible.")
8
9_("Maximum number of results :")
10
11_("Number of lines of the listing. If there are more results, the listing will scroll when you go up or down with the arrows.")
12
13_("Number of lines to display :")
14
15_("Animations")
16
17_("In ms.")
18
19_("Duration of the appearance animation :")
20
21_("In ms.")
22
23_("Duration of the stop animation :")
24
25_("Animation of the current icon :")
26
27_("Is detached from the dock")
28
29_("Font used to display what you type:")
30
31_("Color of the text's frame :")
32
33_("Font size, relative to the dock size:")
34
35_("between 1 and 9, the higher, the bigger.")
36
37_("Text size:")
38
39_("Outline text?")
40
41_("Text colour:")
42
43_("Character background colour:")
44
45_("Write text on the top of the dock?")
46
47_("Favorite applications")
48
49_("FAvorite applications starting with 'a' :")
50
51_("Favorite application starting with 'b' :")
52
53_("Favorite application(s) starting with 'c' :")
54
55_("Favorite application(s starting with 'd' :")
56
57_("Favorite application(s) starting with 'e' :")
58
59_("Favorite application(s) starting with 'f' :")
60
61_("Favorite application(s) starting with 'g' :")
62
63_("Favorite application(s) starting with 'h' :")
64
65_("Favorite application(s) starting with 'i' :")
66
67_("Favorite application(s) starting with 'j' :")
68
69_("Favorite application(s) starting with 'k' :")
70
71_("Favorite application(s) starting with 'l' :")
72
73_("Favorite application(s) starting with 'm' :")
74
75_("Favorite application(s) starting with 'n' :")
76
77_("Favorite application(s) starting with 'o' :")
78
79_("Favorite application(s) starting with 'p' :")
80
81_("Favorite application(s) starting with 'q' :")
82
83_("Favorite application(s) starting with 'r' :")
84
85_("Favorite application(s) starting with 's' :")
86
87_("Favorite application(s) starting with 't' :")
88
89_("Favorite application(s) starting with 'u' :")
90
91_("Favorite application(s) starting with 'v' :")
92
93_("Favorite application(s) starting with 'w' :")
94
95_("Favorite application(s) starting with 'x' :")
96
97_("Favorite application(s) starting with 'y' :")
98
99_("Favorite application(s) starting with 'z' :")
100
101_("Start XPenguins")
102
103_("Show hidden files?")
104
105_("Firefox bookmarks")
106
107_("Recent files")
108
109_("Propose some web search engines ?")
110
111_("It can launch commands and even do some calculations.")
112
113_("Enter a command to launch:")
114
115_("Help")
116
117_("Applet's Handbook")
118
1190
=== modified file 'Scooby-Do/src/applet-appli-finder.h'
--- Scooby-Do/src/applet-appli-finder.h 2009-10-05 19:27:17 +0000
+++ Scooby-Do/src/applet-appli-finder.h 2010-09-16 01:10:06 +0000
@@ -17,11 +17,9 @@
17* along with this program. If not, see <http://www.gnu.org/licenses/>.17* along with this program. If not, see <http://www.gnu.org/licenses/>.
18*/18*/
1919
20
21#ifndef __APPLET_APPLI_FINDER__20#ifndef __APPLET_APPLI_FINDER__
22#define __APPLET_APPLI_FINDER__21#define __APPLET_APPLI_FINDER__
2322
24
25#include <cairo-dock.h>23#include <cairo-dock.h>
26#include "applet-struct.h"24#include "applet-struct.h"
2725
2826
=== modified file 'Scooby-Do/src/applet-config.c'
--- Scooby-Do/src/applet-config.c 2010-08-07 01:43:25 +0000
+++ Scooby-Do/src/applet-config.c 2010-09-16 01:10:06 +0000
@@ -60,7 +60,6 @@
6060
61//\_________________ Here you have to get all your parameters from the conf file. Use the macros CD_CONFIG_GET_BOOLEAN, CD_CONFIG_GET_INTEGER, CD_CONFIG_GET_STRING, etc. myConfig has been reseted to 0 at this point. This function is called at the beginning of init and reload.61//\_________________ Here you have to get all your parameters from the conf file. Use the macros CD_CONFIG_GET_BOOLEAN, CD_CONFIG_GET_INTEGER, CD_CONFIG_GET_STRING, etc. myConfig has been reseted to 0 at this point. This function is called at the beginning of init and reload.
62CD_APPLET_GET_CONFIG_BEGIN62CD_APPLET_GET_CONFIG_BEGIN
63 myConfig.cShortkeyNav = CD_CONFIG_GET_STRING ("Configuration", "shortkey");
64 myConfig.cShortkeySearch = CD_CONFIG_GET_STRING ("Configuration", "shortkey search");63 myConfig.cShortkeySearch = CD_CONFIG_GET_STRING ("Configuration", "shortkey search");
65 myConfig.iAppearanceDuration = CD_CONFIG_GET_INTEGER ("Configuration", "appear duration");64 myConfig.iAppearanceDuration = CD_CONFIG_GET_INTEGER ("Configuration", "appear duration");
66 myConfig.iCloseDuration = CD_CONFIG_GET_INTEGER ("Configuration", "stop duration");65 myConfig.iCloseDuration = CD_CONFIG_GET_INTEGER ("Configuration", "stop duration");
@@ -126,10 +125,6 @@
126125
127//\_________________ Here you have to free all ressources allocated for myConfig. This one will be reseted to 0 at the end of this function. This function is called right before you get the applet's config, and when your applet is stopped, in the end.126//\_________________ Here you have to free all ressources allocated for myConfig. This one will be reseted to 0 at the end of this function. This function is called right before you get the applet's config, and when your applet is stopped, in the end.
128CD_APPLET_RESET_CONFIG_BEGIN127CD_APPLET_RESET_CONFIG_BEGIN
129 //g_print ("%s / %s\n", myConfig.cShortkeyNav, myConfig.cShortkeySearch);
130 if (myConfig.cShortkeyNav)
131 cd_keybinder_unbind (myConfig.cShortkeyNav, (CDBindkeyHandler) cd_do_on_shortkey_nav);
132 g_free (myConfig.cShortkeyNav);
133 if (myConfig.cShortkeySearch)128 if (myConfig.cShortkeySearch)
134 cd_keybinder_unbind (myConfig.cShortkeySearch, (CDBindkeyHandler) cd_do_on_shortkey_search);129 cd_keybinder_unbind (myConfig.cShortkeySearch, (CDBindkeyHandler) cd_do_on_shortkey_search);
135 g_free (myConfig.cShortkeySearch);130 g_free (myConfig.cShortkeySearch);
@@ -154,10 +149,6 @@
154 cairo_surface_destroy (myData.pPromptSurface);149 cairo_surface_destroy (myData.pPromptSurface);
155 if (myData.iPromptTexture != 0)150 if (myData.iPromptTexture != 0)
156 _cairo_dock_delete_texture (myData.iPromptTexture);151 _cairo_dock_delete_texture (myData.iPromptTexture);
157 if (myData.pArrowSurface != NULL)
158 cairo_surface_destroy (myData.pArrowSurface);
159 if (myData.iArrowTexture != 0)
160 _cairo_dock_delete_texture (myData.iArrowTexture);
161 if (myData.pScoobySurface != NULL)152 if (myData.pScoobySurface != NULL)
162 cairo_surface_destroy (myData.pScoobySurface);153 cairo_surface_destroy (myData.pScoobySurface);
163 if (myData.pActiveButtonSurface != NULL)154 if (myData.pActiveButtonSurface != NULL)
164155
=== modified file 'Scooby-Do/src/applet-draw.c'
--- Scooby-Do/src/applet-draw.c 2010-08-07 01:43:25 +0000
+++ Scooby-Do/src/applet-draw.c 2010-09-16 01:10:06 +0000
@@ -91,7 +91,7 @@
91 91
92 if (myData.pCharList == NULL && myData.pListingHistory == NULL) // aucune lettre de tapee => on montre le prompt.92 if (myData.pCharList == NULL && myData.pListingHistory == NULL) // aucune lettre de tapee => on montre le prompt.
93 {93 {
94 if (! myData.bNavigationMode && myData.pPromptSurface != NULL)94 if (myData.pPromptSurface != NULL)
95 {95 {
96 double fFrameWidth = myData.iPromptWidth;96 double fFrameWidth = myData.iPromptWidth;
97 double fFrameHeight = myData.iPromptHeight;97 double fFrameHeight = myData.iPromptHeight;
@@ -105,30 +105,11 @@
105 if (fAlpha != 0)105 if (fAlpha != 0)
106 {106 {
107 cairo_translate (pCairoContext, fDockOffsetX, fDockOffsetY);107 cairo_translate (pCairoContext, fDockOffsetX, fDockOffsetY);
108 cairo_dock_draw_surface (pCairoContext, myData.pArrowSurface, fFrameWidth, fFrameHeight, pMainDock->container.bDirectionUp, pMainDock->container.bIsHorizontal, fAlpha);108 cairo_dock_draw_surface (pCairoContext, myData.pPromptSurface, fFrameWidth, fFrameHeight, pMainDock->container.bDirectionUp, pMainDock->container.bIsHorizontal, fAlpha);
109 //cairo_set_source_surface (pCairoContext, myData.pPromptSurface, 0., 0.);109 //cairo_set_source_surface (pCairoContext, myData.pPromptSurface, 0., 0.);
110 //cairo_paint_with_alpha (pCairoContext, fAlpha);110 //cairo_paint_with_alpha (pCairoContext, fAlpha);
111 }111 }
112 }112 }
113 else if (myData.bNavigationMode && myData.pArrowSurface != NULL)
114 {
115 double fFrameWidth = myData.iArrowWidth;
116 double fFrameHeight = myData.iArrowHeight;
117
118 double fDockOffsetX, fDockOffsetY; // Offset du coin haut gauche du prompt.
119 fDockOffsetX = (pMainDock->container.iWidth - fFrameWidth) / 2;
120 fDockOffsetY = (pMainDock->container.iHeight - fFrameHeight) / 2;
121
122 fAlpha *= _alpha_prompt (myData.iPromptAnimationCount, s_iNbPromptAnimationSteps);
123
124 if (fAlpha != 0)
125 {
126 cairo_translate (pCairoContext, fDockOffsetX, fDockOffsetY);
127 cairo_dock_draw_surface (pCairoContext, myData.pArrowSurface, fFrameWidth, fFrameHeight, pMainDock->container.bDirectionUp, pMainDock->container.bIsHorizontal, fAlpha);
128 //cairo_set_source_surface (pCairoContext, myData.pArrowSurface, 0., 0.);
129 //cairo_paint_with_alpha (pCairoContext, fAlpha);
130 }
131 }
132 }113 }
133 else // si du texte a ete entre, on le dessine, ainsi que eventuellement la liste des icones correspondantes.114 else // si du texte a ete entre, on le dessine, ainsi que eventuellement la liste des icones correspondantes.
134 {115 {
@@ -282,7 +263,7 @@
282 263
283 if (myData.pCharList == NULL && myData.pListingHistory == NULL) // aucune lettre de tapee => on montre le prompt.264 if (myData.pCharList == NULL && myData.pListingHistory == NULL) // aucune lettre de tapee => on montre le prompt.
284 {265 {
285 if (! myData.bNavigationMode && myData.iPromptTexture != 0)266 if (myData.iPromptTexture != 0)
286 {267 {
287 double fFrameWidth = myData.iPromptWidth;268 double fFrameWidth = myData.iPromptWidth;
288 double fFrameHeight = myData.iPromptHeight;269 double fFrameHeight = myData.iPromptHeight;
@@ -310,34 +291,6 @@
310 glPopMatrix();291 glPopMatrix();
311 }292 }
312 }293 }
313 else if (myData.bNavigationMode && myData.iArrowTexture != 0)
314 {
315 double fFrameWidth = myData.iArrowWidth;
316 double fFrameHeight = myData.iArrowHeight;
317
318 double fDockOffsetX, fDockOffsetY; // Offset du coin haut gauche du prompt.
319 fDockOffsetX = (pMainDock->container.iWidth - fFrameWidth) / 2;
320 fDockOffsetY = (pMainDock->container.iHeight - fFrameHeight) / 2;
321
322 fAlpha *= _alpha_prompt (myData.iPromptAnimationCount, s_iNbPromptAnimationSteps);
323
324 if (fAlpha != 0)
325 {
326 glPushMatrix ();
327 if (! pMainDock->container.bIsHorizontal)
328 glRotatef (pMainDock->container.bDirectionUp ? 90. : -90., 0., 0., 1.);
329 glTranslatef (pMainDock->container.iWidth/2, pMainDock->container.iHeight/2, 0.);
330
331 _cairo_dock_enable_texture ();
332 _cairo_dock_set_blend_alpha ();
333
334 _cairo_dock_apply_texture_at_size_with_alpha (myData.iArrowTexture, fFrameWidth, fFrameHeight, fAlpha);
335
336 _cairo_dock_disable_texture ();
337
338 glPopMatrix();
339 }
340 }
341 }294 }
342 else // si du texte a ete entre, on le dessine, ainsi que eventuellement la liste des icones correspondantes.295 else // si du texte a ete entre, on le dessine, ainsi que eventuellement la liste des icones correspondantes.
343 {296 {
344297
=== modified file 'Scooby-Do/src/applet-icon-finder.c'
--- Scooby-Do/src/applet-icon-finder.c 2010-08-07 01:43:25 +0000
+++ Scooby-Do/src/applet-icon-finder.c 2010-09-16 01:10:06 +0000
@@ -52,197 +52,6 @@
52 return bMatch;52 return bMatch;
53}53}
5454
55static void _find_icon_in_dock_with_command (Icon *pIcon, CairoDock *pDock, gpointer *data)
56{
57 gchar *cCommandPrefix = data[0];
58 int length = GPOINTER_TO_INT (data[1]);
59 Icon *pAfterIcon = data[2];
60 Icon **pFoundIcon = data[3];
61 CairoDock **pFoundDock = data[4];
62 Icon **pFirstIcon = data[5];
63 CairoDock **pFirstParentDock = data[6];
64 if (pDock == g_pMainDock || *pFoundIcon != NULL) // on a deja cherche dans le main dock, ou deja trouve ce qu'on cherchait.
65 return ;
66
67 gboolean bFound = _cd_do_icon_match (pIcon, cCommandPrefix, length);
68 if (bFound)
69 {
70 if (pAfterIcon == NULL)
71 {
72 *pFoundIcon = pIcon;
73 *pFoundDock = pDock;
74 }
75 else
76 {
77 if (*pFirstIcon == NULL) // on garde une trace de la 1ere icone pour boucler dans la liste.
78 {
79 *pFirstIcon = pIcon;
80 *pFirstParentDock = g_pMainDock;
81 }
82 if (pIcon == pAfterIcon)
83 {
84 data[2] = NULL;
85 }
86 }
87 }
88}
89Icon *cd_do_search_icon_by_command (const gchar *cCommandPrefix, Icon *pAfterIcon, CairoDock **pDock)
90{
91 g_return_val_if_fail (cCommandPrefix != NULL, NULL);
92
93 //\_________________ on cherche en premier dans le main dock, car il est deja visible.
94 int length = strlen (cCommandPrefix);
95 Icon *pIcon, *pFirstIcon = NULL;
96 CairoDock *pParentDock, *pFirstParentDock = NULL;
97 GList *ic;
98 for (ic = g_pMainDock->icons; ic != NULL; ic = ic->next)
99 {
100 pIcon = ic->data;
101 if (pIcon->cCommand && g_ascii_strncasecmp (cCommandPrefix, pIcon->cCommand, length) == 0)
102 {
103 if (pAfterIcon == NULL)
104 {
105 *pDock = g_pMainDock;
106 return pIcon;
107 }
108 else
109 {
110 if (pFirstIcon == NULL) // on garde une trace de la 1ere icone pour boucler dans la liste.
111 {
112 pFirstIcon = pIcon;
113 pFirstParentDock = g_pMainDock;
114 }
115 if (pIcon == pAfterIcon)
116 {
117 pAfterIcon = NULL;
118 }
119 }
120 }
121 }
122
123 //\_________________ si on a rien trouve on cherche dans tous les docks.
124 pIcon = NULL;
125 *pDock = NULL;
126 gpointer data[7];
127 data[0] = (gchar *)cCommandPrefix;
128 data[1] = GINT_TO_POINTER (length);
129 data[2] = pAfterIcon;
130 data[3] = &pIcon;
131 data[4] = pDock;
132 data[5] = &pFirstIcon;
133 data[6] = &pFirstParentDock;
134 cairo_dock_foreach_icons_in_docks ((CairoDockForeachIconFunc) _find_icon_in_dock_with_command, data);
135
136 if (pIcon == NULL)
137 {
138 pIcon = pFirstIcon;
139 *pDock = pFirstParentDock;
140 }
141 return pIcon;
142}
143
144
145void cd_do_change_current_icon (Icon *pIcon, CairoDock *pDock)
146{
147 //\_________________ on gere le cachage et le montrage du dock precedent et actuel.
148 if (myData.pCurrentDock != NULL && pDock != myData.pCurrentDock && myData.pCurrentDock != g_pMainDock) // on remet au repos dock precedemment anime.
149 {
150 cairo_dock_emit_leave_signal (myData.pCurrentDock);
151 }
152 if (pDock != NULL && pDock != g_pMainDock && pDock != myData.pCurrentDock) // on montre le nouveau dock
153 {
154 if (pDock != NULL)
155 {
156 if (pDock->iRefCount > 0)
157 {
158 CairoDock *pParentDock = NULL;
159 Icon *pPointingIcon = cairo_dock_search_icon_pointing_on_dock (pDock, &pParentDock);
160 if (pPointingIcon != NULL)
161 {
162 cairo_dock_show_subdock (pPointingIcon, pParentDock); // utile pour le montrage des sous-docks au clic.
163 }
164 }
165 else
166 {
167 ///cairo_dock_pop_up (pDock);
168 }
169 cairo_dock_emit_enter_signal (pDock);
170 }
171 }
172 if (pDock != NULL)
173 {
174
175 gtk_window_present (GTK_WINDOW (pDock->container.pWidget));
176 }
177
178 //\_________________ on gere l'allumage et l'eteignage de l'icone precedente et actuelle.
179 if (myData.pCurrentIcon != NULL && pIcon != myData.pCurrentIcon) // on remet au repos l'icone precedemment anime.
180 {
181 myData.bIgnoreIconState = TRUE;
182 cairo_dock_stop_icon_animation (myData.pCurrentIcon);
183 myData.bIgnoreIconState = FALSE;
184 cairo_dock_redraw_icon (myData.pCurrentIcon, CAIRO_CONTAINER (myData.pCurrentDock)); /// utile ?...
185 }
186 if (pIcon != NULL && myData.pCurrentIcon != pIcon) // on anime la nouvelle icone.
187 {
188 int x = pIcon->fXAtRest + pIcon->fWidth/2 + (- pDock->fFlatDockWidth + pDock->iMaxDockWidth)/2;
189 int y = pIcon->fDrawY + pIcon->fHeight/2 * pIcon->fScale;
190 if (1||myData.pCurrentDock != pDock)
191 {
192 cairo_dock_emit_motion_signal (pDock,
193 x,
194 y);
195 }
196 else
197 {
198 myData.iPrevMouseX = myData.iMouseX;
199 myData.iPrevMouseY = myData.iMouseY;
200 myData.iMotionCount = 10;
201 }
202 myData.iMouseX = x;
203 myData.iMouseY = y;
204 cairo_dock_request_icon_animation (pIcon, pDock, myConfig.cIconAnimation, 1e6); // interrompt l'animation de "mouse over".
205 cairo_dock_launch_animation (CAIRO_CONTAINER (pDock));
206 //if (myAccessibility.bShowSubDockOnClick)
207 // cairo_dock_show_subdock (pIcon, pDock, FALSE);
208 }
209
210 myData.pCurrentDock = pDock;
211 myData.pCurrentIcon = pIcon;
212 if (myData.pCurrentDock == NULL)
213 gtk_window_present (GTK_WINDOW (g_pMainDock->container.pWidget));
214}
215
216
217void cd_do_search_current_icon (gboolean bLoopSearch)
218{
219 //\_________________ on cherche un lanceur correspondant.
220 CairoDock *pDock;
221 Icon *pIcon = cd_do_search_icon_by_command (myData.sCurrentText->str, (bLoopSearch ? myData.pCurrentIcon : NULL), &pDock);
222 cd_debug ("found icon : %s\n", pIcon ? pIcon->cName : "none");
223
224 //\_________________ on gere le changement d'icone/dock.
225 cd_do_change_current_icon (pIcon, pDock);
226}
227
228
229gboolean cairo_dock_emit_motion_signal (CairoDock *pDock, int iMouseX, int iMouseY)
230{
231 static gboolean bReturn;
232 static GdkEventMotion motion;
233 motion.state = 0;
234 motion.x = iMouseX;
235 motion.y = iMouseY;
236 motion.x_root = pDock->container.iWindowPositionX + pDock->container.iMouseX;
237 motion.y_root = pDock->container.iWindowPositionY + pDock->container.iMouseY;
238 motion.time = 0;
239 motion.window = pDock->container.pWidget->window;
240 motion.device = gdk_device_get_core_pointer ();
241 g_signal_emit_by_name (pDock->container.pWidget, "motion-notify-event", &motion, &bReturn);
242 return FALSE;
243}
244
245
24655
247static inline void _cd_do_search_matching_icons_in_dock (CairoDock *pDock)56static inline void _cd_do_search_matching_icons_in_dock (CairoDock *pDock)
248{57{
@@ -270,7 +79,7 @@
270 return;79 return;
271 cd_debug ("%s (%s)\n", __func__, myData.sCurrentText->str);80 cd_debug ("%s (%s)\n", __func__, myData.sCurrentText->str);
272 gchar *str = strchr (myData.sCurrentText->str, ' '); // on ne compte pas les arguments d'une eventuelle commande deja tapee.81 gchar *str = strchr (myData.sCurrentText->str, ' '); // on ne compte pas les arguments d'une eventuelle commande deja tapee.
273 int length = myData.sCurrentText->len;82 guint length = myData.sCurrentText->len;
274 if (str != NULL)83 if (str != NULL)
275 {84 {
276 g_string_set_size (myData.sCurrentText, str - myData.sCurrentText->str + 1);85 g_string_set_size (myData.sCurrentText, str - myData.sCurrentText->str + 1);
@@ -279,22 +88,13 @@
279 88
280 if (myData.pMatchingIcons == NULL)89 if (myData.pMatchingIcons == NULL)
281 {90 {
282 if (myData.bSessionStartedAutomatically) // on cherche dans le dock courant.91 cd_debug ("on cherche tout\n");
283 {92 // on parcours tous les docks.
284 cd_debug ("on cherche dans le dock\n");93 cairo_dock_foreach_icons_in_docks ((CairoDockForeachIconFunc) _cd_do_search_in_one_dock, NULL);
285 _cd_do_search_matching_icons_in_dock (myData.pCurrentDock);94 myData.pMatchingIcons = g_list_reverse (myData.pMatchingIcons);
286 myData.pMatchingIcons = g_list_reverse (myData.pMatchingIcons);95
287 }96 // on rajoute les icones ne venant pas du dock.
288 else97 cd_do_find_matching_applications ();
289 {
290 cd_debug ("on cherche tout\n");
291 // on parcours tous les docks.
292 cairo_dock_foreach_icons_in_docks ((CairoDockForeachIconFunc) _cd_do_search_in_one_dock, NULL);
293 myData.pMatchingIcons = g_list_reverse (myData.pMatchingIcons);
294
295 // on rajoute les icones ne venant pas du dock.
296 cd_do_find_matching_applications ();
297 }
298 }98 }
299 else // optimisation : on peut se contenter de chercher parmi les icones deja trouvees.99 else // optimisation : on peut se contenter de chercher parmi les icones deja trouvees.
300 {100 {
@@ -317,7 +117,7 @@
317 myData.iCurrentMatchingOffset = 0;117 myData.iCurrentMatchingOffset = 0;
318 if (myData.pCurrentApplicationToLoad != NULL) // on va continuer le chargement sur la sous-liste.118 if (myData.pCurrentApplicationToLoad != NULL) // on va continuer le chargement sur la sous-liste.
319 myData.pCurrentApplicationToLoad = myData.pMatchingIcons; // comme l'ordre de la liste n'a pas ete altere, on n'est sur de ne pas sauter d'icone.119 myData.pCurrentApplicationToLoad = myData.pMatchingIcons; // comme l'ordre de la liste n'a pas ete altere, on n'est sur de ne pas sauter d'icone.
320 cairo_dock_redraw_container (CAIRO_CONTAINER (myData.pCurrentDock));120 cairo_dock_redraw_container (CAIRO_CONTAINER (g_pMainDock));
321 //g_print ("%d / %d\n", length , myData.sCurrentText->len);121 //g_print ("%d / %d\n", length , myData.sCurrentText->len);
322 if (length != myData.sCurrentText->len)122 if (length != myData.sCurrentText->len)
323 g_string_set_size (myData.sCurrentText, length);123 g_string_set_size (myData.sCurrentText, length);
324124
=== modified file 'Scooby-Do/src/applet-icon-finder.h'
--- Scooby-Do/src/applet-icon-finder.h 2009-10-05 19:27:17 +0000
+++ Scooby-Do/src/applet-icon-finder.h 2010-09-16 01:10:06 +0000
@@ -17,7 +17,6 @@
17* along with this program. If not, see <http://www.gnu.org/licenses/>.17* along with this program. If not, see <http://www.gnu.org/licenses/>.
18*/18*/
1919
20
21#ifndef __APPLET_ICON_FINDER__20#ifndef __APPLET_ICON_FINDER__
22#define __APPLET_ICON_FINDER__21#define __APPLET_ICON_FINDER__
2322
2423
=== modified file 'Scooby-Do/src/applet-init.c'
--- Scooby-Do/src/applet-init.c 2010-08-07 01:43:25 +0000
+++ Scooby-Do/src/applet-init.c 2010-09-16 01:10:06 +0000
@@ -36,22 +36,18 @@
36CD_APPLET_DEFINE_BEGIN ("Scooby-Do",36CD_APPLET_DEFINE_BEGIN ("Scooby-Do",
37 2, 1, 4,37 2, 1, 4,
38 CAIRO_DOCK_CATEGORY_APPLET_SYSTEM,38 CAIRO_DOCK_CATEGORY_APPLET_SYSTEM,
39 N_("This plug-in allows you to make different actions directly from the keyboard.\n"
40 "It has 2 modes, each one being triggered by a keyboard shortcut:\n\n"
41 "- the finder mode (default shortcut : CTRL + Enter) :\n"
42 " It lets you find and launch applications, files, recent files, firefox bookmarks, commands, and even calculations.\n"
43 " Type what you want to search, the results will be displayed in real time.\n"
44 " The first results of each category are displayed in the main listing.\n"
45 " Use the up/down arrows to navigate inside the list,\n"
46 " and use the left/right arrows to enter into a category, or to display more actions (when a little arrow is drawn next to text).\n"
47 " Once inside a category, you can filter the results by typing some letters.\n"
48 " Press Enter to validate, maintain SHIFT or ALT to keep the list of results opened.\n\n"
49 "- the navigation mode (default shortcut : CTRL + F9) :\n"
The diff has been truncated for viewing.

Subscribers

People subscribed via source and target branches