added search and logout to Linux
This commit is contained in:
parent
cbc6755791
commit
3d1768540d
7 changed files with 236 additions and 50 deletions
|
@ -21,7 +21,7 @@ class Bungloo:
|
|||
self.preferences = Windows.Preferences(self)
|
||||
self.preferences.show()
|
||||
|
||||
#self.oauth_implementation = Windows.Oauth(self)
|
||||
self.oauth_implementation = Windows.Oauth(self)
|
||||
|
||||
if self.controller.stringForKey("user_access_token") != "":
|
||||
self.authentification_succeded()
|
||||
|
@ -43,29 +43,45 @@ class Bungloo:
|
|||
|
||||
def authentification_succeded(self):
|
||||
self.preferences.hide()
|
||||
#if hasattr(self, "oauth_implementation"):
|
||||
# self.oauth_implementation.hide()
|
||||
if hasattr(self, "oauth_implementation"):
|
||||
self.oauth_implementation.hide()
|
||||
self.preferences.active(False)
|
||||
self.init_web_views()
|
||||
|
||||
def init_web_views(self):
|
||||
self.timeline = Windows.Timeline(self)
|
||||
#self.mentions = Windows.Timeline(self, "mentions", "Mentions")
|
||||
self.timeline.show()
|
||||
#self.conversation = Windows.Timeline(self, "conversation", "Conversation")
|
||||
#self.profile = Windows.Timeline(self, "profile", "Profile")
|
||||
self.find_entity = Windows.FindEntity(self)
|
||||
|
||||
def timeline_show(self):
|
||||
self.timeline.show()
|
||||
|
||||
def mentions_show(self):
|
||||
self.controller.unreadMentions(0)
|
||||
#self.mentions.show()
|
||||
|
||||
def find_entity_show(self):
|
||||
self.find_entity.show()
|
||||
|
||||
def timeline_show(self):
|
||||
self.timeline.show()
|
||||
self.timeline.evaluateJavaScript("bungloo.sidebar.onTimeline();")
|
||||
|
||||
def mentions_show(self):
|
||||
self.controller.unreadMentions(0)
|
||||
self.timeline.evaluateJavaScript("bungloo.sidebar.onMentions();")
|
||||
|
||||
def conversation_show(self):
|
||||
self.timeline.evaluateJavaScript("bungloo.sidebar.onConversation();")
|
||||
|
||||
def profile_show(self):
|
||||
self.timeline.evaluateJavaScript("bungloo.sidebar.onEntityProfile();")
|
||||
|
||||
def search_show(self):
|
||||
self.timeline.evaluateJavaScript("bungloo.sidebar.onSearch();")
|
||||
|
||||
def open_about(self):
|
||||
self.controller.openURL("http://jabs.nu/bungloo")
|
||||
|
||||
def log_out(self):
|
||||
self.oauth_implementation.log_out()
|
||||
self.timeline.close()
|
||||
self.preferences.show()
|
||||
#self.timeline.evaluateJavaScript("bungloo.sidebar.logout()")
|
||||
|
||||
|
||||
class Controller(QtCore.QObject):
|
||||
|
||||
|
@ -131,7 +147,7 @@ class Controller(QtCore.QObject):
|
|||
self.app.timeline.set_window_title("Bungloo (^" + str(i) + ")")
|
||||
else:
|
||||
self.app.timeline.set_window_title("Bungloo")
|
||||
#self.app.mentions.evaluateJavaScript("bungloo_instance.unread_mentions = 0;")
|
||||
self.app.timeline.evaluateJavaScript("bungloo.mentions.unread_mentions = 0;")
|
||||
|
||||
@QtCore.pyqtSlot(str, str, str, str)
|
||||
def notificateUserAboutMentionFromNameWithPostIdAndEntity(self, text, name, post_id, entity):
|
||||
|
|
|
@ -101,19 +101,32 @@ class Timeline:
|
|||
|
||||
|
||||
def initUI(self):
|
||||
newPostAction = QtGui.QAction("&New Post", self.window)
|
||||
menubar = self.window.menuBar()
|
||||
|
||||
newPostAction = QtGui.QAction("&New post", self.window)
|
||||
newPostAction.setShortcut("Ctrl+N")
|
||||
newPostAction.setStatusTip("Open new post window")
|
||||
newPostAction.triggered.connect(self.app.controller.openNewMessageWidow)
|
||||
|
||||
findEntityAction = QtGui.QAction("&Open profile for entity ...", self.window)
|
||||
findEntityAction.setShortcut("Ctrl+u")
|
||||
findEntityAction.setStatusTip("Find entity and open its profile view")
|
||||
findEntityAction.triggered.connect(self.app.find_entity_show)
|
||||
|
||||
logOutAction = QtGui.QAction("&Log out", self.window)
|
||||
logOutAction.setStatusTip("Log out from this entity")
|
||||
logOutAction.triggered.connect(self.app.log_out)
|
||||
|
||||
exitAction = QtGui.QAction("&Exit", self.window)
|
||||
exitAction.setShortcut("Ctrl+Q")
|
||||
exitAction.setStatusTip("Exit Bungloo")
|
||||
exitAction.triggered.connect(QtGui.qApp.quit)
|
||||
|
||||
menubar = self.window.menuBar()
|
||||
fileMenu = menubar.addMenu("&File")
|
||||
fileMenu.addAction(newPostAction)
|
||||
fileMenu.addAction(findEntityAction)
|
||||
fileMenu.addSeparator()
|
||||
fileMenu.addAction(logOutAction)
|
||||
fileMenu.addAction(exitAction)
|
||||
|
||||
timelineAction = QtGui.QAction("&Timeline", self.window)
|
||||
|
@ -126,26 +139,41 @@ class Timeline:
|
|||
mentionsAction.setStatusTip("Show Mentions")
|
||||
mentionsAction.triggered.connect(self.app.mentions_show)
|
||||
|
||||
findEntityAction = QtGui.QAction("&Open Profile", self.window)
|
||||
findEntityAction.setShortcut("Ctrl+u")
|
||||
findEntityAction.setStatusTip("Find entity and open its profile view")
|
||||
findEntityAction.triggered.connect(self.app.find_entity_show)
|
||||
conversationAction = QtGui.QAction("&Conversation", self.window)
|
||||
conversationAction.setShortcut("Ctrl+3")
|
||||
conversationAction.setStatusTip("Show Conversation")
|
||||
conversationAction.triggered.connect(self.app.conversation_show)
|
||||
|
||||
hideAction = QtGui.QAction("&Hide window", self.window)
|
||||
hideAction.setShortcut("Ctrl+W")
|
||||
hideAction.setStatusTip("Hide this window")
|
||||
hideAction.triggered.connect(self.hide)
|
||||
profileAction = QtGui.QAction("&Profile", self.window)
|
||||
profileAction.setShortcut("Ctrl+4")
|
||||
profileAction.setStatusTip("Show Profile")
|
||||
profileAction.triggered.connect(self.app.profile_show)
|
||||
|
||||
windowMenu = menubar.addMenu("&Windows")
|
||||
searchAction = QtGui.QAction("&Search", self.window)
|
||||
searchAction.setShortcut("Ctrl+F")
|
||||
searchAction.setStatusTip("Show Search")
|
||||
searchAction.triggered.connect(self.app.search_show)
|
||||
|
||||
windowMenu = menubar.addMenu("&View")
|
||||
windowMenu.addAction(timelineAction)
|
||||
windowMenu.addAction(mentionsAction)
|
||||
windowMenu.addAction(hideAction)
|
||||
windowMenu.addAction(findEntityAction)
|
||||
windowMenu.addAction(conversationAction)
|
||||
windowMenu.addAction(profileAction)
|
||||
windowMenu.addAction(searchAction)
|
||||
|
||||
aboutAction = QtGui.QAction("&About Bungloo", self.window)
|
||||
aboutAction.setStatusTip("Open about page in Webbrowser")
|
||||
aboutAction.triggered.connect(self.app.open_about)
|
||||
|
||||
helpMenu = menubar.addMenu("&Help")
|
||||
helpMenu.addAction(aboutAction)
|
||||
|
||||
def show(self):
|
||||
self.window.show()
|
||||
#self.window.raise_()
|
||||
#QtGui.qApp.setActiveWindow(self.window)
|
||||
def close(self):
|
||||
self.window.close()
|
||||
|
||||
def hide(self):
|
||||
self.window.hide()
|
||||
|
@ -174,7 +202,11 @@ class Oauth:
|
|||
self.core.page().mainFrame().evaluateJavaScript(script)
|
||||
|
||||
def login(self):
|
||||
script = "bungloo_instance.authenticate();"
|
||||
script = "bungloo.oauth.authenticate();"
|
||||
self.core.page().mainFrame().evaluateJavaScript(script)
|
||||
|
||||
def log_out(self):
|
||||
script = "bungloo.oauth.logout()";
|
||||
self.core.page().mainFrame().evaluateJavaScript(script)
|
||||
|
||||
def handle_authentication(self, url):
|
||||
|
@ -203,7 +235,7 @@ class Oauth:
|
|||
dialog.exec_()
|
||||
|
||||
def bungloo_callback(self, url):
|
||||
script = "bungloo_instance.requestAccessToken('" + url.toString() + "');"
|
||||
script = "bungloo.oauth.requestAccessToken('" + url.toString() + "');"
|
||||
self.core.page().mainFrame().evaluateJavaScript(script)
|
||||
|
||||
def hide(self):
|
||||
|
|
Reference in a new issue