diff --git a/.gitignore b/.gitignore index 5681f1db..2db1e29b 100644 --- a/.gitignore +++ b/.gitignore @@ -9,11 +9,10 @@ src/config3/ src/dropbox/ src/logs/ src/documentation/ -src/sounds/iOs src/oggenc2.exe src/bootstrap.exe src/Microsoft.VC90.CRT src/Microsoft.VC90.MFC src/launcher.bat -src/sounds/iOs -release-snapshot/ \ No newline at end of file +release-snapshot/ +keymaps/default.keymap \ No newline at end of file diff --git a/src/Conf.defaults b/src/Conf.defaults index 2af00a0b..cfa66edf 100644 --- a/src/Conf.defaults +++ b/src/Conf.defaults @@ -12,7 +12,7 @@ reverse_timelines = boolean(default=False) time_to_check_streams = integer(default=30) announce_stream_status = boolean(default=True) retweet_mode = string(default="ask") -persist_size = integer(default=0) +persist_size = integer(default=1764) buffer_order = list(default=list('home','mentions','dm','sent_dm','sent_tweets','favorites','followers','friends','blocks','muted','events')) [sound] diff --git a/src/app-configuration.defaults b/src/app-configuration.defaults index 36570a88..8e4717e4 100644 --- a/src/app-configuration.defaults +++ b/src/app-configuration.defaults @@ -14,8 +14,8 @@ speak_ready_msg = boolean(default=True) log_level = string(default="error") use_slow_audio_algo = boolean(default=False) load_keymap = string(default="default.keymap") -use_Codeofdusk_audio_handlers=boolean(default=False) - +use_Codeofdusk_audio_handlers=boolean(default=True) +prefer_geocodes = boolean(default=False) [proxy] server = string(default="") port = string(default="") diff --git a/src/controller/buffersController.py b/src/controller/buffersController.py index aa237e02..812aeba6 100644 --- a/src/controller/buffersController.py +++ b/src/controller/buffersController.py @@ -435,8 +435,7 @@ class baseBufferController(bufferController): try: sound.URLPlayer.play(url, self.session.settings["sound"]["volume"]) except: - log.error("Exception while executing audio method.") - + log("Exception while executing audio method.") @_tweets_exist def url(self,url='',announce=True): if url == '': diff --git a/src/controller/mainController.py b/src/controller/mainController.py index 06a740e6..ee8abd87 100644 --- a/src/controller/mainController.py +++ b/src/controller/mainController.py @@ -1016,6 +1016,8 @@ class Controller(object): if hasattr(sound.URLPlayer,'stream'): return sound.URLPlayer.stop_audio(delete=True) tweet = buffer.get_tweet() + if utils.is_geocoded(tweet) and config.app['app-settings']['use_Codeofdusk_audio_handlers'] and config.app['app-settings']['prefer_geocodes']: + return self.reverse_geocode() url=None urls = utils.find_urls(tweet) if len(urls) == 1: @@ -1027,11 +1029,9 @@ class Controller(object): url=urls_list.get_string() if hasattr(urls_list, "destroy"): urls_list.destroy() if url != None: - output.speak(_(u"Opening media..."), True) + output.speak("Opening media...",True) if sound.URLPlayer.is_playable(url=url,play=True,volume=buffer.session.settings["sound"]["volume"]) == False: return webbrowser.open_new_tab(url) - elif utils.is_geocoded(tweet): - return output.speak("Not implemented",True) else: output.speak(_(u"Not actionable."), True) buffer.session.sound.play("error.ogg") @@ -1040,6 +1040,16 @@ class Controller(object): buffer = self.get_current_buffer() buffer.url() + def secondary_interact(self): + buffer = self.get_current_buffer() + tweet=buffer.get_tweet() + if utils.is_geocoded(tweet) and config.app['app-settings']['use_Codeofdusk_audio_handlers'] and config.app['app-settings']['prefer_geocodes']: + return self.view_reverse_geocode() + elif config.app['app-settings']['use_Codeofdusk_audio_handlers']: + return buffer.url() + else: + return buffer.audio() + def audio(self, *args, **kwargs): self.get_current_buffer().audio() diff --git a/src/controller/settings.py b/src/controller/settings.py index bbe7425b..26e1f05c 100644 --- a/src/controller/settings.py +++ b/src/controller/settings.py @@ -62,6 +62,7 @@ class globalSettingsController(object): self.dialog.set_value("general", "hide_gui", config.app["app-settings"]["hide_gui"]) self.dialog.set_value("general", "use_slow_audio_algo", config.app["app-settings"]["use_slow_audio_algo"]) self.dialog.set_value("general", "use_Codeofdusk_audio_handlers", config.app["app-settings"]["use_Codeofdusk_audio_handlers"]) + self.dialog.set_value("general", "prefer_geocodes", config.app["app-settings"]["prefer_geocodes"]) self.dialog.create_proxy() self.dialog.set_value("proxy", "server", config.app["proxy"]["server"]) self.dialog.set_value("proxy", "port", config.app["proxy"]["port"]) @@ -92,6 +93,8 @@ class globalSettingsController(object): #Todo: clean memmos. if config.app["app-settings"]["use_Codeofdusk_audio_handlers"] != self.dialog.get_value("general", "use_Codeofdusk_audio_handlers"): config.app["app-settings"]["use_Codeofdusk_audio_handlers"] = self.dialog.get_value("general", "use_Codeofdusk_audio_handlers") + if config.app["app-settings"]["prefer_geocodes"] != self.dialog.get_value("general", "prefer_geocodes"): + config.app["app-settings"]["prefer_geocodes"] = self.dialog.get_value("general", "prefer_geocodes") if config.app["proxy"]["server"] != self.dialog.get_value("proxy", "server") or config.app["proxy"]["port"] != self.dialog.get_value("proxy", "port") or config.app["proxy"]["user"] != self.dialog.get_value("proxy", "user") or config.app["proxy"]["password"] != self.dialog.get_value("proxy", "password"): if self.is_started == True: self.needs_restart = True diff --git a/src/keymaps/default.keymap b/src/keymaps/default.keymap index 61f9ebf1..f41531ec 100644 --- a/src/keymaps/default.keymap +++ b/src/keymaps/default.keymap @@ -2,51 +2,3 @@ name = Default desc = TWBlue's default keymap. author = Bill Dengler <codeofdusk@gmail.com> - -[keymap] -up = control+win+up -down = control+win+down -left = control+win+left -right = control+win+right -next_account = control+win+shift+right -previous_account = control+win+shift+left -open_conversation = control+win+c -show_hide = control+win+m -post_tweet = control+win+n -post_reply = control+win+r -post_retweet = control+win+shift+r -send_dm = control+win+d -add_to_favourites = alt+win+f -remove_from_favourites = alt+shift+win+f -follow = control+win+s -user_details = control+win+alt+n -view_item = control+win+v -exit = control+win+f4 -open_timeline = control+win+i -remove_buffer = control+win+shift+i -interact = control+alt+win+return -url = control+win+return -volume_up = control+win+alt+up -volume_down = control+win+alt+down -go_home = control+win+home -go_end = control+win+end -go_page_up = control+win+pageup -go_page_down = control+win+pagedown -update_profile = alt+win+p -delete = control+win+delete -clear_buffer = control+win+shift+delete -repeat_item = control+win+space -copy_to_clipboard = control+win+c -add_to_list = control+win+a -remove_from_list = control+win+shift+a -toggle_buffer_mute = control+win+shift+m -toggle_session_mute = alt+win+m -toggle_autoread = control+win+e -search = control+win+- -edit_keystrokes = control+win+k -view_user_lists = control+win+l -get_more_items = alt+win+pageup -reverse_geocode = control+win+g -view_reverse_geocode = control+win+shift+g -get_trending_topics = control+win+t -secondary_interact = control+win+alt+return diff --git a/src/sessionmanager/session.py b/src/sessionmanager/session.py index c7568837..d6a566e5 100644 --- a/src/sessionmanager/session.py +++ b/src/sessionmanager/session.py @@ -252,7 +252,6 @@ class Session(object): def get_muted_users(self): """ Gets muted users (oh really?).""" - self.db["muted_users"] = self.twitter.twitter.list_mute_ids()["ids"] @_require_login diff --git a/src/wxUI/dialogs/configuration.py b/src/wxUI/dialogs/configuration.py index b62c0807..179a219e 100644 --- a/src/wxUI/dialogs/configuration.py +++ b/src/wxUI/dialogs/configuration.py @@ -38,6 +38,8 @@ class general(wx.Panel, baseDialog.BaseWXDialog): sizer.Add(kmbox, 0, wx.ALL, 5) self.use_slow_audio_algo= wx.CheckBox(self, -1, _(U"Use slow audio tweet detection algorithm (improves audio tweet detection accuracy at the cost of performance)")) sizer.Add(self.use_slow_audio_algo, 0, wx.ALL, 5) + self.prefer_geocodes= wx.CheckBox(self, -1, _(U"Prefer geolocation information to URLs when interacting with tweets (only applies when Codeofdusk's tweet handlers are enabled)")) + sizer.Add(self.prefer_geocodes, 0, wx.ALL, 5) self.use_Codeofdusk_audio_handlers= wx.CheckBox(self, -1, _(U"Use Codeofdusk's tweet interaction handlers (intelegently handle audio tweets, may impact client performance on very slow connections)")) sizer.Add(self.use_Codeofdusk_audio_handlers, 0, wx.ALL, 5) self.SetSizer(sizer)