Merge lp:~robru/gwibber/friends into lp:~barry/gwibber/py3

Proposed by Robert Bruce Park
Status: Merged
Merged at revision: 1453
Proposed branch: lp:~robru/gwibber/friends
Merge into: lp:~barry/gwibber/py3
Diff against target: 116740 lines (+1318/-111611)
328 files modified
.bzrignore (+4/-210)
AUTHORS (+0/-1)
COPYING (+597/-317)
COPYING.GPL-3 (+0/-165)
COPYING.LGPL-2.1 (+0/-510)
HACKING (+0/-1)
INSTALL (+0/-370)
Makefile (+7/-6)
Makefile.am (+0/-54)
NEWS (+0/-195)
README (+0/-50)
acinclude.m4 (+0/-268)
autogen.sh (+0/-11)
bin/Makefile.am (+0/-4)
bin/gwibber-service (+0/-70)
client/COPYING (+0/-674)
client/Makefile.am (+0/-125)
client/attachments-item.vala (+0/-84)
client/gwibber-client.vala (+0/-453)
client/gwibber-poster.vala (+0/-90)
client/gwibber-preferences.vala (+0/-122)
client/home-item.vala (+0/-38)
client/messages-item.vala (+0/-39)
client/private-item.vala (+0/-39)
client/public-item.vala (+0/-47)
client/replies-item.vala (+0/-39)
client/searches-item.vala (+0/-196)
client/status-bar.vala (+0/-93)
client/stream-entry.vala (+0/-282)
client/tab-bar-item.vala (+0/-115)
client/tab-bar-widgets.vala (+0/-379)
client/tab-bar.vala (+0/-352)
client/users-item.vala (+0/-284)
configure.ac (+0/-333)
data/Makefile.am (+0/-59)
data/com.Gwibber.Connection.service.in (+0/-3)
data/com.Gwibber.Messages.service.in (+0/-3)
data/com.Gwibber.Searches.service.in (+0/-3)
data/com.Gwibber.Service.service.in (+0/-3)
data/com.Gwibber.Streams.service.in (+0/-3)
data/com.Gwibber.URLShorten.service.in (+0/-3)
data/gwibber-preferences-dialog.ui (+0/-508)
data/gwibber-preferences.desktop.in (+0/-11)
data/gwibber.application.in (+0/-12)
data/gwibber.convert (+0/-10)
data/gwibber.desktop.in.in (+0/-17)
data/gwibber.indicator (+0/-1)
data/icons/16x16/Makefile.am (+0/-1)
data/icons/16x16/apps/Makefile.am (+0/-7)
data/icons/24x24/Makefile.am (+0/-1)
data/icons/24x24/apps/Makefile.am (+0/-7)
data/icons/256x256/Makefile.am (+0/-1)
data/icons/256x256/apps/Makefile.am (+0/-7)
data/icons/32x32/Makefile.am (+0/-1)
data/icons/32x32/apps/Makefile.am (+0/-7)
data/icons/48x48/Makefile.am (+0/-1)
data/icons/48x48/apps/Makefile.am (+0/-7)
data/icons/Makefile.am (+0/-15)
data/icons/hicolor/16x16/Makefile.am (+0/-1)
data/icons/hicolor/16x16/apps/Makefile.am (+0/-11)
data/icons/hicolor/16x16/apps/facebook.svg (+0/-216)
data/icons/hicolor/16x16/apps/flickr.svg (+0/-314)
data/icons/hicolor/16x16/apps/identica.svg (+0/-342)
data/icons/hicolor/16x16/apps/openid.svg (+0/-197)
data/icons/hicolor/16x16/apps/statusnet.svg (+0/-332)
data/icons/hicolor/16x16/apps/stumbleupon.svg (+0/-168)
data/icons/hicolor/16x16/apps/twitter.svg (+0/-69)
data/icons/hicolor/16x16/status/Makefile.am (+0/-6)
data/icons/hicolor/22x22/Makefile.am (+0/-1)
data/icons/hicolor/22x22/apps/Makefile.am (+0/-11)
data/icons/hicolor/22x22/apps/facebook.svg (+0/-225)
data/icons/hicolor/22x22/apps/flickr.svg (+0/-286)
data/icons/hicolor/22x22/apps/identica.svg (+0/-336)
data/icons/hicolor/22x22/apps/openid.svg (+0/-220)
data/icons/hicolor/22x22/apps/statusnet.svg (+0/-326)
data/icons/hicolor/22x22/apps/stumbleupon.svg (+0/-192)
data/icons/hicolor/22x22/apps/twitter.svg (+0/-69)
data/icons/hicolor/22x22/places/Makefile.am (+0/-13)
data/icons/hicolor/22x22/status/Makefile.am (+0/-5)
data/icons/hicolor/48x48/Makefile.am (+0/-1)
data/icons/hicolor/48x48/places/Makefile.am (+0/-5)
data/icons/hicolor/COPYING.breakdance (+0/-21)
data/icons/hicolor/Makefile.am (+0/-15)
data/icons/hicolor/README (+0/-17)
data/icons/hicolor/scalable/Makefile.am (+0/-1)
data/icons/hicolor/scalable/apps/Makefile.am (+0/-11)
data/icons/hicolor/scalable/apps/facebook.svg (+0/-227)
data/icons/hicolor/scalable/apps/flickr.svg (+0/-206)
data/icons/hicolor/scalable/apps/identica.svg (+0/-207)
data/icons/hicolor/scalable/apps/openid.svg (+0/-223)
data/icons/hicolor/scalable/apps/statusnet.svg (+0/-190)
data/icons/hicolor/scalable/apps/stumbleupon.svg (+0/-201)
data/icons/hicolor/scalable/apps/twitter.svg (+0/-69)
data/icons/hicolor/scalable/places/Makefile.am (+0/-11)
data/icons/hicolor/scalable/places/group-images.svg (+0/-21)
data/icons/hicolor/scalable/places/group-links.svg (+0/-19)
data/icons/hicolor/scalable/places/group-messages.svg (+0/-8)
data/icons/hicolor/scalable/places/group-private.svg (+0/-12)
data/icons/hicolor/scalable/places/group-public.svg (+0/-16)
data/icons/hicolor/scalable/places/group-replies.svg (+0/-27)
data/icons/hicolor/scalable/places/group-videos.svg (+0/-12)
data/icons/scalable/Makefile.am (+0/-1)
data/icons/scalable/apps/Makefile.am (+0/-7)
data/icons/scalable/apps/gwibber.svg (+0/-1602)
data/icons/streams/16x16/Makefile.am (+0/-19)
data/icons/streams/24x24/Makefile.am (+0/-19)
data/icons/streams/32x32/Makefile.am (+0/-18)
data/icons/streams/Makefile.am (+0/-1)
data/org.gwibber.gschema.xml.in.in (+0/-133)
docs/gen.py (+0/-9)
examples/Makefile.am (+0/-89)
examples/entry-c.c (+0/-46)
examples/entry-python.py (+0/-40)
examples/entry-vala.vala (+0/-56)
examples/example-vala.vala (+0/-171)
friends/errors.py (+12/-11)
friends/main.py (+17/-16)
friends/protocols/facebook.py (+8/-7)
friends/protocols/flickr.py (+11/-10)
friends/protocols/foursquare.py (+11/-10)
friends/protocols/identica.py (+6/-5)
friends/protocols/twitter.py (+10/-9)
friends/service/connection.py (+11/-10)
friends/service/dispatcher.py (+32/-30)
friends/service/shortener.py (+12/-11)
friends/shorteners/base.py (+4/-3)
friends/shorteners/cligs.py (+7/-6)
friends/shorteners/isgd.py (+6/-5)
friends/shorteners/lookup.py (+10/-9)
friends/shorteners/snipurlcom.py (+6/-5)
friends/shorteners/tinyurlcom.py (+6/-5)
friends/shorteners/ur1ca.py (+7/-6)
friends/shorteners/zima.py (+6/-5)
friends/testing/com.canonical.Friends.Connection.service.in (+3/-0)
friends/testing/com.canonical.Friends.Service.service.in (+3/-0)
friends/testing/com.canonical.Friends.Test.service.in (+3/-0)
friends/testing/com.canonical.Friends.URLShorten.service.in (+3/-0)
friends/testing/dbus.py (+25/-17)
friends/testing/helpers.py (+4/-3)
friends/testing/mocks.py (+9/-8)
friends/testing/service.py (+12/-11)
friends/tests/data/foursquare-full.dat (+1/-1)
friends/tests/test_account.py (+12/-11)
friends/tests/test_authentication.py (+8/-7)
friends/tests/test_avatars.py (+26/-25)
friends/tests/test_cli.py (+6/-9)
friends/tests/test_dbus.py (+21/-20)
friends/tests/test_download.py (+24/-25)
friends/tests/test_facebook.py (+30/-29)
friends/tests/test_flickr.py (+45/-44)
friends/tests/test_foursquare.py (+22/-21)
friends/tests/test_identica.py (+14/-13)
friends/tests/test_logging.py (+25/-24)
friends/tests/test_menu.py (+5/-4)
friends/tests/test_model.py (+5/-4)
friends/tests/test_protocols.py (+29/-28)
friends/tests/test_shortener.py (+24/-23)
friends/tests/test_signaler.py (+5/-4)
friends/tests/test_time.py (+5/-4)
friends/tests/test_twitter.py (+57/-56)
friends/utils/account.py (+12/-11)
friends/utils/authentication.py (+5/-4)
friends/utils/avatar.py (+7/-6)
friends/utils/base.py (+12/-11)
friends/utils/download.py (+5/-4)
friends/utils/logging.py (+7/-6)
friends/utils/manager.py (+7/-6)
friends/utils/menus.py (+12/-11)
friends/utils/model.py (+6/-5)
friends/utils/options.py (+6/-8)
friends/utils/signaler.py (+4/-3)
friends/utils/time.py (+4/-3)
gwibber-0.3.pc.in (+0/-11)
gwibber-gtk-0.3.pc.in (+0/-11)
gwibber/gwibber/testing/com.Gwibber.Connection.service.in (+0/-3)
gwibber/gwibber/testing/com.Gwibber.Service.service.in (+0/-3)
gwibber/gwibber/testing/com.Gwibber.Test.service.in (+0/-3)
gwibber/gwibber/testing/com.Gwibber.URLShorten.service.in (+0/-3)
lens/Makefile.am (+0/-1)
lens/data/Makefile.am (+0/-26)
lens/data/applications-microblogging-panel.svg (+0/-15)
lens/data/gwibber.lens.in.in (+0/-14)
lens/data/unity-lens-gwibber.service.in (+0/-3)
lens/src/Makefile.am (+0/-76)
lens/src/daemon.vala (+0/-671)
lens/src/main.vala (+0/-104)
lens/src/schemas.vala (+0/-52)
libgwibber-gtk/Makefile.am (+0/-123)
libgwibber-gtk/action-box.vala (+0/-343)
libgwibber-gtk/entry.vala (+0/-506)
libgwibber-gtk/gwibber-gtk-0.3.deps (+0/-4)
libgwibber-gtk/search-view-tile.vala (+0/-148)
libgwibber-gtk/search-view.vala (+0/-307)
libgwibber-gtk/stream-view-tile.vala (+0/-997)
libgwibber-gtk/stream-view.vala (+0/-521)
libgwibber-gtk/user-view-tile.vala (+0/-383)
libgwibber-gtk/user-view.vala (+0/-305)
libgwibber/Makefile.am (+0/-104)
libgwibber/account.vala (+0/-135)
libgwibber/accounts.vala (+0/-77)
libgwibber/connection.vala (+0/-106)
libgwibber/gwibber-0.3.deps (+0/-7)
libgwibber/messages.vala (+0/-120)
libgwibber/searches.vala (+0/-226)
libgwibber/service.vala (+0/-514)
libgwibber/stream-model-schema.vala (+0/-64)
libgwibber/streams.vala (+0/-1058)
libgwibber/urlshorten.vala (+0/-84)
libgwibber/utils.vala (+0/-125)
man/Makefile.am (+0/-3)
man/gwibber-accounts.1 (+0/-23)
man/gwibber-poster.1 (+0/-33)
man/gwibber.1 (+0/-25)
po/LINGUAS (+0/-83)
po/Makevars (+0/-10)
po/POTFILES.in (+0/-43)
po/POTFILES.skip (+0/-19)
po/af.po (+0/-1055)
po/an.po (+0/-1068)
po/ar.po (+0/-1066)
po/ast.po (+0/-1081)
po/bg.po (+0/-1070)
po/bn.po (+0/-1086)
po/bs.po (+0/-1095)
po/ca.po (+0/-1081)
po/ca@valencia.po (+0/-1090)
po/cs.po (+0/-1093)
po/cy.po (+0/-1046)
po/da.po (+0/-1087)
po/de.po (+0/-1088)
po/el.po (+0/-1090)
po/en_AU.po (+0/-1087)
po/en_CA.po (+0/-1068)
po/en_GB.po (+0/-1087)
po/eo.po (+0/-1080)
po/es.po (+0/-1087)
po/et.po (+0/-1086)
po/eu.po (+0/-1087)
po/fa.po (+0/-1065)
po/fi.po (+0/-1086)
po/fil.po (+0/-1046)
po/fo.po (+0/-1045)
po/fr.po (+0/-1091)
po/fy.po (+0/-1068)
po/ga.po (+0/-1045)
po/gd.po (+0/-1045)
po/gl.po (+0/-1089)
po/gu.po (+0/-1045)
po/he.po (+0/-1084)
po/hi.po (+0/-1046)
po/hr.po (+0/-1097)
po/hu.po (+0/-1086)
po/hy.po (+0/-1045)
po/ia.po (+0/-1045)
po/id.po (+0/-1063)
po/io.po (+0/-1045)
po/is.po (+0/-1052)
po/it.po (+0/-1092)
po/ja.po (+0/-1074)
po/ka.po (+0/-1067)
po/kn.po (+0/-1046)
po/ko.po (+0/-1059)
po/la.po (+0/-1045)
po/lb.po (+0/-1071)
po/lo.po (+0/-1044)
po/lt.po (+0/-1074)
po/lv.po (+0/-1092)
po/mg.po (+0/-1040)
po/ml.po (+0/-1045)
po/mn.po (+0/-1045)
po/ms.po (+0/-1087)
po/nb.po (+0/-1056)
po/nl.po (+0/-1092)
po/nn.po (+0/-1045)
po/oc.po (+0/-1092)
po/pa.po (+0/-1058)
po/pl.po (+0/-1100)
po/pt.po (+0/-1045)
po/pt_BR.po (+0/-1087)
po/ro.po (+0/-1084)
po/ru.po (+0/-1098)
po/shn.po (+0/-1045)
po/si.po (+0/-1042)
po/sk.po (+0/-1091)
po/sl.po (+0/-1098)
po/sq.po (+0/-1087)
po/sr.po (+0/-1090)
po/sv.po (+0/-1080)
po/ta.po (+0/-1048)
po/te.po (+0/-1065)
po/th.po (+0/-1059)
po/tlh.po (+0/-1045)
po/tr.po (+0/-1076)
po/ug.po (+0/-1081)
po/uk.po (+0/-1079)
po/uz.po (+0/-1045)
po/vi.po (+0/-1072)
po/zh_CN.po (+0/-1055)
po/zh_HK.po (+0/-1063)
po/zh_TW.po (+0/-1064)
run-tests (+0/-26)
scripts/gwibber-client (+0/-11)
scripts/gwibber-errors.py (+0/-16)
scripts/gwibber-service-shutdown (+0/-3)
service/Makefile.am (+0/-31)
service/messages-model-service.vala (+0/-35)
setup.py (+6/-5)
tests/Makefile.am (+0/-33)
tests/data/sample.json (+0/-12)
tests/plugins/test/__init__.py (+0/-71)
tests/python/Makefile.am (+0/-32)
tests/python/run-test-streams (+0/-14)
tests/python/run-test-utils (+0/-14)
tests/python/streams/__init__.py (+0/-22)
tests/python/utils/__init__.py (+0/-69)
tests/service-start.in (+0/-54)
tests/vala/Makefile.am (+0/-57)
tests/vala/config.vapi (+0/-24)
tests/vala/test-streams.vala (+0/-52)
tests/vala/test-utils.vala (+0/-136)
tests/vala/test-vala.vala (+0/-54)
tools/debug_live.py (+6/-6)
tools/debug_slave.py (+3/-3)
vapi/Makefile.am (+0/-5)
vapi/config.vapi (+0/-38)
vapi/gtkspell-3.0.vapi (+0/-24)
vapi/libnotify.deps (+0/-4)
vapi/libnotify.vapi (+0/-69)
To merge this branch: bzr merge lp:~robru/gwibber/friends
Reviewer Review Type Date Requested Status
Barry Warsaw Pending
Review via email: mp+129510@code.launchpad.net

Description of the change

Not sure if this is where you want this merged, but all tests are passing and things are generally awesome. Let me know how you want to proceed with this ;-)

To post a comment you must log in.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file '.bzrignore'
--- .bzrignore 2012-08-16 21:13:30 +0000
+++ .bzrignore 2012-10-12 20:27:19 +0000
@@ -1,211 +1,5 @@
1unknown:
2.bzrignore
3gwibber/semantic.cache
4semantic.cache
5*.gmo
6*.lo
7*.mo
8ABOUT-NLS
9INSTALL
10Makefile
11Makefile.in
12aclocal.m4
13autom4te.cache/
14compile
15config.guess
16config.h
17config.h.in
18config.log
19config.rpath
20config.status
21config.sub
22configure
23depcomp
24gnome-doc-utils.make
25gtk-doc.make
26install-sh
27intltool-*
28libtool
29ltmain.sh
30m4/
31missing
32stamp-h1
33bindings/Makefile
34bindings/Makefile.in
35bindings/mono/Makefile
36bindings/mono/Makefile.in
37bindings/mono/gwibber/AssemblyInfo.cs
38bindings/mono/gwibber/Makefile
39bindings/mono/gwibber/Makefile.in
40bindings/mono/gwibber/generated/
41bindings/mono/gwibber/generated-stamp
42bindings/mono/gwibber/gwibber-api.middle
43bindings/mono/gwibber/gwibber-api.raw
44bindings/mono/gwibber/gwibber-api.xml
45bindings/mono/gwibber/gwibber-sharp.dll
46bindings/mono/gwibber/gwibber-sharp.dll.config
47bindings/mono/gwibber-gtk/AssemblyInfo.cs
48bindings/mono/gwibber-gtk/Makefile
49bindings/mono/gwibber-gtk/Makefile.in
50bindings/mono/gwibber-gtk/gwibber-gtk-sharp.dll.config
51client/.deps/
52client/.libs/
53client/Makefile
54client/Makefile.in
55client/gwibber-client
56client/gwibber-client.c
57client/gwibber-preferences
58client/gwibber-preferences.c
59client/gwibber_client_vala.stamp
60client/gwibber_preferences_vala.stamp
61client/home-item.c
62client/tab-bar-item.c
63client/tab-bar.c
64client/data/Makefile
65client/data/Makefile.in
66client/data/gwibber.desktop
67client/data/gwibber.desktop.in
68client/data/org.gwibber.gschema.valid
69client/data/org.gwibber.gschema.xml
70client/data/org.gwibber.gschema.xml.in
71data/Makefile
72data/Makefile.in
73docs/Makefile
74docs/Makefile.in
75docs/libgwibber/.libs/
76docs/libgwibber/Makefile
77docs/libgwibber/Makefile.in
78docs/libgwibber/html/
79docs/libgwibber/html-build.stamp
80docs/libgwibber/html.stamp
81docs/libgwibber/libgwibber-decl-list.txt
82docs/libgwibber/libgwibber-decl.txt
83docs/libgwibber/libgwibber-docs.sgml
84docs/libgwibber/libgwibber-overrides.txt
85docs/libgwibber/libgwibber-sections.txt
86docs/libgwibber/libgwibber-undeclared.txt
87docs/libgwibber/libgwibber-undocumented.txt
88docs/libgwibber/libgwibber-unused.txt
89docs/libgwibber/libgwibber.args
90docs/libgwibber/libgwibber.hierarchy
91docs/libgwibber/libgwibber.interfaces
92docs/libgwibber/libgwibber.prerequisites
93docs/libgwibber/libgwibber.signals
94docs/libgwibber/libgwibber.types
95docs/libgwibber/scan-build.stamp
96docs/libgwibber/sgml-build.stamp
97docs/libgwibber/sgml.stamp
98docs/libgwibber/tmpl/
99docs/libgwibber/tmpl-build.stamp
100docs/libgwibber/tmpl.stamp
101docs/libgwibber/version.xml
102docs/libgwibber/xml/
103docs/libgwibber-gtk/.libs/
104docs/libgwibber-gtk/Makefile
105docs/libgwibber-gtk/Makefile.in
106docs/libgwibber-gtk/html/
107docs/libgwibber-gtk/html-build.stamp
108docs/libgwibber-gtk/html.stamp
109docs/libgwibber-gtk/libgwibber-gtk-decl-list.txt
110docs/libgwibber-gtk/libgwibber-gtk-decl-list.txt.bak
111docs/libgwibber-gtk/libgwibber-gtk-decl.txt
112docs/libgwibber-gtk/libgwibber-gtk-decl.txt.bak
113docs/libgwibber-gtk/libgwibber-gtk-docs.sgml
114docs/libgwibber-gtk/libgwibber-gtk-overrides.txt
115docs/libgwibber-gtk/libgwibber-gtk-sections.txt
116docs/libgwibber-gtk/libgwibber-gtk-undeclared.txt
117docs/libgwibber-gtk/libgwibber-gtk-undocumented.txt
118docs/libgwibber-gtk/libgwibber-gtk-unused.txt
119docs/libgwibber-gtk/libgwibber-gtk.args
120docs/libgwibber-gtk/libgwibber-gtk.hierarchy
121docs/libgwibber-gtk/libgwibber-gtk.interfaces
122docs/libgwibber-gtk/libgwibber-gtk.prerequisites
123docs/libgwibber-gtk/libgwibber-gtk.signals
124docs/libgwibber-gtk/libgwibber-gtk.types
125docs/libgwibber-gtk/scan-build.stamp
126docs/libgwibber-gtk/sgml-build.stamp
127docs/libgwibber-gtk/sgml.stamp
128docs/libgwibber-gtk/tmpl/
129docs/libgwibber-gtk/tmpl-build.stamp
130docs/libgwibber-gtk/tmpl.stamp
131docs/libgwibber-gtk/version.xml
132docs/libgwibber-gtk/xml/
133lens/Makefile
134lens/Makefile.in
135lens/data/Makefile
136lens/data/Makefile.in
137lens/data/unity-lens-gwibber.service
138lens/src/.deps/
139lens/src/.libs/
140lens/src/Makefile
141lens/src/Makefile.in
142lens/src/daemon.c
143lens/src/main.c
144lens/src/schemas.c
145lens/src/unity-lens-gwibber
146lens/src/unity_lens_gwibber.vala.stamp
147libgwibber/.deps/
148libgwibber/.libs/
149libgwibber/Makefile
150libgwibber/Makefile.in
151libgwibber/account.c
152libgwibber/accounts.c
153libgwibber/connection.c
154libgwibber/gwibber-0.1.vapi
155libgwibber/gwibber.h
156libgwibber/libgwibber.la
157libgwibber/libgwibber_la-account.lo
158libgwibber/libgwibber_la-accounts.lo
159libgwibber/libgwibber_la-connection.lo
160libgwibber/libgwibber_la-messages.lo
161libgwibber/libgwibber_la-service.lo
162libgwibber/libgwibber_la-stream-model-schema.lo
163libgwibber/libgwibber_la-streams.lo
164libgwibber/libgwibber_la-urlshorten.lo
165libgwibber/libgwibber_la-utils.lo
166libgwibber/libgwibber_la_vala.stamp
167libgwibber/messages.c
168libgwibber/service.c
169libgwibber/stream-model-schema.c
170libgwibber/streams.c
171libgwibber/urlshorten.c
172libgwibber/utils.c
173libgwibber-gtk/.deps/
174libgwibber-gtk/.libs/
175libgwibber-gtk/Makefile
176libgwibber-gtk/Makefile.in
177libgwibber-gtk/entry.c
178libgwibber-gtk/gwibber-gtk-0.1.vapi
179libgwibber-gtk/gwibber-gtk.h
180libgwibber-gtk/libgwibber-gtk.la
181libgwibber-gtk/libgwibber_gtk_la-entry.lo
182libgwibber-gtk/libgwibber_gtk_la-stream-view-tile.lo
183libgwibber-gtk/libgwibber_gtk_la-stream-view.lo
184libgwibber-gtk/libgwibber_gtk_la_vala.stamp
185libgwibber-gtk/stream-view-tile.c
186libgwibber-gtk/stream-view.c
187po/.intltool-merge-cache
188po/Makefile
189po/Makefile.in
190po/Makefile.in.in
191po/Makevars.template
192po/POTFILES
193po/Rules-quot
194po/boldquot.sed
195po/en@boldquot.header
196po/en@quot.header
197po/insert-header.sin
198po/quot.sed
199po/remove-potcdate.sin
200po/stamp-it
201vapi/Makefile
202vapi/Makefile.in
203client/*.v
204client/private-item.c
205client/replies-item.c
206client/attachments-item.c
207client/tab-bar-widgets.c
208__pycache__1__pycache__
209gwibber/build2*.pyc
210gwibber/dist3*.egg-info
211gwibber/gwibber.egg-info4build
5dist
2126
=== removed file 'AUTHORS'
--- AUTHORS 2011-06-18 02:54:49 +0000
+++ AUTHORS 1970-01-01 00:00:00 +0000
@@ -1,1 +0,0 @@
1Ken VanDine <ken.vandine@canonical.com>
20
=== modified file 'COPYING'
--- COPYING 2007-06-06 08:18:03 +0000
+++ COPYING 2012-10-12 20:27:19 +0000
@@ -1,339 +1,619 @@
1 GNU GENERAL PUBLIC LICENSE1 GNU GENERAL PUBLIC LICENSE
2 Version 2, June 19912 Version 3, 29 June 2007
33
4 Copyright (C) 1989, 1991 Free Software Foundation, Inc.,4 Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
5 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
6 Everyone is permitted to copy and distribute verbatim copies5 Everyone is permitted to copy and distribute verbatim copies
7 of this license document, but changing it is not allowed.6 of this license document, but changing it is not allowed.
87
9 Preamble8 Preamble
109
11 The licenses for most software are designed to take away your10 The GNU General Public License is a free, copyleft license for
12freedom to share and change it. By contrast, the GNU General Public11software and other kinds of works.
13License is intended to guarantee your freedom to share and change free12
14software--to make sure the software is free for all its users. This13 The licenses for most software and other practical works are designed
15General Public License applies to most of the Free Software14to take away your freedom to share and change the works. By contrast,
16Foundation's software and to any other program whose authors commit to15the GNU General Public License is intended to guarantee your freedom to
17using it. (Some other Free Software Foundation software is covered by16share and change all versions of a program--to make sure it remains free
18the GNU Lesser General Public License instead.) You can apply it to17software for all its users. We, the Free Software Foundation, use the
18GNU General Public License for most of our software; it applies also to
19any other work released this way by its authors. You can apply it to
19your programs, too.20your programs, too.
2021
21 When we speak of free software, we are referring to freedom, not22 When we speak of free software, we are referring to freedom, not
22price. Our General Public Licenses are designed to make sure that you23price. Our General Public Licenses are designed to make sure that you
23have the freedom to distribute copies of free software (and charge for24have the freedom to distribute copies of free software (and charge for
24this service if you wish), that you receive source code or can get it25them if you wish), that you receive source code or can get it if you
25if you want it, that you can change the software or use pieces of it26want it, that you can change the software or use pieces of it in new
26in new free programs; and that you know you can do these things.27free programs, and that you know you can do these things.
2728
28 To protect your rights, we need to make restrictions that forbid29 To protect your rights, we need to prevent others from denying you
29anyone to deny you these rights or to ask you to surrender the rights.30these rights or asking you to surrender the rights. Therefore, you have
30These restrictions translate to certain responsibilities for you if you31certain responsibilities if you distribute copies of the software, or if
31distribute copies of the software, or if you modify it.32you modify it: responsibilities to respect the freedom of others.
3233
33 For example, if you distribute copies of such a program, whether34 For example, if you distribute copies of such a program, whether
34gratis or for a fee, you must give the recipients all the rights that35gratis or for a fee, you must pass on to the recipients the same
35you have. You must make sure that they, too, receive or can get the36freedoms that you received. You must make sure that they, too, receive
36source code. And you must show them these terms so they know their37or can get the source code. And you must show them these terms so they
37rights.38know their rights.
3839
39 We protect your rights with two steps: (1) copyright the software, and40 Developers that use the GNU GPL protect your rights with two steps:
40(2) offer you this license which gives you legal permission to copy,41(1) assert copyright on the software, and (2) offer you this License
41distribute and/or modify the software.42giving you legal permission to copy, distribute and/or modify it.
4243
43 Also, for each author's protection and ours, we want to make certain44 For the developers' and authors' protection, the GPL clearly explains
44that everyone understands that there is no warranty for this free45that there is no warranty for this free software. For both users' and
45software. If the software is modified by someone else and passed on, we46authors' sake, the GPL requires that modified versions be marked as
46want its recipients to know that what they have is not the original, so47changed, so that their problems will not be attributed erroneously to
47that any problems introduced by others will not reflect on the original48authors of previous versions.
48authors' reputations.49
4950 Some devices are designed to deny users access to install or run
50 Finally, any free program is threatened constantly by software51modified versions of the software inside them, although the manufacturer
51patents. We wish to avoid the danger that redistributors of a free52can do so. This is fundamentally incompatible with the aim of
52program will individually obtain patent licenses, in effect making the53protecting users' freedom to change the software. The systematic
53program proprietary. To prevent this, we have made it clear that any54pattern of such abuse occurs in the area of products for individuals to
54patent must be licensed for everyone's free use or not licensed at all.55use, which is precisely where it is most unacceptable. Therefore, we
56have designed this version of the GPL to prohibit the practice for those
57products. If such problems arise substantially in other domains, we
58stand ready to extend this provision to those domains in future versions
59of the GPL, as needed to protect the freedom of users.
60
61 Finally, every program is threatened constantly by software patents.
62States should not allow patents to restrict development and use of
63software on general-purpose computers, but in those that do, we wish to
64avoid the special danger that patents applied to a free program could
65make it effectively proprietary. To prevent this, the GPL assures that
66patents cannot be used to render the program non-free.
5567
56 The precise terms and conditions for copying, distribution and68 The precise terms and conditions for copying, distribution and
57modification follow.69modification follow.
5870
59 GNU GENERAL PUBLIC LICENSE71 TERMS AND CONDITIONS
60 TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION72
6173 0. Definitions.
62 0. This License applies to any program or other work which contains74
63a notice placed by the copyright holder saying it may be distributed75 "This License" refers to version 3 of the GNU General Public License.
64under the terms of this General Public License. The "Program", below,76
65refers to any such program or work, and a "work based on the Program"77 "Copyright" also means copyright-like laws that apply to other kinds of
66means either the Program or any derivative work under copyright law:78works, such as semiconductor masks.
67that is to say, a work containing the Program or a portion of it,79
68either verbatim or with modifications and/or translated into another80 "The Program" refers to any copyrightable work licensed under this
69language. (Hereinafter, translation is included without limitation in81License. Each licensee is addressed as "you". "Licensees" and
70the term "modification".) Each licensee is addressed as "you".82"recipients" may be individuals or organizations.
7183
72Activities other than copying, distribution and modification are not84 To "modify" a work means to copy from or adapt all or part of the work
73covered by this License; they are outside its scope. The act of85in a fashion requiring copyright permission, other than the making of an
74running the Program is not restricted, and the output from the Program86exact copy. The resulting work is called a "modified version" of the
75is covered only if its contents constitute a work based on the87earlier work or a work "based on" the earlier work.
76Program (independent of having been made by running the Program).88
77Whether that is true depends on what the Program does.89 A "covered work" means either the unmodified Program or a work based
7890on the Program.
79 1. You may copy and distribute verbatim copies of the Program's91
80source code as you receive it, in any medium, provided that you92 To "propagate" a work means to do anything with it that, without
81conspicuously and appropriately publish on each copy an appropriate93permission, would make you directly or secondarily liable for
82copyright notice and disclaimer of warranty; keep intact all the94infringement under applicable copyright law, except executing it on a
83notices that refer to this License and to the absence of any warranty;95computer or modifying a private copy. Propagation includes copying,
84and give any other recipients of the Program a copy of this License96distribution (with or without modification), making available to the
85along with the Program.97public, and in some countries other activities as well.
8698
87You may charge a fee for the physical act of transferring a copy, and99 To "convey" a work means any kind of propagation that enables other
88you may at your option offer warranty protection in exchange for a fee.100parties to make or receive copies. Mere interaction with a user through
89101a computer network, with no transfer of a copy, is not conveying.
90 2. You may modify your copy or copies of the Program or any portion102
91of it, thus forming a work based on the Program, and copy and103 An interactive user interface displays "Appropriate Legal Notices"
92distribute such modifications or work under the terms of Section 1104to the extent that it includes a convenient and prominently visible
93above, provided that you also meet all of these conditions:105feature that (1) displays an appropriate copyright notice, and (2)
94106tells the user that there is no warranty for the work (except to the
95 a) You must cause the modified files to carry prominent notices107extent that warranties are provided), that licensees may convey the
96 stating that you changed the files and the date of any change.108work under this License, and how to view a copy of this License. If
97109the interface presents a list of user commands or options, such as a
98 b) You must cause any work that you distribute or publish, that in110menu, a prominent item in the list meets this criterion.
99 whole or in part contains or is derived from the Program or any111
100 part thereof, to be licensed as a whole at no charge to all third112 1. Source Code.
101 parties under the terms of this License.113
102114 The "source code" for a work means the preferred form of the work
103 c) If the modified program normally reads commands interactively115for making modifications to it. "Object code" means any non-source
104 when run, you must cause it, when started running for such116form of a work.
105 interactive use in the most ordinary way, to print or display an117
106 announcement including an appropriate copyright notice and a118 A "Standard Interface" means an interface that either is an official
107 notice that there is no warranty (or else, saying that you provide119standard defined by a recognized standards body, or, in the case of
108 a warranty) and that users may redistribute the program under120interfaces specified for a particular programming language, one that
109 these conditions, and telling the user how to view a copy of this121is widely used among developers working in that language.
110 License. (Exception: if the Program itself is interactive but122
111 does not normally print such an announcement, your work based on123 The "System Libraries" of an executable work include anything, other
112 the Program is not required to print an announcement.)124than the work as a whole, that (a) is included in the normal form of
113125packaging a Major Component, but which is not part of that Major
114These requirements apply to the modified work as a whole. If126Component, and (b) serves only to enable use of the work with that
115identifiable sections of that work are not derived from the Program,127Major Component, or to implement a Standard Interface for which an
116and can be reasonably considered independent and separate works in128implementation is available to the public in source code form. A
117themselves, then this License, and its terms, do not apply to those129"Major Component", in this context, means a major essential component
118sections when you distribute them as separate works. But when you130(kernel, window system, and so on) of the specific operating system
119distribute the same sections as part of a whole which is a work based131(if any) on which the executable work runs, or a compiler used to
120on the Program, the distribution of the whole must be on the terms of132produce the work, or an object code interpreter used to run it.
121this License, whose permissions for other licensees extend to the133
122entire whole, and thus to each and every part regardless of who wrote it.134 The "Corresponding Source" for a work in object code form means all
123135the source code needed to generate, install, and (for an executable
124Thus, it is not the intent of this section to claim rights or contest136work) run the object code and to modify the work, including scripts to
125your rights to work written entirely by you; rather, the intent is to137control those activities. However, it does not include the work's
126exercise the right to control the distribution of derivative or138System Libraries, or general-purpose tools or generally available free
127collective works based on the Program.139programs which are used unmodified in performing those activities but
128140which are not part of the work. For example, Corresponding Source
129In addition, mere aggregation of another work not based on the Program141includes interface definition files associated with source files for
130with the Program (or with a work based on the Program) on a volume of142the work, and the source code for shared libraries and dynamically
131a storage or distribution medium does not bring the other work under143linked subprograms that the work is specifically designed to require,
132the scope of this License.144such as by intimate data communication or control flow between those
133145subprograms and other parts of the work.
134 3. You may copy and distribute the Program (or a work based on it,146
135under Section 2) in object code or executable form under the terms of147 The Corresponding Source need not include anything that users
136Sections 1 and 2 above provided that you also do one of the following:148can regenerate automatically from other parts of the Corresponding
137149Source.
138 a) Accompany it with the complete corresponding machine-readable150
139 source code, which must be distributed under the terms of Sections151 The Corresponding Source for a work in source code form is that
140 1 and 2 above on a medium customarily used for software interchange; or,152same work.
141153
142 b) Accompany it with a written offer, valid for at least three154 2. Basic Permissions.
143 years, to give any third party, for a charge no more than your155
144 cost of physically performing source distribution, a complete156 All rights granted under this License are granted for the term of
145 machine-readable copy of the corresponding source code, to be157copyright on the Program, and are irrevocable provided the stated
146 distributed under the terms of Sections 1 and 2 above on a medium158conditions are met. This License explicitly affirms your unlimited
147 customarily used for software interchange; or,159permission to run the unmodified Program. The output from running a
148160covered work is covered by this License only if the output, given its
149 c) Accompany it with the information you received as to the offer161content, constitutes a covered work. This License acknowledges your
150 to distribute corresponding source code. (This alternative is162rights of fair use or other equivalent, as provided by copyright law.
151 allowed only for noncommercial distribution and only if you163
152 received the program in object code or executable form with such164 You may make, run and propagate covered works that you do not
153 an offer, in accord with Subsection b above.)165convey, without conditions so long as your license otherwise remains
154166in force. You may convey covered works to others for the sole purpose
155The source code for a work means the preferred form of the work for167of having them make modifications exclusively for you, or provide you
156making modifications to it. For an executable work, complete source168with facilities for running those works, provided that you comply with
157code means all the source code for all modules it contains, plus any169the terms of this License in conveying all material for which you do
158associated interface definition files, plus the scripts used to170not control copyright. Those thus making or running the covered works
159control compilation and installation of the executable. However, as a171for you must do so exclusively on your behalf, under your direction
160special exception, the source code distributed need not include172and control, on terms that prohibit them from making any copies of
161anything that is normally distributed (in either source or binary173your copyrighted material outside their relationship with you.
162form) with the major components (compiler, kernel, and so on) of the174
163operating system on which the executable runs, unless that component175 Conveying under any other circumstances is permitted solely under
164itself accompanies the executable.176the conditions stated below. Sublicensing is not allowed; section 10
165177makes it unnecessary.
166If distribution of executable or object code is made by offering178
167access to copy from a designated place, then offering equivalent179 3. Protecting Users' Legal Rights From Anti-Circumvention Law.
168access to copy the source code from the same place counts as180
169distribution of the source code, even though third parties are not181 No covered work shall be deemed part of an effective technological
170compelled to copy the source along with the object code.182measure under any applicable law fulfilling obligations under article
17118311 of the WIPO copyright treaty adopted on 20 December 1996, or
172 4. You may not copy, modify, sublicense, or distribute the Program184similar laws prohibiting or restricting circumvention of such
173except as expressly provided under this License. Any attempt185measures.
174otherwise to copy, modify, sublicense or distribute the Program is186
175void, and will automatically terminate your rights under this License.187 When you convey a covered work, you waive any legal power to forbid
176However, parties who have received copies, or rights, from you under188circumvention of technological measures to the extent such circumvention
177this License will not have their licenses terminated so long as such189is effected by exercising rights under this License with respect to
178parties remain in full compliance.190the covered work, and you disclaim any intention to limit operation or
179191modification of the work as a means of enforcing, against the work's
180 5. You are not required to accept this License, since you have not192users, your or third parties' legal rights to forbid circumvention of
181signed it. However, nothing else grants you permission to modify or193technological measures.
182distribute the Program or its derivative works. These actions are194
183prohibited by law if you do not accept this License. Therefore, by195 4. Conveying Verbatim Copies.
184modifying or distributing the Program (or any work based on the196
185Program), you indicate your acceptance of this License to do so, and197 You may convey verbatim copies of the Program's source code as you
186all its terms and conditions for copying, distributing or modifying198receive it, in any medium, provided that you conspicuously and
187the Program or works based on it.199appropriately publish on each copy an appropriate copyright notice;
188200keep intact all notices stating that this License and any
189 6. Each time you redistribute the Program (or any work based on the201non-permissive terms added in accord with section 7 apply to the code;
190Program), the recipient automatically receives a license from the202keep intact all notices of the absence of any warranty; and give all
191original licensor to copy, distribute or modify the Program subject to203recipients a copy of this License along with the Program.
192these terms and conditions. You may not impose any further204
193restrictions on the recipients' exercise of the rights granted herein.205 You may charge any price or no price for each copy that you convey,
194You are not responsible for enforcing compliance by third parties to206and you may offer support or warranty protection for a fee.
207
208 5. Conveying Modified Source Versions.
209
210 You may convey a work based on the Program, or the modifications to
211produce it from the Program, in the form of source code under the
212terms of section 4, provided that you also meet all of these conditions:
213
214 a) The work must carry prominent notices stating that you modified
215 it, and giving a relevant date.
216
217 b) The work must carry prominent notices stating that it is
218 released under this License and any conditions added under section
219 7. This requirement modifies the requirement in section 4 to
220 "keep intact all notices".
221
222 c) You must license the entire work, as a whole, under this
223 License to anyone who comes into possession of a copy. This
224 License will therefore apply, along with any applicable section 7
225 additional terms, to the whole of the work, and all its parts,
226 regardless of how they are packaged. This License gives no
227 permission to license the work in any other way, but it does not
228 invalidate such permission if you have separately received it.
229
230 d) If the work has interactive user interfaces, each must display
231 Appropriate Legal Notices; however, if the Program has interactive
232 interfaces that do not display Appropriate Legal Notices, your
233 work need not make them do so.
234
235 A compilation of a covered work with other separate and independent
236works, which are not by their nature extensions of the covered work,
237and which are not combined with it such as to form a larger program,
238in or on a volume of a storage or distribution medium, is called an
239"aggregate" if the compilation and its resulting copyright are not
240used to limit the access or legal rights of the compilation's users
241beyond what the individual works permit. Inclusion of a covered work
242in an aggregate does not cause this License to apply to the other
243parts of the aggregate.
244
245 6. Conveying Non-Source Forms.
246
247 You may convey a covered work in object code form under the terms
248of sections 4 and 5, provided that you also convey the
249machine-readable Corresponding Source under the terms of this License,
250in one of these ways:
251
252 a) Convey the object code in, or embodied in, a physical product
253 (including a physical distribution medium), accompanied by the
254 Corresponding Source fixed on a durable physical medium
255 customarily used for software interchange.
256
257 b) Convey the object code in, or embodied in, a physical product
258 (including a physical distribution medium), accompanied by a
259 written offer, valid for at least three years and valid for as
260 long as you offer spare parts or customer support for that product
261 model, to give anyone who possesses the object code either (1) a
262 copy of the Corresponding Source for all the software in the
263 product that is covered by this License, on a durable physical
264 medium customarily used for software interchange, for a price no
265 more than your reasonable cost of physically performing this
266 conveying of source, or (2) access to copy the
267 Corresponding Source from a network server at no charge.
268
269 c) Convey individual copies of the object code with a copy of the
270 written offer to provide the Corresponding Source. This
271 alternative is allowed only occasionally and noncommercially, and
272 only if you received the object code with such an offer, in accord
273 with subsection 6b.
274
275 d) Convey the object code by offering access from a designated
276 place (gratis or for a charge), and offer equivalent access to the
277 Corresponding Source in the same way through the same place at no
278 further charge. You need not require recipients to copy the
279 Corresponding Source along with the object code. If the place to
280 copy the object code is a network server, the Corresponding Source
281 may be on a different server (operated by you or a third party)
282 that supports equivalent copying facilities, provided you maintain
283 clear directions next to the object code saying where to find the
284 Corresponding Source. Regardless of what server hosts the
285 Corresponding Source, you remain obligated to ensure that it is
286 available for as long as needed to satisfy these requirements.
287
288 e) Convey the object code using peer-to-peer transmission, provided
289 you inform other peers where the object code and Corresponding
290 Source of the work are being offered to the general public at no
291 charge under subsection 6d.
292
293 A separable portion of the object code, whose source code is excluded
294from the Corresponding Source as a System Library, need not be
295included in conveying the object code work.
296
297 A "User Product" is either (1) a "consumer product", which means any
298tangible personal property which is normally used for personal, family,
299or household purposes, or (2) anything designed or sold for incorporation
300into a dwelling. In determining whether a product is a consumer product,
301doubtful cases shall be resolved in favor of coverage. For a particular
302product received by a particular user, "normally used" refers to a
303typical or common use of that class of product, regardless of the status
304of the particular user or of the way in which the particular user
305actually uses, or expects or is expected to use, the product. A product
306is a consumer product regardless of whether the product has substantial
307commercial, industrial or non-consumer uses, unless such uses represent
308the only significant mode of use of the product.
309
310 "Installation Information" for a User Product means any methods,
311procedures, authorization keys, or other information required to install
312and execute modified versions of a covered work in that User Product from
313a modified version of its Corresponding Source. The information must
314suffice to ensure that the continued functioning of the modified object
315code is in no case prevented or interfered with solely because
316modification has been made.
317
318 If you convey an object code work under this section in, or with, or
319specifically for use in, a User Product, and the conveying occurs as
320part of a transaction in which the right of possession and use of the
321User Product is transferred to the recipient in perpetuity or for a
322fixed term (regardless of how the transaction is characterized), the
323Corresponding Source conveyed under this section must be accompanied
324by the Installation Information. But this requirement does not apply
325if neither you nor any third party retains the ability to install
326modified object code on the User Product (for example, the work has
327been installed in ROM).
328
329 The requirement to provide Installation Information does not include a
330requirement to continue to provide support service, warranty, or updates
331for a work that has been modified or installed by the recipient, or for
332the User Product in which it has been modified or installed. Access to a
333network may be denied when the modification itself materially and
334adversely affects the operation of the network or violates the rules and
335protocols for communication across the network.
336
337 Corresponding Source conveyed, and Installation Information provided,
338in accord with this section must be in a format that is publicly
339documented (and with an implementation available to the public in
340source code form), and must require no special password or key for
341unpacking, reading or copying.
342
343 7. Additional Terms.
344
345 "Additional permissions" are terms that supplement the terms of this
346License by making exceptions from one or more of its conditions.
347Additional permissions that are applicable to the entire Program shall
348be treated as though they were included in this License, to the extent
349that they are valid under applicable law. If additional permissions
350apply only to part of the Program, that part may be used separately
351under those permissions, but the entire Program remains governed by
352this License without regard to the additional permissions.
353
354 When you convey a copy of a covered work, you may at your option
355remove any additional permissions from that copy, or from any part of
356it. (Additional permissions may be written to require their own
357removal in certain cases when you modify the work.) You may place
358additional permissions on material, added by you to a covered work,
359for which you have or can give appropriate copyright permission.
360
361 Notwithstanding any other provision of this License, for material you
362add to a covered work, you may (if authorized by the copyright holders of
363that material) supplement the terms of this License with terms:
364
365 a) Disclaiming warranty or limiting liability differently from the
366 terms of sections 15 and 16 of this License; or
367
368 b) Requiring preservation of specified reasonable legal notices or
369 author attributions in that material or in the Appropriate Legal
370 Notices displayed by works containing it; or
371
372 c) Prohibiting misrepresentation of the origin of that material, or
373 requiring that modified versions of such material be marked in
374 reasonable ways as different from the original version; or
375
376 d) Limiting the use for publicity purposes of names of licensors or
377 authors of the material; or
378
379 e) Declining to grant rights under trademark law for use of some
380 trade names, trademarks, or service marks; or
381
382 f) Requiring indemnification of licensors and authors of that
383 material by anyone who conveys the material (or modified versions of
384 it) with contractual assumptions of liability to the recipient, for
385 any liability that these contractual assumptions directly impose on
386 those licensors and authors.
387
388 All other non-permissive additional terms are considered "further
389restrictions" within the meaning of section 10. If the Program as you
390received it, or any part of it, contains a notice stating that it is
391governed by this License along with a term that is a further
392restriction, you may remove that term. If a license document contains
393a further restriction but permits relicensing or conveying under this
394License, you may add to a covered work material governed by the terms
395of that license document, provided that the further restriction does
396not survive such relicensing or conveying.
397
398 If you add terms to a covered work in accord with this section, you
399must place, in the relevant source files, a statement of the
400additional terms that apply to those files, or a notice indicating
401where to find the applicable terms.
402
403 Additional terms, permissive or non-permissive, may be stated in the
404form of a separately written license, or stated as exceptions;
405the above requirements apply either way.
406
407 8. Termination.
408
409 You may not propagate or modify a covered work except as expressly
410provided under this License. Any attempt otherwise to propagate or
411modify it is void, and will automatically terminate your rights under
412this License (including any patent licenses granted under the third
413paragraph of section 11).
414
415 However, if you cease all violation of this License, then your
416license from a particular copyright holder is reinstated (a)
417provisionally, unless and until the copyright holder explicitly and
418finally terminates your license, and (b) permanently, if the copyright
419holder fails to notify you of the violation by some reasonable means
420prior to 60 days after the cessation.
421
422 Moreover, your license from a particular copyright holder is
423reinstated permanently if the copyright holder notifies you of the
424violation by some reasonable means, this is the first time you have
425received notice of violation of this License (for any work) from that
426copyright holder, and you cure the violation prior to 30 days after
427your receipt of the notice.
428
429 Termination of your rights under this section does not terminate the
430licenses of parties who have received copies or rights from you under
431this License. If your rights have been terminated and not permanently
432reinstated, you do not qualify to receive new licenses for the same
433material under section 10.
434
435 9. Acceptance Not Required for Having Copies.
436
437 You are not required to accept this License in order to receive or
438run a copy of the Program. Ancillary propagation of a covered work
439occurring solely as a consequence of using peer-to-peer transmission
440to receive a copy likewise does not require acceptance. However,
441nothing other than this License grants you permission to propagate or
442modify any covered work. These actions infringe copyright if you do
443not accept this License. Therefore, by modifying or propagating a
444covered work, you indicate your acceptance of this License to do so.
445
446 10. Automatic Licensing of Downstream Recipients.
447
448 Each time you convey a covered work, the recipient automatically
449receives a license from the original licensors, to run, modify and
450propagate that work, subject to this License. You are not responsible
451for enforcing compliance by third parties with this License.
452
453 An "entity transaction" is a transaction transferring control of an
454organization, or substantially all assets of one, or subdividing an
455organization, or merging organizations. If propagation of a covered
456work results from an entity transaction, each party to that
457transaction who receives a copy of the work also receives whatever
458licenses to the work the party's predecessor in interest had or could
459give under the previous paragraph, plus a right to possession of the
460Corresponding Source of the work from the predecessor in interest, if
461the predecessor has it or can get it with reasonable efforts.
462
463 You may not impose any further restrictions on the exercise of the
464rights granted or affirmed under this License. For example, you may
465not impose a license fee, royalty, or other charge for exercise of
466rights granted under this License, and you may not initiate litigation
467(including a cross-claim or counterclaim in a lawsuit) alleging that
468any patent claim is infringed by making, using, selling, offering for
469sale, or importing the Program or any portion of it.
470
471 11. Patents.
472
473 A "contributor" is a copyright holder who authorizes use under this
474License of the Program or a work on which the Program is based. The
475work thus licensed is called the contributor's "contributor version".
476
477 A contributor's "essential patent claims" are all patent claims
478owned or controlled by the contributor, whether already acquired or
479hereafter acquired, that would be infringed by some manner, permitted
480by this License, of making, using, or selling its contributor version,
481but do not include claims that would be infringed only as a
482consequence of further modification of the contributor version. For
483purposes of this definition, "control" includes the right to grant
484patent sublicenses in a manner consistent with the requirements of
195this License.485this License.
196486
197 7. If, as a consequence of a court judgment or allegation of patent487 Each contributor grants you a non-exclusive, worldwide, royalty-free
198infringement or for any other reason (not limited to patent issues),488patent license under the contributor's essential patent claims, to
199conditions are imposed on you (whether by court order, agreement or489make, use, sell, offer for sale, import and otherwise run, modify and
490propagate the contents of its contributor version.
491
492 In the following three paragraphs, a "patent license" is any express
493agreement or commitment, however denominated, not to enforce a patent
494(such as an express permission to practice a patent or covenant not to
495sue for patent infringement). To "grant" such a patent license to a
496party means to make such an agreement or commitment not to enforce a
497patent against the party.
498
499 If you convey a covered work, knowingly relying on a patent license,
500and the Corresponding Source of the work is not available for anyone
501to copy, free of charge and under the terms of this License, through a
502publicly available network server or other readily accessible means,
503then you must either (1) cause the Corresponding Source to be so
504available, or (2) arrange to deprive yourself of the benefit of the
505patent license for this particular work, or (3) arrange, in a manner
506consistent with the requirements of this License, to extend the patent
507license to downstream recipients. "Knowingly relying" means you have
508actual knowledge that, but for the patent license, your conveying the
509covered work in a country, or your recipient's use of the covered work
510in a country, would infringe one or more identifiable patents in that
511country that you have reason to believe are valid.
512
513 If, pursuant to or in connection with a single transaction or
514arrangement, you convey, or propagate by procuring conveyance of, a
515covered work, and grant a patent license to some of the parties
516receiving the covered work authorizing them to use, propagate, modify
517or convey a specific copy of the covered work, then the patent license
518you grant is automatically extended to all recipients of the covered
519work and works based on it.
520
521 A patent license is "discriminatory" if it does not include within
522the scope of its coverage, prohibits the exercise of, or is
523conditioned on the non-exercise of one or more of the rights that are
524specifically granted under this License. You may not convey a covered
525work if you are a party to an arrangement with a third party that is
526in the business of distributing software, under which you make payment
527to the third party based on the extent of your activity of conveying
528the work, and under which the third party grants, to any of the
529parties who would receive the covered work from you, a discriminatory
530patent license (a) in connection with copies of the covered work
531conveyed by you (or copies made from those copies), or (b) primarily
532for and in connection with specific products or compilations that
533contain the covered work, unless you entered into that arrangement,
534or that patent license was granted, prior to 28 March 2007.
535
536 Nothing in this License shall be construed as excluding or limiting
537any implied license or other defenses to infringement that may
538otherwise be available to you under applicable patent law.
539
540 12. No Surrender of Others' Freedom.
541
542 If conditions are imposed on you (whether by court order, agreement or
200otherwise) that contradict the conditions of this License, they do not543otherwise) that contradict the conditions of this License, they do not
201excuse you from the conditions of this License. If you cannot544excuse you from the conditions of this License. If you cannot convey a
202distribute so as to satisfy simultaneously your obligations under this545covered work so as to satisfy simultaneously your obligations under this
203License and any other pertinent obligations, then as a consequence you546License and any other pertinent obligations, then as a consequence you may
204may not distribute the Program at all. For example, if a patent547not convey it at all. For example, if you agree to terms that obligate you
205license would not permit royalty-free redistribution of the Program by548to collect a royalty for further conveying from those to whom you convey
206all those who receive copies directly or indirectly through you, then549the Program, the only way you could satisfy both those terms and this
207the only way you could satisfy both it and this License would be to550License would be to refrain entirely from conveying the Program.
208refrain entirely from distribution of the Program.551
209552 13. Use with the GNU Affero General Public License.
210If any portion of this section is held invalid or unenforceable under553
211any particular circumstance, the balance of the section is intended to554 Notwithstanding any other provision of this License, you have
212apply and the section as a whole is intended to apply in other555permission to link or combine any covered work with a work licensed
213circumstances.556under version 3 of the GNU Affero General Public License into a single
214557combined work, and to convey the resulting work. The terms of this
215It is not the purpose of this section to induce you to infringe any558License will continue to apply to the part which is the covered work,
216patents or other property right claims or to contest validity of any559but the special requirements of the GNU Affero General Public License,
217such claims; this section has the sole purpose of protecting the560section 13, concerning interaction through a network will apply to the
218integrity of the free software distribution system, which is561combination as such.
219implemented by public license practices. Many people have made562
220generous contributions to the wide range of software distributed563 14. Revised Versions of this License.
221through that system in reliance on consistent application of that564
222system; it is up to the author/donor to decide if he or she is willing565 The Free Software Foundation may publish revised and/or new versions of
223to distribute software through any other system and a licensee cannot566the GNU General Public License from time to time. Such new versions will
224impose that choice.
225
226This section is intended to make thoroughly clear what is believed to
227be a consequence of the rest of this License.
228
229 8. If the distribution and/or use of the Program is restricted in
230certain countries either by patents or by copyrighted interfaces, the
231original copyright holder who places the Program under this License
232may add an explicit geographical distribution limitation excluding
233those countries, so that distribution is permitted only in or among
234countries not thus excluded. In such case, this License incorporates
235the limitation as if written in the body of this License.
236
237 9. The Free Software Foundation may publish revised and/or new versions
238of the General Public License from time to time. Such new versions will
239be similar in spirit to the present version, but may differ in detail to567be similar in spirit to the present version, but may differ in detail to
240address new problems or concerns.568address new problems or concerns.
241569
242Each version is given a distinguishing version number. If the Program570 Each version is given a distinguishing version number. If the
243specifies a version number of this License which applies to it and "any571Program specifies that a certain numbered version of the GNU General
244later version", you have the option of following the terms and conditions572Public License "or any later version" applies to it, you have the
245either of that version or of any later version published by the Free573option of following the terms and conditions either of that numbered
246Software Foundation. If the Program does not specify a version number of574version or of any later version published by the Free Software
247this License, you may choose any version ever published by the Free Software575Foundation. If the Program does not specify a version number of the
248Foundation.576GNU General Public License, you may choose any version ever published
249577by the Free Software Foundation.
250 10. If you wish to incorporate parts of the Program into other free578
251programs whose distribution conditions are different, write to the author579 If the Program specifies that a proxy can decide which future
252to ask for permission. For software which is copyrighted by the Free580versions of the GNU General Public License can be used, that proxy's
253Software Foundation, write to the Free Software Foundation; we sometimes581public statement of acceptance of a version permanently authorizes you
254make exceptions for this. Our decision will be guided by the two goals582to choose that version for the Program.
255of preserving the free status of all derivatives of our free software and583
256of promoting the sharing and reuse of software generally.584 Later license versions may give you additional or different
257585permissions. However, no additional obligations are imposed on any
258 NO WARRANTY586author or copyright holder as a result of your choosing to follow a
259587later version.
260 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY588
261FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN589 15. Disclaimer of Warranty.
262OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES590
263PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED591 THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
264OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF592APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
265MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS593HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
266TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE594OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
267PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,595THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
268REPAIR OR CORRECTION.596PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
269597IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
270 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING598ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
271WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR599
272REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,600 16. Limitation of Liability.
273INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING601
274OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED602 IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
275TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY603WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
276YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER604THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
277PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE605GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
278POSSIBILITY OF SUCH DAMAGES.606USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
279607DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
280 END OF TERMS AND CONDITIONS608PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
281609EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
282 How to Apply These Terms to Your New Programs610SUCH DAMAGES.
283611
284 If you develop a new program, and you want it to be of the greatest612 17. Interpretation of Sections 15 and 16.
285possible use to the public, the best way to achieve this is to make it613
286free software which everyone can redistribute and change under these terms.614 If the disclaimer of warranty and limitation of liability provided
287615above cannot be given local legal effect according to their terms,
288 To do so, attach the following notices to the program. It is safest616reviewing courts shall apply local law that most closely approximates
289to attach them to the start of each source file to most effectively617an absolute waiver of all civil liability in connection with the
290convey the exclusion of warranty; and each file should have at least618Program, unless a warranty or assumption of liability accompanies a
291the "copyright" line and a pointer to where the full notice is found.619copy of the Program in return for a fee.
292
293 <one line to give the program's name and a brief idea of what it does.>
294 Copyright (C) <year> <name of author>
295
296 This program is free software; you can redistribute it and/or modify
297 it under the terms of the GNU General Public License as published by
298 the Free Software Foundation; either version 2 of the License, or
299 (at your option) any later version.
300
301 This program is distributed in the hope that it will be useful,
302 but WITHOUT ANY WARRANTY; without even the implied warranty of
303 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
304 GNU General Public License for more details.
305
306 You should have received a copy of the GNU General Public License along
307 with this program; if not, write to the Free Software Foundation, Inc.,
308 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
309
310Also add information on how to contact you by electronic and paper mail.
311
312If the program is interactive, make it output a short notice like this
313when it starts in an interactive mode:
314
315 Gnomovision version 69, Copyright (C) year name of author
316 Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
317 This is free software, and you are welcome to redistribute it
318 under certain conditions; type `show c' for details.
319
320The hypothetical commands `show w' and `show c' should show the appropriate
321parts of the General Public License. Of course, the commands you use may
322be called something other than `show w' and `show c'; they could even be
323mouse-clicks or menu items--whatever suits your program.
324
325You should also get your employer (if you work as a programmer) or your
326school, if any, to sign a "copyright disclaimer" for the program, if
327necessary. Here is a sample; alter the names:
328
329 Yoyodyne, Inc., hereby disclaims all copyright interest in the program
330 `Gnomovision' (which makes passes at compilers) written by James Hacker.
331
332 <signature of Ty Coon>, 1 April 1989
333 Ty Coon, President of Vice
334
335This General Public License does not permit incorporating your program into
336proprietary programs. If your program is a subroutine library, you may
337consider it more useful to permit linking proprietary applications with the
338library. If this is what you want to do, use the GNU Lesser General
339Public License instead of this License.
340620
=== removed file 'COPYING.GPL-3'
--- COPYING.GPL-3 2011-06-18 02:54:49 +0000
+++ COPYING.GPL-3 1970-01-01 00:00:00 +0000
@@ -1,165 +0,0 @@
1 GNU LESSER GENERAL PUBLIC LICENSE
2 Version 3, 29 June 2007
3
4 Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
5 Everyone is permitted to copy and distribute verbatim copies
6 of this license document, but changing it is not allowed.
7
8
9 This version of the GNU Lesser General Public License incorporates
10the terms and conditions of version 3 of the GNU General Public
11License, supplemented by the additional permissions listed below.
12
13 0. Additional Definitions.
14
15 As used herein, "this License" refers to version 3 of the GNU Lesser
16General Public License, and the "GNU GPL" refers to version 3 of the GNU
17General Public License.
18
19 "The Library" refers to a covered work governed by this License,
20other than an Application or a Combined Work as defined below.
21
22 An "Application" is any work that makes use of an interface provided
23by the Library, but which is not otherwise based on the Library.
24Defining a subclass of a class defined by the Library is deemed a mode
25of using an interface provided by the Library.
26
27 A "Combined Work" is a work produced by combining or linking an
28Application with the Library. The particular version of the Library
29with which the Combined Work was made is also called the "Linked
30Version".
31
32 The "Minimal Corresponding Source" for a Combined Work means the
33Corresponding Source for the Combined Work, excluding any source code
34for portions of the Combined Work that, considered in isolation, are
35based on the Application, and not on the Linked Version.
36
37 The "Corresponding Application Code" for a Combined Work means the
38object code and/or source code for the Application, including any data
39and utility programs needed for reproducing the Combined Work from the
40Application, but excluding the System Libraries of the Combined Work.
41
42 1. Exception to Section 3 of the GNU GPL.
43
44 You may convey a covered work under sections 3 and 4 of this License
45without being bound by section 3 of the GNU GPL.
46
47 2. Conveying Modified Versions.
48
49 If you modify a copy of the Library, and, in your modifications, a
50facility refers to a function or data to be supplied by an Application
51that uses the facility (other than as an argument passed when the
52facility is invoked), then you may convey a copy of the modified
53version:
54
55 a) under this License, provided that you make a good faith effort to
56 ensure that, in the event an Application does not supply the
57 function or data, the facility still operates, and performs
58 whatever part of its purpose remains meaningful, or
59
60 b) under the GNU GPL, with none of the additional permissions of
61 this License applicable to that copy.
62
63 3. Object Code Incorporating Material from Library Header Files.
64
65 The object code form of an Application may incorporate material from
66a header file that is part of the Library. You may convey such object
67code under terms of your choice, provided that, if the incorporated
68material is not limited to numerical parameters, data structure
69layouts and accessors, or small macros, inline functions and templates
70(ten or fewer lines in length), you do both of the following:
71
72 a) Give prominent notice with each copy of the object code that the
73 Library is used in it and that the Library and its use are
74 covered by this License.
75
76 b) Accompany the object code with a copy of the GNU GPL and this license
77 document.
78
79 4. Combined Works.
80
81 You may convey a Combined Work under terms of your choice that,
82taken together, effectively do not restrict modification of the
83portions of the Library contained in the Combined Work and reverse
84engineering for debugging such modifications, if you also do each of
85the following:
86
87 a) Give prominent notice with each copy of the Combined Work that
88 the Library is used in it and that the Library and its use are
89 covered by this License.
90
91 b) Accompany the Combined Work with a copy of the GNU GPL and this license
92 document.
93
94 c) For a Combined Work that displays copyright notices during
95 execution, include the copyright notice for the Library among
96 these notices, as well as a reference directing the user to the
97 copies of the GNU GPL and this license document.
98
99 d) Do one of the following:
100
101 0) Convey the Minimal Corresponding Source under the terms of this
102 License, and the Corresponding Application Code in a form
103 suitable for, and under terms that permit, the user to
104 recombine or relink the Application with a modified version of
105 the Linked Version to produce a modified Combined Work, in the
106 manner specified by section 6 of the GNU GPL for conveying
107 Corresponding Source.
108
109 1) Use a suitable shared library mechanism for linking with the
110 Library. A suitable mechanism is one that (a) uses at run time
111 a copy of the Library already present on the user's computer
112 system, and (b) will operate properly with a modified version
113 of the Library that is interface-compatible with the Linked
114 Version.
115
116 e) Provide Installation Information, but only if you would otherwise
117 be required to provide such information under section 6 of the
118 GNU GPL, and only to the extent that such information is
119 necessary to install and execute a modified version of the
120 Combined Work produced by recombining or relinking the
121 Application with a modified version of the Linked Version. (If
122 you use option 4d0, the Installation Information must accompany
123 the Minimal Corresponding Source and Corresponding Application
124 Code. If you use option 4d1, you must provide the Installation
125 Information in the manner specified by section 6 of the GNU GPL
126 for conveying Corresponding Source.)
127
128 5. Combined Libraries.
129
130 You may place library facilities that are a work based on the
131Library side by side in a single library together with other library
132facilities that are not Applications and are not covered by this
133License, and convey such a combined library under terms of your
134choice, if you do both of the following:
135
136 a) Accompany the combined library with a copy of the same work based
137 on the Library, uncombined with any other library facilities,
138 conveyed under the terms of this License.
139
140 b) Give prominent notice with the combined library that part of it
141 is a work based on the Library, and explaining where to find the
142 accompanying uncombined form of the same work.
143
144 6. Revised Versions of the GNU Lesser General Public License.
145
146 The Free Software Foundation may publish revised and/or new versions
147of the GNU Lesser General Public License from time to time. Such new
148versions will be similar in spirit to the present version, but may
149differ in detail to address new problems or concerns.
150
151 Each version is given a distinguishing version number. If the
152Library as you received it specifies that a certain numbered version
153of the GNU Lesser General Public License "or any later version"
154applies to it, you have the option of following the terms and
155conditions either of that published version or of any later version
156published by the Free Software Foundation. If the Library as you
157received it does not specify a version number of the GNU Lesser
158General Public License, you may choose any version of the GNU Lesser
159General Public License ever published by the Free Software Foundation.
160
161 If the Library as you received it specifies that a proxy can decide
162whether future versions of the GNU Lesser General Public License shall
163apply, that proxy's public statement of acceptance of any version is
164permanent authorization for you to choose that version for the
165Library.
1660
=== removed file 'COPYING.LGPL-2.1'
--- COPYING.LGPL-2.1 2011-04-14 03:03:24 +0000
+++ COPYING.LGPL-2.1 1970-01-01 00:00:00 +0000
@@ -1,510 +0,0 @@
1
2 GNU LESSER GENERAL PUBLIC LICENSE
3 Version 2.1, February 1999
4
5 Copyright (C) 1991, 1999 Free Software Foundation, Inc.
6 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
7 Everyone is permitted to copy and distribute verbatim copies
8 of this license document, but changing it is not allowed.
9
10[This is the first released version of the Lesser GPL. It also counts
11 as the successor of the GNU Library Public License, version 2, hence
12 the version number 2.1.]
13
14 Preamble
15
16 The licenses for most software are designed to take away your
17freedom to share and change it. By contrast, the GNU General Public
18Licenses are intended to guarantee your freedom to share and change
19free software--to make sure the software is free for all its users.
20
21 This license, the Lesser General Public License, applies to some
22specially designated software packages--typically libraries--of the
23Free Software Foundation and other authors who decide to use it. You
24can use it too, but we suggest you first think carefully about whether
25this license or the ordinary General Public License is the better
26strategy to use in any particular case, based on the explanations
27below.
28
29 When we speak of free software, we are referring to freedom of use,
30not price. Our General Public Licenses are designed to make sure that
31you have the freedom to distribute copies of free software (and charge
32for this service if you wish); that you receive source code or can get
33it if you want it; that you can change the software and use pieces of
34it in new free programs; and that you are informed that you can do
35these things.
36
37 To protect your rights, we need to make restrictions that forbid
38distributors to deny you these rights or to ask you to surrender these
39rights. These restrictions translate to certain responsibilities for
40you if you distribute copies of the library or if you modify it.
41
42 For example, if you distribute copies of the library, whether gratis
43or for a fee, you must give the recipients all the rights that we gave
44you. You must make sure that they, too, receive or can get the source
45code. If you link other code with the library, you must provide
46complete object files to the recipients, so that they can relink them
47with the library after making changes to the library and recompiling
48it. And you must show them these terms so they know their rights.
49
50 We protect your rights with a two-step method: (1) we copyright the
51library, and (2) we offer you this license, which gives you legal
52permission to copy, distribute and/or modify the library.
53
54 To protect each distributor, we want to make it very clear that
55there is no warranty for the free library. Also, if the library is
56modified by someone else and passed on, the recipients should know
57that what they have is not the original version, so that the original
58author's reputation will not be affected by problems that might be
59introduced by others.
60
610
62 Finally, software patents pose a constant threat to the existence of
63any free program. We wish to make sure that a company cannot
64effectively restrict the users of a free program by obtaining a
65restrictive license from a patent holder. Therefore, we insist that
66any patent license obtained for a version of the library must be
67consistent with the full freedom of use specified in this license.
68
69 Most GNU software, including some libraries, is covered by the
70ordinary GNU General Public License. This license, the GNU Lesser
71General Public License, applies to certain designated libraries, and
72is quite different from the ordinary General Public License. We use
73this license for certain libraries in order to permit linking those
74libraries into non-free programs.
75
76 When a program is linked with a library, whether statically or using
77a shared library, the combination of the two is legally speaking a
78combined work, a derivative of the original library. The ordinary
79General Public License therefore permits such linking only if the
80entire combination fits its criteria of freedom. The Lesser General
81Public License permits more lax criteria for linking other code with
82the library.
83
84 We call this license the "Lesser" General Public License because it
85does Less to protect the user's freedom than the ordinary General
86Public License. It also provides other free software developers Less
87of an advantage over competing non-free programs. These disadvantages
88are the reason we use the ordinary General Public License for many
89libraries. However, the Lesser license provides advantages in certain
90special circumstances.
91
92 For example, on rare occasions, there may be a special need to
93encourage the widest possible use of a certain library, so that it
94becomes a de-facto standard. To achieve this, non-free programs must
95be allowed to use the library. A more frequent case is that a free
96library does the same job as widely used non-free libraries. In this
97case, there is little to gain by limiting the free library to free
98software only, so we use the Lesser General Public License.
99
100 In other cases, permission to use a particular library in non-free
101programs enables a greater number of people to use a large body of
102free software. For example, permission to use the GNU C Library in
103non-free programs enables many more people to use the whole GNU
104operating system, as well as its variant, the GNU/Linux operating
105system.
106
107 Although the Lesser General Public License is Less protective of the
108users' freedom, it does ensure that the user of a program that is
109linked with the Library has the freedom and the wherewithal to run
110that program using a modified version of the Library.
111
112 The precise terms and conditions for copying, distribution and
113modification follow. Pay close attention to the difference between a
114"work based on the library" and a "work that uses the library". The
115former contains code derived from the library, whereas the latter must
116be combined with the library in order to run.
117
1181
119 GNU LESSER GENERAL PUBLIC LICENSE
120 TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
121
122 0. This License Agreement applies to any software library or other
123program which contains a notice placed by the copyright holder or
124other authorized party saying it may be distributed under the terms of
125this Lesser General Public License (also called "this License").
126Each licensee is addressed as "you".
127
128 A "library" means a collection of software functions and/or data
129prepared so as to be conveniently linked with application programs
130(which use some of those functions and data) to form executables.
131
132 The "Library", below, refers to any such software library or work
133which has been distributed under these terms. A "work based on the
134Library" means either the Library or any derivative work under
135copyright law: that is to say, a work containing the Library or a
136portion of it, either verbatim or with modifications and/or translated
137straightforwardly into another language. (Hereinafter, translation is
138included without limitation in the term "modification".)
139
140 "Source code" for a work means the preferred form of the work for
141making modifications to it. For a library, complete source code means
142all the source code for all modules it contains, plus any associated
143interface definition files, plus the scripts used to control
144compilation and installation of the library.
145
146 Activities other than copying, distribution and modification are not
147covered by this License; they are outside its scope. The act of
148running a program using the Library is not restricted, and output from
149such a program is covered only if its contents constitute a work based
150on the Library (independent of the use of the Library in a tool for
151writing it). Whether that is true depends on what the Library does
152and what the program that uses the Library does.
153
154 1. You may copy and distribute verbatim copies of the Library's
155complete source code as you receive it, in any medium, provided that
156you conspicuously and appropriately publish on each copy an
157appropriate copyright notice and disclaimer of warranty; keep intact
158all the notices that refer to this License and to the absence of any
159warranty; and distribute a copy of this License along with the
160Library.
161
162 You may charge a fee for the physical act of transferring a copy,
163and you may at your option offer warranty protection in exchange for a
164fee.
165
1662
167 2. You may modify your copy or copies of the Library or any portion
168of it, thus forming a work based on the Library, and copy and
169distribute such modifications or work under the terms of Section 1
170above, provided that you also meet all of these conditions:
171
172 a) The modified work must itself be a software library.
173
174 b) You must cause the files modified to carry prominent notices
175 stating that you changed the files and the date of any change.
176
177 c) You must cause the whole of the work to be licensed at no
178 charge to all third parties under the terms of this License.
179
180 d) If a facility in the modified Library refers to a function or a
181 table of data to be supplied by an application program that uses
182 the facility, other than as an argument passed when the facility
183 is invoked, then you must make a good faith effort to ensure that,
184 in the event an application does not supply such function or
185 table, the facility still operates, and performs whatever part of
186 its purpose remains meaningful.
187
188 (For example, a function in a library to compute square roots has
189 a purpose that is entirely well-defined independent of the
190 application. Therefore, Subsection 2d requires that any
191 application-supplied function or table used by this function must
192 be optional: if the application does not supply it, the square
193 root function must still compute square roots.)
194
195These requirements apply to the modified work as a whole. If
196identifiable sections of that work are not derived from the Library,
197and can be reasonably considered independent and separate works in
198themselves, then this License, and its terms, do not apply to those
199sections when you distribute them as separate works. But when you
200distribute the same sections as part of a whole which is a work based
201on the Library, the distribution of the whole must be on the terms of
202this License, whose permissions for other licensees extend to the
203entire whole, and thus to each and every part regardless of who wrote
204it.
205
206Thus, it is not the intent of this section to claim rights or contest
207your rights to work written entirely by you; rather, the intent is to
208exercise the right to control the distribution of derivative or
209collective works based on the Library.
210
211In addition, mere aggregation of another work not based on the Library
212with the Library (or with a work based on the Library) on a volume of
213a storage or distribution medium does not bring the other work under
214the scope of this License.
215
216 3. You may opt to apply the terms of the ordinary GNU General Public
217License instead of this License to a given copy of the Library. To do
218this, you must alter all the notices that refer to this License, so
219that they refer to the ordinary GNU General Public License, version 2,
220instead of to this License. (If a newer version than version 2 of the
221ordinary GNU General Public License has appeared, then you can specify
222that version instead if you wish.) Do not make any other change in
223these notices.
224
2253
226 Once this change is made in a given copy, it is irreversible for
227that copy, so the ordinary GNU General Public License applies to all
228subsequent copies and derivative works made from that copy.
229
230 This option is useful when you wish to copy part of the code of
231the Library into a program that is not a library.
232
233 4. You may copy and distribute the Library (or a portion or
234derivative of it, under Section 2) in object code or executable form
235under the terms of Sections 1 and 2 above provided that you accompany
236it with the complete corresponding machine-readable source code, which
237must be distributed under the terms of Sections 1 and 2 above on a
238medium customarily used for software interchange.
239
240 If distribution of object code is made by offering access to copy
241from a designated place, then offering equivalent access to copy the
242source code from the same place satisfies the requirement to
243distribute the source code, even though third parties are not
244compelled to copy the source along with the object code.
245
246 5. A program that contains no derivative of any portion of the
247Library, but is designed to work with the Library by being compiled or
248linked with it, is called a "work that uses the Library". Such a
249work, in isolation, is not a derivative work of the Library, and
250therefore falls outside the scope of this License.
251
252 However, linking a "work that uses the Library" with the Library
253creates an executable that is a derivative of the Library (because it
254contains portions of the Library), rather than a "work that uses the
255library". The executable is therefore covered by this License.
256Section 6 states terms for distribution of such executables.
257
258 When a "work that uses the Library" uses material from a header file
259that is part of the Library, the object code for the work may be a
260derivative work of the Library even though the source code is not.
261Whether this is true is especially significant if the work can be
262linked without the Library, or if the work is itself a library. The
263threshold for this to be true is not precisely defined by law.
264
265 If such an object file uses only numerical parameters, data
266structure layouts and accessors, and small macros and small inline
267functions (ten lines or less in length), then the use of the object
268file is unrestricted, regardless of whether it is legally a derivative
269work. (Executables containing this object code plus portions of the
270Library will still fall under Section 6.)
271
272 Otherwise, if the work is a derivative of the Library, you may
273distribute the object code for the work under the terms of Section 6.
274Any executables containing that work also fall under Section 6,
275whether or not they are linked directly with the Library itself.
276
2774
278 6. As an exception to the Sections above, you may also combine or
279link a "work that uses the Library" with the Library to produce a
280work containing portions of the Library, and distribute that work
281under terms of your choice, provided that the terms permit
282modification of the work for the customer's own use and reverse
283engineering for debugging such modifications.
284
285 You must give prominent notice with each copy of the work that the
286Library is used in it and that the Library and its use are covered by
287this License. You must supply a copy of this License. If the work
288during execution displays copyright notices, you must include the
289copyright notice for the Library among them, as well as a reference
290directing the user to the copy of this License. Also, you must do one
291of these things:
292
293 a) Accompany the work with the complete corresponding
294 machine-readable source code for the Library including whatever
295 changes were used in the work (which must be distributed under
296 Sections 1 and 2 above); and, if the work is an executable linked
297 with the Library, with the complete machine-readable "work that
298 uses the Library", as object code and/or source code, so that the
299 user can modify the Library and then relink to produce a modified
300 executable containing the modified Library. (It is understood
301 that the user who changes the contents of definitions files in the
302 Library will not necessarily be able to recompile the application
303 to use the modified definitions.)
304
305 b) Use a suitable shared library mechanism for linking with the
306 Library. A suitable mechanism is one that (1) uses at run time a
307 copy of the library already present on the user's computer system,
308 rather than copying library functions into the executable, and (2)
309 will operate properly with a modified version of the library, if
310 the user installs one, as long as the modified version is
311 interface-compatible with the version that the work was made with.
312
313 c) Accompany the work with a written offer, valid for at least
314 three years, to give the same user the materials specified in
315 Subsection 6a, above, for a charge no more than the cost of
316 performing this distribution.
317
318 d) If distribution of the work is made by offering access to copy
319 from a designated place, offer equivalent access to copy the above
320 specified materials from the same place.
321
322 e) Verify that the user has already received a copy of these
323 materials or that you have already sent this user a copy.
324
325 For an executable, the required form of the "work that uses the
326Library" must include any data and utility programs needed for
327reproducing the executable from it. However, as a special exception,
328the materials to be distributed need not include anything that is
329normally distributed (in either source or binary form) with the major
330components (compiler, kernel, and so on) of the operating system on
331which the executable runs, unless that component itself accompanies
332the executable.
333
334 It may happen that this requirement contradicts the license
335restrictions of other proprietary libraries that do not normally
336accompany the operating system. Such a contradiction means you cannot
337use both them and the Library together in an executable that you
338distribute.
339
3405
341 7. You may place library facilities that are a work based on the
342Library side-by-side in a single library together with other library
343facilities not covered by this License, and distribute such a combined
344library, provided that the separate distribution of the work based on
345the Library and of the other library facilities is otherwise
346permitted, and provided that you do these two things:
347
348 a) Accompany the combined library with a copy of the same work
349 based on the Library, uncombined with any other library
350 facilities. This must be distributed under the terms of the
351 Sections above.
352
353 b) Give prominent notice with the combined library of the fact
354 that part of it is a work based on the Library, and explaining
355 where to find the accompanying uncombined form of the same work.
356
357 8. You may not copy, modify, sublicense, link with, or distribute
358the Library except as expressly provided under this License. Any
359attempt otherwise to copy, modify, sublicense, link with, or
360distribute the Library is void, and will automatically terminate your
361rights under this License. However, parties who have received copies,
362or rights, from you under this License will not have their licenses
363terminated so long as such parties remain in full compliance.
364
365 9. You are not required to accept this License, since you have not
366signed it. However, nothing else grants you permission to modify or
367distribute the Library or its derivative works. These actions are
368prohibited by law if you do not accept this License. Therefore, by
369modifying or distributing the Library (or any work based on the
370Library), you indicate your acceptance of this License to do so, and
371all its terms and conditions for copying, distributing or modifying
372the Library or works based on it.
373
374 10. Each time you redistribute the Library (or any work based on the
375Library), the recipient automatically receives a license from the
376original licensor to copy, distribute, link with or modify the Library
377subject to these terms and conditions. You may not impose any further
378restrictions on the recipients' exercise of the rights granted herein.
379You are not responsible for enforcing compliance by third parties with
380this License.
381
3826
383 11. If, as a consequence of a court judgment or allegation of patent
384infringement or for any other reason (not limited to patent issues),
385conditions are imposed on you (whether by court order, agreement or
386otherwise) that contradict the conditions of this License, they do not
387excuse you from the conditions of this License. If you cannot
388distribute so as to satisfy simultaneously your obligations under this
389License and any other pertinent obligations, then as a consequence you
390may not distribute the Library at all. For example, if a patent
391license would not permit royalty-free redistribution of the Library by
392all those who receive copies directly or indirectly through you, then
393the only way you could satisfy both it and this License would be to
394refrain entirely from distribution of the Library.
395
396If any portion of this section is held invalid or unenforceable under
397any particular circumstance, the balance of the section is intended to
398apply, and the section as a whole is intended to apply in other
399circumstances.
400
401It is not the purpose of this section to induce you to infringe any
402patents or other property right claims or to contest validity of any
403such claims; this section has the sole purpose of protecting the
404integrity of the free software distribution system which is
405implemented by public license practices. Many people have made
406generous contributions to the wide range of software distributed
407through that system in reliance on consistent application of that
408system; it is up to the author/donor to decide if he or she is willing
409to distribute software through any other system and a licensee cannot
410impose that choice.
411
412This section is intended to make thoroughly clear what is believed to
413be a consequence of the rest of this License.
414
415 12. If the distribution and/or use of the Library is restricted in
416certain countries either by patents or by copyrighted interfaces, the
417original copyright holder who places the Library under this License
418may add an explicit geographical distribution limitation excluding those
419countries, so that distribution is permitted only in or among
420countries not thus excluded. In such case, this License incorporates
421the limitation as if written in the body of this License.
422
423 13. The Free Software Foundation may publish revised and/or new
424versions of the Lesser General Public License from time to time.
425Such new versions will be similar in spirit to the present version,
426but may differ in detail to address new problems or concerns.
427
428Each version is given a distinguishing version number. If the Library
429specifies a version number of this License which applies to it and
430"any later version", you have the option of following the terms and
431conditions either of that version or of any later version published by
432the Free Software Foundation. If the Library does not specify a
433license version number, you may choose any version ever published by
434the Free Software Foundation.
435
4367
437 14. If you wish to incorporate parts of the Library into other free
438programs whose distribution conditions are incompatible with these,
439write to the author to ask for permission. For software which is
440copyrighted by the Free Software Foundation, write to the Free
441Software Foundation; we sometimes make exceptions for this. Our
442decision will be guided by the two goals of preserving the free status
443of all derivatives of our free software and of promoting the sharing
444and reuse of software generally.
445
446 NO WARRANTY
447
448 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
449WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
450EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
451OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
452KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
453IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
454PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
455LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
456THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
457
458 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
459WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
460AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
461FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
462CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
463LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
464RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
465FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
466SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
467DAMAGES.
468
469 END OF TERMS AND CONDITIONS
470
4718
472 How to Apply These Terms to Your New Libraries
473
474 If you develop a new library, and you want it to be of the greatest
475possible use to the public, we recommend making it free software that
476everyone can redistribute and change. You can do so by permitting
477redistribution under these terms (or, alternatively, under the terms
478of the ordinary General Public License).
479
480 To apply these terms, attach the following notices to the library.
481It is safest to attach them to the start of each source file to most
482effectively convey the exclusion of warranty; and each file should
483have at least the "copyright" line and a pointer to where the full
484notice is found.
485
486
487 <one line to give the library's name and a brief idea of what it does.>
488 Copyright (C) <year> <name of author>
489
490 This library is free software; you can redistribute it and/or
491 modify it under the terms of the GNU Lesser General Public
492 License as published by the Free Software Foundation; either
493 version 2.1 of the License, or (at your option) any later version.
494
495 This library is distributed in the hope that it will be useful,
496 but WITHOUT ANY WARRANTY; without even the implied warranty of
497 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
498 Lesser General Public License for more details.
499
500 You should have received a copy of the GNU Lesser General Public
501 License along with this library; if not, write to the Free Software
502 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
503
504Also add information on how to contact you by electronic and paper mail.
505
506You should also get your employer (if you work as a programmer) or
507your school, if any, to sign a "copyright disclaimer" for the library,
508if necessary. Here is a sample; alter the names:
509
510 Yoyodyne, Inc., hereby disclaims all copyright interest in the
511 library `Frob' (a library for tweaking knobs) written by James
512 Random Hacker.
513
514 <signature of Ty Coon>, 1 April 1990
515 Ty Coon, President of Vice
516
517That's all there is to it!
518
519
5209
=== removed file 'ChangeLog'
=== removed file 'HACKING'
--- HACKING 2011-06-18 02:54:49 +0000
+++ HACKING 1970-01-01 00:00:00 +0000
@@ -1,1 +0,0 @@
1
20
=== removed file 'INSTALL'
--- INSTALL 2012-02-15 08:08:54 +0000
+++ INSTALL 1970-01-01 00:00:00 +0000
@@ -1,370 +0,0 @@
1Installation Instructions
2*************************
3
4Copyright (C) 1994-1996, 1999-2002, 2004-2011 Free Software Foundation,
5Inc.
6
7 Copying and distribution of this file, with or without modification,
8are permitted in any medium without royalty provided the copyright
9notice and this notice are preserved. This file is offered as-is,
10without warranty of any kind.
11
12Basic Installation
13==================
14
15 Briefly, the shell commands `./configure; make; make install' should
16configure, build, and install this package. The following
17more-detailed instructions are generic; see the `README' file for
18instructions specific to this package. Some packages provide this
19`INSTALL' file but do not implement all of the features documented
20below. The lack of an optional feature in a given package is not
21necessarily a bug. More recommendations for GNU packages can be found
22in *note Makefile Conventions: (standards)Makefile Conventions.
23
24 The `configure' shell script attempts to guess correct values for
25various system-dependent variables used during compilation. It uses
26those values to create a `Makefile' in each directory of the package.
27It may also create one or more `.h' files containing system-dependent
28definitions. Finally, it creates a shell script `config.status' that
29you can run in the future to recreate the current configuration, and a
30file `config.log' containing compiler output (useful mainly for
31debugging `configure').
32
33 It can also use an optional file (typically called `config.cache'
34and enabled with `--cache-file=config.cache' or simply `-C') that saves
35the results of its tests to speed up reconfiguring. Caching is
36disabled by default to prevent problems with accidental use of stale
37cache files.
38
39 If you need to do unusual things to compile the package, please try
40to figure out how `configure' could check whether to do them, and mail
41diffs or instructions to the address given in the `README' so they can
42be considered for the next release. If you are using the cache, and at
43some point `config.cache' contains results you don't want to keep, you
44may remove or edit it.
45
46 The file `configure.ac' (or `configure.in') is used to create
47`configure' by a program called `autoconf'. You need `configure.ac' if
48you want to change it or regenerate `configure' using a newer version
49of `autoconf'.
50
51 The simplest way to compile this package is:
52
53 1. `cd' to the directory containing the package's source code and type
54 `./configure' to configure the package for your system.
55
56 Running `configure' might take a while. While running, it prints
57 some messages telling which features it is checking for.
58
59 2. Type `make' to compile the package.
60
61 3. Optionally, type `make check' to run any self-tests that come with
62 the package, generally using the just-built uninstalled binaries.
63
64 4. Type `make install' to install the programs and any data files and
65 documentation. When installing into a prefix owned by root, it is
66 recommended that the package be configured and built as a regular
67 user, and only the `make install' phase executed with root
68 privileges.
69
70 5. Optionally, type `make installcheck' to repeat any self-tests, but
71 this time using the binaries in their final installed location.
72 This target does not install anything. Running this target as a
73 regular user, particularly if the prior `make install' required
74 root privileges, verifies that the installation completed
75 correctly.
76
77 6. You can remove the program binaries and object files from the
78 source code directory by typing `make clean'. To also remove the
79 files that `configure' created (so you can compile the package for
80 a different kind of computer), type `make distclean'. There is
81 also a `make maintainer-clean' target, but that is intended mainly
82 for the package's developers. If you use it, you may have to get
83 all sorts of other programs in order to regenerate files that came
84 with the distribution.
85
86 7. Often, you can also type `make uninstall' to remove the installed
87 files again. In practice, not all packages have tested that
88 uninstallation works correctly, even though it is required by the
89 GNU Coding Standards.
90
91 8. Some packages, particularly those that use Automake, provide `make
92 distcheck', which can by used by developers to test that all other
93 targets like `make install' and `make uninstall' work correctly.
94 This target is generally not run by end users.
95
96Compilers and Options
97=====================
98
99 Some systems require unusual options for compilation or linking that
100the `configure' script does not know about. Run `./configure --help'
101for details on some of the pertinent environment variables.
102
103 You can give `configure' initial values for configuration parameters
104by setting variables in the command line or in the environment. Here
105is an example:
106
107 ./configure CC=c99 CFLAGS=-g LIBS=-lposix
108
109 *Note Defining Variables::, for more details.
110
111Compiling For Multiple Architectures
112====================================
113
114 You can compile the package for more than one kind of computer at the
115same time, by placing the object files for each architecture in their
116own directory. To do this, you can use GNU `make'. `cd' to the
117directory where you want the object files and executables to go and run
118the `configure' script. `configure' automatically checks for the
119source code in the directory that `configure' is in and in `..'. This
120is known as a "VPATH" build.
121
122 With a non-GNU `make', it is safer to compile the package for one
123architecture at a time in the source code directory. After you have
124installed the package for one architecture, use `make distclean' before
125reconfiguring for another architecture.
126
127 On MacOS X 10.5 and later systems, you can create libraries and
128executables that work on multiple system types--known as "fat" or
129"universal" binaries--by specifying multiple `-arch' options to the
130compiler but only a single `-arch' option to the preprocessor. Like
131this:
132
133 ./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
134 CXX="g++ -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
135 CPP="gcc -E" CXXCPP="g++ -E"
136
137 This is not guaranteed to produce working output in all cases, you
138may have to build one architecture at a time and combine the results
139using the `lipo' tool if you have problems.
140
141Installation Names
142==================
143
144 By default, `make install' installs the package's commands under
145`/usr/local/bin', include files under `/usr/local/include', etc. You
146can specify an installation prefix other than `/usr/local' by giving
147`configure' the option `--prefix=PREFIX', where PREFIX must be an
148absolute file name.
149
150 You can specify separate installation prefixes for
151architecture-specific files and architecture-independent files. If you
152pass the option `--exec-prefix=PREFIX' to `configure', the package uses
153PREFIX as the prefix for installing programs and libraries.
154Documentation and other data files still use the regular prefix.
155
156 In addition, if you use an unusual directory layout you can give
157options like `--bindir=DIR' to specify different values for particular
158kinds of files. Run `configure --help' for a list of the directories
159you can set and what kinds of files go in them. In general, the
160default for these options is expressed in terms of `${prefix}', so that
161specifying just `--prefix' will affect all of the other directory
162specifications that were not explicitly provided.
163
164 The most portable way to affect installation locations is to pass the
165correct locations to `configure'; however, many packages provide one or
166both of the following shortcuts of passing variable assignments to the
167`make install' command line to change installation locations without
168having to reconfigure or recompile.
169
170 The first method involves providing an override variable for each
171affected directory. For example, `make install
172prefix=/alternate/directory' will choose an alternate location for all
173directory configuration variables that were expressed in terms of
174`${prefix}'. Any directories that were specified during `configure',
175but not in terms of `${prefix}', must each be overridden at install
176time for the entire installation to be relocated. The approach of
177makefile variable overrides for each directory variable is required by
178the GNU Coding Standards, and ideally causes no recompilation.
179However, some platforms have known limitations with the semantics of
180shared libraries that end up requiring recompilation when using this
181method, particularly noticeable in packages that use GNU Libtool.
182
183 The second method involves providing the `DESTDIR' variable. For
184example, `make install DESTDIR=/alternate/directory' will prepend
185`/alternate/directory' before all installation names. The approach of
186`DESTDIR' overrides is not required by the GNU Coding Standards, and
187does not work on platforms that have drive letters. On the other hand,
188it does better at avoiding recompilation issues, and works well even
189when some directory options were not specified in terms of `${prefix}'
190at `configure' time.
191
192Optional Features
193=================
194
195 If the package supports it, you can cause programs to be installed
196with an extra prefix or suffix on their names by giving `configure' the
197option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
198
199 Some packages pay attention to `--enable-FEATURE' options to
200`configure', where FEATURE indicates an optional part of the package.
201They may also pay attention to `--with-PACKAGE' options, where PACKAGE
202is something like `gnu-as' or `x' (for the X Window System). The
203`README' should mention any `--enable-' and `--with-' options that the
204package recognizes.
205
206 For packages that use the X Window System, `configure' can usually
207find the X include and library files automatically, but if it doesn't,
208you can use the `configure' options `--x-includes=DIR' and
209`--x-libraries=DIR' to specify their locations.
210
211 Some packages offer the ability to configure how verbose the
212execution of `make' will be. For these packages, running `./configure
213--enable-silent-rules' sets the default to minimal output, which can be
214overridden with `make V=1'; while running `./configure
215--disable-silent-rules' sets the default to verbose, which can be
216overridden with `make V=0'.
217
218Particular systems
219==================
220
221 On HP-UX, the default C compiler is not ANSI C compatible. If GNU
222CC is not installed, it is recommended to use the following options in
223order to use an ANSI C compiler:
224
225 ./configure CC="cc -Ae -D_XOPEN_SOURCE=500"
226
227and if that doesn't work, install pre-built binaries of GCC for HP-UX.
228
229 HP-UX `make' updates targets which have the same time stamps as
230their prerequisites, which makes it generally unusable when shipped
231generated files such as `configure' are involved. Use GNU `make'
232instead.
233
234 On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot
235parse its `<wchar.h>' header file. The option `-nodtk' can be used as
236a workaround. If GNU CC is not installed, it is therefore recommended
237to try
238
239 ./configure CC="cc"
240
241and if that doesn't work, try
242
243 ./configure CC="cc -nodtk"
244
245 On Solaris, don't put `/usr/ucb' early in your `PATH'. This
246directory contains several dysfunctional programs; working variants of
247these programs are available in `/usr/bin'. So, if you need `/usr/ucb'
248in your `PATH', put it _after_ `/usr/bin'.
249
250 On Haiku, software installed for all users goes in `/boot/common',
251not `/usr/local'. It is recommended to use the following options:
252
253 ./configure --prefix=/boot/common
254
255Specifying the System Type
256==========================
257
258 There may be some features `configure' cannot figure out
259automatically, but needs to determine by the type of machine the package
260will run on. Usually, assuming the package is built to be run on the
261_same_ architectures, `configure' can figure that out, but if it prints
262a message saying it cannot guess the machine type, give it the
263`--build=TYPE' option. TYPE can either be a short name for the system
264type, such as `sun4', or a canonical name which has the form:
265
266 CPU-COMPANY-SYSTEM
267
268where SYSTEM can have one of these forms:
269
270 OS
271 KERNEL-OS
272
273 See the file `config.sub' for the possible values of each field. If
274`config.sub' isn't included in this package, then this package doesn't
275need to know the machine type.
276
277 If you are _building_ compiler tools for cross-compiling, you should
278use the option `--target=TYPE' to select the type of system they will
279produce code for.
280
281 If you want to _use_ a cross compiler, that generates code for a
282platform different from the build platform, you should specify the
283"host" platform (i.e., that on which the generated programs will
284eventually be run) with `--host=TYPE'.
285
286Sharing Defaults
287================
288
289 If you want to set default values for `configure' scripts to share,
290you can create a site shell script called `config.site' that gives
291default values for variables like `CC', `cache_file', and `prefix'.
292`configure' looks for `PREFIX/share/config.site' if it exists, then
293`PREFIX/etc/config.site' if it exists. Or, you can set the
294`CONFIG_SITE' environment variable to the location of the site script.
295A warning: not all `configure' scripts look for a site script.
296
297Defining Variables
298==================
299
300 Variables not defined in a site shell script can be set in the
301environment passed to `configure'. However, some packages may run
302configure again during the build, and the customized values of these
303variables may be lost. In order to avoid this problem, you should set
304them in the `configure' command line, using `VAR=value'. For example:
305
306 ./configure CC=/usr/local2/bin/gcc
307
308causes the specified `gcc' to be used as the C compiler (unless it is
309overridden in the site shell script).
310
311Unfortunately, this technique does not work for `CONFIG_SHELL' due to
312an Autoconf bug. Until the bug is fixed you can use this workaround:
313
314 CONFIG_SHELL=/bin/bash /bin/bash ./configure CONFIG_SHELL=/bin/bash
315
316`configure' Invocation
317======================
318
319 `configure' recognizes the following options to control how it
320operates.
321
322`--help'
323`-h'
324 Print a summary of all of the options to `configure', and exit.
325
326`--help=short'
327`--help=recursive'
328 Print a summary of the options unique to this package's
329 `configure', and exit. The `short' variant lists options used
330 only in the top level, while the `recursive' variant lists options
331 also present in any nested packages.
332
333`--version'
334`-V'
335 Print the version of Autoconf used to generate the `configure'
336 script, and exit.
337
338`--cache-file=FILE'
339 Enable the cache: use and save the results of the tests in FILE,
340 traditionally `config.cache'. FILE defaults to `/dev/null' to
341 disable caching.
342
343`--config-cache'
344`-C'
345 Alias for `--cache-file=config.cache'.
346
347`--quiet'
348`--silent'
349`-q'
350 Do not print messages saying which checks are being made. To
351 suppress all normal output, redirect it to `/dev/null' (any error
352 messages will still be shown).
353
354`--srcdir=DIR'
355 Look for the package's source code in directory DIR. Usually
356 `configure' can determine that directory automatically.
357
358`--prefix=DIR'
359 Use DIR as the installation prefix. *note Installation Names::
360 for more details, including other options available for fine-tuning
361 the installation locations.
362
363`--no-create'
364`-n'
365 Run the configure checks, but stop before creating any output
366 files.
367
368`configure' also accepts some other, not widely useful, options. Run
369`configure --help' for more details.
370
3710
=== renamed file 'gwibber/Makefile' => 'Makefile'
--- gwibber/Makefile 2012-09-13 17:23:47 +0000
+++ Makefile 2012-10-12 20:27:19 +0000
@@ -1,8 +1,9 @@
1# Copyright (C) 2012 Canonical Ltd1# friends-service -- send & receive messages from any social network
2# Copyright (C) 2012 Canonical Ltd
2#3#
3# This program is free software: you can redistribute it and/or modify4# This program is free software: you can redistribute it and/or modify
4# it under the terms of the GNU General Public License version 2 as5# it under the terms of the GNU General Public License as published by
5# published by the Free Software Foundation.6# the Free Software Foundation, version 3 of the License.
6#7#
7# This program is distributed in the hope that it will be useful,8# This program is distributed in the hope that it will be useful,
8# but WITHOUT ANY WARRANTY; without even the implied warranty of9# but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -19,8 +20,8 @@
19 python3 setup.py install20 python3 setup.py install
2021
21venv:22venv:
22 virtualenv --clear --system-site-packages -p python3 /tmp/gwib23 virtualenv --clear --system-site-packages -p python3 /tmp/friends
23 /tmp/gwib/bin/python3 setup.py install24 /tmp/friends/bin/python3 setup.py install
2425
25check_all: venv26check_all: venv
26 /tmp/gwib/bin/python3 -m unittest discover -vv27 /tmp/friends/bin/python3 -m unittest discover -vv
2728
=== removed file 'Makefile.am'
--- Makefile.am 2012-05-21 20:04:52 +0000
+++ Makefile.am 1970-01-01 00:00:00 +0000
@@ -1,54 +0,0 @@
1SUBDIRS = man bin gwibber data libgwibber libgwibber-gtk vapi po client examples
2
3if HAVE_UNITY
4SUBDIRS += lens
5endif
6
7
8pkgconfigdir = $(libdir)/pkgconfig
9pkgconfig_DATA = \
10 gwibber-@GWIBBER_API_VERSION@.pc \
11 gwibber-gtk-@GWIBBER_API_VERSION@.pc
12
13# Test reports
14.PHONY: check-report
15check-report:
16 $(MAKE) -C tests/ $(@)
17
18# Distribute pot file
19update-pot:
20 $(MAKE) -C po "$(GETTEXT_PACKAGE).pot"
21
22DISTCHECK_CONFIGURE_FLAGS = --enable-localinstall --enable-introspection --enable-maintainer-flags=no --enable-unity
23
24DIST_SUBDIRS = ${SUBDIRS} tests
25
26DISTCLEANFILES = \
27 gwibber-@GWIBBER_API_VERSION@.pc \
28 gwibber-gtk-@GWIBBER_API_VERSION@.pc \
29 intltool-extract \
30 intltool-merge \
31 intltool-update
32EXTRA_DIST = \
33 gwibber-@GWIBBER_API_VERSION@.pc.in \
34 gwibber-gtk-@GWIBBER_API_VERSION@.pc.in \
35 autogen.sh \
36 COPYING.GPL-3 \
37 COPYING.LGPL-2.1 \
38 intltool-extract.in \
39 intltool-merge.in \
40 intltool-update.in
41
42dist-hook: update-pot
43 @if test -d "$(top_srcdir)/.bzr"; \
44 then \
45 echo Creating ChangeLog && \
46 ( cd "$(top_srcdir)" && \
47 echo '# Generated by Makefile. Do not edit.'; echo; \
48 $(top_srcdir)/missing --run bzr log --gnu-changelog ) > ChangeLog.tmp \
49 && mv -f ChangeLog.tmp $(top_distdir)/ChangeLog \
50 || (rm -f ChangeLog.tmp; \
51 echo Failed to generate ChangeLog >&2 ); \
52 else \
53 echo Failed to generate ChangeLog: not a branch >&2; \
54 fi
550
=== removed file 'NEWS'
--- NEWS 2012-09-20 04:56:46 +0000
+++ NEWS 1970-01-01 00:00:00 +0000
@@ -1,195 +0,0 @@
1NEW in 3.5.90 (09/20/2012)
2============
3 * Add support for Unity Previews, required libunity >= 6.5.1
4 * Translate gwibber.application (LP: #1052375)
5
6NEW in 3.5.4 (08/27/2012)
7============
8 * Ported from libindicate to libmessaging-menu, thanks to Lars Uebernickel
9
10NEW in 3.5.3 (08/21/2012)
11============
12 * Fixed all the GTK warnings, thanks to Jeff Licquia
13 * Ported to Ubuntu Online Accounts and removed gwibber-accounts
14 - New build dependencies include libsignon-glib and libaccounts-glib and
15 runtime dependencies include gir1.2-accounts-1.0 and gir1.2-signon-1.0
16 plus the account plugins:
17 * account-plugin-facebook
18 * account-plugin-twitter
19 * account-plugin-identica
20 * account-plugin-flickr
21 * account-plugin-foursquare
22
23NEW in 3.5.2 (06/14/2012)
24============
25 * New twitter icons better matching twitter's guidelines, thanks
26 Mark Tully (LP: #1012408)
27 * foursquare: Changed to using urls based off Foursquare user ids rather than
28 'canonicalurl' due to 'canonicalurl' being removed from Foursquare's
29 API (LP: #1012231)
30 * foursquare: Added support for displaying 'likes' (new to Foursquare API)
31
32NEW in 3.5.1 (06/10/2012)
33============
34 * facebook: Handle unicode characters everywhere we set the username (LP: #938667)
35 * Fixed example-vala.vala send examples
36 * Added inline python docs (Mark Tully) (LP: #576817)
37 * removed the unused source for the mono bindings
38
39NEW in 3.5.0 (05/22/2012)
40============
41 * removed unused service icons for jaiku and brightkite
42 * removed unsupported service plugins: digg, friendfeed, pingfm, qaiku
43 and buzz
44 * Convert all mx.DateTime use to built-in datetime module. mx won't get
45 ported to python3 (Barry Warsaw) (LP: #990145)
46 * libgwibber-gtk: Fixed up the GwibberGtkEntry widget's alignment and
47 icon search path
48
49NEW in 3.4.1 (04/25/2012)
50============
51 * Use matching icons for unity lens categories
52 * catch GLib.GError instead of GLib.Error (LP: #940182)
53 * fallback to displaying full sender's name if the nickname is empty,
54 even if show-fullname is false (LP: #985801)
55 * foursquare: Don't crash on unicode characters in a users fullname, thanks
56 to Raza Sayed (LP: #975437)
57 * Defer calling unset on the seen HashMap until after we are done iterating
58 it, it will resize making the iterator invalid. (LP: #959068)
59 This is fixed in the 0.7 series of libgee
60 * Specify /usr/bin/python in gwibber-accounts instead of relying on
61 env (LP: #988385)
62
63NEW in 3.4.0 (04/03/2012)
64============
65 * Check shorten-urls setting in the dispatcher before attempting to
66 shorten, patch thanks to Martin T. (LP: #896639)
67 * Removing unnecessary 'Image' link from entries with images obtained
68 through imgpreview() (Mark Tully) (LP: #966285)
69 * Replace all instances of a hashtag's occurance in a tweet at once
70 rather than one at a time (Mark Tully) (LP: #966467)
71 * Replace all instances of a nick's occurance in a tweet at once rather
72 than one at a time (Mark Tully) (LP: #966467)
73 * Catch errors from creating the pixbuf separately from sending the
74 notification (LP: #940182)
75 * Encode URLs to UTF8 before using them. (LP: #954374)
76
77NEW in 3.3.93 (03/21/2012)
78============
79 * more fallbacks for dupe detection, try with link_name, image_name,
80 and video_name (LP: #826323)
81 * Protect against trying to create a pixbuf from an icon that doesn't
82 exist (LP: #949395)
83
84NEW in 3.3.92 (03/15/2012)
85============
86 * determine if we are DST or not, and set isdst in the time struct. This
87 fixes the time delta being off by an hour for DST.
88 * Make sure we don't keep references to Dee.ModelIter that has been
89 removed (LP: #937607)
90 * Use the SHA1 hash of the avatar URL instead of simply stripping the
91 slashes, to avoid the resulting filename being too long to be created
92 on ecryptfs volumes. (James Tait) (LP: #845374)
93 * improved error handling to UrlLib2Downloader (David Klasinc) (LP: #946049)
94 * facebook: try to handle data from facebook of type=question to
95 prevent empty posts in the feed
96 * since gtk+ 3.3.18 scroll events are getting blocked in the Gtk.Label
97 for message, so we need to add the event mask for it.
98
99
100NEW in 3.3.91 (03/08/2012)
101============
102 * Fix duplicate detection by falling back to comparing html,
103 link_description, image_url and video_url (LP: #933694)
104 * Fixed account migration path from 2.32 (desktopcouch) to
105 3.4 (sqlite) (LP: #740494)
106 * gwibber-accounts crashed with TypeError in function(): Item 0: must
107 be a subtype of gi.Boxed (LP: #936071)
108 * Fixed position tracking so page down and page up move the
109 appropriate number of tiles (LP: #629420)
110 * more escaping of text that pango markup can't support
111 * twitter: Use Twitter entities, improves getting hashtags, mentions,
112 links, images, and videos. Thanks to Mark Tully (LP: #948092)
113
114
115NEW in 3.3.90 (02/23/2012)
116============
117
118 * foursquare: display comments on checkins (Mark Tully)
119 * Update LINGUAS to use all the provided translations (Robert Ancell)
120 * make the messages stream default on startup
121 * Updated favorite information to include if you liked a post
122 * facebook: fixed dupes and empty posts (LP: #826323)
123
124
125NEW in 3.3.6 (02/16/2012)
126============
127
128 * Translation fixes from Gabor Kelemen (LP: #926665)
129 * Shutdown the service when using Quit from the menu if the unity lens
130 isn't running. (LP: #923863)
131 * Make searching in the lens faster using Dee's TreeIndex (Michal Hruby)
132 * New StatusBar widget that will be used for displaying errors and other
133 information in the future, right now it is only wired up to the
134 LoadingStarted and LoadingComplete signals.
135
136
137NEW in 3.3.5 (02/15/2012)
138============
139
140No more dependency on the static python bindings for webkit-gtk2,
141gwibber-accounts now uses GIR and webkit-gtk3
142
143Now requires gir1.2-gnomekeyring-1.0 and gir1.2-webkit-3.0
144
145
146NEW in 3.3.4 (02/14/2012)
147============
148
149Completed dropped python multiprocessing and refactored the service threading.
150Including improving ability to catch individual operation failures.
151
152Bugs fixed:
153 - Can't response or write to someone from their user information
154 page (LP: #926081)
155 - "Repeat"ing a status on StatusNet fails silently (Scott Sweeny) (LP: #923144)
156
157
158NEW in 3.3.3 (01/30/2012)
159============
160
161Greatly improved scrolling, but still not smooth scrolling. Inline comments
162and image previews are now enclosed in a Gtk.Expander and only load when
163expanded. This prevents the tiles resizing while scrolling and
164greatly improves performance while scrolling.
165
166Cleaned up all the Gtk 3.3 deprecations
167
168Now requires valac-0.16
169
170Bugs fixed:
171 - Fixed a memory leak in ActionBoxItem (LP: #909085)
172 - Fixed race conditions in async image loading while scrolling (LP: #911619)
173 - Hide window while gwibber exits (Michal Hruby)
174 - Improved scrolling by enclosing comments and image previews in a
175 Gtk.Expander, this fixes the tiles resizing while scrolling (LP: #875348)
176
177
178NEW in 3.3.2 (01/13/2012)
179============
180
181Now requires libunity >= 5.0.0 and libdee >= 1.0.0
182
183* The gwibber-service now uses significantly less power by ensuring the
184 multiprocessing pool is closed when operations are complete.
185* GtkSpell pkgconfig name has been renamed to gtkspell-3.0
186
187Bugs fixed:
188 - Cancel async image loading on tile reset, this actually breaks image
189 loading but prevents crashing with gtk >= 3.3.6 (LP: #911619)
190 - The x people liked this string should use plurals. (LP: #863039)
191 - gwibber-service has a child that polls at 10Hz which is causing a lot
192 of wakeup events Remove (LP: #906916)
193 - Fixed disabling of gtkspell in build system (LP: #834780)
194 - Renamed gtkspell-3.0 pkgconfig now that upstream has merged gtk3
195 support (LP: #860648)
1960
=== removed file 'README'
--- README 2012-05-11 06:22:23 +0000
+++ README 1970-01-01 00:00:00 +0000
@@ -1,50 +0,0 @@
1Installing Gwibber
2==================
3
4 Requirements
5 ------------
6
7 Please note that the version numbers listed below only reflect my test
8 environment. Gwibber is known to work with those specific versions, but
9 will probably work fine on most current desktop distributions that include
10 Python's WebKit GTK+ bindings.
11
12 * python (2.5)
13 * python-dbus (0.80.2)
14 * python-gtk2 (2.10.4)
15 * python-gconf (2.18.0)
16 * python-imaging (1.1.6)
17 * python-notify (0.1.1)
18 * python-webkitgtk (1.0.1)
19 * python-simplejson (1.9.1)
20 * python-distutils-extra
21 * python-feedparser (4.1)
22 * python-xdg (0.15)
23 * python-mako (0.2.2)
24 * python-pycurl
25
26 Installation
27 ------------
28
29 Gwibber uses Python's distutils framework for installation. In order to
30 install Gwibber, you will need root access. To install Gwibber, perform
31 the following command as root:
32
33 $ python setup.py install
34
35 Run Gwibber
36 -----------
37
38 If you installed Gwibber using the setup.py script, you can launch the
39 program by typing "gwibber" at the command line. If you want to run
40 Gwibber without installing it, start "bin/gwibber" from within the
41 Gwibber directory.
42
43 Testing
44 -------
45
46 You can run the dbus isolated tests by cd'ing into the tests directory
47 and running `make check`.
48
49 You can run the Python unittests by cd'ing into tests/python/unittests
50 and running `PYTHONPATH=../../.. python -m unittest discover -v`
510
=== removed file 'acinclude.m4'
--- acinclude.m4 2012-01-19 05:21:16 +0000
+++ acinclude.m4 1970-01-01 00:00:00 +0000
@@ -1,268 +0,0 @@
1## ------------------------
2## Python file handling
3## From Andrew Dalke
4## Updated by James Henstridge
5## ------------------------
6
7# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004
8# Free Software Foundation, Inc.
9
10# This program is free software; you can redistribute it and/or modify
11# it under the terms of the GNU General Public License as published by
12# the Free Software Foundation; either version 2, or (at your option)
13# any later version.
14
15# This program is distributed in the hope that it will be useful,
16# but WITHOUT ANY WARRANTY; without even the implied warranty of
17# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18# GNU General Public License for more details.
19
20# You should have received a copy of the GNU General Public License
21# along with this program; if not, write to the Free Software
22# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
23# 02111-1307, USA.
24
25# AM_PATH_PYTHON([MINIMUM-VERSION], [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
26
27# Adds support for distributing Python modules and packages. To
28# install modules, copy them to $(pythondir), using the python_PYTHON
29# automake variable. To install a package with the same name as the
30# automake package, install to $(pkgpythondir), or use the
31# pkgpython_PYTHON automake variable.
32
33# The variables $(pyexecdir) and $(pkgpyexecdir) are provided as
34# locations to install python extension modules (shared libraries).
35# Another macro is required to find the appropriate flags to compile
36# extension modules.
37
38# If your package is configured with a different prefix to python,
39# users will have to add the install directory to the PYTHONPATH
40# environment variable, or create a .pth file (see the python
41# documentation for details).
42
43# If the MINIMUM-VERSION argument is passed, AM_PATH_PYTHON will
44# cause an error if the version of python installed on the system
45# doesn't meet the requirement. MINIMUM-VERSION should consist of
46# numbers and dots only.
47
48AC_DEFUN([AM_PATH_PYTHON],
49 [
50 dnl Find a Python interpreter. Python versions prior to 1.5 are not
51 dnl supported because the default installation locations changed from
52 dnl $prefix/lib/site-python in 1.4 to $prefix/lib/python1.5/site-packages
53 dnl in 1.5.
54 m4_define([_AM_PYTHON_INTERPRETER_LIST],
55 [python python2 python2.4 python2.3 python2.2 dnl
56python2.1 python2.0 python1.6 python1.5])
57
58 m4_if([$1],[],[
59 dnl No version check is needed.
60 # Find any Python interpreter.
61 if test -z "$PYTHON"; then
62 PYTHON=:
63 AC_PATH_PROGS([PYTHON], _AM_PYTHON_INTERPRETER_LIST)
64 fi
65 am_display_PYTHON=python
66 ], [
67 dnl A version check is needed.
68 if test -n "$PYTHON"; then
69 # If the user set $PYTHON, use it and don't search something else.
70 AC_MSG_CHECKING([whether $PYTHON version >= $1])
71 AM_PYTHON_CHECK_VERSION([$PYTHON], [$1],
72 [AC_MSG_RESULT(yes)],
73 [AC_MSG_ERROR(too old)])
74 am_display_PYTHON=$PYTHON
75 else
76 # Otherwise, try each interpreter until we find one that satisfies
77 # VERSION.
78 AC_CACHE_CHECK([for a Python interpreter with version >= $1],
79 [am_cv_pathless_PYTHON],[
80 for am_cv_pathless_PYTHON in _AM_PYTHON_INTERPRETER_LIST none; do
81 test "$am_cv_pathless_PYTHON" = none && break
82 AM_PYTHON_CHECK_VERSION([$am_cv_pathless_PYTHON], [$1], [break])
83 done])
84 # Set $PYTHON to the absolute path of $am_cv_pathless_PYTHON.
85 if test "$am_cv_pathless_PYTHON" = none; then
86 PYTHON=:
87 else
88 AC_PATH_PROG([PYTHON], [$am_cv_pathless_PYTHON])
89 fi
90 am_display_PYTHON=$am_cv_pathless_PYTHON
91 fi
92 ])
93
94 if test "$PYTHON" = :; then
95 dnl Run any user-specified action, or abort.
96 m4_default([$3], [AC_MSG_ERROR([no suitable Python interpreter found])])
97 else
98
99 dnl Query Python for its version number. Getting [:3] seems to be
100 dnl the best way to do this; it's what "site.py" does in the standard
101 dnl library.
102
103 AC_CACHE_CHECK([for $am_display_PYTHON version], [am_cv_python_version],
104 [am_cv_python_version=`$PYTHON -c "import sys; print sys.version[[:3]]"`])
105 AC_SUBST([PYTHON_VERSION], [$am_cv_python_version])
106
107 dnl Use the values of $prefix and $exec_prefix for the corresponding
108 dnl values of PYTHON_PREFIX and PYTHON_EXEC_PREFIX. These are made
109 dnl distinct variables so they can be overridden if need be. However,
110 dnl general consensus is that you shouldn't need this ability.
111
112 AC_SUBST([PYTHON_PREFIX], ['${prefix}'])
113 AC_SUBST([PYTHON_EXEC_PREFIX], ['${exec_prefix}'])
114
115 dnl At times (like when building shared libraries) you may want
116 dnl to know which OS platform Python thinks this is.
117
118 AC_CACHE_CHECK([for $am_display_PYTHON platform], [am_cv_python_platform],
119 [am_cv_python_platform=`$PYTHON -c "import sys; print sys.platform"`])
120 AC_SUBST([PYTHON_PLATFORM], [$am_cv_python_platform])
121
122
123 dnl Set up 4 directories:
124
125 dnl pythondir -- where to install python scripts. This is the
126 dnl site-packages directory, not the python standard library
127 dnl directory like in previous automake betas. This behavior
128 dnl is more consistent with lispdir.m4 for example.
129 dnl Query distutils for this directory. distutils does not exist in
130 dnl Python 1.5, so we fall back to the hardcoded directory if it
131 dnl doesn't work.
132 AC_CACHE_CHECK([for $am_display_PYTHON script directory],
133 [am_cv_python_pythondir],
134 [am_cv_python_pythondir=`$PYTHON -c "from distutils import sysconfig; print sysconfig.get_python_lib(0,0,prefix='$PYTHON_PREFIX')" 2>/dev/null ||
135 echo "$PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages"`])
136 AC_SUBST([pythondir], [$am_cv_python_pythondir])
137
138 dnl pkgpythondir -- $PACKAGE directory under pythondir. Was
139 dnl PYTHON_SITE_PACKAGE in previous betas, but this naming is
140 dnl more consistent with the rest of automake.
141
142 AC_SUBST([pkgpythondir], [\${pythondir}/$PACKAGE])
143
144 dnl pyexecdir -- directory for installing python extension modules
145 dnl (shared libraries)
146 dnl Query distutils for this directory. distutils does not exist in
147 dnl Python 1.5, so we fall back to the hardcoded directory if it
148 dnl doesn't work.
149 AC_CACHE_CHECK([for $am_display_PYTHON extension module directory],
150 [am_cv_python_pyexecdir],
151 [am_cv_python_pyexecdir=`$PYTHON -c "from distutils import sysconfig; print sysconfig.get_python_lib(1,0,prefix='$PYTHON_EXEC_PREFIX')" 2>/dev/null ||
152 echo "${PYTHON_EXEC_PREFIX}/lib/python${PYTHON_VERSION}/site-packages"`])
153 AC_SUBST([pyexecdir], [$am_cv_python_pyexecdir])
154
155 dnl pkgpyexecdir -- $(pyexecdir)/$(PACKAGE)
156
157 AC_SUBST([pkgpyexecdir], [\${pyexecdir}/$PACKAGE])
158
159 dnl Run any user-specified action.
160 $2
161 fi
162
163])
164
165
166# AM_PYTHON_CHECK_VERSION(PROG, VERSION, [ACTION-IF-TRUE], [ACTION-IF-FALSE])
167# ---------------------------------------------------------------------------
168# Run ACTION-IF-TRUE if the Python interpreter PROG has version >= VERSION.
169# Run ACTION-IF-FALSE otherwise.
170# This test uses sys.hexversion instead of the string equivalent (first
171# word of sys.version), in order to cope with versions such as 2.2c1.
172# hexversion has been introduced in Python 1.5.2; it's probably not
173# worth to support older versions (1.5.1 was released on October 31, 1998).
174AC_DEFUN([AM_PYTHON_CHECK_VERSION],
175 [prog="import sys, string
176# split strings by '.' and convert to numeric. Append some zeros
177# because we need at least 4 digits for the hex conversion.
178minver = map(int, string.split('$2', '.')) + [[0, 0, 0]]
179minverhex = 0
180for i in xrange(0, 4): minverhex = (minverhex << 8) + minver[[i]]
181sys.exit(sys.hexversion < minverhex)"
182 AS_IF([AM_RUN_LOG([$1 -c "$prog"])], [$3], [$4])])
183python.m4
184
185
186## this one is commonly used with AM_PATH_PYTHONDIR ...
187dnl AM_CHECK_PYMOD(MODNAME [,SYMBOL [,ACTION-IF-FOUND [,ACTION-IF-NOT-FOUND]]])
188dnl Check if a module containing a given symbol is visible to python.
189AC_DEFUN([AM_CHECK_PYMOD],
190[AC_REQUIRE([AM_PATH_PYTHON])
191py_mod_var=`echo $1['_']$2 | sed 'y%./+-%__p_%'`
192AC_MSG_CHECKING(for ifelse([$2],[],,[$2 in ])python module $1)
193AC_CACHE_VAL(py_cv_mod_$py_mod_var, [
194ifelse([$2],[], [prog="
195import sys
196try:
197 import $1
198except ImportError:
199 sys.exit(1)
200except:
201 sys.exit(0)
202sys.exit(0)"], [prog="
203import $1
204$1.$2"])
205if $PYTHON -c "$prog" 1>&AC_FD_CC 2>&AC_FD_CC
206 then
207 eval "py_cv_mod_$py_mod_var=yes"
208 else
209 eval "py_cv_mod_$py_mod_var=no"
210 fi
211])
212py_val=`eval "echo \`echo '$py_cv_mod_'$py_mod_var\`"`
213if test "x$py_val" != xno; then
214 AC_MSG_RESULT(yes)
215 ifelse([$3], [],, [$3
216])dnl
217else
218 AC_MSG_RESULT(no)
219 ifelse([$4], [],, [$4
220])dnl
221fi
222])
223
224dnl a macro to check for ability to create python extensions
225dnl AM_CHECK_PYTHON_HEADERS([ACTION-IF-POSSIBLE], [ACTION-IF-NOT-POSSIBLE])
226dnl function also defines PYTHON_INCLUDES
227AC_DEFUN([AM_CHECK_PYTHON_HEADERS],
228[AC_REQUIRE([AM_PATH_PYTHON])
229AC_MSG_CHECKING(for headers required to compile python extensions)
230dnl deduce PYTHON_INCLUDES
231py_prefix=`$PYTHON -c "import sys; print sys.prefix"`
232py_exec_prefix=`$PYTHON -c "import sys; print sys.exec_prefix"`
233PYTHON_INCLUDES="-I${py_prefix}/include/python${PYTHON_VERSION}"
234if test "$py_prefix" != "$py_exec_prefix"; then
235 PYTHON_INCLUDES="$PYTHON_INCLUDES -I${py_exec_prefix}/include/python${PYTHON_VERSION}"
236fi
237AC_SUBST(PYTHON_INCLUDES)
238dnl check if the headers exist:
239save_CPPFLAGS="$CPPFLAGS"
240CPPFLAGS="$CPPFLAGS $PYTHON_INCLUDES"
241AC_TRY_CPP([#include <Python.h>],dnl
242[AC_MSG_RESULT(found)
243$1],dnl
244[AC_MSG_RESULT(not found)
245$2])
246CPPFLAGS="$save_CPPFLAGS"
247])
248
249
250# Check whether the Vala compiler exists in `PATH'. If it is found, the
251# variable VALAC is set. Optionally a minimum release number of the
252# compiler can be requested.
253#
254# GWIBBER_PROG_VALAC([MINIMUM-VERSION])
255# --------------------------------
256AC_DEFUN([GWIBBER_PROG_VALAC],
257[AC_PATH_PROGS([VALAC], [valac-0.16 valac], [])
258 AS_IF([test -z "$VALAC"],
259 [AC_MSG_WARN([No Vala compiler found. You will not be able to compile .vala source files.])],
260 [AS_IF([test -n "$1"],
261 [AC_MSG_CHECKING([$VALAC is at least version $1])
262 am__vala_version=`$VALAC --version | sed 's/Vala *//'`
263 AS_VERSION_COMPARE([$1], ["$am__vala_version"],
264 [AC_MSG_RESULT([yes])],
265 [AC_MSG_RESULT([yes])],
266 [AC_MSG_RESULT([no])
267 AC_MSG_ERROR([Vala $1 not found.])])])])
268])
2690
=== removed file 'autogen.sh'
--- autogen.sh 2011-06-18 02:54:49 +0000
+++ autogen.sh 1970-01-01 00:00:00 +0000
@@ -1,11 +0,0 @@
1#!/bin/sh
2
3PKG_NAME="libgwibber"
4
5which gnome-autogen.sh || {
6 echo "You need gnome-common from GNOME SVN"
7 exit 1
8}
9
10USE_GNOME2_MACROS=1 \
11. gnome-autogen.sh
120
=== removed directory 'bin'
=== removed file 'bin/Makefile.am'
--- bin/Makefile.am 2012-06-27 03:11:35 +0000
+++ bin/Makefile.am 1970-01-01 00:00:00 +0000
@@ -1,4 +0,0 @@
1bin_SCRIPTS = \
2 gwibber-service
3
4EXTRA_DIST = $(bin_SCRIPTS)
50
=== removed file 'bin/gwibber-service'
--- bin/gwibber-service 2012-08-16 14:44:52 +0000
+++ bin/gwibber-service 1970-01-01 00:00:00 +0000
@@ -1,70 +0,0 @@
1#!/usr/bin/python3
2
3from gi.repository import Gio, GLib
4import sys, optparse, dbus
5from os.path import join, dirname, exists, realpath, abspath
6from dbus.mainloop.glib import DBusGMainLoop
7
8DBusGMainLoop(set_as_default=True)
9loop = GLib.MainLoop()
10
11LAUNCH_DIR = abspath(sys.path[0])
12SOURCE_DIR = join(LAUNCH_DIR, "..", "gwibber")
13DISPATCHER = join(SOURCE_DIR, "microblog", "dispatcher.py")
14
15gsettings = Gio.Settings.new("org.gwibber.preferences")
16
17######################################################################
18# Options
19from gwibber.utils.options import Options
20
21args = Options().parser.parse_args()
22console = args.console
23debug = args.debug or gsettings.get_boolean('debug')
24
25
26######################################################################
27# Setup path
28if exists(DISPATCHER):
29 sys.path.insert(0, realpath(dirname(SOURCE_DIR)))
30 try:
31 from gwibber.utils.logging import initialize
32 initialize(console=console, debug=debug)
33 import logging
34 logger = logging.getLogger('gwibber.service')
35 logger.info("Service starting")
36 logger.info("Running from the source tree")
37 from gwibber.microblog import dispatcher
38 finally:
39 del sys.path[0]
40
41else:
42 from gwibber.utils.logging import initialize
43 import logging
44 setup_logging(console=console, debug=debuglog)
45 logger = logging.getLogger("Service")
46 logger.info("Service starting")
47 logger.info("Running from the source tree")
48 from gwibber.microblog import dispatcher
49
50# if gwibber-serivce is already running, don't start
51if "com.Gwibber.Connection" in dbus.SessionBus().list_names():
52 logger.info("Found gwibber-service already running, exiting")
53 quit()
54
55"""
56## Check to see if the database needs to be purged
57dispatcher.purge()
58
59account_monitor = dispatcher.AccountMonitor()
60stream_monitor = dispatcher.StreamMonitor()
61message_monitor = dispatcher.MessagesMonitor()
62"""
63
64logger.debug("Setting up monitors")
65connection_monitor = dispatcher.ConnectionMonitor()
66urlshortener = dispatcher.URLShorten()
67translator = dispatcher.Translate()
68uploader = dispatcher.Uploader()
69dispatcher = dispatcher.Dispatcher(loop)
70loop.run()
710
=== removed directory 'client'
=== removed file 'client/COPYING'
--- client/COPYING 2011-06-18 02:54:49 +0000
+++ client/COPYING 1970-01-01 00:00:00 +0000
@@ -1,674 +0,0 @@
1 GNU GENERAL PUBLIC LICENSE
2 Version 3, 29 June 2007
3
4 Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
5 Everyone is permitted to copy and distribute verbatim copies
6 of this license document, but changing it is not allowed.
7
8 Preamble
9
10 The GNU General Public License is a free, copyleft license for
11software and other kinds of works.
12
13 The licenses for most software and other practical works are designed
14to take away your freedom to share and change the works. By contrast,
15the GNU General Public License is intended to guarantee your freedom to
16share and change all versions of a program--to make sure it remains free
17software for all its users. We, the Free Software Foundation, use the
18GNU General Public License for most of our software; it applies also to
19any other work released this way by its authors. You can apply it to
20your programs, too.
21
22 When we speak of free software, we are referring to freedom, not
23price. Our General Public Licenses are designed to make sure that you
24have the freedom to distribute copies of free software (and charge for
25them if you wish), that you receive source code or can get it if you
26want it, that you can change the software or use pieces of it in new
27free programs, and that you know you can do these things.
28
29 To protect your rights, we need to prevent others from denying you
30these rights or asking you to surrender the rights. Therefore, you have
31certain responsibilities if you distribute copies of the software, or if
32you modify it: responsibilities to respect the freedom of others.
33
34 For example, if you distribute copies of such a program, whether
35gratis or for a fee, you must pass on to the recipients the same
36freedoms that you received. You must make sure that they, too, receive
37or can get the source code. And you must show them these terms so they
38know their rights.
39
40 Developers that use the GNU GPL protect your rights with two steps:
41(1) assert copyright on the software, and (2) offer you this License
42giving you legal permission to copy, distribute and/or modify it.
43
44 For the developers' and authors' protection, the GPL clearly explains
45that there is no warranty for this free software. For both users' and
46authors' sake, the GPL requires that modified versions be marked as
47changed, so that their problems will not be attributed erroneously to
48authors of previous versions.
49
50 Some devices are designed to deny users access to install or run
51modified versions of the software inside them, although the manufacturer
52can do so. This is fundamentally incompatible with the aim of
53protecting users' freedom to change the software. The systematic
54pattern of such abuse occurs in the area of products for individuals to
55use, which is precisely where it is most unacceptable. Therefore, we
56have designed this version of the GPL to prohibit the practice for those
57products. If such problems arise substantially in other domains, we
58stand ready to extend this provision to those domains in future versions
59of the GPL, as needed to protect the freedom of users.
60
61 Finally, every program is threatened constantly by software patents.
62States should not allow patents to restrict development and use of
63software on general-purpose computers, but in those that do, we wish to
64avoid the special danger that patents applied to a free program could
65make it effectively proprietary. To prevent this, the GPL assures that
66patents cannot be used to render the program non-free.
67
68 The precise terms and conditions for copying, distribution and
69modification follow.
70
71 TERMS AND CONDITIONS
72
73 0. Definitions.
74
75 "This License" refers to version 3 of the GNU General Public License.
76
77 "Copyright" also means copyright-like laws that apply to other kinds of
78works, such as semiconductor masks.
79
80 "The Program" refers to any copyrightable work licensed under this
81License. Each licensee is addressed as "you". "Licensees" and
82"recipients" may be individuals or organizations.
83
84 To "modify" a work means to copy from or adapt all or part of the work
85in a fashion requiring copyright permission, other than the making of an
86exact copy. The resulting work is called a "modified version" of the
87earlier work or a work "based on" the earlier work.
88
89 A "covered work" means either the unmodified Program or a work based
90on the Program.
91
92 To "propagate" a work means to do anything with it that, without
93permission, would make you directly or secondarily liable for
94infringement under applicable copyright law, except executing it on a
95computer or modifying a private copy. Propagation includes copying,
96distribution (with or without modification), making available to the
97public, and in some countries other activities as well.
98
99 To "convey" a work means any kind of propagation that enables other
100parties to make or receive copies. Mere interaction with a user through
101a computer network, with no transfer of a copy, is not conveying.
102
103 An interactive user interface displays "Appropriate Legal Notices"
104to the extent that it includes a convenient and prominently visible
105feature that (1) displays an appropriate copyright notice, and (2)
106tells the user that there is no warranty for the work (except to the
107extent that warranties are provided), that licensees may convey the
108work under this License, and how to view a copy of this License. If
109the interface presents a list of user commands or options, such as a
110menu, a prominent item in the list meets this criterion.
111
112 1. Source Code.
113
114 The "source code" for a work means the preferred form of the work
115for making modifications to it. "Object code" means any non-source
116form of a work.
117
118 A "Standard Interface" means an interface that either is an official
119standard defined by a recognized standards body, or, in the case of
120interfaces specified for a particular programming language, one that
121is widely used among developers working in that language.
122
123 The "System Libraries" of an executable work include anything, other
124than the work as a whole, that (a) is included in the normal form of
125packaging a Major Component, but which is not part of that Major
126Component, and (b) serves only to enable use of the work with that
127Major Component, or to implement a Standard Interface for which an
128implementation is available to the public in source code form. A
129"Major Component", in this context, means a major essential component
130(kernel, window system, and so on) of the specific operating system
131(if any) on which the executable work runs, or a compiler used to
132produce the work, or an object code interpreter used to run it.
133
134 The "Corresponding Source" for a work in object code form means all
135the source code needed to generate, install, and (for an executable
136work) run the object code and to modify the work, including scripts to
137control those activities. However, it does not include the work's
138System Libraries, or general-purpose tools or generally available free
139programs which are used unmodified in performing those activities but
140which are not part of the work. For example, Corresponding Source
141includes interface definition files associated with source files for
142the work, and the source code for shared libraries and dynamically
143linked subprograms that the work is specifically designed to require,
144such as by intimate data communication or control flow between those
145subprograms and other parts of the work.
146
147 The Corresponding Source need not include anything that users
148can regenerate automatically from other parts of the Corresponding
149Source.
150
151 The Corresponding Source for a work in source code form is that
152same work.
153
154 2. Basic Permissions.
155
156 All rights granted under this License are granted for the term of
157copyright on the Program, and are irrevocable provided the stated
158conditions are met. This License explicitly affirms your unlimited
159permission to run the unmodified Program. The output from running a
160covered work is covered by this License only if the output, given its
161content, constitutes a covered work. This License acknowledges your
162rights of fair use or other equivalent, as provided by copyright law.
163
164 You may make, run and propagate covered works that you do not
165convey, without conditions so long as your license otherwise remains
166in force. You may convey covered works to others for the sole purpose
167of having them make modifications exclusively for you, or provide you
168with facilities for running those works, provided that you comply with
169the terms of this License in conveying all material for which you do
170not control copyright. Those thus making or running the covered works
171for you must do so exclusively on your behalf, under your direction
172and control, on terms that prohibit them from making any copies of
173your copyrighted material outside their relationship with you.
174
175 Conveying under any other circumstances is permitted solely under
176the conditions stated below. Sublicensing is not allowed; section 10
177makes it unnecessary.
178
179 3. Protecting Users' Legal Rights From Anti-Circumvention Law.
180
181 No covered work shall be deemed part of an effective technological
182measure under any applicable law fulfilling obligations under article
18311 of the WIPO copyright treaty adopted on 20 December 1996, or
184similar laws prohibiting or restricting circumvention of such
185measures.
186
187 When you convey a covered work, you waive any legal power to forbid
188circumvention of technological measures to the extent such circumvention
189is effected by exercising rights under this License with respect to
190the covered work, and you disclaim any intention to limit operation or
191modification of the work as a means of enforcing, against the work's
192users, your or third parties' legal rights to forbid circumvention of
193technological measures.
194
195 4. Conveying Verbatim Copies.
196
197 You may convey verbatim copies of the Program's source code as you
198receive it, in any medium, provided that you conspicuously and
199appropriately publish on each copy an appropriate copyright notice;
200keep intact all notices stating that this License and any
201non-permissive terms added in accord with section 7 apply to the code;
202keep intact all notices of the absence of any warranty; and give all
203recipients a copy of this License along with the Program.
204
205 You may charge any price or no price for each copy that you convey,
206and you may offer support or warranty protection for a fee.
207
208 5. Conveying Modified Source Versions.
209
210 You may convey a work based on the Program, or the modifications to
211produce it from the Program, in the form of source code under the
212terms of section 4, provided that you also meet all of these conditions:
213
214 a) The work must carry prominent notices stating that you modified
215 it, and giving a relevant date.
216
217 b) The work must carry prominent notices stating that it is
218 released under this License and any conditions added under section
219 7. This requirement modifies the requirement in section 4 to
220 "keep intact all notices".
221
222 c) You must license the entire work, as a whole, under this
223 License to anyone who comes into possession of a copy. This
224 License will therefore apply, along with any applicable section 7
225 additional terms, to the whole of the work, and all its parts,
226 regardless of how they are packaged. This License gives no
227 permission to license the work in any other way, but it does not
228 invalidate such permission if you have separately received it.
229
230 d) If the work has interactive user interfaces, each must display
231 Appropriate Legal Notices; however, if the Program has interactive
232 interfaces that do not display Appropriate Legal Notices, your
233 work need not make them do so.
234
235 A compilation of a covered work with other separate and independent
236works, which are not by their nature extensions of the covered work,
237and which are not combined with it such as to form a larger program,
238in or on a volume of a storage or distribution medium, is called an
239"aggregate" if the compilation and its resulting copyright are not
240used to limit the access or legal rights of the compilation's users
241beyond what the individual works permit. Inclusion of a covered work
242in an aggregate does not cause this License to apply to the other
243parts of the aggregate.
244
245 6. Conveying Non-Source Forms.
246
247 You may convey a covered work in object code form under the terms
248of sections 4 and 5, provided that you also convey the
249machine-readable Corresponding Source under the terms of this License,
250in one of these ways:
251
252 a) Convey the object code in, or embodied in, a physical product
253 (including a physical distribution medium), accompanied by the
254 Corresponding Source fixed on a durable physical medium
255 customarily used for software interchange.
256
257 b) Convey the object code in, or embodied in, a physical product
258 (including a physical distribution medium), accompanied by a
259 written offer, valid for at least three years and valid for as
260 long as you offer spare parts or customer support for that product
261 model, to give anyone who possesses the object code either (1) a
262 copy of the Corresponding Source for all the software in the
263 product that is covered by this License, on a durable physical
264 medium customarily used for software interchange, for a price no
265 more than your reasonable cost of physically performing this
266 conveying of source, or (2) access to copy the
267 Corresponding Source from a network server at no charge.
268
269 c) Convey individual copies of the object code with a copy of the
270 written offer to provide the Corresponding Source. This
271 alternative is allowed only occasionally and noncommercially, and
272 only if you received the object code with such an offer, in accord
273 with subsection 6b.
274
275 d) Convey the object code by offering access from a designated
276 place (gratis or for a charge), and offer equivalent access to the
277 Corresponding Source in the same way through the same place at no
278 further charge. You need not require recipients to copy the
279 Corresponding Source along with the object code. If the place to
280 copy the object code is a network server, the Corresponding Source
281 may be on a different server (operated by you or a third party)
282 that supports equivalent copying facilities, provided you maintain
283 clear directions next to the object code saying where to find the
284 Corresponding Source. Regardless of what server hosts the
285 Corresponding Source, you remain obligated to ensure that it is
286 available for as long as needed to satisfy these requirements.
287
288 e) Convey the object code using peer-to-peer transmission, provided
289 you inform other peers where the object code and Corresponding
290 Source of the work are being offered to the general public at no
291 charge under subsection 6d.
292
293 A separable portion of the object code, whose source code is excluded
294from the Corresponding Source as a System Library, need not be
295included in conveying the object code work.
296
297 A "User Product" is either (1) a "consumer product", which means any
298tangible personal property which is normally used for personal, family,
299or household purposes, or (2) anything designed or sold for incorporation
300into a dwelling. In determining whether a product is a consumer product,
301doubtful cases shall be resolved in favor of coverage. For a particular
302product received by a particular user, "normally used" refers to a
303typical or common use of that class of product, regardless of the status
304of the particular user or of the way in which the particular user
305actually uses, or expects or is expected to use, the product. A product
306is a consumer product regardless of whether the product has substantial
307commercial, industrial or non-consumer uses, unless such uses represent
308the only significant mode of use of the product.
309
310 "Installation Information" for a User Product means any methods,
311procedures, authorization keys, or other information required to install
312and execute modified versions of a covered work in that User Product from
313a modified version of its Corresponding Source. The information must
314suffice to ensure that the continued functioning of the modified object
315code is in no case prevented or interfered with solely because
316modification has been made.
317
318 If you convey an object code work under this section in, or with, or
319specifically for use in, a User Product, and the conveying occurs as
320part of a transaction in which the right of possession and use of the
321User Product is transferred to the recipient in perpetuity or for a
322fixed term (regardless of how the transaction is characterized), the
323Corresponding Source conveyed under this section must be accompanied
324by the Installation Information. But this requirement does not apply
325if neither you nor any third party retains the ability to install
326modified object code on the User Product (for example, the work has
327been installed in ROM).
328
329 The requirement to provide Installation Information does not include a
330requirement to continue to provide support service, warranty, or updates
331for a work that has been modified or installed by the recipient, or for
332the User Product in which it has been modified or installed. Access to a
333network may be denied when the modification itself materially and
334adversely affects the operation of the network or violates the rules and
335protocols for communication across the network.
336
337 Corresponding Source conveyed, and Installation Information provided,
338in accord with this section must be in a format that is publicly
339documented (and with an implementation available to the public in
340source code form), and must require no special password or key for
341unpacking, reading or copying.
342
343 7. Additional Terms.
344
345 "Additional permissions" are terms that supplement the terms of this
346License by making exceptions from one or more of its conditions.
347Additional permissions that are applicable to the entire Program shall
348be treated as though they were included in this License, to the extent
349that they are valid under applicable law. If additional permissions
350apply only to part of the Program, that part may be used separately
351under those permissions, but the entire Program remains governed by
352this License without regard to the additional permissions.
353
354 When you convey a copy of a covered work, you may at your option
355remove any additional permissions from that copy, or from any part of
356it. (Additional permissions may be written to require their own
357removal in certain cases when you modify the work.) You may place
358additional permissions on material, added by you to a covered work,
359for which you have or can give appropriate copyright permission.
360
361 Notwithstanding any other provision of this License, for material you
362add to a covered work, you may (if authorized by the copyright holders of
363that material) supplement the terms of this License with terms:
364
365 a) Disclaiming warranty or limiting liability differently from the
366 terms of sections 15 and 16 of this License; or
367
368 b) Requiring preservation of specified reasonable legal notices or
369 author attributions in that material or in the Appropriate Legal
370 Notices displayed by works containing it; or
371
372 c) Prohibiting misrepresentation of the origin of that material, or
373 requiring that modified versions of such material be marked in
374 reasonable ways as different from the original version; or
375
376 d) Limiting the use for publicity purposes of names of licensors or
377 authors of the material; or
378
379 e) Declining to grant rights under trademark law for use of some
380 trade names, trademarks, or service marks; or
381
382 f) Requiring indemnification of licensors and authors of that
383 material by anyone who conveys the material (or modified versions of
384 it) with contractual assumptions of liability to the recipient, for
385 any liability that these contractual assumptions directly impose on
386 those licensors and authors.
387
388 All other non-permissive additional terms are considered "further
389restrictions" within the meaning of section 10. If the Program as you
390received it, or any part of it, contains a notice stating that it is
391governed by this License along with a term that is a further
392restriction, you may remove that term. If a license document contains
393a further restriction but permits relicensing or conveying under this
394License, you may add to a covered work material governed by the terms
395of that license document, provided that the further restriction does
396not survive such relicensing or conveying.
397
398 If you add terms to a covered work in accord with this section, you
399must place, in the relevant source files, a statement of the
400additional terms that apply to those files, or a notice indicating
401where to find the applicable terms.
402
403 Additional terms, permissive or non-permissive, may be stated in the
404form of a separately written license, or stated as exceptions;
405the above requirements apply either way.
406
407 8. Termination.
408
409 You may not propagate or modify a covered work except as expressly
410provided under this License. Any attempt otherwise to propagate or
411modify it is void, and will automatically terminate your rights under
412this License (including any patent licenses granted under the third
413paragraph of section 11).
414
415 However, if you cease all violation of this License, then your
416license from a particular copyright holder is reinstated (a)
417provisionally, unless and until the copyright holder explicitly and
418finally terminates your license, and (b) permanently, if the copyright
419holder fails to notify you of the violation by some reasonable means
420prior to 60 days after the cessation.
421
422 Moreover, your license from a particular copyright holder is
423reinstated permanently if the copyright holder notifies you of the
424violation by some reasonable means, this is the first time you have
425received notice of violation of this License (for any work) from that
426copyright holder, and you cure the violation prior to 30 days after
427your receipt of the notice.
428
429 Termination of your rights under this section does not terminate the
430licenses of parties who have received copies or rights from you under
431this License. If your rights have been terminated and not permanently
432reinstated, you do not qualify to receive new licenses for the same
433material under section 10.
434
435 9. Acceptance Not Required for Having Copies.
436
437 You are not required to accept this License in order to receive or
438run a copy of the Program. Ancillary propagation of a covered work
439occurring solely as a consequence of using peer-to-peer transmission
440to receive a copy likewise does not require acceptance. However,
441nothing other than this License grants you permission to propagate or
442modify any covered work. These actions infringe copyright if you do
443not accept this License. Therefore, by modifying or propagating a
444covered work, you indicate your acceptance of this License to do so.
445
446 10. Automatic Licensing of Downstream Recipients.
447
448 Each time you convey a covered work, the recipient automatically
449receives a license from the original licensors, to run, modify and
450propagate that work, subject to this License. You are not responsible
451for enforcing compliance by third parties with this License.
452
453 An "entity transaction" is a transaction transferring control of an
454organization, or substantially all assets of one, or subdividing an
455organization, or merging organizations. If propagation of a covered
456work results from an entity transaction, each party to that
457transaction who receives a copy of the work also receives whatever
458licenses to the work the party's predecessor in interest had or could
459give under the previous paragraph, plus a right to possession of the
460Corresponding Source of the work from the predecessor in interest, if
461the predecessor has it or can get it with reasonable efforts.
462
463 You may not impose any further restrictions on the exercise of the
464rights granted or affirmed under this License. For example, you may
465not impose a license fee, royalty, or other charge for exercise of
466rights granted under this License, and you may not initiate litigation
467(including a cross-claim or counterclaim in a lawsuit) alleging that
468any patent claim is infringed by making, using, selling, offering for
469sale, or importing the Program or any portion of it.
470
471 11. Patents.
472
473 A "contributor" is a copyright holder who authorizes use under this
474License of the Program or a work on which the Program is based. The
475work thus licensed is called the contributor's "contributor version".
476
477 A contributor's "essential patent claims" are all patent claims
478owned or controlled by the contributor, whether already acquired or
479hereafter acquired, that would be infringed by some manner, permitted
480by this License, of making, using, or selling its contributor version,
481but do not include claims that would be infringed only as a
482consequence of further modification of the contributor version. For
483purposes of this definition, "control" includes the right to grant
484patent sublicenses in a manner consistent with the requirements of
485this License.
486
487 Each contributor grants you a non-exclusive, worldwide, royalty-free
488patent license under the contributor's essential patent claims, to
489make, use, sell, offer for sale, import and otherwise run, modify and
490propagate the contents of its contributor version.
491
492 In the following three paragraphs, a "patent license" is any express
493agreement or commitment, however denominated, not to enforce a patent
494(such as an express permission to practice a patent or covenant not to
495sue for patent infringement). To "grant" such a patent license to a
496party means to make such an agreement or commitment not to enforce a
497patent against the party.
498
499 If you convey a covered work, knowingly relying on a patent license,
500and the Corresponding Source of the work is not available for anyone
501to copy, free of charge and under the terms of this License, through a
502publicly available network server or other readily accessible means,
503then you must either (1) cause the Corresponding Source to be so
504available, or (2) arrange to deprive yourself of the benefit of the
505patent license for this particular work, or (3) arrange, in a manner
506consistent with the requirements of this License, to extend the patent
507license to downstream recipients. "Knowingly relying" means you have
508actual knowledge that, but for the patent license, your conveying the
509covered work in a country, or your recipient's use of the covered work
510in a country, would infringe one or more identifiable patents in that
511country that you have reason to believe are valid.
512
513 If, pursuant to or in connection with a single transaction or
514arrangement, you convey, or propagate by procuring conveyance of, a
515covered work, and grant a patent license to some of the parties
516receiving the covered work authorizing them to use, propagate, modify
517or convey a specific copy of the covered work, then the patent license
518you grant is automatically extended to all recipients of the covered
519work and works based on it.
520
521 A patent license is "discriminatory" if it does not include within
522the scope of its coverage, prohibits the exercise of, or is
523conditioned on the non-exercise of one or more of the rights that are
524specifically granted under this License. You may not convey a covered
525work if you are a party to an arrangement with a third party that is
526in the business of distributing software, under which you make payment
527to the third party based on the extent of your activity of conveying
528the work, and under which the third party grants, to any of the
529parties who would receive the covered work from you, a discriminatory
530patent license (a) in connection with copies of the covered work
531conveyed by you (or copies made from those copies), or (b) primarily
532for and in connection with specific products or compilations that
533contain the covered work, unless you entered into that arrangement,
534or that patent license was granted, prior to 28 March 2007.
535
536 Nothing in this License shall be construed as excluding or limiting
537any implied license or other defenses to infringement that may
538otherwise be available to you under applicable patent law.
539
540 12. No Surrender of Others' Freedom.
541
542 If conditions are imposed on you (whether by court order, agreement or
543otherwise) that contradict the conditions of this License, they do not
544excuse you from the conditions of this License. If you cannot convey a
545covered work so as to satisfy simultaneously your obligations under this
546License and any other pertinent obligations, then as a consequence you may
547not convey it at all. For example, if you agree to terms that obligate you
548to collect a royalty for further conveying from those to whom you convey
549the Program, the only way you could satisfy both those terms and this
550License would be to refrain entirely from conveying the Program.
551
552 13. Use with the GNU Affero General Public License.
553
554 Notwithstanding any other provision of this License, you have
555permission to link or combine any covered work with a work licensed
556under version 3 of the GNU Affero General Public License into a single
557combined work, and to convey the resulting work. The terms of this
558License will continue to apply to the part which is the covered work,
559but the special requirements of the GNU Affero General Public License,
560section 13, concerning interaction through a network will apply to the
561combination as such.
562
563 14. Revised Versions of this License.
564
565 The Free Software Foundation may publish revised and/or new versions of
566the GNU General Public License from time to time. Such new versions will
567be similar in spirit to the present version, but may differ in detail to
568address new problems or concerns.
569
570 Each version is given a distinguishing version number. If the
571Program specifies that a certain numbered version of the GNU General
572Public License "or any later version" applies to it, you have the
573option of following the terms and conditions either of that numbered
574version or of any later version published by the Free Software
575Foundation. If the Program does not specify a version number of the
576GNU General Public License, you may choose any version ever published
577by the Free Software Foundation.
578
579 If the Program specifies that a proxy can decide which future
580versions of the GNU General Public License can be used, that proxy's
581public statement of acceptance of a version permanently authorizes you
582to choose that version for the Program.
583
584 Later license versions may give you additional or different
585permissions. However, no additional obligations are imposed on any
586author or copyright holder as a result of your choosing to follow a
587later version.
588
589 15. Disclaimer of Warranty.
590
591 THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
592APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
593HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
594OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
595THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
596PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
597IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
598ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
599
600 16. Limitation of Liability.
601
602 IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
603WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
604THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
605GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
606USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
607DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
608PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
609EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
610SUCH DAMAGES.
611
612 17. Interpretation of Sections 15 and 16.
613
614 If the disclaimer of warranty and limitation of liability provided
615above cannot be given local legal effect according to their terms,
616reviewing courts shall apply local law that most closely approximates
617an absolute waiver of all civil liability in connection with the
618Program, unless a warranty or assumption of liability accompanies a
619copy of the Program in return for a fee.
620
621 END OF TERMS AND CONDITIONS
622
623 How to Apply These Terms to Your New Programs
624
625 If you develop a new program, and you want it to be of the greatest
626possible use to the public, the best way to achieve this is to make it
627free software which everyone can redistribute and change under these terms.
628
629 To do so, attach the following notices to the program. It is safest
630to attach them to the start of each source file to most effectively
631state the exclusion of warranty; and each file should have at least
632the "copyright" line and a pointer to where the full notice is found.
633
634 <one line to give the program's name and a brief idea of what it does.>
635 Copyright (C) <year> <name of author>
636
637 This program is free software: you can redistribute it and/or modify
638 it under the terms of the GNU General Public License as published by
639 the Free Software Foundation, either version 3 of the License, or
640 (at your option) any later version.
641
642 This program is distributed in the hope that it will be useful,
643 but WITHOUT ANY WARRANTY; without even the implied warranty of
644 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
645 GNU General Public License for more details.
646
647 You should have received a copy of the GNU General Public License
648 along with this program. If not, see <http://www.gnu.org/licenses/>.
649
650Also add information on how to contact you by electronic and paper mail.
651
652 If the program does terminal interaction, make it output a short
653notice like this when it starts in an interactive mode:
654
655 <program> Copyright (C) <year> <name of author>
656 This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
657 This is free software, and you are welcome to redistribute it
658 under certain conditions; type `show c' for details.
659
660The hypothetical commands `show w' and `show c' should show the appropriate
661parts of the General Public License. Of course, your program's commands
662might be different; for a GUI interface, you would use an "about box".
663
664 You should also get your employer (if you work as a programmer) or school,
665if any, to sign a "copyright disclaimer" for the program, if necessary.
666For more information on this, and how to apply and follow the GNU GPL, see
667<http://www.gnu.org/licenses/>.
668
669 The GNU General Public License does not permit incorporating your program
670into proprietary programs. If your program is a subroutine library, you
671may consider it more useful to permit linking proprietary applications with
672the library. If this is what you want to do, use the GNU Lesser General
673Public License instead of this License. But first, please read
674<http://www.gnu.org/philosophy/why-not-lgpl.html>.
6750
=== removed file 'client/Makefile.am'
--- client/Makefile.am 2012-06-15 10:56:26 +0000
+++ client/Makefile.am 1970-01-01 00:00:00 +0000
@@ -1,125 +0,0 @@
1GETTEXT_PACKAGE = gwibber
2
3bin_PROGRAMS = \
4 gwibber \
5 gwibber-poster \
6 gwibber-preferences
7
8gwibber_SOURCES = \
9 gwibber-client.vala \
10 attachments-item.vala \
11 searches-item.vala \
12 users-item.vala \
13 home-item.vala \
14 private-item.vala \
15 replies-item.vala \
16 public-item.vala \
17 messages-item.vala \
18 stream-entry.vala \
19 status-bar.vala \
20 tab-bar.vala \
21 tab-bar-item.vala \
22 tab-bar-widgets.vala
23
24gwibber_CFLAGS = \
25 $(BASE_CFLAGS) \
26 -DGETTEXT_PACKAGE=\"$(GETTEXT_PACKAGE)\" \
27 -I$(top_srcdir)/libgwibber \
28 -I$(top_srcdir)/libgwibber-gtk
29
30gwibber_VALAFLAGS = \
31 -X -I$(top_srcdir)/libgwibber \
32 -X -L../libgwibber/.libs \
33 -X -I$(top_srcdir)/libgwibber-gtk \
34 -X -L../libgwibber-gtk/.libs \
35 ../libgwibber/gwibber-@GWIBBER_API_VERSION@.vapi \
36 ../libgwibber-gtk/gwibber-gtk-@GWIBBER_API_VERSION@.vapi \
37 --vapidir $(top_srcdir)/vapi \
38 --pkg accounts \
39 --pkg config \
40 --pkg json-glib-1.0 \
41 --pkg gee-1.0 \
42 --pkg gtk+-3.0 \
43 --pkg gdk-3.0 \
44 --pkg atk \
45 --pkg glib-2.0 \
46 --pkg dee-1.0 \
47 --basedir ./ \
48 $(MAINTAINER_VALAFLAGS) \
49 $(NULL)
50
51gwibber_LDADD = \
52 $(BASE_LIBS) \
53 -L../libgwibber/.libs -lgwibber \
54 -L../libgwibber-gtk/.libs -lgwibber-gtk \
55 -lpangocairo-1.0 -ldee-1.0
56
57gwibber_preferences_SOURCES = \
58 gwibber-preferences.vala
59
60gwibber_preferences_CFLAGS = \
61 $(BASE_CFLAGS) \
62 -DGETTEXT_PACKAGE=\"$(GETTEXT_PACKAGE)\" \
63 -I$(top_srcdir)/libgwibber \
64 -I$(top_srcdir)/libgwibber-gtk
65
66gwibber_preferences_VALAFLAGS = \
67 --vapidir $(top_srcdir)/vapi \
68 --pkg accounts \
69 --pkg config \
70 --pkg gtk+-3.0 \
71 --pkg gdk-3.0 \
72 --pkg atk \
73 --pkg glib-2.0 \
74 --pkg gmodule-2.0 \
75 --pkg Dbusmenu-0.4 \
76 $(MAINTAINER_VALAFLAGS) \
77 $(NULL)
78
79gwibber_preferences_LDADD = \
80 $(BASE_LIBS)
81
82gwibber_poster_SOURCES = \
83 stream-entry.vala \
84 gwibber-poster.vala
85
86gwibber_poster_CFLAGS = \
87 $(BASE_CFLAGS) \
88 -I$(top_srcdir)/libgwibber \
89 -I$(top_srcdir)/libgwibber-gtk
90
91gwibber_poster_VALAFLAGS = \
92 -X -I$(top_srcdir)/libgwibber \
93 -X -L../libgwibber/.libs \
94 -X -I$(top_srcdir)/libgwibber-gtk \
95 -X -L../libgwibber-gtk/.libs \
96 ../libgwibber/gwibber-@GWIBBER_API_VERSION@.vapi \
97 ../libgwibber-gtk/gwibber-gtk-@GWIBBER_API_VERSION@.vapi \
98 --vapidir $(top_srcdir)/vapi \
99 --pkg accounts \
100 --pkg config \
101 --pkg json-glib-1.0 \
102 --pkg gtk+-3.0 \
103 --pkg gdk-3.0 \
104 --pkg atk \
105 --pkg glib-2.0 \
106 --pkg gee-1.0 \
107 --pkg dee-1.0 \
108 --pkg pango \
109 --basedir ./ \
110 $(MAINTAINER_VALAFLAGS) \
111 $(NULL)
112
113gwibber_poster_LDADD = \
114 $(BASE_LIBS) \
115 -L../libgwibber/.libs -lgwibber \
116 -L../libgwibber-gtk/.libs -lgwibber-gtk
117
118VALASOURCES = \
119 $(gwibber_SOURCES) \
120 $(gwibber_poster_SOURCES) \
121 $(gwibber_preferences_SOURCES)
122
123CLEANFILES = \
124 *.stamp \
125 $(VALASOURCES:.vala=.c)
1260
=== removed file 'client/attachments-item.vala'
--- client/attachments-item.vala 2012-08-05 19:21:33 +0000
+++ client/attachments-item.vala 1970-01-01 00:00:00 +0000
@@ -1,84 +0,0 @@
1/*
2 * Copyright (C) 2011 Canonical Ltd.
3 *
4 * This program is free software: you can redistribute it and/or modify it
5 * under the terms of the GNU General Public License version 3, as published
6 * by the Free Software Foundation.
7
8 * This program is distributed in the hope that it will be useful, but
9 * WITHOUT ANY WARRANTY; without even the implied warranties of
10 * MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR
11 * PURPOSE. See the GNU General Public License for more details.
12
13 * You should have received a copy of the GNU General Public License along
14 * with this program. If not, see <http://www.gnu.org/licenses/>.
15 *
16 * Authored by Neil Jagdish Patel <njpatel@gmail.com>
17 */
18
19public class AttachmentsItem : TabBarStreamItem
20{
21 private Gtk.Alignment _align;
22 private Gtk.Box box;
23
24 public AttachmentsItem (Gee.HashMap streams_map)
25 {
26 Object (stream:"images", icon_name:"gwibber-stream-attachments", tooltip:_("Attachments"), streams_map:streams_map);
27 }
28
29 construct
30 {
31
32 _align = new Gtk.Alignment (0.5f, 0.5f, 1.0f, 1.0f);
33
34 box = new Gtk.Box (Gtk.Orientation.HORIZONTAL, 12);
35 _align.add (box);
36
37 var images_but = new TabWidgets.RadioButton (_("Images"));
38 images_but.clicked.connect(() => {
39 if (images_but.active)
40 {
41 view.position = 0;
42 view.model = streams_map["images"];
43 view.stream = "images";
44 }
45 });
46 box.pack_start (images_but, false, false, 0);
47
48 var links_but = new TabWidgets.RadioButton (_("Links"));
49 links_but.join_group (images_but);
50 links_but.clicked.connect(() => {
51 if (links_but.active)
52 {
53 view.position = 0;
54 view.model = streams_map["links"];
55 view.stream = "links";
56 }
57 });
58 box.pack_start (links_but, false, false, 0);
59
60 var videos_but = new TabWidgets.RadioButton (_("Videos"));
61 videos_but.join_group (links_but);
62 videos_but.clicked.connect(() => {
63 if (videos_but.active)
64 {
65 view.position = 0;
66 view.model = streams_map["videos"];
67 view.stream = "videos";
68 }
69 });
70 box.pack_start (videos_but, false, false, 0);
71
72 _align.show_all ();
73 }
74
75 public override Gtk.Widget? get_toolbar ()
76 {
77 return _align;
78 }
79
80 public override Gtk.Widget? get_view ()
81 {
82 return view;
83 }
84}
850
=== removed file 'client/gwibber-client.vala'
--- client/gwibber-client.vala 2012-06-15 10:56:26 +0000
+++ client/gwibber-client.vala 1970-01-01 00:00:00 +0000
@@ -1,453 +0,0 @@
1/*
2 * Copyright (C) 2010 Canonical Ltd.
3 *
4 * This program is free software: you can redistribute it and/or modify it
5 * under the terms of the GNU General Public License version 3, as published
6 * by the Free Software Foundation.
7
8 * This program is distributed in the hope that it will be useful, but
9 * WITHOUT ANY WARRANTY; without even the implied warranties of
10 * MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR
11 * PURPOSE. See the GNU General Public License for more details.
12
13 * You should have received a copy of the GNU General Public License along
14 * with this program. If not, see <http://www.gnu.org/licenses/>.
15 *
16 * Authored by Ken VanDine <ken.vandine@canonical.com>
17 */
18
19public class Client : Gtk.Window
20{
21 private Gwibber.Streams streams_service;
22 private Gwibber.Service _service;
23 private GLib.Settings state_settings;
24 public Gee.HashMap <string, Dee.Model?> streams_map;
25 public Gee.HashMap <string, TabBarItem?> items_map;
26 public TabBar tabbar;
27 public GwibberGtk.StreamView view;
28 public Gtk.UIManager manager;
29 private StatusBar _status_bar;
30 private int _sort_order = 1;
31
32 public int sort_order {
33 get { return _sort_order; }
34 set {
35 if (value != _sort_order)
36 {
37 _sort_order = value;
38 foreach (var v in items_map.values)
39 {
40 var _view = v.get_view () as GwibberGtk.StreamView;
41 if (_view.sort_order != _sort_order)
42 _view.sort_order = _sort_order;
43 }
44 }
45 }
46 }
47
48
49 public Client ()
50 {
51 Object ();
52 }
53
54 construct
55 {
56 state_settings = new GLib.Settings ("org.gwibber.state");
57 streams_map = new Gee.HashMap<string?, Dee.Model?> ();
58 items_map = new Gee.HashMap<string?, TabBarItem?> ();
59
60 configure_event.connect (on_configure_event);
61 delete_event.connect (() => {
62 this.hide ();
63 Idle.add (() => { this.destroy (); return false; });
64 return true;
65 });
66
67 set_name(Config.PACKAGE);
68 set_icon_name("gwibber");
69 set_title("Gwibber");
70 set_wmclass("gwibber", "Gwibber");
71
72 set_default_size(400,800);
73
74 // Move to last known location and resize
75 move(state_settings.get_int("position-x"), state_settings.get_int("position-y"));
76 resize(state_settings.get_int("width"), state_settings.get_int("height"));
77
78 // Tab Bar
79 tabbar = new TabBar ();
80
81 var main_box = new Gtk.Box (Gtk.Orientation.VERTICAL, 0);
82
83 _status_bar = new StatusBar ();
84 /* We don't need this yet
85 _status_bar.add_button (Gtk.Stock.OK, Gtk.ResponseType.OK);
86 _status_bar.response.connect((r) => {
87 _status_bar.showing = false;
88 });
89 */
90 main_box.pack_end (_status_bar, false, false, 0);
91 _status_bar.notify["showing"].connect (()=>
92 {
93 debug ("StatusBar showing changed");
94 });
95
96 _service = new Gwibber.Service ();
97 _service.loading_started.connect((source) => {
98 debug ("Loading started");
99 if (!_status_bar.showing)
100 {
101 _status_bar.reset ();
102 _status_bar.set_message_type (Gtk.MessageType.OTHER);
103 _status_bar.message = _("Refreshing");
104 _status_bar.showing = true;
105 }
106 });
107 _service.loading_complete.connect((source) => {
108 debug ("Loading completed");
109 if (_status_bar.showing)
110 _status_bar.showing = false;
111 });
112
113 main_box.pack_end (tabbar, true, true, 0);
114 add (main_box);
115
116 streams_service = new Gwibber.Streams ();
117
118 streams_map["home"] = streams_service.stream_filter_model (streams_service.stream_model, "home");
119
120 var home_item = new HomeItem (streams_map);
121 view = (GwibberGtk.StreamView)home_item.get_view ();
122
123 tabbar.add_item (home_item);
124 items_map["home"] = home_item;
125
126 streams_map["messages"] = streams_service.stream_filter_model (streams_service.stream_model, "messages");
127 streams_map["replies"] = streams_service.stream_filter_model (streams_service.stream_model, "replies");
128 streams_map["private"] = streams_service.stream_filter_model (streams_service.stream_model, "private");
129 streams_map["images"] = streams_service.stream_filter_model (streams_service.stream_model, "images");
130 streams_map["videos"] = streams_service.stream_filter_model (streams_service.stream_model, "videos");
131 streams_map["links"] = streams_service.stream_filter_model (streams_service.stream_model, "links");
132 streams_map["public"] = streams_service.stream_filter_model (streams_service.stream_model, "public");
133
134 var messages_item = new MessagesItem (streams_map);
135 tabbar.add_item (messages_item);
136 items_map["messages"] = messages_item;
137
138 var replies_item = new RepliesItem (streams_map);
139 tabbar.add_item (replies_item);
140 items_map["replies"] = replies_item;
141
142 var private_item = new PrivateItem (streams_map);
143 tabbar.add_item (private_item);
144 items_map["private"] = private_item;
145
146 var public_item = new PublicItem (streams_map);
147 tabbar.add_item (public_item);
148 items_map["public"] = public_item;
149
150 var attach_item = new AttachmentsItem (streams_map);
151 tabbar.add_item (attach_item);
152 items_map["attach"] = attach_item;
153
154 var searches_item = new SearchesItem (streams_service);
155 tabbar.add_item (searches_item as TabBarItem);
156 items_map["searches"] = searches_item;
157
158 searches_item.raise.connect ((item) => {
159 searches_item.clicked ();
160 });
161
162 var users_item = new UsersItem (streams_service);
163 tabbar.add_item (users_item as TabBarItem);
164 items_map["users"] = users_item;
165
166 users_item.raise.connect ((item) => {
167 users_item.clicked ();
168 });
169
170 view.notify["prepared"].connect (() => {
171 sort_order = state_settings.get_int("stream-sort-order");
172 });
173
174 state_settings.changed.connect ((key) => {
175 if (key == "stream-sort-order") {
176 if (sort_order != state_settings.get_int("stream-sort-order"))
177 sort_order = state_settings.get_int("stream-sort-order");
178 }
179 });
180 messages_item.clicked ();
181
182 Idle.add (() => {
183 var menubar = create_menus ();
184 main_box.pack_start(menubar, false, true, 0);
185 return false;
186 });
187
188 }
189
190 public Gtk.MenuBar create_menus ()
191 {
192 /**** Create menus ****/
193
194 Gtk.ActionEntry[] entries = new Gtk.ActionEntry[0];
195
196 Gtk.ActionEntry menu = {"Gwibber", null, _("_Gwibber"), null, null, null};
197 entries += menu;
198 menu = {"View", null, _("_View"), null, null, null};
199 entries += menu;
200 menu = {"Edit", null, _("_Edit"), null, null, null};
201 entries += menu;
202 menu = {"Help", null, _("_Help"), null, null, null};
203 entries += menu;
204 menu = {"refresh", Gtk.Stock.REFRESH, _("_Refresh"), "F5", null, on_refresh};
205 entries += menu;
206 menu = {"quit", Gtk.Stock.QUIT, _("_Quit"), "<ctrl>Q", null, on_quit};
207 entries += menu;
208 menu = {"sort", null, _("_Sort"), null, null, null};
209 entries += menu;
210 menu = {"accounts", null, _("_Accounts"), "<ctrl><shift>A", null,on_accounts};
211 entries += menu;
212 menu = {"preferences", Gtk.Stock.PREFERENCES, _("_Preferences"), "<ctrl>P", null, on_preferences};
213 entries += menu;
214 menu = {"about", Gtk.Stock.ABOUT, _("_About"), null, null, on_about};
215 entries += menu;
216
217 var sort_entries = new Gtk.RadioActionEntry[0];
218 Gtk.RadioActionEntry radio = {"ascending", Gtk.Stock.SORT_ASCENDING, _("_Ascending"), null, null, 0};
219 sort_entries += radio;
220 radio = {"descending", Gtk.Stock.SORT_DESCENDING, _("_Descending"), null, null, 1};
221 sort_entries += radio;
222
223 string ui = """
224 <ui>
225 <menubar name="MenuBar">
226 <menu action="Gwibber">
227 <menuitem action="refresh" />
228 <separator/>
229 <menuitem action="quit" />
230 </menu>
231
232 <menu action="View">
233 <menu action="sort">
234 <menuitem action="ascending" />
235 <menuitem action="descending" />
236 </menu>
237 </menu>
238
239 <menu action="Edit">
240 <menuitem action="accounts" />
241 <menuitem name="preferences" action="preferences" />
242 </menu>
243
244 <menu action="Help">
245 <menuitem action="about" />
246 </menu>
247 </menubar>
248 </ui>
249 """;
250
251 var main_group = new Gtk.ActionGroup("client");
252 main_group.add_actions(entries, this);
253 main_group.add_radio_actions(sort_entries, sort_order, ((a,c) => {
254 Gtk.RadioAction current = (Gtk.RadioAction) c;
255 state_settings.set_int("stream-sort-order", current.get_current_value ());
256 }));
257
258 var manager = new Gtk.UIManager();
259
260 try {
261 manager.add_ui_from_string(ui, -1);
262 } catch (Error e) { error("%s", e.message); }
263
264 manager.insert_action_group(main_group, 0);
265
266 var menubar = manager.get_widget("/MenuBar") as Gtk.MenuBar;
267 add_accel_group(manager.get_accel_group());
268
269 /**** End menu setup ****/
270
271 return menubar;
272 }
273
274
275 static void on_refresh() {
276 var service = new Gwibber.Service();
277 service.refresh();
278 }
279
280 static void on_preferences() {
281 GLib.Pid pid;
282 try {
283 GLib.Process.spawn_async(null, {"gwibber-preferences"}, null,
284 GLib.SpawnFlags.SEARCH_PATH, null, out pid);
285 } catch {
286 }
287 }
288
289 static void on_accounts() {
290 GLib.Pid pid;
291 try {
292 GLib.Process.spawn_async(null,
293 {"gnome-control-center", "credentials", "application=gwibber"}, null,
294 GLib.SpawnFlags.SEARCH_PATH, null, out pid);
295 } catch {
296
297 }
298 }
299
300
301 static void on_about() {
302
303 string license = _("Gwibber is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\n\nGwibber is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\n\nYou should have received a copy of the GNU General Public License along with Gwibber; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-130159 USA");
304
305 string[] authors = {"Ken VanDine <ken@vandine.org>", "Neil Jagdish Patel <njpatel@gmail.com>"};
306 var about_dialog = new Gtk.AboutDialog ();
307 about_dialog.set_program_name("Gwibber");
308 about_dialog.set_logo_icon_name("gwibber");
309 about_dialog.set_version(Config.VERSION);
310 about_dialog.set_website("http://www.gwibber.com");
311 about_dialog.set_license(license);
312 about_dialog.set_wrap_license(true);
313 about_dialog.set_authors (authors);
314 about_dialog.run ();
315 about_dialog.destroy ();
316 }
317
318 private void on_quit ()
319 {
320 destroy ();
321 var service = new Gwibber.Service();
322
323 /* Check if the unity lens is running and only shutdown the
324 * service if it isn't
325 */
326 bool has_owner = false;
327 try {
328 string name = "com.canonical.Unity.Lens.Gwibber";
329 DBusConnection bus = Bus.get_sync (BusType.SESSION);
330 Variant result = bus.call_sync ("org.freedesktop.DBus",
331 "/org/freedesktop/dbus",
332 "org.freedesktop.DBus",
333 "NameHasOwner",
334 new Variant ("(s)", name),
335 new VariantType ("(b)"),
336 DBusCallFlags.NO_AUTO_START,
337 -1);
338 result.get ("(b)", out has_owner);
339 } catch (Error e) {
340 warning ("Unable to decide if '%s' is running: %s", name, e.message);
341 }
342
343 if (!has_owner)
344 {
345 debug ("Lens isn't running");
346 service.quit ();
347 }
348
349 }
350
351 bool on_configure_event (Gdk.EventConfigure event) {
352 int width, height, x, y;
353 get_size(out width, out height);
354 get_position (out x, out y);
355 state_settings.set_int("width", width);
356 state_settings.set_int("height", height);
357 state_settings.set_int("position-x", x);
358 state_settings.set_int("position-y", y);
359 return false;
360 }
361}
362
363public class Main : Gtk.Application
364{
365 static string stream;
366
367 static Client main_window;
368
369 const OptionEntry[] options = {
370 {"stream", 's', 0, OptionArg.STRING, ref stream, N_("Stream"), N_("STREAM")},
371 {null}
372 };
373
374 public Main (string app_id, ApplicationFlags flags)
375 {
376 GLib.Object (application_id: app_id, flags: flags);
377 }
378
379 public void on_activate ()
380 {
381 if (get_windows () != null)
382 main_window.present ();
383 else
384 {
385 main_window = new Client ();
386
387 add_window (main_window);
388
389 Environment.set_application_name (Config.PACKAGE);
390
391 Gtk.IconTheme.get_default ().append_search_path (GLib.Path.build_filename (Config.PKGDATADIR, "ui/icons"));
392
393 main_window.set_application (this);
394 main_window.show_all ();
395
396 var accounts_service = new Gwibber.Accounts();
397 var accounts_list = accounts_service.list ();
398 if (accounts_list.length() == 0)
399 {
400 GLib.Pid pid;
401 try {
402 GLib.Process.spawn_async(null,
403 {"gnome-control-center", "credentials", "application=gwibber"}, null,
404 GLib.SpawnFlags.SEARCH_PATH, null, out pid);
405 } catch {
406 }
407 }
408 }
409 }
410
411 public int on_command_line (ApplicationCommandLine command_line)
412 {
413 var args = command_line.get_arguments ();
414 unowned string[] arguments = args;
415 try {
416 var context = new OptionContext (_("— Gwibber Client"));
417 context.set_help_enabled (false);
418 context.add_main_entries (options, Config.GETTEXT_PACKAGE);
419 context.parse (ref arguments);
420 }
421 catch (OptionError error) {
422 command_line.set_exit_status (1);
423 }
424
425 activate ();
426
427 var items_map = main_window.items_map;
428 if (stream != null)
429 {
430 if ((main_window.tabbar is TabBar) && (items_map[stream] is TabBarItem))
431 main_window.tabbar.on_tab_clicked(items_map[stream]);
432 }
433
434 command_line.set_exit_status (0);
435 return command_line.get_exit_status ();
436 }
437}
438
439public int main (string[] args)
440{
441 Gtk.init (ref args);
442
443 Intl.bindtextdomain(Config.GETTEXT_PACKAGE, Config.LOCALE_DIR);
444 Intl.bind_textdomain_codeset(Config.GETTEXT_PACKAGE, "UTF-8");
445 Intl.textdomain(Config.GETTEXT_PACKAGE);
446
447 var app = new Main ("org.gwibber.client", GLib.ApplicationFlags.HANDLES_COMMAND_LINE);
448
449 app.activate.connect (app.on_activate);
450 app.command_line.connect (app.on_command_line);
451 int result = app.run (args);
452 return result;
453}
4540
=== removed file 'client/gwibber-poster.vala'
--- client/gwibber-poster.vala 2012-05-22 03:02:46 +0000
+++ client/gwibber-poster.vala 1970-01-01 00:00:00 +0000
@@ -1,90 +0,0 @@
1/*
2 * Copyright (C) 2011 Canonical Ltd.
3 *
4 * This library is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU Lesser General Public License
6 * version 3.0 as published by the Free Software Foundation.
7 *
8 * This library is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU Lesser General Public License version 3.0 for more details.
12 *
13 * You should have received a copy of the GNU Lesser General Public
14 * License along with this library. If not, see
15 * <http://www.gnu.org/licenses/>.
16 *
17 * Authored by Ken VanDine <ken.vandine@canonical.com>
18 */
19
20private class Poster : Gtk.Window
21{
22 private StreamEntry? _entry = null;
23 public GwibberGtk.InputTextView text_view;
24
25 public Poster ()
26 {
27 set_decorated (false);
28 set_skip_taskbar_hint (true);
29 set_has_resize_grip (false);
30 set_resizable (false);
31
32 _entry = new StreamEntry ();
33
34 add (_entry);
35 set_position (Gtk.WindowPosition.CENTER);
36
37 text_view = _entry.text_view;
38 _entry.set_size_request (400, 100);
39 _entry.showing = true;
40 _entry.text_view.grab_focus ();
41
42 show_all ();
43
44 _entry.notify["showing"].connect (()=> {
45 if (_entry.showing == false)
46 Idle.add (() => {
47 destroy ();
48 return false;
49 });
50 });
51 }
52}
53
54public static void main (string[] args)
55{
56 Gtk.init (ref args);
57
58 string message = null;
59
60 if (args.length > 1)
61 {
62 switch (args[1]) {
63 case "--message":
64 if (args.length < 3)
65 {
66 stdout.printf("Usage: gwibber-poster --message <message>\n\n");
67 return;
68 }
69 message = args[2];
70 debug ("Message is %s", message);
71 break;
72 }
73 }
74
75 var w = new Poster ();
76 if (message != null)
77 {
78 w.text_view.get_buffer ().set_text(message);
79 }
80 w.destroy.connect(() => {
81 Gtk.main_quit();
82 });
83
84 w.focus_out_event.connect(() => {
85 w.destroy();
86 return false;
87 });
88
89 Gtk.main ();
90}
910
=== removed file 'client/gwibber-preferences.vala'
--- client/gwibber-preferences.vala 2012-02-11 06:18:27 +0000
+++ client/gwibber-preferences.vala 1970-01-01 00:00:00 +0000
@@ -1,122 +0,0 @@
1/*
2 * Copyright (C) 2010 Canonical Ltd.
3 *
4 * This program is free software: you can redistribute it and/or modify it
5 * under the terms of the GNU General Public License version 3, as published
6 * by the Free Software Foundation.
7
8 * This program is distributed in the hope that it will be useful, but
9 * WITHOUT ANY WARRANTY; without even the implied warranties of
10 * MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR
11 * PURPOSE. See the GNU General Public License for more details.
12
13 * You should have received a copy of the GNU General Public License along
14 * with this program. If not, see <http://www.gnu.org/licenses/>.
15 *
16 * Authored by Ken VanDine <ken.vandine@canonical.com>
17 */
18
19public class GwibberPreferences : GLib.Object
20{
21 public Gtk.Builder builder;
22
23 public GwibberPreferences ()
24 {
25 Object ();
26 }
27
28 construct
29 {
30 try {
31 builder = new Gtk.Builder ();
32 builder.add_from_file ("/usr/share/gwibber/ui/gwibber-preferences-dialog.ui");
33 builder.connect_signals (null);
34 var dialog = builder.get_object ("prefs_dialog") as Gtk.Dialog;
35 dialog.set_wmclass("gwibber", "Gwibber");
36 dialog.set_title(_("Broadcast Messaging Preferences"));
37 dialog.show_all ();
38 } catch (Error e) {
39 error ("Could not load UI: %s", e.message);
40 }
41
42 var image_uploader_container = builder.get_object("image_uploader") as Gtk.Box;
43 var urlshortener_container = builder.get_object("urlshorter") as Gtk.Box;
44
45 var image_uploader_frame = builder.get_object("frame5") as Gtk.Widget;
46 image_uploader_frame.hide ();
47
48 var settings = new GLib.Settings ("org.gwibber.preferences");
49
50 var BOOL_SETTINGS = new GLib.List<string> ();
51 var INT_SETTINGS = new GLib.List<string> ();
52 var STRING_SETTINGS = new GLib.List<string> ();
53 STRING_SETTINGS.append("image-uploader");
54 STRING_SETTINGS.append("urlshorter");
55 //foreach (string key in STRING_SETTINGS) {
56 // settings.bind(key, builder.get_object(key), "value", GLib.SettingsBindFlags.DEFAULT);
57 //}
58
59 var image_uploader = new Gtk.ComboBoxText ();
60 image_uploader.append("yfrog", "yfrog");
61 image_uploader.append("imageshack", "ImageShack");
62 image_uploader_container.add(image_uploader);
63 settings.bind("image-uploader", image_uploader, "active_id", GLib.SettingsBindFlags.DEFAULT);
64 image_uploader_container.show_all ();
65
66 image_uploader.changed.connect(() => {
67 settings.set_string("image-uploader", image_uploader.active_id);
68 });
69
70 var urlshortener = new Gtk.ComboBoxText ();
71 urlshortener.append("is.gd", "is.gd");
72 urlshortener.append("tinyurl.com", "tinyurl.com");
73 urlshortener.append("ur1.ca", "ur1.ca");
74 urlshortener.append("cli.gs", "cli.gs");
75 urlshortener_container.add(urlshortener);
76 settings.bind("urlshorter", urlshortener, "active_id", GLib.SettingsBindFlags.DEFAULT);
77 urlshortener_container.show_all ();
78
79 urlshortener.changed.connect(() => {
80 settings.set_string("urlshorter", urlshortener.active_id);
81 });
82
83 INT_SETTINGS.append("interval");
84 foreach (string key in INT_SETTINGS) {
85 settings.bind(key, builder.get_object(key), "value", GLib.SettingsBindFlags.DEFAULT);
86 }
87
88 BOOL_SETTINGS.append("no-notifications");
89 BOOL_SETTINGS.append("notify-mentions-only");
90 BOOL_SETTINGS.append("show-notifications");
91 //BOOL_SETTINGS.append("presence-check");
92 BOOL_SETTINGS.append("show-fullname");
93 BOOL_SETTINGS.append("reply-append-colon");
94 BOOL_SETTINGS.append("shorten-urls");
95 BOOL_SETTINGS.append("autostart");
96 foreach (string key in BOOL_SETTINGS) {
97 settings.bind(key, builder.get_object(key), "active", GLib.SettingsBindFlags.DEFAULT);
98 }
99 }
100
101 public void on_close_button_clicked() {
102 Gtk.main_quit();
103 }
104
105 public void on_prefs_dialog_destroy_event() {
106 Gtk.main_quit();
107 }
108}
109
110int main (string[] args) {
111 Gtk.init (ref args);
112
113 Intl.bindtextdomain(Config.GETTEXT_PACKAGE, Config.LOCALE_DIR);
114 Intl.bind_textdomain_codeset(Config.GETTEXT_PACKAGE, "UTF-8");
115 Intl.textdomain(Config.GETTEXT_PACKAGE);
116
117 var p = new GwibberPreferences ();
118 Gtk.main ();
119 p = null;
120
121 return 0;
122}
1230
=== removed file 'client/home-item.vala'
--- client/home-item.vala 2012-02-13 19:09:42 +0000
+++ client/home-item.vala 1970-01-01 00:00:00 +0000
@@ -1,38 +0,0 @@
1/*
2 * Copyright (C) 2011 Canonical Ltd.
3 *
4 * This program is free software: you can redistribute it and/or modify it
5 * under the terms of the GNU General Public License version 3, as published
6 * by the Free Software Foundation.
7
8 * This program is distributed in the hope that it will be useful, but
9 * WITHOUT ANY WARRANTY; without even the implied warranties of
10 * MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR
11 * PURPOSE. See the GNU General Public License for more details.
12
13 * You should have received a copy of the GNU General Public License along
14 * with this program. If not, see <http://www.gnu.org/licenses/>.
15 *
16 * Authored by Neil Jagdish Patel <njpatel@gmail.com>
17 */
18public class HomeItem : TabBarStreamItem
19{
20 public HomeItem (Gee.HashMap streams_map)
21 {
22 Object (stream:"home", icon_name:"gwibber-stream-home", tooltip:_("Home"), streams_map:streams_map);
23 }
24
25 construct
26 {
27 }
28
29 public override Gtk.Widget? get_toolbar ()
30 {
31 return null;
32 }
33
34 public override Gtk.Widget? get_view ()
35 {
36 return view;
37 }
38}
390
=== removed file 'client/messages-item.vala'
--- client/messages-item.vala 2012-02-13 19:09:42 +0000
+++ client/messages-item.vala 1970-01-01 00:00:00 +0000
@@ -1,39 +0,0 @@
1/*
2 * Copyright (C) 2011 Canonical Ltd.
3 *
4 * This program is free software: you can redistribute it and/or modify it
5 * under the terms of the GNU General Public License version 3, as published
6 * by the Free Software Foundation.
7
8 * This program is distributed in the hope that it will be useful, but
9 * WITHOUT ANY WARRANTY; without even the implied warranties of
10 * MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR
11 * PURPOSE. See the GNU General Public License for more details.
12
13 * You should have received a copy of the GNU General Public License along
14 * with this program. If not, see <http://www.gnu.org/licenses/>.
15 *
16 * Authored by Neil Jagdish Patel <njpatel@gmail.com>
17 */
18
19public class MessagesItem : TabBarStreamItem
20{
21 public MessagesItem (Gee.HashMap streams_map)
22 {
23 Object (stream:"messages", icon_name:"gwibber-stream-messages", tooltip:_("Messages"), streams_map:streams_map);
24 }
25
26 construct
27 {
28 }
29
30 public override Gtk.Widget? get_toolbar ()
31 {
32 return null;
33 }
34
35 public override Gtk.Widget? get_view ()
36 {
37 return view;
38 }
39}
400
=== removed file 'client/private-item.vala'
--- client/private-item.vala 2012-02-13 19:09:42 +0000
+++ client/private-item.vala 1970-01-01 00:00:00 +0000
@@ -1,39 +0,0 @@
1/*
2 * Copyright (C) 2011 Canonical Ltd.
3 *
4 * This program is free software: you can redistribute it and/or modify it
5 * under the terms of the GNU General Public License version 3, as published
6 * by the Free Software Foundation.
7
8 * This program is distributed in the hope that it will be useful, but
9 * WITHOUT ANY WARRANTY; without even the implied warranties of
10 * MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR
11 * PURPOSE. See the GNU General Public License for more details.
12
13 * You should have received a copy of the GNU General Public License along
14 * with this program. If not, see <http://www.gnu.org/licenses/>.
15 *
16 * Authored by Neil Jagdish Patel <njpatel@gmail.com>
17 */
18
19public class PrivateItem : TabBarStreamItem
20{
21 public PrivateItem (Gee.HashMap streams_map)
22 {
23 Object (stream:"private", icon_name:"gwibber-stream-private", tooltip:_("Private Messages"), streams_map:streams_map);
24 }
25
26 construct
27 {
28 }
29
30 public override Gtk.Widget? get_toolbar ()
31 {
32 return null;
33 }
34
35 public override Gtk.Widget? get_view ()
36 {
37 return view;
38 }
39}
400
=== removed file 'client/public-item.vala'
--- client/public-item.vala 2012-02-13 19:09:42 +0000
+++ client/public-item.vala 1970-01-01 00:00:00 +0000
@@ -1,47 +0,0 @@
1/*
2 * Copyright (C) 2011 Canonical Ltd.
3 *
4 * This program is free software: you can redistribute it and/or modify it
5 * under the terms of the GNU General Public License version 3, as published
6 * by the Free Software Foundation.
7
8 * This program is distributed in the hope that it will be useful, but
9 * WITHOUT ANY WARRANTY; without even the implied warranties of
10 * MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR
11 * PURPOSE. See the GNU General Public License for more details.
12
13 * You should have received a copy of the GNU General Public License along
14 * with this program. If not, see <http://www.gnu.org/licenses/>.
15 *
16 * Authored by Neil Jagdish Patel <njpatel@gmail.com>
17 */
18
19public class PublicItem : TabBarStreamItem
20{
21 public PublicItem (Gee.HashMap streams_map)
22 {
23 Object (stream:"public", icon_name:"gwibber-stream-public", tooltip:_("Public"), streams_map:streams_map);
24 }
25
26 construct
27 {
28 set_no_show_all (true);
29 view.model.row_added.connect (on_row_added);
30 }
31
32 private void on_row_added ()
33 {
34 set_no_show_all (false);
35 show_all();
36 }
37
38 public override Gtk.Widget? get_toolbar ()
39 {
40 return null;
41 }
42
43 public override Gtk.Widget? get_view ()
44 {
45 return view;
46 }
47}
480
=== removed file 'client/replies-item.vala'
--- client/replies-item.vala 2012-02-13 19:09:42 +0000
+++ client/replies-item.vala 1970-01-01 00:00:00 +0000
@@ -1,39 +0,0 @@
1/*
2 * Copyright (C) 2011 Canonical Ltd.
3 *
4 * This program is free software: you can redistribute it and/or modify it
5 * under the terms of the GNU General Public License version 3, as published
6 * by the Free Software Foundation.
7
8 * This program is distributed in the hope that it will be useful, but
9 * WITHOUT ANY WARRANTY; without even the implied warranties of
10 * MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR
11 * PURPOSE. See the GNU General Public License for more details.
12
13 * You should have received a copy of the GNU General Public License along
14 * with this program. If not, see <http://www.gnu.org/licenses/>.
15 *
16 * Authored by Neil Jagdish Patel <njpatel@gmail.com>
17 */
18
19public class RepliesItem : TabBarStreamItem
20{
21 public RepliesItem (Gee.HashMap streams_map)
22 {
23 Object (stream:"replies", icon_name:"gwibber-stream-replies", tooltip:_("Replies"), streams_map:streams_map);
24 }
25
26 construct
27 {
28 }
29
30 public override Gtk.Widget? get_toolbar ()
31 {
32 return null;
33 }
34
35 public override Gtk.Widget? get_view ()
36 {
37 return view;
38 }
39}
400
=== removed file 'client/searches-item.vala'
--- client/searches-item.vala 2012-02-14 14:12:21 +0000
+++ client/searches-item.vala 1970-01-01 00:00:00 +0000
@@ -1,196 +0,0 @@
1/*
2 * Copyright (C) 2011 Canonical Ltd.
3 *
4 * This program is free software: you can redistribute it and/or modify it
5 * under the terms of the GNU General Public License version 3, as published
6 * by the Free Software Foundation.
7
8 * This program is distributed in the hope that it will be useful, but
9 * WITHOUT ANY WARRANTY; without even the implied warranties of
10 * MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR
11 * PURPOSE. See the GNU General Public License for more details.
12
13 * You should have received a copy of the GNU General Public License along
14 * with this program. If not, see <http://www.gnu.org/licenses/>.
15 *
16 * Authored by Ken VanDine <ken@vandine.org>
17 */
18
19public class SearchesItem : TabBarItem
20{
21 private Gtk.Alignment _align;
22 private Gtk.Box box;
23 private Gtk.Box _view;
24 private GwibberGtk.SearchView _search_view;
25 private GwibberGtk.StreamView _stream_view;
26 public Gwibber.Streams streams { get; construct; }
27 private Gtk.Label _title;
28 private ulong active_hander_id;
29 private Gtk.Entry _entry;
30 private Gwibber.Searches _searches;
31
32 public SearchesItem (Gwibber.Streams streams)
33 {
34 Object (stream:"search", icon_name:"gwibber-stream-search", tooltip:_("Searches"), streams:streams);
35 }
36
37 construct
38 {
39 // View
40 _view = new Gtk.Box (Gtk.Orientation.HORIZONTAL, 0);
41 _view.set_homogeneous (true);
42 _view.set_no_show_all (true);
43 _view.show ();
44
45 _search_view = new GwibberGtk.SearchView ();
46 _search_view.show_all ();
47
48 _stream_view = new GwibberGtk.StreamView ();
49 _stream_view.set_no_show_all (true);
50 _stream_view.notify["prepared"].connect (() => {
51 _stream_view.set_no_show_all (false);
52 _stream_view.show_all ();
53 });
54
55 _stream_view.send.connect ((mid, account, sender, action) => {
56 entry.text_view.mid = mid;
57 if (action == "private" || stream == "private")
58 {
59 entry.text_view.action = "private";
60 entry.private.show ();
61 }
62 else
63 entry.text_view.action = "reply";
64 entry.target_bar.selected = account;
65 entry.showing = true;
66 if (entry.text_view.action != "private")
67 entry.text_view.buffer.text = sender + " ";
68 entry.text_view.grab_focus ();
69 });
70
71 _searches = new Gwibber.Searches ();
72
73 _view.pack_start (_search_view, true, true, 0);
74 _view.pack_start (_stream_view, true, true, 0);
75
76
77 // Toolbar
78 _align = new Gtk.Alignment (0.5f, 0.5f, 1.0f, 1.0f);
79
80 box = new Gtk.Box (Gtk.Orientation.HORIZONTAL, 12);
81 _align.add (box);
82
83 _entry = new Gtk.Entry ();
84 _entry.set_icon_from_stock (Gtk.EntryIconPosition.SECONDARY, "gtk-clear");
85
86 _entry.icon_press.connect ((pos, event) => {
87 if (pos == Gtk.EntryIconPosition.SECONDARY)
88 _entry.set_text ("");
89 });
90
91 _entry.key_press_event.connect ((t, e)=>
92 {
93 if (e.keyval == 65307) // Escape
94 {
95 _entry.set_text ("");
96 return true;
97 }
98 return false;
99 });
100
101 Gdk.Color fg_color;
102 Gdk.Color.parse ("black", out fg_color);
103
104 _entry.modify_fg (Gtk.StateType.NORMAL, fg_color);
105
106 _entry.activate.connect (() =>
107 {
108 string query = _entry.get_text ();
109 if (!(query.has_prefix ("#")))
110 query = "#" + query;
111 _entry.set_text ("");
112 _searches.create (query, query);
113 });
114
115 _entry.show_all ();
116 box.pack_start (_entry, false, false, 0);
117 _entry.size_allocate.connect_after (()=> { queue_draw (); });
118
119 _title = new Gtk.Label ("");
120 box.pack_start (_title, false, false, 4);
121
122 _searches.updated.connect((id) => {
123 var search_map = _searches.lookup (id);
124 var name = search_map["name"];
125 _stream_view.hide ();
126 var filtered_model = streams.transient_filter_model (streams.transient_model, id);
127 _stream_view.model = filtered_model;
128 _stream_view.stream = stream;
129 _search_view.hide ();
130 _title.set_markup("<b>" + name + "</b>");
131 _title.show ();
132 raise (this);
133 _stream_view.show_all ();
134 _stream_view.showing = true;
135 });
136
137 _search_view.show_transient.connect((id, name) => {
138 _stream_view.hide ();
139 var filtered_model = streams.transient_filter_model (streams.transient_model, id);
140 _stream_view.model = filtered_model;
141 _stream_view.stream = stream;
142 _search_view.hide ();
143 _title.set_markup("<b>" + name + "</b>");
144 _title.show ();
145 raise (this);
146 _stream_view.show_all ();
147 _stream_view.showing = true;
148 });
149
150
151 var but = new TabWidgets.Button (_("Saved Searches"));
152 but.clicked.connect(() => {
153 _stream_view.hide ();
154 _search_view.show_all ();
155 _title.hide ();
156 });
157 box.pack_end (but, false, false, 0);
158
159 active_hander_id = notify["active"].connect(() => {
160 if (active)
161 {
162 _search_view.showing = true;
163 if (active_hander_id > 0)
164 disconnect (active_hander_id);
165 }
166 });
167
168 _stream_view.notify["showing"].connect (() => {
169 if (_stream_view.showing)
170 _search_view.hide ();
171 });
172
173 _search_view.notify["showing"].connect (() => {
174 if (_search_view.showing)
175 _stream_view.hide ();
176 });
177
178
179 _align.show_all ();
180 }
181
182 [Signal (action=true)]
183 public virtual signal void raise (TabBarItem item)
184 {
185 }
186
187 public override Gtk.Widget? get_toolbar ()
188 {
189 return _align;
190 }
191
192 public override Gtk.Widget? get_view ()
193 {
194 return _view;
195 }
196}
1970
=== removed file 'client/status-bar.vala'
--- client/status-bar.vala 2012-02-15 17:13:23 +0000
+++ client/status-bar.vala 1970-01-01 00:00:00 +0000
@@ -1,93 +0,0 @@
1/*
2 * Copyright (C) 2011 Canonical Ltd.
3 *
4 * This program is free software: you can redistribute it and/or modify it
5 * under the terms of the GNU General Public License version 3, as published
6 * by the Free Software Foundation.
7 *
8 * This program is distributed in the hope that it will be useful, but
9 * WITHOUT ANY WARRANTY; without even the implied warranties of
10 * MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR
11 * PURPOSE. See the GNU General Public License for more details.
12 *
13 * You should have received a copy of the GNU General Public License along
14 * with this program. If not, see <http://www.gnu.org/licenses/>.
15 *
16 * Authored by Ken VanDine <ken@vandine.org>
17 */
18
19public class StatusBar : Gtk.InfoBar
20{
21 private string _message;
22 private Gtk.Label _message_label;
23 private Gtk.Container _content_area;
24
25 private Gwibber.Service _service;
26
27 private bool _showing = false;
28
29 public bool showing {
The diff has been truncated for viewing.

Subscribers

People subscribed via source and target branches