summaryrefslogtreecommitdiff
path: root/core
Commit message (Collapse)AuthorAgeFilesLines
* Show/ hide search bar when switching tabsbrowser_search_entry_toggleChristiam Dywan2019-03-041-0/+3
| | | | The find controller tracks state per web view.
* Show a volume icon in tabs that are playing music (#285)Christian Dywan2019-03-041-0/+3
| | | The icon appears in addition to the favicon (and close button).
* Use a dialog to handle script confirm/ prompt (#279)Christian Dywan2019-02-282-36/+34
| | | | | The WebKit API can't cope with asynchronously updating the result. Fixes: #276
* Explicitly check for leading or trailing space in urlbar (#280)Christian Dywan2019-02-281-1/+2
| | | Otherwise eg. javascript: URLs with spaces don't work as expected
* Don't override Del if row can't be deleted (#278)Christian Dywan2019-02-271-2/+3
| | | | | | | | | Handling of the Delete key with the suggestions popover visible needs to fallback to the key press event (of the entry) if the selected row can't be deleted. The item should also be checked to be backed by a database. Fixes: #269
* Page menu zoom (#273)Christian Dywan2019-02-261-0/+27
| | | | | * Add a zoom section to the page menu Fixes: #212
* Prevent focus Urlbar when activating tab. (#274)gerito12019-02-262-2/+4
| | | Prevent focus Urlbar when activating tab, checks the url is not blank.
* Only load web extensions which are enabled (#270)Christian Dywan2019-02-243-5/+5
|
* Check for split string in proxy setting before splittingDominik George2019-02-241-0/+4
| | | Closes #243
* Re-introduce Navigationbar action revealing the toolbar (#264)Christian Dywan2019-02-211-0/+5
| | | Fixes: #260
* Re-introduce ZoomIn action as an alias for tab-zoom 0.1 (#265)Christian Dywan2019-02-211-0/+5
| | | Fixes: #261
* Don't disable the fullscreen action (#266)Christian Dywan2019-02-201-3/+0
| | | | | | Although the toggle may be hidden, the action needs to be enabled to be activated programmatically. Fixes: #210
* Headerbar by default only under Budgie, GNOME and Pantheon (#258)Christian Dywan2019-02-181-1/+11
| | | Semi-related to #216
* localhost:1234 should be treated the same as localhost (#259)Christian Dywan2019-02-181-1/+1
| | | Fixes: #254
* Use `PLUGINDIR` tolocale system-wide plugins in the web process (#257)Christian Dywan2019-02-181-1/+1
| | | Fixes: #218
* Stop changing checkbox sensitivity of data to clear (#232)Christian Dywan2019-02-181-27/+5
| | | | | | | | * Stop changing checkbox sensitivity of data to clear Fixes: #190 * Drop new unit test ClearPrivateDataTest
* Re-introduce inactivity-reset without relying on X11 (#263)Christian Dywan2019-02-182-1/+22
| | | Fixes: #262
* Initial support for cross-browser Web Extension API (#250)Christian Dywan2019-02-082-1/+10
| | | | | | | | | | | | | | | | | | * Initial support for cross-browser Web Extension API * Json-GLib is a introduced as a new dependency to read manifest.json * The README contains a new section to summarize the Web Extension API * Web extension support is implemented as a Peas plugin * Web extensions can be built-in, system-wide or user-installed * The Javascript interface is added to the core GLib.Resource * Midori.Tab shares a WebKit.UserContentManager per WebKit.WebContext Fixes: #244 * Only insert loaded web extensions and employ a delay installing the API Otherwise opening a new window with many extensions would result in significant delay.
* Add Report Problem to About dialog (#235)Christian Dywan2019-01-031-1/+7
| | | Fixes: #228
* Forward URIs we can't display to show_uri (#236)Christian Dywan2019-01-031-0/+10
| | | | | This handles for example apt:foo style links. Fixes: #234
* Map Back/ HomePage keys to the respective actions (#215)Christian Dywan2018-12-211-2/+2
| | | These are special keys found on some external keyboards.
* Carry error state and tls certificate in tab (#187)Christian Dywan2018-12-162-4/+21
| | | | | | In case of errors the WebView won't save the certificate so it needs to be saved in the error handler. Fixes: #74
* Open external links in default browser in app mode (#184)Christian Dywan2018-11-291-0/+23
| | | | | | Note: Using ^Click or Middle Click to open new tabs is also disabled since it wouldn't make sense here. Fixes: #177
* Don't consume the tab's focus in event (#185)Christian Dywan2018-11-271-1/+1
| | | | | | WebKit needs to handle focus events to update the visibility of the cursor. Fixes: #181
* Always build menu models from scratch (#183)Christian Dywan2018-11-271-4/+8
| | | | Adapting to the small layout shouldn't depend on the initial value of the window state.
* (Re)store last window width and height (#180)Christian Dywan2018-11-262-0/+24
| | | | - Save the size of a non-tiled/ -maximized/ -fullscreen browser - Use the last known dimensions as the default size
* Implement network proxy settings (#174)Christian Dywan2018-11-253-4/+129
| | | | | | | | - Implement WebKit.NetworkProxy{Mode,Settings} - Expose the settings under Network preferences ![screenshot from 2018-11-19 22-09-55](https://user-images.githubusercontent.com/1204189/48732351-19d52680-ec48-11e8-923a-b5bb43d444ad.png) Fixes: #125
* Implement notifications for downloads and web (#175)Christian Dywan2018-11-222-0/+33
| | | | | | | | - Finished downloads when there's no active browser window - Web notifications with favicon if available for background tabs Notes: - The .desktop file is renamed to match the application ID. - Only one notification of each is allowed.
* Hide page and browser actions when window is small (#171)Christian Dywan2018-11-212-22/+88
| | | | | | | | | | | | | | | - At a width of less than 500 the browser window is considered small and the left-hand page action buttons as well as the right-hand window actions are hidden and added to the respective menus. - Downloads show relative to the app menu if there's no visible button. - The shrink constraint is moved from the navigationbar to the tab itself. - Urlbar margins are moved to CSS. - Effective minimum width becomes 269px with Adwaita w/o title buttons. To make this work the relevant actions need to be enabled and disabled when they're available and unavailable respectively. ![screenshot from 2018-11-19 08-34-09](https://user-images.githubusercontent.com/1204189/48690203-3cc6f280-ebd6-11e8-8b0d-148ee912dc64.png) ![screenshot from 2018-11-19 08-36-05](https://user-images.githubusercontent.com/1204189/48690202-3c2e5c00-ebd6-11e8-8813-22a8a6429515.png)
* Go back to using WebKit-provided user agent (#173)Christian Dywan2018-11-201-1/+1
| | | | | | | | As of #49 the user agent was hard-coded in an effort to reduce fingerprinting. Unfortunately this breaks websites such as YouTube which incorrectly sniff for features. The Midori version can remain decoupled. Fixes: #160
* Locate system-wide plugins at Config.PLUGINDIR (#168)Christian Dywan2018-11-191-2/+2
| | | Fixes: #165
* Don't block regular key input in app mode (#167)Christian Dywan2018-11-192-5/+5
| | | | | Also allow editable context menus. Fixes: #152
* Always set key regardless of location guess (#169)Christian Dywan2018-11-152-11/+7
| | | | | `location` is set based on the guessing the difference between search terms and a domain or local path. The mistake here was only setting `key` if it's unset. Fixes: #162
* Create independent tabs to allow for more processes (#166)Christian Dywan2018-11-125-5/+6
| | | | | | | The related tab does two things: 1. Connect the scripting contexts (eg. opening a window/ tab) 2. Re-use the process between those tabs By not setting it more processes will be used.
* Show tab popover relative to urlbar with no opacity changes (#164)Christian Dywan2018-11-072-6/+24
| | | | | | | | | | | | | | | Popovers really don't work well unless they're given an explicit position. So for a tab that may be the tab itself or better yet the urlbar of the containing browser. With some themes the entire tabs goes blank due to opacity changes, and even if it doesn't the translucency may leave the user unclear as to what's happening. So let's not do this. Fixes: #163 Also use the popover to re-implement permission requests. Fixes: #158
* Check for space in text before other URI magic (#153)Christian Dywan2018-11-061-3/+4
| | | A space anywhere should lead to a web search.
* Hide downloads and clear model when clicking Clear (#154)Christian Dywan2018-11-041-0/+6
| | | The "Clear" button should clear all downloads, and consequently hide the downloads button.
* Highlight finished download(s) via style class (#149)Christian Dywan2018-11-031-1/+8
| | | | | | | ![screenshot from 2018-11-01 16-07-25](https://user-images.githubusercontent.com/1204189/47860187-438cf180-ddf0-11e8-9733-c8fed7e1419c.png) After looking at the downloads popover the style class is removed and no longer visually demanding attention. I thought the "needs-attention" style class might be appropriate here but it doesn't seem to work since it's only an animation, so I opted for the "suggested action" instead.
* Link action names to shortcut items (#148)Christian Dywan2018-11-012-2/+4
| | | | | | - Action names can be specified for shortcuts so that they need not be duplicated. - `^F4` is a common alias for closing the tab. - `^n` is a common alias for switching tabs. - `^F1` and `⇧?` are great for viewing the shortcuts overview.
* Don't modify the urlbar text based on the selected row (#145)Christian Dywan2018-10-311-11/+2
| | | | | Modifying the urlbar based on the selected row is what's causing surprising behavior in some cases. Leaving the entry alone fixes that at the cost of not showing explicitly what url is going to be opened. Fixes: #117
* Drop unnecessary Escape key handing from Preferences (#141)Christian Dywan2018-10-311-9/+0
| | | This was previously needed when `Midori.Preferences` was implemented as a `Gtk.Window`.
* Implement built-in session extension (#65)Christian Dywan2018-10-315-18/+88
| | | | | | | | | | | | | | | | | - The database schema is compatible with the original tabby. - Every browser is a "session". - Each tab is part of a session and can be closed. - The last closed session (window) is restored as a fallback. - `Midori.Database.insert/ update/ delete` become virtual. - `Midori.Browser.tabs` is made public. - `Midori.Browser.add` ensures there's at least one visible tab. - The new `ClearPrivateDataActivatable` allows adding buttons and clearing data used by an extension, in this case previously open tabs. Follow-ups: - See #70 for closed storing tabs in the session - See #71 for historing tab history - See #142 for re-rodering of tabs Closes: #41
* Don't make untrue assertions in incognito teaser (#144)Christian Dywan2018-10-301-3/+0
| | | | | | | | | - Right now these assertions don't hold true. - Even before the core revamp the WebKit2 port didn't implement these. - The respective privacy-related features may be re-implemented in the future. Closes: #120 Closes: #121 Closes: #122
* Check that the destination of a new download is not null (#140)Christian Dywan2018-10-301-1/+1
| | | This is an otherwise harmless warning with no known side effects. Nevertheless warnings dilute visibility of actual bugs.
* Revised tabbar styling and organized stylesheet (#137)Christian Dywan2018-10-281-1/+1
| | | | | | | | | | | | | | | - Handle single tab titlebar case completely in CSS - Distinct active tab style - Visually merge active tab and navigationbar - Add style classes `close`, `tabbar`, `navigationbar` and `urlbar` - Comments to explain stylesheet effects ![screenshot from 2018-10-26 15-30-16](https://user-images.githubusercontent.com/1204189/47569552-2d84ba00-d934-11e8-8d80-e1339e6b9bbb.png) Note: - There's a visual glitch with the Elementary theme because it relies on bottom-padding in the titlebar (no other themes do afair): ![screenshot from 2018-10-26 15-33-47](https://user-images.githubusercontent.com/1204189/47569711-979d5f00-d934-11e8-9098-f7fe49557400.png)
* Make web process aware of core settings (#132)Christian Dywan2018-10-265-39/+51
| | | | | | | | | | - Expose `Settings` API natively to web process - Use `Config.PROJECT_NAME` to find config folder - Automatically reload external changes to Settings - Changed values on `get_boolean/string` access - Unify plugin loading in `Plugins` Fixes: #116 Fixes: #118
* Scroll new(ly) activated tab into view (#134)Christian Dywan2018-10-251-0/+18
| | | Fixes: #124
* Add Duplicate Current Tab menu item (#135)Christian Dywan2018-10-251-0/+6
| | | Fixes: #127
* Don't state that extensions be disabled in private (#128)Christian Dywan2018-10-251-1/+0
| | | Fixes: #119
* Update spinner position according to close button (#133)Christian Dywan2018-10-251-0/+2
| | | Small bug fix: the spinner isn't moved when the close button and favicon are moved around according to the position of the close button.