summaryrefslogtreecommitdiff
path: root/src/ui.c
AgeCommit message (Collapse)AuthorFilesLines
2015-12-10Use custom function to feed console instead of trying to be clever and ↵Michał Cichoń1-7/+7
capturing stdout. This fixes IO on Windows 8 and Windows 10.
2015-08-26Drop curl in favor of WinHTTPMichał Cichoń1-106/+10
Abstract out HTTP comunication and replace libcurl with WinHTTP.
2015-08-25Add format_title settings to control Pianobar window title appearance.Michał Cichoń1-0/+36
Since I'm not aware of any standard method to set title with escape codes explicit mechanism to control window title was introduced.
2015-08-25Port pianobar to Windows:Michał Cichoń1-115/+103
- use newly introduced console.h instead of terminal.h which emulate some behavior of VT terminals - replace ffmpeg/libov player with more abstract one with DirectShow implementation
2015-08-10Move feature test macros to config.hLars-Dominik Braun1-5/+1
I removed most of the *BSD-related stuff, because I can’t test these. If this breaks your build, send me a patch please.
2015-06-15Replace setting tls_fingerprint with ca_bundleLars-Dominik Braun1-0/+3
2015-04-06Switch back to libcurlLars-Dominik Braun1-27/+95
Drops libwaitress. Adds the new dependency libcurl and drops gnutls. I wouldn’t say writing my own HTTP library was a mistake – it was not and the experience gained was worth it. Instead I have to acknowledge that libcurl is just better than my own implementation. Sure, it does a lot more than HTTP – one could call that bloat. Yet if you just want to get the job done™ reusing code is the way to go. See #512 and #513.
2014-07-21Refactor audio player, add retry timeoutLars-Dominik Braun1-1/+1
Fixes #442.
2014-03-31Fix compiler warningLars-Dominik Braun1-2/+2
2014-03-31Use libav/ffmpeg for audio decodingLars-Dominik Braun1-2/+2
libav 9.12 and ffmpeg 2.2 have been tested. Here’s why: My mp4 “parser” *cough* never was a mp4 parser in the sense that it actually understood the file format. Instead it grepped the input stream for “magic” strings (section identifiers). That alone should be sufficient to throw away the code and rewrite it. Additionally libfaad2 has not been updated for ages. I guess it was abandoned in favor of libav/ffmpeg. With libav/ffmpeg, which we support both as long as the API’s don’t diverge too much, pianobar gains fast and reliable AAC and MP3 decoding without bothering too much about the details. Most users will have it installed already. On my own machine libav consumes about 2/3 CPU time compared to the previous solution when playing AAC. Unfortunately memory usage doubled and my attempts to disable unused protocols/formats/codec failed due to libav’s API limitations. While cleaning up a small detail regarding the eventcmd API has changed too: Song duration and position are measured in seconds instead of milliseconds now. Since libav/ffmpeg keeps track of accurate timing the precision pianobar keeps track of can be reduced, while still being sufficient for most users.
2014-03-13fix warnings now noted due to format string checkingCody P Schafer1-5/+5
2013-08-07piano: Generic linked listsLars-Dominik Braun1-47/+26
Introduces generic linked list structure and functions (like append, delete, …). Removes a lot of copy&pasted code and improves code readability/reusability. Heads up: This change breaks libpiano’s ABI.
2013-07-29Fix display of song lists with more than 999 itemsLars-Dominik Braun1-1/+1
Increased buffer size.
2013-03-27Add missing events to genre station selectionLars-Dominik Braun1-70/+0
Two new events: stationfetchgenre, stationaddgenre
2012-09-17Fix history memory leakLars-Dominik Braun1-0/+2
With `history = 0` playlist items are discarded, but not freed.
2012-07-06Add feature: Create new station from selected songLars-Dominik Braun1-1/+4
New keybinding ‘v’, new setting act_createstationfromsong.
2012-06-14piano: Remove unused structLars-Dominik Braun1-4/+1
2012-05-04Revert "Add force_tls setting"Lars-Dominik Braun1-4/+3
This reverts commit 35763dea799c96361e288a10eab0fbd16c36e880. It does not work with the JSON API.
2012-05-02Really delete seed suggestionsLars-Dominik Braun1-28/+11
There does not seem to be an API call for that.
2012-05-01piano: Move to JSON API (v5)Lars-Dominik Braun1-2/+2
In random order: Thanks to Chris Eby for his work on pithos, to an anonymous coward for sending me his Android client, to Alex Howard for sending me the webOS client, to ZigZagJoe for providing a temporary fix and thanks to everyone who sent Pandora a message. Although there are a few rough edges here and there this fixes #236.
2012-04-14Add force_tls settingLars-Dominik Braun1-3/+4
Use TLS for all actions when requested. Closes #234
2012-03-17Auto-select last remaining item of filtered listLars-Dominik Braun1-15/+26
See #231.
2012-02-24Don’t use custom format output as format stringLars-Dominik Braun1-3/+3
It may contain %’s and crashes. Closes #225.
2012-01-10getFragment does not support TLS any moreLars-Dominik Braun1-0/+1
You can’t handle the load? Closes #202
2011-12-23Fix warnings found by -Wcast-qualLars-Dominik Braun1-4/+4
2011-12-23Fix warnings found by -WshadowLars-Dominik Braun1-3/+0
2011-12-23Fix warnings found by -Wmissing-declarationsLars-Dominik Braun1-1/+1
2011-12-18Fix genre selection segfaultLars-Dominik Braun1-19/+26
Closes #193 and #194
2011-11-08Back to snprintfLars-Dominik Braun1-16/+2
Fixes #169.
2011-10-22Support seed stationsLars-Dominik Braun1-4/+4
Fixes #165
2011-09-22piano: Protocol version bump (v32)Lars-Dominik Braun1-4/+8
Keys stay the same. Quickmix and seed suggestion API calls changed. Listener id is not part of the url any more. Bookmark API calls seem to be deprecated.
2011-09-02Use fprintf instead of snprintfLars-Dominik Braun1-14/+11
- Output size not limited by buffer size - No local buffer needed
2011-08-29Customizeable list format (songs)Lars-Dominik Braun1-5/+26
Fixes #151
2011-07-27Configureable %@ format stringLars-Dominik Braun1-1/+1
2011-07-25Added toggle to quickmix menuLars-Dominik Braun1-1/+9
Closes #141
2011-07-23Fix commentsLars-Dominik Braun1-7/+7
2011-07-14Defined _DARWIN_C_SOURCELars-Dominik Braun1-0/+1
Required to expose non-standard functions. Closes #138
2011-07-11Disable feature test macros on FreeBSDEitan Adler1-0/+2
Closes #136
2011-06-13waitress: Rewrite split urlLars-Dominik Braun1-1/+1
Accepts user and password in urls now. Tests added.
2011-05-18Configureable format stringsLars-Dominik Braun1-79/+150
Closes #88
2011-05-05Replace generic "search for artist/title" messageLars-Dominik Braun1-2/+2
Closes #115
2011-04-24Use static keyword for functionsLars-Dominik Braun1-2/+2
2011-04-22Rename strcasestrLars-Dominik Braun1-5/+5
Conflicts with libc strcasestr. Thanks to David Coppa.
2011-04-04Expose songDetailUrl to eventcmd scriptLars-Dominik Braun1-39/+43
See #99.
2011-03-26Filter-/searchable artist listLars-Dominik Braun1-17/+31
2011-03-26Filter-/searchable station listLars-Dominik Braun1-60/+71
2011-03-26Filter-/searchable song listLars-Dominik Braun1-16/+71
2011-02-26Always add song to historyLars-Dominik Braun1-0/+30
2011-02-20Add song's real station to eventcmdLars-Dominik Braun1-0/+7
In case we're playing quickmix. See issue #94.
2011-02-02BarReadline rewriteLars-Dominik Braun1-24/+31
Doesn't use c streams any more, allows multiplexing of fifo/stdin in all situations.