maemo.org - Talk

maemo.org - Talk (https://talk.maemo.org/index.php)
-   Applications (https://talk.maemo.org/forumdisplay.php?f=41)
-   -   witter - a python twitter client (https://talk.maemo.org/showthread.php?t=35596)

dwould 2009-12-07 14:57

Re: witter - a python twitter client
 
Thanks for taking the time to provide this feedback!

Quote:

Originally Posted by thp (Post 414235)
And here's some more generic feedback after trying out your app:
  • Buttons should be hildon.Button instances (with FINGER size, probably)
  • The gtk.Entry you have should be hildon.Entry (for the styling)

Hmm, I switched to using glade to define the user interface in the mistaken idea that this would make my life easier. If there are hildon specific versions of everything, does that mean i should just give up with glade? or is there some glade ui design software that will let me use hildon objects?

Quote:

Originally Posted by thp (Post 414235)

Also, it's not really obvious that the entry box belongs to the "Search" button (in addition to other things). A nicer design would be to open a dialog with a text entry box when the "Search" button is clicked and open the search results in another view (StackableWindow).

This is an interesting one.. I quite intentionally made it this way because I wanted fewer clicks between me and a given function. and I don't like all the opening new window stuff. However I take the point that it is really not a user friendly thing, because you'd probably not *guess* that it worked that way.

Quote:

Originally Posted by thp (Post 414235)
When I'm not entering any authentication data, Clicking on "timeline"+"refresh" should probably use a Hildon Note instead of a dialog with the title (and ideally with a 401 error, you could show the login dialog, as this is where most users would want to go in this situation).

I could switch to hildon notes, what is the specific advantage over a dialog?,
I guess I could catch all non-auth responses and drive the login dialog. that said it should go straight to the login dialog on first use now anyway.

Quote:

Originally Posted by thp (Post 414235)
The "Exit" button in the appmenu is redundant, as there is the "X" button in the titlebar already.

What does "Invert" in the app menu do?

Yeah, in my current development level both exit and invert are gone. invret used to flip the text colour to try to avoid problems with people having a theme which made the text invisible. Then I switched to pango markup and that stopped working anyway.
I stlil have no idea if the text will obey any theme rules.

Quote:

Originally Posted by thp (Post 414235)
The context menu should pop up at the location of the mouse coordinates, and should have the widget name set to "hildon-context-sensitive-menu" to get the correct styling.

good tip on the styling. That said i like the pop-up in the top right, maybe I'll try setting it to pointer location and see how I get on with it.

Quote:

Originally Posted by thp (Post 414235)
The "TwitPic!" item should use a hildon file chooser instead of the GTK+ one.

again with the hildon specific stuff. I may just throw away glade ;-(
Quote:

Originally Posted by thp (Post 414235)
I would also suggest either opening a new subview for different content (e.g. "Trends", etc..) or at least changing the window title so that the user knows which "mode" he/she is currently in (e.g. "Witter - Search for maebar" or "Witter - Your timeline").

I'll look at changing the window title, because I specifically didn't want to open new windows for the different views.
Quote:

Originally Posted by thp (Post 414235)
Oh, and a feature request: Add support for identi.ca :)

Thanks for the great application - I especially like the "search" functionality, as the only other twitter app that I know of does not yet have this functionality ;)

given that I don't use identi.ca, and my code is hopelessly badly architected, I suspect this one is unlikely. at least for some time. Sorry

rcadden 2009-12-07 15:11

Re: witter - a python twitter client
 
How possible is including support for multiple accounts?

dwould 2009-12-07 16:15

Re: witter - a python twitter client
 
Quote:

Originally Posted by rcadden (Post 414635)
How possible is including support for multiple accounts?


it's entirely possible. the question is really around quite how that is best implemented.
would you want to be able to switch between them, doing distinctly one at a time
would you want any refresh to simultaneously get from all accounts? or just currently selected one?
if you intermixed views, would you need to see which account a tweet related to?

I've never used multiple accounts so I'm not sure what would make the most sense.

thp 2009-12-07 16:47

Re: witter - a python twitter client
 
Quote:

Originally Posted by dwould (Post 414620)
Hmm, I switched to using glade to define the user interface in the mistaken idea that this would make my life easier. If there are hildon specific versions of everything, does that mean i should just give up with glade? or is there some glade ui design software that will let me use hildon objects?

You should use GtkBuilder instead of Glade. There's an automated utility to do this called "gtk-builder-convert". You can use Hildon widgets with GtkBuilder (i.e. replace GtkButton with HildonButton). Please note that bug 4718 will cause the styling to still be incorrect, so you have to set the name of the widget to "HildonButton-finger" (or "HildonButton-thumb") after loading it from the .ui file, like this:

Code:

yourwidget.set_name('HildonButton-finger')
You should be able to do the same thing for a GtkButton to get the styling, but this is untested, and not really beautiful ;)

Quote:

Originally Posted by dwould (Post 414620)
I could switch to hildon notes, what is the specific advantage over a dialog?,
I guess I could catch all non-auth responses and drive the login dialog. that said it should go straight to the login dialog on first use now anyway.

A HildonNote is the "big" yellow, modal thing where the message is shown until the note is touched:
Code:

win = ... # your main window
msg = 'some text'
note = hildon.hildon_note_new_information(win, msg)
note.run()
note.destroy()

An alternative would be to use a HildonBanner that has a timeout for non-critical messages: http://maemomm.garage.maemo.org/docs...res/banner.png

Quote:

Originally Posted by dwould (Post 414620)
good tip on the styling. That said i like the pop-up in the top right, maybe I'll try setting it to pointer location and see how I get on with it.

In all the built-in applications, context menus pop up under the touch point, so for consistency, it should probably be like that for your application, too. Even on the desktop when right-clicking somewhere, the menu pops up at the cursor position, and not at the top left corner of the screen. Of course, there are issues with this approach on a finger-based UI (because the content that pops up is hidden by the physical finger), but it's how things are done in the Maemo 5 UI today.

Quote:

Originally Posted by dwould (Post 414620)
I'll look at changing the window title, because I specifically didn't want to open new windows for the different views.

If you convert to GtkBuilder, think about using HildonStackableWindow + sub-views. It's nice, easy, and makes the user navigation more friendly. It also restricts the possible actions that the user can do (i.e. because in a search results view you cannot click on "Timeline", you have to go back first), leading to less errors that you have to catch :)

Quote:

Originally Posted by dwould (Post 414620)
given that I don't use identi.ca, and my code is hopelessly badly architected, I suspect this one is unlikely. at least for some time. Sorry

AFAIK Identi.ca has a Twitter-compatible API, so just having a "API URL" setting should be enough to support Identi.ca as well (with the default being the URL of the Twitter API).

rcadden 2009-12-07 16:58

Re: witter - a python twitter client
 
Quote:

Originally Posted by dwould (Post 414722)
it's entirely possible. the question is really around quite how that is best implemented.
would you want to be able to switch between them, doing distinctly one at a time
would you want any refresh to simultaneously get from all accounts? or just currently selected one?
if you intermixed views, would you need to see which account a tweet related to?

I've never used multiple accounts so I'm not sure what would make the most sense.

Glad you asked. Ideally, I'd like it to function similar to Seesmic Desktop, where the home timelines are kept separate, but @replies and messages are able to be viewed in a single stream.

The only trick with that is when I click to reply to someone from this master @replies view, I would want Witter to either choose the account that they responded to, or popup a box asking which account I would like to send the response from.

If that's too much, then simply ALL separate views would suffice. This could easily be implemented with a button that would pop up a box asking which account i'd like to use, or have the accounts listed in the Fremantle drop-down box, either or. Each accounts' avatar could be used as an icon somewhere to show which account I'm currently using.

noobmonkey 2009-12-07 17:00

Re: witter - a python twitter client
 
Quote:

Originally Posted by thp (Post 414762)
You should use GtkBuilder instead of Glade. There's an automated utility to do this called "gtk-builder-convert". You can use Hildon widgets with GtkBuilder (i.e. replace GtkButton with HildonButton). Please note that bug 4718 will cause the styling to still be incorrect, so you have to set the name of the widget to "HildonButton-finger" (or "HildonButton-thumb") after loading it from the .ui file, like this:

Code:

yourwidget.set_name('HildonButton-finger')
You should be able to do the same thing for a GtkButton to get the styling, but this is untested, and not really beautiful ;)



A HildonNote is the "big" yellow, modal thing where the message is shown until the note is touched:
Code:

win = ... # your main window
msg = 'some text'
note = hildon.hildon_note_new_information(win, msg)
note.run()
note.destroy()

An alternative would be to use a HildonBanner that has a timeout for non-critical messages: http://maemomm.garage.maemo.org/docs...res/banner.png



In all the built-in applications, context menus pop up under the touch point, so for consistency, it should probably be like that for your application, too. Even on the desktop when right-clicking somewhere, the menu pops up at the cursor position, and not at the top left corner of the screen. Of course, there are issues with this approach on a finger-based UI (because the content that pops up is hidden by the physical finger), but it's how things are done in the Maemo 5 UI today.



If you convert to GtkBuilder, think about using HildonStackableWindow + sub-views. It's nice, easy, and makes the user navigation more friendly. It also restricts the possible actions that the user can do (i.e. because in a search results view you cannot click on "Timeline", you have to go back first), leading to less errors that you have to catch :)



AFAIK Identi.ca has a Twitter-compatible API, so just having a "API URL" setting should be enough to support Identi.ca as well (with the default being the URL of the Twitter API).

I'm really impressed, not only are you incredibly helpful - i can actually understand what you are saying and what you mean :)

Going to make an effort to try to learn python soon - (Have done facebook api's before and coded in PHP, ASP and .net) - so how hard can it be! (Crossing fingers after i type that!)

It's also very refreshing on here to not be be-littled! i know not everyone does, but a few spoil it - and its just great to see help like the above :)

tso 2009-12-07 18:00

Re: witter - a python twitter client
 
Just want to say, nice work :D

I seem to have bumped into a issue with 0.1.0-4 where it fails to save user name and password on exit. This is on a N800/N810 btw.

On the scrolling side, i am not much fan of kinetic scrolling, but it may work better on witter vs mauku, as witter do not have a double-tap action on entries. That is, if you get so far as to implement drag to scroll on the N810 version at all. Optionally i guess you could just do a wider scroll bar, so that its easier to use with fingers (see modest as an example).

There is a small issue with the long-tap menu, where even tho it shows a focued menu, one have to tap the menu twice before it shows any sub-menus.

And some of the text flows under the scroll bar, rather then shift the word down to the next line.

Oh, and a feature request. It would be nice if a long-tap menu option would be to show the timeline for the specific user, as sometimes its nice to dig back and see what kind of entries a user have made lately.

Tintin 2009-12-07 19:37

Re: witter - a python twitter client
 
Looking forward to testing this once it hits Extras for Diablo.
Would love a Mauku alternative.

joshua.maverick 2009-12-07 20:26

Re: witter - a python twitter client
 
1 Attachment(s)
how about a layout similar to this? It's a quick mock up but do you think it would be beneficial to make it a little more visually pleasing?

tso 2009-12-07 20:57

Re: witter - a python twitter client
 
i found myself thinking, would it be possible to trigger the long-tap menu using center dpad?

would be useful when one scroll thru the list using the dpad anyways.


All times are GMT. The time now is 08:11.

vBulletin® Version 3.8.8