David Rosca
825ee7ea96
Revert "TabContextMenu: Require only WebTab in constructor"
...
This broke context menu on empty tab bar space.
This reverts commit e791e77045b572af02d27f7a15ae082a4a13814c.
2018-02-05 16:44:39 +01:00
David Rosca
408b2ffad6
TabWidget: Add public webTab method
...
Also cleanup tabbedwebview.h includes.
2018-02-05 16:44:23 +01:00
David Rosca
fbbe3c6385
TabTreeModel: Ignore dropping child on its parent
2018-02-04 17:23:52 +01:00
David Rosca
aa332a4ed2
VerticalTabs: Reject drop on last row in pinned tabs model
...
It seems like a weird behavior in Qt because source model receives
drop on last index (in filter model) as drop on last index in source
model instead of filter model and it can't make a right decision.
Source model:
| 1 | 2 | 3 | 4 | 5 | 6 |
Filter model:
| 1 | 2 | 3 | 4 |
^
Dropping here propagates to source model as drop on index 7, not 5.
Let's just ignore this case to workaround it.
2018-02-04 17:23:46 +01:00
David Rosca
9eccf4fae3
TabModel: Rework drag&drop logic
...
Use QMimeData subclass to safely pass pointers.
Only allow to drop one tab at a time and disable drop action
when not possible. Allow to move tabs to other windows, with the
exception of tabs with children.
2018-02-04 17:23:06 +01:00
David Rosca
ca15006145
TabWidget: Track last WebTab instead of only index
2018-02-04 17:22:05 +01:00
David Rosca
dbd4e75941
VerticalTabs: Save expanded state in session
2018-02-04 17:22:00 +01:00
David Rosca
095e0ff517
WebTab: Add sessionData property
2018-02-04 17:21:57 +01:00
David Rosca
62264501e2
VerticalTabs: Switch tabs with mouse wheel
...
But only when there is no scrollbar in normal tabs view.
2018-02-04 17:21:54 +01:00
David Rosca
bbbe136346
VerticalTabs: Handle Ctrl+Tab switching tabs in tree order
2018-02-04 17:21:50 +01:00
David Rosca
ee2e1e9f78
TabWidget: Add BrowserWindow accessor
2018-02-04 17:21:47 +01:00
David Rosca
0bf881c168
Plugins: Hook key events in TabWidget
2018-02-04 17:21:42 +01:00
David Rosca
25d70e557a
VerticalTabs: Add Simple theme
2018-02-04 17:21:38 +01:00
David Rosca
7bb2b5dfed
VerticalTabs: Cleanups in Windows theme
2018-02-04 17:21:34 +01:00
David Rosca
b24041cb8e
LocationCompleterDelegate: Don't use selected icon mode for favicons
...
Same reason as previous commit
2018-02-04 17:21:31 +01:00
David Rosca
ca60f9a300
VerticalTabs: Don't use selected icon mode for favicons
...
On some styles (particularly QStyleSheetStyle) it returns pixmap
drawn onto background color.
2018-02-04 17:21:26 +01:00
David Rosca
4db34d4645
VerticalTabs: Remove custom properties for colors
2018-02-04 17:21:23 +01:00
David Rosca
06621a6f8a
VerticalTabs: Add windows theme
2018-02-04 17:21:15 +01:00
David Rosca
2c731111d7
VerticalTabs: Add support for changing themes
2018-02-04 17:21:12 +01:00
David Rosca
2c60d8bcfb
VerticalTabs: Add option to append/prepend new child tabs
2018-02-04 17:21:08 +01:00
David Rosca
e981f638de
VerticalTabs: Hide pinned tabs view when empty
2018-02-04 17:21:04 +01:00
David Rosca
f3d5f27cdf
VerticalTabs: Set Qt::NoFocus policy
...
Fixes some styles painting unwanted focus indicator.
2018-02-04 17:21:01 +01:00
David Rosca
8c96660852
VerticalTabs: Add new tab button
2018-02-04 17:20:56 +01:00
David Rosca
faec2d2b20
VerticalTabs: Fix object names for close button
2018-02-04 17:20:52 +01:00
David Rosca
ac9830381d
VerticalTabs: Add option to indentate background of items
2018-02-04 17:20:49 +01:00
David Rosca
e5a55a6c69
VerticalTabs: Fix rendering negative margins when updating single index
2018-02-04 17:20:44 +01:00
David Rosca
79d116d07c
TabTreeDelegate: Make it stylable on which items to show close button
2018-02-04 17:20:40 +01:00
David Rosca
36eb1f5523
VerticalTabs: Fix QSS styling issues
...
It is now possible to replicate tabbar from Windows theme.
2018-02-04 17:20:28 +01:00
David Rosca
ad387fe712
TabTreeView: Draw real tabbar close button and make it stylable
2018-02-04 17:20:17 +01:00
David Rosca
6985a8567a
RestoreManager: Validate all elements in session file
...
Session file can be corrupted or have data from unsupported version
inside the file.
2018-02-04 17:20:10 +01:00
David Rosca
e6b220a87a
WebTab: Add option to prepend child tabs instead of appending
2018-02-04 17:20:00 +01:00
David Rosca
81e86d4a3c
BookmarksToolbar: Fix setting correct minimum height
...
Closes #2588
2018-02-04 17:19:39 +01:00
David Rosca
4ad6d6cda1
TabTreeModel: Only sync top-level tabs when closing window
...
Otherwise reordering tabs is too distracting when tabbar is visible.
2018-02-04 17:18:39 +01:00
David Rosca
ae4d971d1a
BrowserWindow: Add aboutToClose signal
2018-02-04 17:18:35 +01:00
David Rosca
05bb94adfe
VerticalTabs: Correctly delete models when switching view type
2018-02-04 17:18:31 +01:00
David Rosca
68c30781bb
VerticalTabs: Show tooltips for tabs
2018-02-04 17:18:27 +01:00
David Rosca
e9f3679bb1
TabTreeModel: Sync top-level tabs with main tabbar
...
This way the order of top-level tabs is also preserved in session.
2018-02-04 17:18:23 +01:00
David Rosca
a1101c129c
VerticalTabs: Move scrollbar to the left
2018-02-04 17:18:19 +01:00
David Rosca
805c23ddb9
VerticalTabs: Expand subtree when new tab is inserted
2018-02-04 17:18:13 +01:00
David Rosca
072d3c28ee
VerticalTabs: Show pinned tabs in horizontal list above normal tabs
2018-02-04 17:18:01 +01:00
David Rosca
801c1845b5
Cleanups in TabTreeView
2018-02-04 17:16:19 +01:00
David Rosca
fc9f88ae67
VerticalTabs: Set scrolling per pixel
2018-02-04 17:15:57 +01:00
David Rosca
ebd2b6da51
VerticalTabs: Automatically scroll to current tab
2018-02-04 17:15:50 +01:00
David Rosca
66023d2dba
Add VerticalTabs plugin
2018-02-04 17:15:23 +01:00
David Rosca
af95dd14e2
WebTab: Fix updating isCurrentTab in attach
2018-02-04 16:59:23 +01:00
David Rosca
16c7af63b6
BrowserWindow: Add accessor for TabModel
2018-02-04 16:58:43 +01:00
David Rosca
9f4ac24cf8
TabBar: Initialize pinned tab width from real tab
...
Calculates the padding between tab border and icon from tabRect
instead of using style pixel metric which was oftentimes incorrect.
Pinned tabs should now have correct size and icon be perfectly centered
with all possible widget and qss styles.
2018-02-04 16:58:35 +01:00
David Rosca
01c5397fef
WebTab: Don't set "Loading..." tab text
...
Instead improve page title from url when title is empty
2018-02-04 16:58:18 +01:00
David Rosca
0c7245fa9f
TabContextMenu: Require only WebTab in constructor
2018-02-04 16:58:08 +01:00
David Rosca
29735b24c8
WebTab: Add makeCurrentTab and closeTab methods
2018-02-04 16:58:01 +01:00