Skip to content

v0.6.0 release

Compare
Choose a tag to compare
@BluABK BluABK released this 04 Apr 15:36
· 151 commits to master since this release

Changelog:

  • Added attrib original_text in VideoTile elements to save the unedited text before ellison overwrites it forever.
  • Tuned all the pixel size, ellison and max size values to work with the new VideoTime system.
  • Made all the new max size and ellison settings configurable.
  • Fixed ellison inconsistency and mismatch issues by creating a function get_unicode_weight which calculates a
    "width-weight" for unicode characters, and then that weight is subtracted from the ellison modifier.
  • Changed VideoTile sizing logic to use a maximum size instead of fixed size, which fixed the issue with QLabel text
    going OOB.
  • Added debug tile coloring for padding debug.
  • Made channel title and date text pixel size configurable
  • Made title text weight configurable (Normal, DemiBold, Bold).
  • Merged configurable database type and location into one single option 'url'.
  • Fixed bug where timestamp wouldn't show the correct level, due to accidentally being offset by 1.
  • Made config inform about which options require restart. Also: rearranged some options.
  • Fixed broken thumbnail tooltip feature.
  • Moved get_default_player from playback to super (VideoTile).
  • Cleaned up keyboard modifiers code a bit.
  • Fixed bad function signatures.
  • Made player an optional kwarg in open_in_player()
  • Refactored some strings.
  • Deprecated and deleted config_play_video function.
  • Made Subfeed context menu options on par with Playback's (alt players etc, mark watched, play w/o mark watched, etc...).
  • Fixed buggy implementation of mousePressEvent in Subfeed that listened to all mouse events, not just LeftButton (whoops!).
  • Added Playback's MidButton decrease_prio/mark_downloaded functionality to Subfeed.
  • Created a function open_in_browser that properly opens a url in the web browser.
  • Added some pydoc here and there.
  • Made open_in_player compatible with being served URLs as well as file paths.
  • Deprecated and deleted 'use_url_as_path' config hotfix.
  • Added "restart may be required" signifier to config options w/o bindings.
  • Fixed bug where timedelta years weren't subtracted by 10 when showing decades.
  • Made youtube-dl an optional dependency, and removed tqdm entirely.
  • Added in stock BreezeStyleSheets and made them load instead of the windows modded ones if you're on Linux. Also added
    a missing README.md.
  • Added toolbar icon size modifier for use on High DPI displays.
  • Implemented actions and kwargs bindings in GenericLineEdit.
  • Tweaked Elided text modifier for video title to perfection (if text is bolded or otherwise it will cut off a little
    sooner than this perfection, but that's why it's been made user configurable).
  • Explicitly set progress bars to blue instead of assuming it would be the default (varies with QStyle and QPalette).
  • Fixed issue #5 (Launched players would quit along with Sane) by pre-pending 'nohup' to Popen arguments (if Linux).
  • Changed timedelta formatting delimiter from % to $ due to shortcomings in ConfigParser (%% is an escaped percent sign,
    so config parser finds it, but it doesn't actually do anything, but % isn't a valid string interpolation. so it fails.
  • Made video uploaded timedelta format customisable, and changed to use relativedelta with a string.Template to have
    strftime-esque formatting (it only allows for [a-z], so had to go with repeating letters instead of dash.
  • Made GridView elided text values customisable.
  • Fixed GridView text bleeding out of frame (length-wise, height cut-off issue is still unresolved).
  • Made elided title text modifier customisable and moved out of place 'title pixel size' item in ConfigView.
  • Removed mysterious hide_downloaded setting from GUI config (and MainWindowListener) that seemingly did nothing.
  • Fixed bug where despawned Central Widgets were not respawning properly, leading it segfaults.
  • Config checkboxes now support multiple functions where some don't have kwargs.
  • Toggle for playback and download feature and debug mode now toggles the menubar and toolbar items as well.
  • Created function to respawn menubar and toolbar in MainWindow (useful when config has changed to reflect hiding items)
  • Extended GenericConfigCheckBox's function(**kwargs) capability to include lists of functions (and/or lists of kwargs).
  • Added functionality for tabs to be inserted at their predetermined position instead of at end of row, and made it the
    default.
  • Made Debug tab in ConfigView spawn and despawn when enable Debug option is checked/unchecked.
  • Made Download tab in ConfigView spawn and despawn when enable PlaybackView option is checked/unchecked.
  • Implemented ability for GenericConfigCheckBox to take checked/unchecked action functions and kwargs.
  • Split ConfigView's populate_options into one function per tab, which allows for more fine grained adding/populating
    in future.
  • Moved settings for enabling debug mode and GUI to a new "Advanced" tab in ConfigView.
  • Made "Download" tab not show on startup if Playback view is disabled.
  • Created del_tab and add_tab (and refactored add_tabs accordingly) in ConfigViewTabs.
  • Moved Views to their own "Views" tab in ConfigView.
  • Removed obsolete tab_id kwarg from InputSuper (ConfigView).
  • Mask database location from being written to generated sample config.
  • Made Database type and location customisable from config (default type: sqlite).
  • Sample configuration files are now generated if none already exist.
  • Fixed issue with log-to-file feature spawning a new file handler instance for each create_logger() call
    (3000+ file descriptors).
  • Made Left mouse button action remappable (a little stop-gap pending full implementation of hotkeys, default: open in
    default web browser)
  • Made Playback view (and implicitly downloading features) optional (default: disabled).
  • Fixed bug that prevented QtWidget styles in Window->Theme->Style from working at all.
  • Made DownloadView able to retry/re-add failed downloads.
  • Made video download logic able to emit failed download signals to DownloadView and set info accordingly.
  • Made downloader properly report and set failed download status to failed on pesky SSL Handshake errors (Errno 0).
  • Updated MainWindow's confirmation_dialog function to make all args but message and action optional.
  • Removed debug logging for unfinished downloads when clear finished downloads button is pressed.
  • Made config text input fields actually set the the text variable to current config instead of just showing a
    placeholder while text variable was Null (could potentially have lead to issues down the line)
  • Made config text input fields save-as-you-type instead of unintuitively requiring user to hit the return key.
  • Added config option to adjust thumbnail tile overlay width and height
    (NB: If you have enabled force AR width won't change)
  • Fixed bug where SaneInputDialog didn't auto close after OK was clicked.
  • Added startup choice between build API key and oauth from string or load from file
  • Updated startup checks to send in a cancel_action instead of needing to carry around (and update) two boolean
    variables for whether or not public files were used.
  • Made it possible to bind actions to cancel button on SaneConfirmationDialog
  • Implemented an init_ui() in SaneDialog, giving it new purpose.
  • Made essential Sane{Confirmation,}Dialog args normal instead of kwarg