Merge lp:~manishsinha/zeitgeist-datasources/fix-tomboy-mimetype-mono-dependency into lp:zeitgeist-datasources/0.8
- fix-tomboy-mimetype-mono-dependency
- Merge into trunk
Status: | Merged |
---|---|
Approved by: | Seif Lotfy |
Approved revision: | 104 |
Merged at revision: | 97 |
Proposed branch: | lp:~manishsinha/zeitgeist-datasources/fix-tomboy-mimetype-mono-dependency |
Merge into: | lp:zeitgeist-datasources/0.8 |
Diff against target: |
790 lines (+435/-255) 12 files modified
.bzrignore (+6/-0) configure.ac (+50/-4) tomboy/AssemblyInfo.cs (+27/-0) tomboy/Makefile.am (+48/-0) tomboy/NoteHandler.cs (+69/-0) tomboy/Zeitgeist.addin.xml (+0/-21) tomboy/Zeitgeist.cs (+72/-189) tomboy/Zeitgeist.mdp (+0/-28) tomboy/ZeitgeistAddin.cs (+90/-0) tomboy/ZeitgeistDataprovider.addin.xml (+21/-0) tomboy/ZeitgeistDataprovider.csproj (+52/-0) tomboy/install.sh (+0/-13) |
To merge this branch: | bzr merge lp:~manishsinha/zeitgeist-datasources/fix-tomboy-mimetype-mono-dependency |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Michal Hruby (community) | build system | Approve | |
Review via email: mp+40475@code.launchpad.net |
Commit message
A working Tomboy dataprovider which logs the following events
* Open Note
* Close Note
* Add Note
* Delete Note
Uses zeitgeist-sharp 0.1.0.3 package which can be installed from
https:/
1) Change the mimetype from x-tomboy to x-note
2) Remove the hard dependency on mono. The build script just checks for availability of mono
Description of the change
A working Tomboy dataprovider which logs the following events
* Open Note
* Close Note
* Add Note
* Delete Note
Uses zeitgeist-sharp 0.1.0.3 package which can be installed from
https:/
1) Change the mimetype from x-tomboy to x-note
2) Remove the hard dependency on mono. The build script just checks for availability of mono
- 101. By Manish Sinha (मनीष सिन्हा)
-
Added check for gtk-sharp and fixed indentation
- 102. By Manish Sinha (मनीष सिन्हा)
-
Changed compulsary checking of packages in tomboy section
Manish Sinha (मनीष सिन्हा) (manishsinha) wrote : | # |
if you try to configure with "--enable-
then the configure fails, since mono is required for tomboy. The output is
http://
Michal Hruby (mhr3) wrote : | # |
Which further proves my point that the option is useless, please remove it.
- 103. By Manish Sinha (मनीष सिन्हा)
-
Changed configure.ac for the configure script to not fail if mono is not available or --with-mono=no with --enable-
all-plugins
Michal Hruby (mhr3) wrote : | # |
Approving from the configure/make POV, if someone wants to take a close look on the DP itself, please go ahead...
Seif Lotfy (seif) wrote : | # |
works like charm
- 104. By Manish Sinha (मनीष सिन्हा)
-
Merge Markus Korn's (thekorn) tomboy local-install and local-uninstall implementation
Seif Lotfy (seif) wrote : | # |
Tomboy crashes upon opening a note
-------
seif@Wumbo:
[INFO 13:59:30.892] Initializing Mono.Addins
Zg#: init new
Zg#: init new
Zg#: Note window opened: Events
Operation AccessEvent successful
Exception in Gtk# callback delegate
Note: Applications can use GLib.ExceptionM
System.Exception: org.freedesktop
at Zeitgeist.
at Zeitgeist.
at Tomboy.
at Tomboy.
at GLib.Idle+
at GLib.ExceptionM
at GLib.Idle+
at Gtk.Application
at Gtk.Application
at Gnome.Program.Run()
at Tomboy.
at Tomboy.
at Tomboy.
at Tomboy.
Seif Lotfy (seif) wrote : | # |
Scratch that invalid comment due testing a broken zeitgeist DB
> Tomboy crashes upon opening a note
> -------
>
> seif@Wumbo:
> [INFO 13:59:30.892] Initializing Mono.Addins
> Zg#: init new
> Zg#: init new
> Zg#: Note window opened: Events
> Operation AccessEvent successful
> Exception in Gtk# callback delegate
> Note: Applications can use GLib.ExceptionM
> handle the exception.
> System.Exception: org.freedesktop
> a reply (timeout by message bus)
> at Zeitgeist.
> events) [0x00000] in <filename unknown>:0
> at Zeitgeist.
> events) [0x00000] in <filename unknown>:0
> at Tomboy.
> (System.
> at Tomboy.
> [0x00000] in <filename unknown>:0
> at GLib.Idle+
> at GLib.ExceptionM
> Boolean is_terminal)
> at GLib.Idle+
> at Gtk.Application
> at Gtk.Application
> at Gnome.Program.Run()
> at Tomboy.
> at Tomboy.
> at Tomboy.
> at Tomboy.
Preview Diff
1 | === modified file '.bzrignore' | |||
2 | --- .bzrignore 2010-05-12 06:44:01 +0000 | |||
3 | +++ .bzrignore 2010-11-12 17:39:29 +0000 | |||
4 | @@ -1,3 +1,9 @@ | |||
5 | 1 | firefox*/*.xpi | 1 | firefox*/*.xpi |
6 | 2 | firefox-libzg/extension/components/zeitgeist.h | 2 | firefox-libzg/extension/components/zeitgeist.h |
7 | 3 | firefox-libzg/extension/components/zeitgeist.xpt | 3 | firefox-libzg/extension/components/zeitgeist.xpt |
8 | 4 | Makefile | ||
9 | 5 | Makefile.in | ||
10 | 6 | .deps | ||
11 | 7 | .libs | ||
12 | 8 | *.la | ||
13 | 9 | *.lo | ||
14 | 4 | 10 | ||
15 | === modified file 'configure.ac' | |||
16 | --- configure.ac 2010-11-02 21:04:17 +0000 | |||
17 | +++ configure.ac 2010-11-12 17:39:29 +0000 | |||
18 | @@ -35,6 +35,20 @@ | |||
19 | 35 | AM_CONDITIONAL(ENABLE_VALA, test "x$with_vala" = "xyes") | 35 | AM_CONDITIONAL(ENABLE_VALA, test "x$with_vala" = "xyes") |
20 | 36 | 36 | ||
21 | 37 | dnl ============================================== | 37 | dnl ============================================== |
22 | 38 | dnl Check for Mono | ||
23 | 39 | dnl ============================================== | ||
24 | 40 | |||
25 | 41 | AC_ARG_WITH([mono], | ||
26 | 42 | AS_HELP_STRING([--without-mono], | ||
27 | 43 | [Disables Mono plugins]), | ||
28 | 44 | [],[with_mono=yes]) | ||
29 | 45 | |||
30 | 46 | AM_CONDITIONAL(ENABLE_MONO, test "x$with_mono" = "xyes") | ||
31 | 47 | |||
32 | 48 | AC_PATH_PROG(GMCS, gmcs, no) | ||
33 | 49 | AC_PATH_PROG(XBUILD, xbuild, no) | ||
34 | 50 | |||
35 | 51 | dnl ============================================== | ||
36 | 38 | dnl Check commonly used packages | 52 | dnl Check commonly used packages |
37 | 39 | dnl ============================================== | 53 | dnl ============================================== |
38 | 40 | 54 | ||
39 | @@ -51,8 +65,8 @@ | |||
40 | 51 | AC_MSG_RESULT($all_plugins) | 65 | AC_MSG_RESULT($all_plugins) |
41 | 52 | 66 | ||
42 | 53 | # The full list of plugins | 67 | # The full list of plugins |
45 | 54 | allowed_plugins="bzr chrome eog firefox-libzg geany gedit rhythmbox totem-libzg vim emacs" | 68 | allowed_plugins="bzr chrome eog firefox-libzg geany gedit rhythmbox totem-libzg vim emacs tomboy" |
46 | 55 | # currently disabled = "epiphany tomboy" | 69 | # currently disabled = "epiphany" |
47 | 56 | 70 | ||
48 | 57 | # npapi-plugin has a template Makefile.am, but don't use it directly | 71 | # npapi-plugin has a template Makefile.am, but don't use it directly |
49 | 58 | # - see chrome's Makefile.am for how to compile it | 72 | # - see chrome's Makefile.am for how to compile it |
50 | @@ -152,8 +166,36 @@ | |||
51 | 152 | fi | 166 | fi |
52 | 153 | ;; | 167 | ;; |
53 | 154 | tomboy) | 168 | tomboy) |
56 | 155 | # not supported atm | 169 | if test "${with_mono}" != "yes" ; then |
57 | 156 | continue | 170 | continue |
58 | 171 | fi | ||
59 | 172 | PKG_CHECK_MODULES(ZEITGEIST_SHARP, zeitgeist-sharp, | ||
60 | 173 | ENABLE_ZEITGEIST_SHARP=yes, ENABLE_ZEITGEIST_SHARP=no) | ||
61 | 174 | PKG_CHECK_MODULES(TOMBOY_ADDINS, tomboy-addins) | ||
62 | 175 | PKG_CHECK_MODULES(GTK_SHARP, gtk-sharp-2.0, | ||
63 | 176 | HAS_GTK_SHARP=yes, HAS_GTK_SHARP=no) | ||
64 | 177 | if test "${ENABLE_ZEITGEIST_SHARP}" = "no" ; then | ||
65 | 178 | plugin_error_or_ignore "zeitgeist-sharp package not found" | ||
66 | 179 | continue | ||
67 | 180 | fi | ||
68 | 181 | AC_PATH_PROG(TOMBOY, tomboy, no) | ||
69 | 182 | if test "x$TOMBOY" = "xno"; then | ||
70 | 183 | plugin_error_or_ignore "You need to install tomboy" | ||
71 | 184 | continue | ||
72 | 185 | fi | ||
73 | 186 | if test "x$GMCS" = "xno"; then | ||
74 | 187 | plugin_error_or_ignore "You need to install gmcs" | ||
75 | 188 | continue | ||
76 | 189 | fi | ||
77 | 190 | if test "x$XBUILD" = "xno"; then | ||
78 | 191 | plugin_error_or_ignore "You need to install xbuild" | ||
79 | 192 | continue | ||
80 | 193 | fi | ||
81 | 194 | if test "x$GTK_SHARP" = "xno"; then | ||
82 | 195 | plugin_error_or_ignore "You need to install gtk-sharp" | ||
83 | 196 | continue | ||
84 | 197 | fi | ||
85 | 198 | AC_SUBST(ZEITGEIST_SHARP_LIBS) | ||
86 | 157 | ;; | 199 | ;; |
87 | 158 | totem*) | 200 | totem*) |
88 | 159 | if test "${with_vala}" != "yes" ; then | 201 | if test "${with_vala}" != "yes" ; then |
89 | @@ -241,6 +283,10 @@ | |||
90 | 241 | AC_CONFIG_FILES([geany/Makefile]) | 283 | AC_CONFIG_FILES([geany/Makefile]) |
91 | 242 | continue 2 | 284 | continue 2 |
92 | 243 | ;; | 285 | ;; |
93 | 286 | tomboy) | ||
94 | 287 | AC_CONFIG_FILES([tomboy/Makefile]) | ||
95 | 288 | continue 2 | ||
96 | 289 | ;; | ||
97 | 244 | gedit) | 290 | gedit) |
98 | 245 | AC_CONFIG_FILES([gedit/Makefile]) | 291 | AC_CONFIG_FILES([gedit/Makefile]) |
99 | 246 | continue 2 | 292 | continue 2 |
100 | 247 | 293 | ||
101 | === added file 'tomboy/AssemblyInfo.cs' | |||
102 | --- tomboy/AssemblyInfo.cs 1970-01-01 00:00:00 +0000 | |||
103 | +++ tomboy/AssemblyInfo.cs 2010-11-12 17:39:29 +0000 | |||
104 | @@ -0,0 +1,27 @@ | |||
105 | 1 | using System.Reflection; | ||
106 | 2 | using System.Runtime.CompilerServices; | ||
107 | 3 | |||
108 | 4 | // Information about this assembly is defined by the following attributes. | ||
109 | 5 | // Change them to the values specific to your project. | ||
110 | 6 | |||
111 | 7 | [assembly: AssemblyTitle("ZeitgeistDataProvider")] | ||
112 | 8 | [assembly: AssemblyDescription("Handles the pushing of Tomboy events to Zeitgeist")] | ||
113 | 9 | [assembly: AssemblyConfiguration("")] | ||
114 | 10 | [assembly: AssemblyCompany("")] | ||
115 | 11 | [assembly: AssemblyProduct("")] | ||
116 | 12 | [assembly: AssemblyCopyright("")] | ||
117 | 13 | [assembly: AssemblyTrademark("")] | ||
118 | 14 | [assembly: AssemblyCulture("")] | ||
119 | 15 | |||
120 | 16 | // The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}". | ||
121 | 17 | // The form "{Major}.{Minor}.*" will automatically update the build and revision, | ||
122 | 18 | // and "{Major}.{Minor}.{Build}.*" will update just the revision. | ||
123 | 19 | |||
124 | 20 | [assembly: AssemblyVersion("1.0.*")] | ||
125 | 21 | |||
126 | 22 | // The following attributes are used to specify the signing key for the assembly, | ||
127 | 23 | // if desired. See the Mono documentation for more information about signing. | ||
128 | 24 | |||
129 | 25 | //[assembly: AssemblyDelaySign(false)] | ||
130 | 26 | //[assembly: AssemblyKeyFile("")] | ||
131 | 27 | |||
132 | 0 | 28 | ||
133 | === added file 'tomboy/Makefile.am' | |||
134 | --- tomboy/Makefile.am 1970-01-01 00:00:00 +0000 | |||
135 | +++ tomboy/Makefile.am 2010-11-12 17:39:29 +0000 | |||
136 | @@ -0,0 +1,48 @@ | |||
137 | 1 | CSFLAGS = \ | ||
138 | 2 | -debug \ | ||
139 | 3 | -define:DEBUG \ | ||
140 | 4 | -target:library | ||
141 | 5 | |||
142 | 6 | ASSEMBLIES = \ | ||
143 | 7 | $(TOMBOY_ADDINS_LIBS) \ | ||
144 | 8 | $(GTK_SHARP_LIBS) \ | ||
145 | 9 | $(ZEITGEIST_SHARP_LIBS) \ | ||
146 | 10 | -r:Mono.Posix | ||
147 | 11 | |||
148 | 12 | ADDIN_NAME = ZeitgeistDataprovider | ||
149 | 13 | TARGET = $(ADDIN_NAME).dll | ||
150 | 14 | CSFILES = \ | ||
151 | 15 | $(srcdir)/Zeitgeist.cs \ | ||
152 | 16 | $(srcdir)/ZeitgeistAddin.cs \ | ||
153 | 17 | $(srcdir)/NoteHandler.cs \ | ||
154 | 18 | $(srcdir)/AssemblyInfo.cs | ||
155 | 19 | RESOURCES = \ | ||
156 | 20 | -resource:$(srcdir)/$(ADDIN_NAME).addin.xml | ||
157 | 21 | |||
158 | 22 | $(TARGET): $(CSFILES) | ||
159 | 23 | $(GMCS) -out:$@ $(CSFLAGS) $(ASSEMBLIES) $(CSFILES) $(RESOURCES) | ||
160 | 24 | |||
161 | 25 | |||
162 | 26 | addinsdir = $(libdir)/tomboy/addins | ||
163 | 27 | addins_DATA = $(TARGET) | ||
164 | 28 | |||
165 | 29 | EXTRA_DIST = \ | ||
166 | 30 | $(CSFILES) \ | ||
167 | 31 | $(srcdir)/$(ADDIN_NAME).addin.xml | ||
168 | 32 | |||
169 | 33 | DISTCLEANFILES = \ | ||
170 | 34 | $(TARGET) \ | ||
171 | 35 | $(TARGET).mdb | ||
172 | 36 | |||
173 | 37 | TOMBOY_ADDIN_HOME_DIR = ~/.config/tomboy/addins | ||
174 | 38 | |||
175 | 39 | local-install: $(addins_DATA) | ||
176 | 40 | mkdir -p $(TOMBOY_ADDIN_HOME_DIR) | ||
177 | 41 | cp $(addins_DATA) $(TOMBOY_ADDIN_HOME_DIR) | ||
178 | 42 | |||
179 | 43 | local-uninstall: | ||
180 | 44 | for f in $(addins_DATA); \ | ||
181 | 45 | do \ | ||
182 | 46 | echo remove $$f; \ | ||
183 | 47 | rm -f $(TOMBOY_ADDIN_HOME_DIR)/$$f; \ | ||
184 | 48 | done | ||
185 | 0 | 49 | ||
186 | === added file 'tomboy/NoteHandler.cs' | |||
187 | --- tomboy/NoteHandler.cs 1970-01-01 00:00:00 +0000 | |||
188 | +++ tomboy/NoteHandler.cs 2010-11-12 17:39:29 +0000 | |||
189 | @@ -0,0 +1,69 @@ | |||
190 | 1 | using System; | ||
191 | 2 | using Zeitgeist.Datamodel; | ||
192 | 3 | using System.Collections.Generic; | ||
193 | 4 | |||
194 | 5 | namespace Tomboy.Zeitgeist | ||
195 | 6 | { | ||
196 | 7 | public class NoteHandler | ||
197 | 8 | { | ||
198 | 9 | public NoteHandler(Note note) | ||
199 | 10 | { | ||
200 | 11 | // Check if the Note has already been processes. | ||
201 | 12 | // Whent he note is being processed, event handlers are attached to | ||
202 | 13 | if (handledNotes.Contains(note) == false) | ||
203 | 14 | { | ||
204 | 15 | this._note = note; | ||
205 | 16 | |||
206 | 17 | note.Opened += HandleNoteOpened; | ||
207 | 18 | if (note.HasWindow) | ||
208 | 19 | { | ||
209 | 20 | HandleNoteOpened(); | ||
210 | 21 | } | ||
211 | 22 | } | ||
212 | 23 | } | ||
213 | 24 | |||
214 | 25 | void HandleNoteOpened (object sender, EventArgs e) | ||
215 | 26 | { | ||
216 | 27 | HandleNoteOpened(); | ||
217 | 28 | } | ||
218 | 29 | |||
219 | 30 | void HandleNoteOpened() | ||
220 | 31 | { | ||
221 | 32 | this._note.Window.Hidden += HandleNoteWindowHidden; | ||
222 | 33 | this._note.Window.Shown += HandleNoteWindowShown; | ||
223 | 34 | this._note.Renamed += HandleNoteRenamed; | ||
224 | 35 | if (this._note.Window.Visible) | ||
225 | 36 | { | ||
226 | 37 | HandleNoteWindowShown(); | ||
227 | 38 | } | ||
228 | 39 | } | ||
229 | 40 | |||
230 | 41 | void HandleNoteRenamed (Note sender, string old_title) | ||
231 | 42 | { | ||
232 | 43 | Console.WriteLine("Zg#: Renamed: " + this._note.Title); | ||
233 | 44 | ZeitgeistHandler.SendEvent(sender, Interpretation.Instance.EventInterpretation.ModifyEvent); | ||
234 | 45 | } | ||
235 | 46 | |||
236 | 47 | void HandleNoteWindowShown (object sender, EventArgs e) | ||
237 | 48 | { | ||
238 | 49 | HandleNoteWindowShown(); | ||
239 | 50 | } | ||
240 | 51 | |||
241 | 52 | void HandleNoteWindowShown () | ||
242 | 53 | { | ||
243 | 54 | Console.WriteLine("Zg#: Note window opened: " + this._note.Title); | ||
244 | 55 | ZeitgeistHandler.SendEvent(this._note, Interpretation.Instance.EventInterpretation.AccessEvent); | ||
245 | 56 | } | ||
246 | 57 | |||
247 | 58 | void HandleNoteWindowHidden (object sender, EventArgs e) | ||
248 | 59 | { | ||
249 | 60 | Console.WriteLine("Zg#: Note window closed: " + this._note.Title); | ||
250 | 61 | ZeitgeistHandler.SendEvent(this._note, Interpretation.Instance.EventInterpretation.LeaveEvent); | ||
251 | 62 | } | ||
252 | 63 | |||
253 | 64 | private Note _note; | ||
254 | 65 | |||
255 | 66 | private static List<Note> handledNotes = new List<Note>(); | ||
256 | 67 | } | ||
257 | 68 | } | ||
258 | 69 | |||
259 | 0 | 70 | ||
260 | === removed file 'tomboy/Zeitgeist.addin.xml' | |||
261 | --- tomboy/Zeitgeist.addin.xml 2010-08-16 11:07:09 +0000 | |||
262 | +++ tomboy/Zeitgeist.addin.xml 1970-01-01 00:00:00 +0000 | |||
263 | @@ -1,21 +0,0 @@ | |||
264 | 1 | <Addin id="Zeitgeist" | ||
265 | 2 | namespace="Tomboy" | ||
266 | 3 | name="Zeitgeist Integration" | ||
267 | 4 | author="Laszlo Pandy laszlok2@gmail.com" | ||
268 | 5 | description="Logs usage data to Zeitgeist." | ||
269 | 6 | category="Desktop Integration" | ||
270 | 7 | defaultEnabled="true" | ||
271 | 8 | version="0.1"> | ||
272 | 9 | |||
273 | 10 | <Runtime> | ||
274 | 11 | <Import assembly="Zeitgeist.dll" /> | ||
275 | 12 | </Runtime> | ||
276 | 13 | |||
277 | 14 | <Dependencies> | ||
278 | 15 | <Addin id="Tomboy" version="0.10" /> | ||
279 | 16 | </Dependencies> | ||
280 | 17 | |||
281 | 18 | <Extension path="/Tomboy/ApplicationAddins"> | ||
282 | 19 | <ApplicationAddin type="Tomboy.Zeitgeist.ZeitgeistAddin" /> | ||
283 | 20 | </Extension> | ||
284 | 21 | </Addin> | ||
285 | 22 | 0 | ||
286 | === modified file 'tomboy/Zeitgeist.cs' | |||
287 | --- tomboy/Zeitgeist.cs 2010-08-19 10:33:11 +0000 | |||
288 | +++ tomboy/Zeitgeist.cs 2010-11-12 17:39:29 +0000 | |||
289 | @@ -1,200 +1,83 @@ | |||
290 | 1 | |||
291 | 2 | using System; | 1 | using System; |
292 | 2 | using Zeitgeist.Datamodel; | ||
293 | 3 | using Zeitgeist; | ||
294 | 3 | using System.Collections.Generic; | 4 | using System.Collections.Generic; |
295 | 4 | using Tomboy; | 5 | using Tomboy; |
296 | 5 | using NDesk.DBus; | ||
297 | 6 | using Gtk; | ||
298 | 7 | using GLib; | ||
299 | 8 | using Mono.Unix.Native; | ||
300 | 9 | 6 | ||
301 | 10 | namespace Tomboy.Zeitgeist | 7 | namespace Tomboy.Zeitgeist |
302 | 11 | { | 8 | { |
418 | 12 | class NoteHandler | 9 | public class ZeitgeistHandler |
419 | 13 | { | 10 | { |
420 | 14 | private static List<string> handled_notes = new List<string>(); | 11 | public static bool SendEvent(Note note, NameUri eventInterpretation) |
421 | 15 | private Note note; | 12 | { |
422 | 16 | 13 | NameUri eventManifestation = Manifestation.Instance.EventManifestation.UserActivity; | |
423 | 17 | public NoteHandler(Note note) { | 14 | |
424 | 18 | if (handled_notes.Contains(note.Id) == false) { | 15 | NameUri subjectInterpretation = Interpretation.Instance.Document.Document; |
425 | 19 | this.note = note; | 16 | NameUri subjectManifestation = Manifestation.Instance.FileDataObject.FileDataObject; |
426 | 20 | note.Opened += HandleNoteOpened; | 17 | |
427 | 21 | if (note.HasWindow) { | 18 | Event ev = EventCreator.CreateEvent(note, eventInterpretation, eventManifestation, subjectInterpretation, subjectManifestation); |
428 | 22 | HandleNoteOpened(); | 19 | |
429 | 23 | } | 20 | |
430 | 24 | } | 21 | try |
431 | 25 | } | 22 | { |
432 | 26 | 23 | List<Event> listOfEvents = new List<Event>(); | |
433 | 27 | void HandleNoteOpened (object sender, EventArgs e) { | 24 | listOfEvents.Add(ev); |
434 | 28 | HandleNoteOpened(); | 25 | |
435 | 29 | } | 26 | GLib.Idle.Add(delegate() |
436 | 30 | void HandleNoteOpened() { | 27 | { |
437 | 31 | note.Window.Hidden += HandleNoteWindowHidden; | 28 | SendEvent(listOfEvents); |
438 | 32 | note.Window.Shown += HandleNoteWindowShown; | 29 | return false; |
439 | 33 | note.Renamed += HandleNoteRenamed; | 30 | }); |
440 | 34 | if (note.Window.Visible) { | 31 | |
441 | 35 | HandleNoteWindowShown(); | 32 | Console.WriteLine(string.Format("Operation {0} successful", ev.Interpretation.Name)); |
442 | 36 | } | 33 | return true; |
443 | 37 | } | 34 | } |
444 | 38 | 35 | catch(Exception e) | |
445 | 39 | void HandleNoteRenamed (Note sender, string old_title) | 36 | { |
446 | 40 | { | 37 | Console.WriteLine(e.StackTrace); |
447 | 41 | Console.WriteLine("Zg: Renamed: " + note.Title); | 38 | |
333 | 42 | ZeitgeistDbus.SendToZeitgeist(note, ZeitgeistDbus.EventInterpretation.ModifyEvent); | ||
334 | 43 | } | ||
335 | 44 | |||
336 | 45 | void HandleNoteWindowShown (object sender, EventArgs e) { | ||
337 | 46 | HandleNoteWindowShown(); | ||
338 | 47 | } | ||
339 | 48 | void HandleNoteWindowShown () | ||
340 | 49 | { | ||
341 | 50 | Console.WriteLine("Zg: Note window opened: " + note.Title); | ||
342 | 51 | ZeitgeistDbus.SendToZeitgeist(note, ZeitgeistDbus.EventInterpretation.OpenEvent); | ||
343 | 52 | } | ||
344 | 53 | |||
345 | 54 | void HandleNoteWindowHidden (object sender, EventArgs e) | ||
346 | 55 | { | ||
347 | 56 | Console.WriteLine("Zg: Note window closed: " + note.Title); | ||
348 | 57 | ZeitgeistDbus.SendToZeitgeist(note, ZeitgeistDbus.EventInterpretation.CloseEvent); | ||
349 | 58 | } | ||
350 | 59 | } | ||
351 | 60 | |||
352 | 61 | class ZeitgeistDbus | ||
353 | 62 | { | ||
354 | 63 | private static ILogger zeitgeist_proxy = | ||
355 | 64 | Bus.Session.GetObject<ILogger>("org.gnome.zeitgeist.Engine", | ||
356 | 65 | new ObjectPath("/org/gnome/zeitgeist/log/activity")); | ||
357 | 66 | |||
358 | 67 | public enum EventInterpretation { | ||
359 | 68 | OpenEvent, | ||
360 | 69 | CloseEvent, | ||
361 | 70 | CreateEvent, | ||
362 | 71 | ModifyEvent, | ||
363 | 72 | } | ||
364 | 73 | |||
365 | 74 | private static string GetEventInterpetation(EventInterpretation e) { | ||
366 | 75 | switch(e) { | ||
367 | 76 | case EventInterpretation.OpenEvent: | ||
368 | 77 | return "http://www.zeitgeist-project.com/ontologies/2010/01/27/zg#AccessEvent"; | ||
369 | 78 | case EventInterpretation.CloseEvent: | ||
370 | 79 | return "http://www.zeitgeist-project.com/ontologies/2010/01/27/zg#LeaveEvent"; | ||
371 | 80 | case EventInterpretation.CreateEvent: | ||
372 | 81 | return "http://www.zeitgeist-project.com/ontologies/2010/01/27/zg#CreateEvent"; | ||
373 | 82 | case EventInterpretation.ModifyEvent: | ||
374 | 83 | return "http://www.zeitgeist-project.com/ontologies/2010/01/27/zg#ModifyEvent"; | ||
375 | 84 | default: | ||
376 | 85 | return null; | ||
377 | 86 | } | ||
378 | 87 | } | ||
379 | 88 | |||
380 | 89 | public static void SendToZeitgeist(Note note, EventInterpretation ev_interp) { | ||
381 | 90 | if (zeitgeist_proxy == null) { | ||
382 | 91 | Console.WriteLine("Zg: cannot connect to zeitgeist, dbus proxy is null"); | ||
383 | 92 | return; | ||
384 | 93 | } | ||
385 | 94 | |||
386 | 95 | string ev_interp_string = GetEventInterpetation(ev_interp); | ||
387 | 96 | if (ev_interp_string == null) { | ||
388 | 97 | Console.WriteLine("Zg: unknown interpretation type: " + ev_interp.ToString()); | ||
389 | 98 | return; | ||
390 | 99 | } | ||
391 | 100 | |||
392 | 101 | Timeval t; | ||
393 | 102 | Syscall.gettimeofday(out t); | ||
394 | 103 | long millis_now = (t.tv_sec * 1000) + (t.tv_usec / 1000); | ||
395 | 104 | |||
396 | 105 | Event e = new Event(); | ||
397 | 106 | e.metadata = new string[5]; | ||
398 | 107 | e.metadata[0] = ""; //id (filled in by Zeitgeist) | ||
399 | 108 | e.metadata[1] = millis_now.ToString(); | ||
400 | 109 | e.metadata[2] = ev_interp_string; | ||
401 | 110 | e.metadata[3] = "http://www.zeitgeist-project.com/ontologies/2010/01/27/zg#UserActivity"; | ||
402 | 111 | e.metadata[4] = "application://tomboy.desktop"; | ||
403 | 112 | |||
404 | 113 | string[] subject = new string[7]; | ||
405 | 114 | subject[0] = note.Uri; | ||
406 | 115 | subject[1] = "http://www.semanticdesktop.org/ontologies/2007/03/22/nfo#Document"; | ||
407 | 116 | subject[2] = "http://www.semanticdesktop.org/ontologies/nfo#FileDataObject"; | ||
408 | 117 | subject[3] = ""; //origin | ||
409 | 118 | subject[4] = "application/x-tomboy"; //mimetype | ||
410 | 119 | subject[5] = note.Title; | ||
411 | 120 | subject[6] = ""; //storage id | ||
412 | 121 | |||
413 | 122 | e.subjects = new string[][] { subject }; | ||
414 | 123 | e.payload = new byte[0]; | ||
415 | 124 | |||
416 | 125 | GLib.Idle.Add(delegate() { | ||
417 | 126 | SendEvent(e); | ||
448 | 127 | return false; | 39 | return false; |
483 | 128 | }); | 40 | } |
484 | 129 | } | 41 | } |
485 | 130 | 42 | ||
486 | 131 | private static void SendEvent(Event e) { | 43 | private static void SendEvent(List<Event> e) |
487 | 132 | int[] inserted; | 44 | { |
488 | 133 | try { | 45 | LogClient client = new LogClient(); |
489 | 134 | inserted = zeitgeist_proxy.InsertEvents(new Event[] { e }); | 46 | client.InsertEvents(e); |
490 | 135 | } catch (Exception ex) { | 47 | } |
491 | 136 | Console.WriteLine("Zg: insertion failed: " + ex.Message); | 48 | } |
492 | 137 | return; | 49 | |
493 | 138 | } | 50 | public class EventCreator |
460 | 139 | |||
461 | 140 | if (inserted.Length > 0) { | ||
462 | 141 | Console.WriteLine("Zg: Inserted event: " + inserted[0]); | ||
463 | 142 | } | ||
464 | 143 | else { | ||
465 | 144 | Console.WriteLine("Zg: Insertion failed"); | ||
466 | 145 | } | ||
467 | 146 | return; | ||
468 | 147 | } | ||
469 | 148 | } | ||
470 | 149 | |||
471 | 150 | [NDesk.DBus.Interface ("org.gnome.zeitgeist.Log")] | ||
472 | 151 | interface ILogger { | ||
473 | 152 | int[] InsertEvents(Event[] events); | ||
474 | 153 | } | ||
475 | 154 | |||
476 | 155 | struct Event { | ||
477 | 156 | public string[] metadata; | ||
478 | 157 | public string[][] subjects; | ||
479 | 158 | public byte[] payload; | ||
480 | 159 | } | ||
481 | 160 | |||
482 | 161 | public class ZeitgeistAddin : ApplicationAddin | ||
494 | 162 | { | 51 | { |
527 | 163 | private bool _init = false; | 52 | public static Event CreateEvent(Note note, |
528 | 164 | public override bool Initialized { | 53 | NameUri eventInterpretation, |
529 | 165 | get { return _init; } | 54 | NameUri eventManifestation, |
530 | 166 | } | 55 | NameUri subjectInterpretation, |
531 | 167 | 56 | NameUri subjectManifestation) | |
532 | 168 | public override | 57 | { |
533 | 169 | void Initialize() { | 58 | Event ev = new Event(); |
534 | 170 | Console.WriteLine("Zg: init new"); | 59 | |
535 | 171 | init_handlers(); | 60 | |
536 | 172 | _init = true; | 61 | ev.Id = 0; |
537 | 173 | } | 62 | ev.Timestamp = DateTime.Now; |
538 | 174 | 63 | ev.Interpretation = eventInterpretation; | |
539 | 175 | public override | 64 | ev.Manifestation = eventManifestation; |
540 | 176 | void Shutdown() { | 65 | ev.Actor = ZeitgeistAddin.TomboyUri; |
541 | 177 | Console.WriteLine("Zg: shutdown"); | 66 | |
542 | 178 | } | 67 | Subject sub = new Subject(); |
543 | 179 | 68 | ||
544 | 180 | void HandleNoteAdded(object sender, Note new_note) { | 69 | sub.Uri = note.Uri; |
545 | 181 | Console.WriteLine("Zg: Note added: " + new_note.Title); | 70 | sub.Interpretation = subjectInterpretation; |
546 | 182 | Console.WriteLine("\t" + new_note.Uri); | 71 | sub.Manifestation = subjectManifestation; |
547 | 183 | 72 | sub.Origin = string.Empty; | |
548 | 184 | new NoteHandler(new_note); | 73 | sub.MimeType = ZeitgeistAddin.NoteMimetype; |
549 | 185 | ZeitgeistDbus.SendToZeitgeist(new_note, ZeitgeistDbus.EventInterpretation.CreateEvent); | 74 | sub.Text = note.Title; |
550 | 186 | } | 75 | sub.Storage = string.Empty; |
551 | 187 | 76 | ||
552 | 188 | public void init_handlers() { | 77 | ev.Subjects.Add(sub); |
553 | 189 | foreach (Note note in Tomboy.DefaultNoteManager.Notes) { | 78 | |
554 | 190 | new NoteHandler(note); | 79 | return ev; |
523 | 191 | } | ||
524 | 192 | |||
525 | 193 | Tomboy.DefaultNoteManager.NoteAdded -= HandleNoteAdded; | ||
526 | 194 | Tomboy.DefaultNoteManager.NoteAdded += HandleNoteAdded; | ||
555 | 195 | } | 80 | } |
556 | 196 | } | 81 | } |
557 | 197 | |||
558 | 198 | |||
559 | 199 | |||
560 | 200 | } | 82 | } |
561 | 83 | |||
562 | 201 | 84 | ||
563 | === removed file 'tomboy/Zeitgeist.mdp' | |||
564 | --- tomboy/Zeitgeist.mdp 2010-08-16 10:57:40 +0000 | |||
565 | +++ tomboy/Zeitgeist.mdp 1970-01-01 00:00:00 +0000 | |||
566 | @@ -1,28 +0,0 @@ | |||
567 | 1 | <Project name="Zeitgeist" fileversion="2.0" DefaultNamespace="Zeitgeist" language="C#" targetFramework="2.0" ctype="DotNetProject"> | ||
568 | 2 | <Configurations active="Debug"> | ||
569 | 3 | <Configuration name="Debug" ctype="DotNetProjectConfiguration"> | ||
570 | 4 | <Output directory="bin/Debug" assembly="Zeitgeist" /> | ||
571 | 5 | <Build debugmode="True" target="Library" /> | ||
572 | 6 | <Execution consolepause="False" runwithwarnings="True" runtime="MsNet" /> | ||
573 | 7 | <CodeGeneration compiler="Mcs" warninglevel="4" optimize="False" unsafecodeallowed="False" generateoverflowchecks="False" definesymbols="DEBUG" generatexmldocumentation="False" ctype="CSharpCompilerParameters" /> | ||
574 | 8 | </Configuration> | ||
575 | 9 | <Configuration name="Release" ctype="DotNetProjectConfiguration"> | ||
576 | 10 | <Output directory="bin/Release" assembly="Zeitgeist" /> | ||
577 | 11 | <Build debugmode="False" target="Library" /> | ||
578 | 12 | <Execution consolepause="False" runwithwarnings="True" runtime="MsNet" /> | ||
579 | 13 | <CodeGeneration compiler="Mcs" warninglevel="4" optimize="False" unsafecodeallowed="False" generateoverflowchecks="False" generatexmldocumentation="False" ctype="CSharpCompilerParameters" /> | ||
580 | 14 | </Configuration> | ||
581 | 15 | </Configurations> | ||
582 | 16 | <Contents> | ||
583 | 17 | <File subtype="Code" buildaction="Compile" name="Zeitgeist.cs" /> | ||
584 | 18 | <File subtype="Code" buildaction="EmbedAsResource" name="Zeitgeist.addin.xml" /> | ||
585 | 19 | </Contents> | ||
586 | 20 | <References> | ||
587 | 21 | <ProjectReference type="Gac" localcopy="True" refto="System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> | ||
588 | 22 | <ProjectReference type="Gac" localcopy="True" refto="glib-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f" /> | ||
589 | 23 | <ProjectReference type="Gac" localcopy="True" refto="NDesk.DBus, Version=1.0.0.0, Culture=neutral, PublicKeyToken=f6716e4f9b2ed099" /> | ||
590 | 24 | <ProjectReference type="Gac" localcopy="True" refto="gtk-sharp, Version=2.12.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f" /> | ||
591 | 25 | <ProjectReference type="Gac" localcopy="True" refto="Mono.Posix, Version=2.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756" /> | ||
592 | 26 | <ProjectReference type="Assembly" localcopy="True" specificVersion="False" refto="/usr/lib/tomboy/Tomboy.exe" /> | ||
593 | 27 | </References> | ||
594 | 28 | </Project> | ||
595 | 29 | 0 | ||
596 | === added file 'tomboy/ZeitgeistAddin.cs' | |||
597 | --- tomboy/ZeitgeistAddin.cs 1970-01-01 00:00:00 +0000 | |||
598 | +++ tomboy/ZeitgeistAddin.cs 2010-11-12 17:39:29 +0000 | |||
599 | @@ -0,0 +1,90 @@ | |||
600 | 1 | using System; | ||
601 | 2 | using Tomboy; | ||
602 | 3 | using System.Collections.Generic; | ||
603 | 4 | using System.IO; | ||
604 | 5 | using Zeitgeist.Datamodel; | ||
605 | 6 | |||
606 | 7 | namespace Tomboy.Zeitgeist | ||
607 | 8 | { | ||
608 | 9 | public class ZeitgeistAddin : ApplicationAddin | ||
609 | 10 | { | ||
610 | 11 | public ZeitgeistAddin () | ||
611 | 12 | { | ||
612 | 13 | notesList = new List<NoteHandler>(); | ||
613 | 14 | } | ||
614 | 15 | |||
615 | 16 | #region Overridden methods | ||
616 | 17 | |||
617 | 18 | public override bool Initialized | ||
618 | 19 | { | ||
619 | 20 | get | ||
620 | 21 | { | ||
621 | 22 | return _init; | ||
622 | 23 | } | ||
623 | 24 | } | ||
624 | 25 | |||
625 | 26 | public override void Initialize() | ||
626 | 27 | { | ||
627 | 28 | Console.WriteLine("Zg#: init new"); | ||
628 | 29 | |||
629 | 30 | // Initialize the handlers for hooking into Tomboy | ||
630 | 31 | InitHandlers(); | ||
631 | 32 | |||
632 | 33 | _init = true; | ||
633 | 34 | } | ||
634 | 35 | |||
635 | 36 | public override void Shutdown() | ||
636 | 37 | { | ||
637 | 38 | Console.WriteLine("Zg#: shutdown"); | ||
638 | 39 | } | ||
639 | 40 | |||
640 | 41 | #endregion | ||
641 | 42 | |||
642 | 43 | public void InitHandlers() | ||
643 | 44 | { | ||
644 | 45 | // For every note present in the store | ||
645 | 46 | |||
646 | 47 | foreach (Note note in Tomboy.DefaultNoteManager.Notes) | ||
647 | 48 | { | ||
648 | 49 | notesList.Add(new NoteHandler(note)); | ||
649 | 50 | } | ||
650 | 51 | |||
651 | 52 | Tomboy.DefaultNoteManager.NoteAdded -= HandleNoteAdded; | ||
652 | 53 | Tomboy.DefaultNoteManager.NoteAdded += HandleNoteAdded; | ||
653 | 54 | |||
654 | 55 | Tomboy.DefaultNoteManager.NoteDeleted -= HandleNoteDeleted; | ||
655 | 56 | Tomboy.DefaultNoteManager.NoteDeleted += HandleNoteDeleted; | ||
656 | 57 | } | ||
657 | 58 | |||
658 | 59 | void HandleNoteAdded(object sender, Note new_note) | ||
659 | 60 | { | ||
660 | 61 | Console.WriteLine("Zg#: Note added: " + new_note.Title); | ||
661 | 62 | Console.WriteLine("\t" + new_note.Uri); | ||
662 | 63 | |||
663 | 64 | notesList.Add(new NoteHandler(new_note)); | ||
664 | 65 | |||
665 | 66 | ZeitgeistHandler.SendEvent(new_note, Interpretation.Instance.EventInterpretation.CreateEvent); | ||
666 | 67 | } | ||
667 | 68 | |||
668 | 69 | void HandleNoteDeleted(object sender, Note new_note) | ||
669 | 70 | { | ||
670 | 71 | Console.WriteLine("Zg#: Note deleted: " + new_note.Title); | ||
671 | 72 | Console.WriteLine("\t" + new_note.Uri); | ||
672 | 73 | |||
673 | 74 | ZeitgeistHandler.SendEvent(new_note, Interpretation.Instance.EventInterpretation.DeleteEvent); | ||
674 | 75 | } | ||
675 | 76 | |||
676 | 77 | List<NoteHandler> notesList; | ||
677 | 78 | |||
678 | 79 | private bool _init = false; | ||
679 | 80 | |||
680 | 81 | #region Public Constants | ||
681 | 82 | |||
682 | 83 | public const string TomboyUri = "application://tomboy.desktop"; | ||
683 | 84 | |||
684 | 85 | public const string NoteMimetype = "application/x-note"; | ||
685 | 86 | |||
686 | 87 | #endregion | ||
687 | 88 | } | ||
688 | 89 | } | ||
689 | 90 | |||
690 | 0 | 91 | ||
691 | === added file 'tomboy/ZeitgeistDataprovider.addin.xml' | |||
692 | --- tomboy/ZeitgeistDataprovider.addin.xml 1970-01-01 00:00:00 +0000 | |||
693 | +++ tomboy/ZeitgeistDataprovider.addin.xml 2010-11-12 17:39:29 +0000 | |||
694 | @@ -0,0 +1,21 @@ | |||
695 | 1 | <Addin id="ZeitgeistDataprovider" | ||
696 | 2 | namespace="Tomboy" | ||
697 | 3 | name="Zeitgeist Dataprovider Add-in" | ||
698 | 4 | author="Manish Sinha" | ||
699 | 5 | description="Pushes Tomboy events like open/close/delete notes into Zeitgeist" | ||
700 | 6 | category="Logging" | ||
701 | 7 | defaultEnabled="false" | ||
702 | 8 | version="0.1"> | ||
703 | 9 | |||
704 | 10 | <Runtime> | ||
705 | 11 | <Import assembly="ZeitgeistDataprovider.dll" /> | ||
706 | 12 | </Runtime> | ||
707 | 13 | |||
708 | 14 | <Dependencies> | ||
709 | 15 | <Addin id="Tomboy" version="0.10" /> | ||
710 | 16 | </Dependencies> | ||
711 | 17 | |||
712 | 18 | <Extension path="/Tomboy/ApplicationAddins"> | ||
713 | 19 | <ApplicationAddin type="Tomboy.Zeitgeist.ZeitgeistAddin" /> | ||
714 | 20 | </Extension> | ||
715 | 21 | </Addin> | ||
716 | 0 | 22 | ||
717 | === added file 'tomboy/ZeitgeistDataprovider.csproj' | |||
718 | --- tomboy/ZeitgeistDataprovider.csproj 1970-01-01 00:00:00 +0000 | |||
719 | +++ tomboy/ZeitgeistDataprovider.csproj 2010-11-12 17:39:29 +0000 | |||
720 | @@ -0,0 +1,52 @@ | |||
721 | 1 | <?xml version="1.0" encoding="utf-8"?> | ||
722 | 2 | <Project DefaultTargets="Build" ToolsVersion="3.5" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> | ||
723 | 3 | <PropertyGroup> | ||
724 | 4 | <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> | ||
725 | 5 | <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> | ||
726 | 6 | <ProductVersion>9.0.21022</ProductVersion> | ||
727 | 7 | <SchemaVersion>2.0</SchemaVersion> | ||
728 | 8 | <ProjectGuid>{7F5F22BD-EF5D-4A73-AD3A-BEFF422E5CD0}</ProjectGuid> | ||
729 | 9 | <OutputType>Library</OutputType> | ||
730 | 10 | <RootNamespace>ZeitgeistDataProvider</RootNamespace> | ||
731 | 11 | <AssemblyName>ZeitgeistDataProvider</AssemblyName> | ||
732 | 12 | <TargetFrameworkVersion>v3.5</TargetFrameworkVersion> | ||
733 | 13 | </PropertyGroup> | ||
734 | 14 | <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> | ||
735 | 15 | <DebugSymbols>true</DebugSymbols> | ||
736 | 16 | <DebugType>full</DebugType> | ||
737 | 17 | <Optimize>false</Optimize> | ||
738 | 18 | <OutputPath>bin\Debug</OutputPath> | ||
739 | 19 | <DefineConstants>DEBUG</DefineConstants> | ||
740 | 20 | <ErrorReport>prompt</ErrorReport> | ||
741 | 21 | <WarningLevel>4</WarningLevel> | ||
742 | 22 | <ConsolePause>false</ConsolePause> | ||
743 | 23 | </PropertyGroup> | ||
744 | 24 | <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> | ||
745 | 25 | <DebugType>none</DebugType> | ||
746 | 26 | <Optimize>false</Optimize> | ||
747 | 27 | <OutputPath>bin\Release</OutputPath> | ||
748 | 28 | <ErrorReport>prompt</ErrorReport> | ||
749 | 29 | <WarningLevel>4</WarningLevel> | ||
750 | 30 | <ConsolePause>false</ConsolePause> | ||
751 | 31 | </PropertyGroup> | ||
752 | 32 | <ItemGroup> | ||
753 | 33 | <Reference Include="System" /> | ||
754 | 34 | <Reference Include="zeitgeist-sharp, Version=0.1.0.1, Culture=neutral, PublicKeyToken=e3e10a585a87d40c"> | ||
755 | 35 | <Package>zeitgeist-sharp</Package> | ||
756 | 36 | </Reference> | ||
757 | 37 | </ItemGroup> | ||
758 | 38 | <ItemGroup> | ||
759 | 39 | <EmbeddedResource Include="ZeitgeistDataprovider.addin.xml" /> | ||
760 | 40 | </ItemGroup> | ||
761 | 41 | <ItemGroup> | ||
762 | 42 | <Compile Include="PushEvents.cs" /> | ||
763 | 43 | <Compile Include="AssemblyInfo.cs" /> | ||
764 | 44 | </ItemGroup> | ||
765 | 45 | <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" /> | ||
766 | 46 | <ItemGroup> | ||
767 | 47 | <ProjectReference Include="..\..\..\Tomboy.csproj"> | ||
768 | 48 | <Project>{315DBB30-1461-4A41-A23F-A888D84E1EA0}</Project> | ||
769 | 49 | <Name>Tomboy</Name> | ||
770 | 50 | </ProjectReference> | ||
771 | 51 | </ItemGroup> | ||
772 | 52 | </Project> | ||
773 | 0 | 53 | ||
774 | === removed file 'tomboy/install.sh' | |||
775 | --- tomboy/install.sh 2010-02-03 16:06:55 +0000 | |||
776 | +++ tomboy/install.sh 1970-01-01 00:00:00 +0000 | |||
777 | @@ -1,13 +0,0 @@ | |||
778 | 1 | #!/bin/sh | ||
779 | 2 | |||
780 | 3 | mkdir -p ~/.config/tomboy/addins/ | ||
781 | 4 | |||
782 | 5 | # Please install monodevelop to get mdtool. | ||
783 | 6 | # Please edit Zeitgeist.mdp and change the local path of Tomboy.exe | ||
784 | 7 | # to the correct one for your environment (so it can link to the | ||
785 | 8 | # correct version of Tomboy). | ||
786 | 9 | mdtool build Zeitgeist.mdp | ||
787 | 10 | |||
788 | 11 | cp bin/Debug/Zeitgeist.dll ~/.config/tomboy/addins/Zeitgeist.dll | ||
789 | 12 | |||
790 | 13 |
I think the with/without-mono option isn't really necessary, with-mono is covered by --enable- all-plugins and without is detected automatically, and moreover if one specifies only --with-mono, configure will basically ignore it if mono dependencies are not installed.
The only question is what should happen if one would configure with "--enable- all-plugins --without-mono"