1
mirror of https://invent.kde.org/network/falkon.git synced 2024-09-22 18:22:10 +02:00
Commit Graph

2626 Commits

Author SHA1 Message Date
Konstantin Savun
5b45baf630 Style Update [SpeedDial+SpeedDial:Icons] (#2539)
SpeedDial: Style update
2018-01-11 20:51:21 +01:00
David Rosca
692d55fff7 AdBlock: Move remaining code to adblock subdir 2018-01-11 20:03:14 +01:00
David Rosca
3608b48f6e BrowserWindow: Simplify fullscreen handling 2018-01-11 19:58:13 +01:00
David Rosca
76e0400dd1 AboutDialog: Remove special handling for Windows 2018-01-11 19:57:30 +01:00
David Rosca
3833447767 BrowserWindow: Fix restoring maximized state after leaving fullscreen 2018-01-11 19:57:17 +01:00
David Rosca
e0e62c6e81 SearchEngines: Add back support for window.external.AddSearchProvider 2018-01-11 19:57:10 +01:00
David Rosca
6ecc9f616f ExternalJsObject: Don't export search engine functions
Our window.external is no longer available to web pages so it has no effect.
2018-01-11 19:56:31 +01:00
David Rosca
195d3f2b93 TabWidget: Reset zoom when resetting tab when closing last tab
Closes #2540
2018-01-11 19:56:19 +01:00
David Rosca
d0587e9f6c DesktopNotification: Don't change window opacity 2018-01-11 19:56:04 +01:00
David Rosca
059889ecfe BrowserWindow: Don't show "Empty Page" in window title 2018-01-11 19:55:44 +01:00
David Rosca
7dfce692d7 WebPage: Don't force enable JavaScript on file: scheme 2018-01-11 19:55:07 +01:00
David Rosca
4bf85ee3cb WebPage: Register QWebChannel on isolated ApplicationWorld
This way scripts on pages don't have access to it.
Exception is qupzilla: scheme as internal pages requires the bridge.

GreaseMonkey userscripts now runs on ApplicationWorld too. This fixes
userscript that depend on script world being isolated from main page world.
Tested with 4ChanX + OneeChan.
2018-01-11 19:55:01 +01:00
David Rosca
b291c27d4e AdBlockDialog: Fix icon path in Options button 2018-01-11 19:54:24 +01:00
David Rosca
c3e4d80010 AdBlock: Load blocked page as data url instead of qupzilla:adblock
AdBlock is now completely separate main app code.
2018-01-11 19:52:29 +01:00
David Rosca
f16580dc05 AdBlockPlugin: Change into real internal plugin 2018-01-11 19:51:47 +01:00
David Rosca
9bff0f1b5c Plugins: Remove no longer used Click2Flash settings 2018-01-11 19:51:20 +01:00
David Rosca
7143e1130c Update themes
- use window background instead of white for AboutDialog background
- use new style for desktop notifications
- set pinned tab width in Windows theme
- remove styling of Download Manager
2018-01-11 19:50:58 +01:00
David Rosca
da9e873d2c AboutDialog: Remove frame from QTextBrowser 2018-01-11 19:50:46 +01:00
David Rosca
5cd580d284 ComboTabBar: Update moving tab contents during drag
Unlike QTabBar, ComboTabBar now redraws contents of moving tab.
2018-01-11 19:50:31 +01:00
David Rosca
d7146519b4 ComboTabBar: Fix draggedTabRect returning rect of current instead of pressed index 2018-01-11 19:50:26 +01:00
David Rosca
b2de2a00f4 ComboTabBar: Fix tabPixmap with high-dpi 2018-01-11 19:50:23 +01:00
David Rosca
675bc0514f WebPage: Force enable JavaScript for all non http/https urls 2018-01-11 19:50:18 +01:00
David Rosca
287631d37b WebPage: Remove setJavaScriptEnabled method 2018-01-11 19:50:13 +01:00
David Rosca
6b90851d8c DesktopNotifications: Set app icon to preview notification
Closes #1859
2018-01-11 19:49:57 +01:00
David Rosca
80eb072bb1 NavigationBarToolButton: Prevent down state flickering when showing popup 2018-01-11 19:49:17 +01:00
David Rosca
516bd92089 TabBar: Allow to change width of tabs using style sheets
It can be set in themes or in userChrome.css as in example.

/* userChrome.css */
TabBarTabMetrics
{
    qproperty-normalMaxWidth: 250;
    qproperty-normalMinWidth: 150;
    qproperty-activeMinWidth: 150;
    qproperty-overflowedWidth: 150;
    qproperty-pinnedWidth: 35;
}
2018-01-11 19:49:12 +01:00
David Rosca
bfc3b0bf4a Load userChrome.css Qt style sheet from profile directory
Allows to fine-tune interface without directly modifying themes.
2018-01-11 19:49:07 +01:00
David Rosca
95921692be ComboTabBar: Apply padding adjustment to all tabs 2018-01-11 19:49:03 +01:00
David Rosca
e21e147bbb NavigationBarConfigDialog: Fix restore to defaults action 2018-01-11 19:48:59 +01:00
David Rosca
21bd073482 TabBar: Increase drag start distance to not disturb tab moving
Also remove no longer needed timer to show add tab button.
2018-01-11 19:48:55 +01:00
David Rosca
23f84abc3b NavigationBar: Correctly filter invalid layout ids 2018-01-11 19:48:50 +01:00
David Rosca
1f9599aac7 Add DownloadsButton to navigation toolbar
It is visible only when there are items in download manager and shows
number of active downloads in badge text.
2018-01-11 19:48:43 +01:00
David Rosca
0e41fd0785 AbstractButtonInterface: Add support for hiding tool button 2018-01-11 19:48:06 +01:00
David Rosca
238a06874d AbstractButtonInterface: Allow delayed hide of popup 2018-01-11 19:48:01 +01:00
David Rosca
1595587945 ThemeManager: Set proper icon size for QListWidget 2018-01-11 19:46:56 +01:00
David Rosca
df632c7ced NavigationBar: Only reload layout when settings changes 2018-01-11 19:46:51 +01:00
David Rosca
e33174100e NavigationBar: Bring back exit fullscreen button
This time it is configurable and hidden by default.
2018-01-11 19:46:44 +01:00
David Rosca
50d1bb6d96 ComboTabBar: Add possibility to change base color from stylesheets 2018-01-11 19:46:33 +01:00
David Rosca
49ebfa3f5d TabBar: Don't hide add tab button when moving tabs 2018-01-11 19:46:06 +01:00
David Rosca
68ed91c909 ComboTabBar: Block moving tabs outside of tabbar 2018-01-11 19:46:03 +01:00
David Rosca
26a2b55c24 ComboTabBar: Don't call QTabBar paintEvent implementation during drag
Implement udpating geometry of moving tab.
2018-01-11 19:45:58 +01:00
David Rosca
8ea8b56f27 ComboTabBar: Add draggedTabRect method 2018-01-11 19:45:46 +01:00
David Rosca
84c4f0ff4d TabBar: Don't show context menu when dragging tab
Otherwise it breaks tabbar state.
2018-01-11 19:45:41 +01:00
David Rosca
78383c007e TabBar: Always send mouse events to ComboTabBar
It needs every event to correctly update dragInProgress property.
2018-01-11 19:45:36 +01:00
David Rosca
4e988ac8f2 ComboTabBar: Fixes in drawing tabs with drag offset
m_dragInProgress is now only true when dragging tab, not during
the tab sliding to target position animation.
2018-01-11 19:45:32 +01:00
David Rosca
6a48f4d862 TabBar: Disable greying out not restored tabs
It doesn't really work with some themes and there doesn't seem
to be easy way to make the text always clearly visible.
2018-01-11 19:45:27 +01:00
David Rosca
7adda247dc NavigationBar: Make sure search bar doesn't have null size in splitter 2018-01-11 19:45:23 +01:00
David Rosca
670e06cbc6 Change back "Sidebars" -> "Sidebar" 2018-01-11 19:44:59 +01:00
David Rosca
4c7eaf0f9f ComboTabBar: Add support for tabPadding property
Workarounds bug where tabs have zero padding when styled using style
sheets.
2018-01-11 19:44:50 +01:00
David Rosca
e617f3f6ec ComboTabBar: Fix drop indicator position on last tab 2018-01-11 19:44:45 +01:00
David Rosca
679a5f0136 ComboTabBar: Also use our TabBarHelper drawing code when drag is in progress 2018-01-11 19:44:40 +01:00
David Rosca
5dfe6d862c NavigationBar: Clear current webview for all tool buttons
Fixes another crash similar to #2537
2018-01-11 19:44:35 +01:00
David Rosca
4dd67cfce6 LocationCompleter: Set BrowserWindow as transient parent 2018-01-11 19:44:30 +01:00
David Rosca
47ee7bfbca TabWidget: Set outside-tabbar property to both add tab buttons
It is now possible to exclusively distinguish both buttons.
2018-01-11 19:43:38 +01:00
David Rosca
7e8b2a103b ComboTabBar: Draw tab as only one in tabbar in tabPixmap 2018-01-11 19:43:33 +01:00
David Rosca
848a61440c TabWidget: Hide closed tabs button when there are no closed tabs 2018-01-11 19:42:46 +01:00
David Rosca
6806fa5405 AbstractButtonInterface: Use WebView property instead of WebPage
WebView of a tab will not change while WebPage may.

This also fixes crash when WebPage of WebView is changed. It can happen
eg. when opening new tab from page with target=_blank.

Closes #2537
2018-01-11 19:42:38 +01:00
David Rosca
f87c6897a0 WebPage: Always build nonblock js dialogs support
Can be enabled with QUPZILLA_ENABLE_JS_NONBLOCK_DIALOGS environment variable.
2018-01-11 19:41:49 +01:00
David Rosca
642d835d55 WebPage: Disable writing JavaScript warnings on stderr
Can be enabled with QUPZILLA_ENABLE_JS_OUTPUT environment variable.
2018-01-11 19:40:43 +01:00
David Rosca
ad3780e8df MainApplication: Sync settings after writing isRunning value
Fixes correctly detecting crashes during session restore.
2018-01-11 19:40:38 +01:00
David Rosca
e41b0edf0a Make qupzilla:restore working also with disabled JavaScript
Instead of temporarily enabling JavaScript, make the page functional
without it.
2018-01-11 19:40:31 +01:00
David Rosca
7ebd4039f8 AdBlock: Clear blocked requests for url when webpage is deleted 2018-01-11 19:38:37 +01:00
David Rosca
2f8c12ff1c WebTab: Fix tab with empty url but not empty history treating as invalid
Fixes possibility to lose tabs on session restore when closing window
right after it started to restore session (right after it was opened).
2018-01-11 19:38:23 +01:00
David Rosca
a45dbdc883 AdBlock: Track blocked requests on page
AdBlock icon now indicates number of blocked requests in badge text.
2018-01-11 19:38:14 +01:00
David Rosca
ba2ea9cb09 AbstractButtonInterface: Rename badgeLabelText -> badgeText 2018-01-11 19:36:54 +01:00
David Rosca
15a2afb4b6 NavigationBar: Add support for badge text in tool buttons 2018-01-11 19:36:49 +01:00
David Rosca
8827b1fb90 NetworkUrlInterceptor: Also guard adding/removing other interceptors 2018-01-11 19:36:44 +01:00
David Rosca
ee02d7716a AdBlockIcon: Remove unused popupBlocked 2018-01-11 19:36:39 +01:00
David Rosca
ff1171abf0 AdBlock: Make it as self-contained as possible
It could be easy now to turn it into real loadable plugin.
2018-01-11 19:36:32 +01:00
David Rosca
401e600821 AdBlock: Remove action from Tools menu 2018-01-11 19:34:52 +01:00
David Rosca
9c17277dd5 NetworkUrlInterceptor: Add proper locking 2018-01-11 19:34:45 +01:00
David Rosca
394221c5c0 AdBlockManager: Disable blocking on view-source scheme 2018-01-11 19:33:51 +01:00
David Rosca
0ff1ebc584 Fix build 2018-01-11 19:33:22 +01:00
David Rosca
3d171275d2 AdBlockIcon: Indicate AdBlock state on current page with icon state
Icon is inactive when AdBlock is disabled or can't run on current page.
2018-01-11 19:33:17 +01:00
David Rosca
74f45f6028 NavigationBarToolButton: Add support for inactive state 2018-01-11 19:33:13 +01:00
David Rosca
7f00b51fea Preferences: Remove last Navigation Toolbar option
It is now configurable directly from navigation toolbar.
2018-01-11 19:33:06 +01:00
David Rosca
2d698edd21 BrowserWindow: Fix crash when restoring geometry of fullscreen window 2018-01-11 19:32:59 +01:00
David Rosca
4a4d5b72ad Add NavigationBarConfigDialog
Allows to change layout of navigation bar and hide/show search bar.
2018-01-11 19:32:54 +01:00
David Rosca
4c494ebfb0 ComboTabBar: Improve drop indicator drawing
Code was taken and modified from KFilePlacesView
2018-01-11 19:31:41 +01:00
David Rosca
546e777c7c NavigationContainer: Also add bottom margin with tabs on top 2018-01-11 19:31:33 +01:00
David Rosca
8cbaa19dd1 Use correct margins from style in NavigationBar and BookmarksToolbar 2018-01-11 19:31:17 +01:00
David Rosca
09d2a2017d ButtonWithMenu: Don't show menu on right click 2018-01-11 19:31:00 +01:00
David Rosca
c5b59d1011 ToolButton: Disable showing button menu on right click by default 2018-01-11 19:30:05 +01:00
David Rosca
23279f6e10 GreaseMonkey: Move icon from statusbar to navigationbar as tool button 2018-01-11 19:29:35 +01:00
David Rosca
0cbbd197ca AdBlockIcon: Move from statusbar to navigationbar as tool button 2018-01-11 19:29:09 +01:00
David Rosca
6824ea17f2 NavigationBar: Add support for adding additional tool buttons 2018-01-11 19:28:32 +01:00
David Rosca
c0ac5ce0a2 BrowserWindow: Use QActionGroup for encoding menu 2018-01-11 19:26:06 +01:00
David Rosca
8eeba9e1df SideBarManager: Use QActionGroup for sidebars menu 2018-01-11 19:26:00 +01:00
David Rosca
0b8a693bca NavigationBar: Add Tools button
It now contains toolbars and sidebars menus and configure
action that doesn't work yet.
2018-01-11 19:25:54 +01:00
David Rosca
65d1493f0a Fix closing tabs - regression from last commits
Closes #2534
2018-01-11 19:25:48 +01:00
David Rosca
d380d54ef8 NavigationBar: Add support for loading layout from config
There is no ui to configure it for now.
2018-01-11 19:25:41 +01:00
David Rosca
2e7a77a6b4 NavigationBar: Remove exit fullscreen button 2018-01-11 19:24:58 +01:00
David Rosca
54282af88f ClosedWindowsManager: Only save last 3 windows in session file
Prevents growing session file indefinitely.
2018-01-11 19:24:07 +01:00
David Rosca
d1d99e3b71 PopupWindow: Add margins around locationbar and line between webview 2018-01-11 19:24:00 +01:00
David Rosca
fa4fba5f49 BrowserWindow: Add tabCount() method 2018-01-11 19:23:43 +01:00
David Rosca
5cc41d219e Always open new window when restoring session after crash
Also remove special handling for qupzilla:restore tabs.
2018-01-11 19:23:36 +01:00
David Rosca
679268dbd1 ClosedTabsManager: Move check for saving restore tab from TabWidget 2018-01-11 19:22:43 +01:00
David Rosca
3f60c554ee ClosedWindowsManager: Save closed windows into session file 2018-01-11 19:21:59 +01:00
David Rosca
0b6c555c62 Only show restore page when crashing during session restore
If app crashes during one minute after restoring crashed session,
show the restore page with options to the user next time instead
of showing restore page after every crash.
2018-01-11 19:21:54 +01:00
David Rosca
c85d33e92a MainApplication: Completely remove isRestoring state
Restoring session should not be any different from simply opening
regular session.
2018-01-11 19:21:47 +01:00