| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Tooltips were shortened to 1/4 the width of the screen. We do not currently word-wrap, so these tooltips were truncated. This meant that you could not see the full title of some webpages. Worse, the tooltips for the Back and Forward buttons were truncated in some languages.
This change increases the max tooltip width to almost the width of the screen. An even better solution would be to word-wrap the text onto multiple lines, but that requires more sweeping changes to the TooltipManagers.
R=sky
BUG=25522,22840
TEST=Load a webpage with a very long title (eg. Google search for something super long), and mouse over the tab to get a tooltip displaying the webpage title. If long enough, it should stretch across the whole screen (minus a few pixels), and then end with an ellipsis. No tab or button tooltips should be truncated unless they reach screen width.
Review URL: http://codereview.chromium.org/343054
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30596 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
WidgetGTK in
view hierarchy to call methods on it.
* added ContainerExamlpeBase that defers the creation of such views after WidgetGTK available.
minor fixes
* replaced unnecessary includes with forward decls.
* make sure we don't try to set negative hight to viewport.
BUG=None
TEST=build & run view_examples
Review URL: http://codereview.chromium.org/347010
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30586 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
views/gtk.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/338067
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30403 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Added OnMouseXXXTab methods to BrowserExtender to handle on tabs.
* Changed tab to call above methods.
* Added GetSelectedTab to TabStrip
Minor changes along with the major changes above
* Removed unnecessary file entries in chrome.gyp
* Fixed a few method's const.
* Removed unnecessary class declarations and includes.
Know issue: keyboard focus is not working.
In 2nd step, I'm going to eliminate popup and use whatever that FindBar is using to show compact location bar. I'll fix the issue above after this migration. (if it still persists)
BUG=None
Test=None
Review URL: http://codereview.chromium.org/341008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30386 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
Open all bookmarks in a bookmark menu folder according to the window disposition derived from the event flags. This is currently only possible with a middle click on the top level bookmark bar button.
BUG=19597
TEST=Control click a folder on your bookmark bar, and thorougly test
bookmark bar, especially with folders.
Review URL: http://codereview.chromium.org/334047
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30281 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/307030
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30074 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Closing a submenu was hitting NOTREACHED in OnMenuHidden.
* Changed to register OnMenuHidden callback only when we're
about to open the menu, then disconnect it when closed.
This is safer as the same menu can be used as submenu
(although that's probably not great style)
Review URL: http://codereview.chromium.org/328002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30061 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
mouse moves over another folder, the menu for that folder is shown.
BUG=355
TEST=thorougly test all possible permutations of bookmark menus you
can think of, including drag and drop to the menus.
Review URL: http://codereview.chromium.org/328012
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30049 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/337018
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30011 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
but undo a previous change to the way we measure strings in pango.
Review URL: http://codereview.chromium.org/338001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29943 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
is maximized.It seems that now, when an opaque frame is maximized we also need to add the SM_CXSIZEFRAME to the top of the client rect. I don't know why, it's just is.I reworked the way Widget allows subclasses to handle sizing of the RootView... I delegate responsibility for determining the RootView's bounds to a helper virtual function which BrowserFrameWin overrides. This seems cleaner to me. I make sure this handling only occurs when the window is not maximized.http://crbug.com/25227TEST=use to a theme or switch off glass on vista or use Xp. Maximize the browser window. The tabs should be entirely visible.
Review URL: http://codereview.chromium.org/304007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29882 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the bookmark manager view had not been properly updated and was not called
anymore, breaking the keyboard shortcuts.
This was broken in the TaskManager as well.
Also changed the TreeView to use the base::KeyboardCode.
BUG=25533
TEST=Test that the different shortcuts (CTRL-X,CTRL-V, CTRL-C, DELETE,
ENTER...) work in the bookmark manager.
Test that in the TaskManager, pressing ENTER activates the selected tab.
Review URL: http://codereview.chromium.org/322006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29854 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Chagned WindowGtk to pass through right click mouse event for
HTCAPTION so that ContextMenuController on Frame/Tab view works.
* Added ContetMenuController to NonClientView.
* Added "PointIsWithinWindowCaption to BrowserView to exclude chromeos specific components from Caption area.
Fix a minor bug in NonClientView
* GetViewForPoint was using wrong point. This wasn't causing any issue as the frame_view's origin was (0, 0)
BUG=None
TEST=run chromeos build and right click frame view and verify that you get system menu.
Review URL: http://codereview.chromium.org/303014
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29807 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
This was lost when ImagePainter was refactored as part of the fix to http://crbug.com/23261.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/300019
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29725 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
TEST=none
BUG=25429
Review URL: http://codereview.chromium.org/293057
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29711 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/270068
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29692 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
running, the Chrome window was not activated.
BUG=19373
TEST=See bug
Review URL: http://codereview.chromium.org/308008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29654 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
The theme work caused a check that had been included to see if the frame view should be painted as active even if it was inactive. This reintroduces that check.
http://crbug.com/20966
TEST=see bug
Review URL: http://codereview.chromium.org/303012
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29571 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/307007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29548 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Some refactoring done to the tests also.
See original review at:
http://codereview.chromium.org/295013/show
BUG=None
TEST=Make sure the view examples build and run on Windows
and Linux.
Review URL: http://codereview.chromium.org/294026
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29525 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/294008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29454 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
used for forcing Chrome OS updates.
There were many things that needed to be fixed for this to work.
Make skia's canvas return height of font for size of strings, instead of the actual height of the characters to bring it in line with Windows.
Make average character widths use pango metrics and windows dialog units. Make this lazy, to avoid most calls.
Fix bug in About panel that failed to adjust the embedded links to allow for the padding that Link adds so they can be focused.
Support gtk about panel in regular build, views in chrome os only.
Fix WindowGtk to call WindowClosing()
Fix canvas_linux::SetupPangoLayout() to wrap correctly, if passed a width
Fix Label::ComputeMultiLineFlags() to turn off eliding. With eliding the pango routines always return 1 line.
Enable focus manager in dialogs.
Version loader crashed in debug.
Review URL: http://codereview.chromium.org/282002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29414 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is the first of multiple patches that clean up handling of memory
regarding images. Previously, the code did several memcpy()s or
equivalents. This change:
- Creates an abstract interface RefCountedMemory which provides access to the
front() of a memory range and the size() of it. It is a RefCountedThreadSafe.
- Adds a RefCountedStaticMemory class which isa RefCountedMemory.
- Pushes RefCountedBytes up into base/ from chrome/ and make it conform to
RefCountedMemory.
- Have ResourceBundle return RefCountedStaticMemory to the mmaped() or DLL
loaded resources instead of memcpy()ing them.
- General cleanups to minimize copies in constructing RefCountedBytes.
- Use the above consistent interface in the BrowserThemeProvider, along with
special casing the loading of the new tab page background.
This patch is mostly cleanups and there should only be a slight performance
gain if any. Most of the real speedups should come in subsequent patches.
BUG=http://crbug.com/24493
TEST=Slightly faster on Perf bot; does not introduce crashes.
Review URL: http://codereview.chromium.org/288005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29412 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
autocomplete edit are returned correctly
to accessibility clients like screen readers.
We achieve this by sending off the WM_GETOBJECT message to the underlying native view HWND if the current
view cannot return accessibility information for its children.
Fixes portions of http://code.google.com/p/chromium/issues/detail?id=13291
Bug=13291
Review URL: http://codereview.chromium.org/287007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29338 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Remove vestigial organ WS_EX_TRANSPARENT
TEST=open option dialog|advanced and scroll, behold no flicker
BUG=9974
TBR=ben
Review URL: http://codereview.chromium.org/276056
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29292 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
without having been enabled. We were keeping a state in
that case that would cause a DCHECK on further activation.
BUG=12909
TEST=See bug, open the stack.html file when running Chrome
with assertions on. Resize the window, close the dialogs,
no assert should happen.
Review URL: http://codereview.chromium.org/283003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29290 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Major changes:
- Moved sync_setup_{flow,wizard} to sync directory.
- Made browser_with_test_window_test compile on non-Windows platform.
- Moved localized contents font util functions to app/.
BUG=23073
TEST=trybot
Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=29253
Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=29255
Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=29258
Review URL: http://codereview.chromium.org/279004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29263 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
TBR: nick@chromium.org
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29259 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Major changes:
- Moved sync_setup_{flow,wizard} to sync directory.
- Made browser_with_test_window_test compile on non-Windows platform.
- Moved localized contents font util functions to app/.
BUG=23073
TEST=trybot
Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=29253
Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=29255
Review URL: http://codereview.chromium.org/279004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29258 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
TBR: nick@chromium.org
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29256 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Major changes:
- Moved sync_setup_{flow,wizard} to sync directory.
- Made browser_with_test_window_test compile on non-Windows platform.
- Moved localized contents font util functions to app/.
BUG=23073
TEST=trybot
Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=29253
Review URL: http://codereview.chromium.org/279004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29255 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
TBR: nick@chromium.org
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29254 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Major changes:
- Moved sync_setup_{flow,wizard} to sync directory.
- Made browser_with_test_window_test compile on non-Windows platform.
- Moved localized contents font util functions to app/.
BUG=23073
TEST=trybot
Review URL: http://codereview.chromium.org/279004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29253 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
| |
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29240 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Major changes:
- Moved sync_setup_{flow,wizard} to sync directory.
- Made browser_with_test_window_test compile on non-Windows platform.
- Moved localized contents font util functions to app/.
BUG=23073
TEST=trybot
Review URL: http://codereview.chromium.org/279004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29239 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
being screwed up screwed up when DWM is toggled or themes are installed or reset.
The first part of the fix was to remove the hack I put in to hide then show the window while the frame type change occurs.
The hack was to work around the fact that upon returning to glass from non-glass, the area identified by BrowserFrameWin::OnNCCalcSize as client was filled with solid black vs. transparent black.
I don't know why this fix works, but returning a client size for the opaque frame as 1 pixel different to the window rect causes the blackness bug to not occur, so that's what I did (in addition to removing the hack).
I also had to put in a couple of fixes to accommodate the pixel turd we gain in the opaque frame. I renamed ChangeSize to LayoutRootView. When we're using the opaque frame, since the views system is rendering the entire content of the window all the time I always size the widget to the window rect rather than the client rect.
http://crbug.com/15424
TEST=change the frame type by:
- turning on/off aero glass
- installing a theme, then resetting
- running an app that forces the DWM off, e.g. the O3D plugin
The frame should appear correct after the transition in either direction, and window z-order should be preserved.
Review URL: http://codereview.chromium.org/266013
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29164 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Added BrowserExtender class to isolate ChromeOS specific controls from BrowserView
* Extender currently adds main menu and status area view only.
* System menu is not enabled because using SetContextMenuController on NonClientFrameView
didn't work. I need to investigate how.
* PanelController support will be added in next CL.
Review URL: http://codereview.chromium.org/269078
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29021 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
GetWindow, the problem is in certain scenarios GetWindow can return
null. I've changed the code back to GetWidget and converted Screen
from taking a NativeWindow to a NativeView.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/269076
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28986 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
widget_gtk when building chromeos build. We need a #ifdef for
CHROMEOS but not using TOOLKIT_VIEWs for the browser window. I'm
temporarily adding this one.
This bug is the result of Oshima making TOOLKIT_VIEWS set OS_CHROMEOS.
Review URL: http://codereview.chromium.org/270092
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28916 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
not deleting the blocked popup container view views,
which resulted in a reliability crash. This differs from the first patch in that BlockedPopupContainerViewViews::Destroy now does
a delete this.
From the original patch:
I had to fix a couple of additional things here:
. Avoid doing anything in OnSizeAllocation if the size hasn't
changed. Because of how gtk works I was getting stuck in a loop if I
OnSizeAllocate did anything if the size hadn't changed.
. Applied similar shortcut to TabContentsViewGtk.
. Made SimpleMenuModel only ask delegate for checked state if the item
is a check.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/274019
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28903 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
. Adds accelerator to list of files compiled on views/gtk.
. Adds function to Screen to get monitor bounds from a window.
. Adds BrowserFrameGtk::GetAccelerator to match windows.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/275005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28902 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
"SkColorSetARGB(0, 0, 0, 0)" in place of "NULL" since it's not obvious what the latter means as a color.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/273042
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28874 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/266037
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28868 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=None
TEST=make sure Esc still works in the bookmark bubble and that accelerators work as expected.
Review URL: http://codereview.chromium.org/271067
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28842 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
get stuck.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/274008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28787 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Use correct indentation/alignment in a number of places
* Use early-return to avoid long code block indenting
* Use for() instead of while() in cases where that's what the code is actually doing
* Consistent naming for iterators ("foo_iter", "bar_iter" instead of sometimes that way and sometimes "found")
* Use {} when needed, don't use when not
* Do not use "else" after "return"
* Shorten overly-verbose code
* Pull some trivial functions into the header
* Eliminate unused function
* Use STLDeleteValues() helper where appropriate
Some of this was originally in my patch that modified constness, but I've split it out to make that more sane.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/272033
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28771 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
couple of
additional things here:
. Avoid doing anything in OnSizeAllocation if the size hasn't
changed. Because of how gtk works I was getting stuck in a loop if I
OnSizeAllocate did anything if the size hadn't changed.
. Applied similar shortcut to TabContentsViewGtk.
. Made SimpleMenuModel only ask delegate for checked state if the item
is a check.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/261051
TBR=sky@chromium.org
Review URL: http://codereview.chromium.org/267069
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28768 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
views/gtk depends on this,
and a program that uses views without webkit fails to link.
BUG=None
TEST=None
Review URL: http://codereview.chromium.org/270054
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28763 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
by wanting to parent bookmarkeditor to browserwindow, which returns a
native_window.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/270067
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28728 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
Added append scenario to view_examples
BUG=None
TEST=run unit_tests and verify with view_examples.
Review URL: http://codereview.chromium.org/271055
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28724 0039d316-1c4b-4281-b951-d872f2087c98
|