10000 Comparing astroidmail:master...rothn:master · astroidmail/astroid · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: astroidmail/astroid
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: master
Choose a base ref
...
head repository: rothn/astroid
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: master
Choose a head ref
Checking mergeability… Don’t worry, you can still create the pull request.
  • 4 commits
  • 14 files changed
  • 2 contributors

Commits on Sep 9, 2023

  1. Remove enable-frame-flattening and iframe for message body

    As of WebKitGTK 2.40, enable-frame-flattening is no longer supported,
    the property does nothing, resulting in all messages in the thread
    viewer being cut off at around 150px, making all long messages
    unreadable.
    
    I initially had a look into seeing whether the iframe height could be
    set programmatically with `webkit_dom_html_iframe_element_set_height`
    from the content of the iframe via `webkit_dom_element_get_scroll_height`.
    However nothing worked at page load time of an email thread, the content
    scroll height remained at 150 throughout the entire
    `ThreadView_on_load_changed` pass (because iframes are rendered lazily
    after the main window thread has finished?  Can't think of any other
    reason why this was observed). The scroll height was only found to
    update after the thread had finished loading, and triggering a hide/show
    toggle on each message.
    
    Another option would be to use the JavaScriptCore API, and have all the
    logic to manipulate the height of the iframe in JS. Two possible
    problems with this: Firstly `enable-javascript` is explicitly disabled
    in Astroid's WebKit settings; second, potentially all of the
    `webextension` code may need to be rewritten in JS - given the huge
    amount of deprecation warnings when building Astroid, this likely will
    have to be done in anger at some point in the future anyway.
    
    I gave up going down the path of manipulating the iframe after setting
    `srcdoc`, and replaced the iframe with a div instead. CSS has been fixed
    up and theme version bumped as it would be a breaking change for all
    existing users that override the theme of the UI.
    
    I can't see any concernable difference between before and after when
    viewing both text/html and text/plain messages, though it is difficult
    to gauge as my starting point is broken messages.
    
    The `AstroidExtension::reload_images` code path is the least tested of
    all the changes. The minimal check I did to see whether the logic is
    still fine was to send myself an email with a CID attachment, and
    observe it render correctly after pressing C-i in thread view.
    
    As far as this change is concerned, this is one way to fix #720 that
    suits my use of Astroid. I'm not convinced that it is the correct way to
    go about it though, as I have no reason to dismiss the rationale for
    using iframes in the first place - see comments delete by this patch
    that make reference to style issues, deadlocks and security concerns by
    not having the content contained to its own iframe.
    ibuclaw authored and rothn committed Sep 9, 2023
    Configuration menu
    Copy the full SHA
    9779803 View commit details
    Browse the repository at this point in the history
  2. Add a '#' key to send a message to the trash.

    Currently, Astroid has no support for deleting messages. Without
    deleting messages, a mail server with limited storage will eventually
    become full and incapable of receiving any more mail. Message deletion
    functionality in clients is an important mechanism for preventing this.
    
    This adds a mechanism to mark messages as 'trash' in Astroid, which
    servers like gmail are configured to interpret as a deletion request.
    rothn committed Sep 9, 2023
    Configuration menu
    Copy the full SHA
    0838813 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    0d5d0d3 View commit details
    Browse the repository at this point in the history
  4. Add option to disable left icons

    Currently, there is no option to disable the left icons (e.g.,
    attachment, urgent). However, they take up valuable screen real-estate
    on mobile devices. Others may simply find them less useful and want to
    hide the extra visual clutter.
    
    For these reasons, this adds a config option and associated rendering
    logic to hide these icons upon request.
    rothn committed Sep 9, 2023
    Configuration menu
    Copy the full SHA
    d0e0835 View commit details
    Browse the repository at this point in the history
Loading
0