Todo =============== Features -------- * Log viewer needs to have BBCode/HTML/Text copy modes * Copy quirks between profiles? * More complex quirks: by-sound * Spy mode * Turn @ and # links on/off? * "Someone has friended you" notifier * Show true bans? COMPRESS QUIT MESSAGES ON BAN * Colour saving boxes things? * Whowas for last seen online? * Tab completion of two letter names * When 'banned' make impossible to connect using timestamp banned under * Auto download/install updates via Windows installer * Turn memo notifications on/off from right-click menu on memos (Idea: lostGash) * Use web connection to send offline messages in email-like fashion (Idea: ghostDunk) * Use web connection to save profiles (Idea: ghostDunk) * Better NickServ registering * Spectation notices (Idea: lexicalNuance) (probly WONTFIX) * Auto-login Nickserv * Make toast notifications only on certain chums * Local alisas for chums * Don't make new windows be all in your face and shit * Hide offline friends per group * Implement new Lexer for the sake of everyone's sanity * Redo PESTERCHUM: processing/redo whole msg received processing chain * Redo text processing in general * Redo quirk processing (use pieces from Textsub if needed) * LET PEOPLE TURN OFF HONKING - people already rename the soundfile and such to do this manually * Set up a simple function to display a traceback instead of silently moving on! * Pare down the PesterMemo object so it inherits more things from PesterConvo *implicitly* * SOONER OR LATER: Redo internal chum storage, centralize data into widely accessible manager objects, etc. * Also: Overhaul settings storage. Bring it more in line with the system Textsub used (if feeling masochistic), but simpler. * Overhaul debugging * Make a console to display debug info without requiring us to run from console * Debug generic.py's CaseInsensitiveDict/replace it with mine * Overhaul messaging so Chan/Nick/Memo Servs all use the same code (and lexer) * Implement MemoServ support * Add support for displaying more verbose information (e.g. Cease messages which tell you more than the abbreviation of who left) * Make Pesterchum recognize conventional /mes so they aren't invisible * Fix NickServ auto-login things * Fix memo autojoin * Tell user when NickServ handles are going to expire * Tell user when old handles have D/C'd? Offer autoghost support?! * Add more comprehensive status support - IDLE, DND, INVISIBLE for now - or at least add similar functionality. * SEPARATE FUNCTIONALITY from CONNECTED STATE!! This is a huge problem! Being shunted off our nick closes windows and breaks things! Just D/C and reconnect? * It'd probably be best to give an option to either CHANGE NICKS or DISCONNECT upon nick collision...? But, then how would we GHOST? * Maybe GHOSTing should use auto-identify to ensure- no, that doesn't work, because we can't ident into a specified nick without being ON it. Need GD's help to fix.... * Separate Pesterchum system handling from window handling. Dicts should be stored and maintained via dicts - even a refined version of what I used for textsub. * Doing it this way means I can fix the case in/sensitivity issue, too. * Finish creating the sound wrapper. Just make it check what the type of sound needed is upon creation, and instantiate a private class based off of that. * There is basically no good way to do this without moving to Qt5. I might try that myself later, but that's a long-term goal. * Make it possible to test quirk things and such without connecting? This'd be hard to separate out, but useful. * Right-click Time entry field to see those used? (Replace left/right buttons?) * Make the memo name entry box accept a comma-separated list * Make right-clicking on a tab open up the right-click menu one would get on right-clicking the title (frame??) * Separate auto-idle and checkbox idle so they don't share a state Todo/Done ---- * Fix parser text-loss bug that plagues everyone (especially Chumdroid users) * Make /me messages that cut continue into more /me messages * Make sound work on Windows through QSound (disables volume control) * Toggle individual tab flash / alert sounds (from the same right-click memo that lets us toggle OOC) * Make CTRL+PGUP/PGDN switch memo/pester tabs Debugging ---- * Make small, simplistic windows that allow the viewing of internal variables pertaining to things like set quirks, users present, etc. * Make a window that can be used to interface with the script directly - a simple Python console. Bugs ---- * weird memo time bug * Windows doesn't show style sheet sometimes?? Maybe related to themes. * Issues with connecting? Client not closing connection right? People keep getting "nick taken" messages * When using mood sort, scroll position jumps to last selected chum * Closing a timeclone doesn't actually cease for everyone else * Kill Zalgo * Random invisible, tiny links to last link at end of every message * Chums not appearing on chumroll when initals are the same? (bS) * Recognize IRC 471, 473, 474 and 475 * memo links aren't case sensitive * Mentions occasionally don't work (e.g. in /me) * Character times aren't 'forgotten' on Part * +c is not properly recognized on join, nor does it stop someone from reenabling their quirk (let ops and above ignore it) * Chumlist handles groups pretty badly (no using the same name as a handle, for example? Needs an errormessage at least) * PESTERCHUM: messages are sent to things like NickServ * Log folder/file names are not case-sensitive, so they break on non-Windows systems * Capitalized /me's don't render (should forcibly lowercase them) * Volume control doesn't work without pygame * Sound on Linux doesn't work without pygame Windows Bugs ------------ * XP SP2: sometimes mouse clicks dont register? must be some kinda crash * On reconnect and nick change, momentary theme change causes menu items to stop working * Random chums won't show up on chumroll * Popup toast notifications cause main window to raise Mac Bugs -------- * Mac doesn't show tabs right, display gifs, highlighting thing? * SS: also the background image is broken * SS: in the one-on-one pester it resizes with the window * SS: but the memo one doesn't resize * SS: and the arrows next to the time thing overlap the CLOSE button * Lex: There seems to be a faint outline around most non-square themes.